Register | Login | |||||
Main
| Memberlist
| Active users
| ACS
| Commons
| Calendar
| Online users Ranks | FAQ | Color Chart | Photo album | IRC Chat |
| |
1 user currently in Super Mario World hacking: |
Acmlm's Board - I2 Archive - Super Mario World hacking - Block to change Mario's image? | | | |
Add to favorites | "RSS" Feed | Next newer thread | Next older thread |
User | Post | ||
Kailieann Koopa Level: 11 Posts: 55/106 EXP: 5320 For next: 665 Since: 10-09-05 Since last post: 2 hours Last activity: 2 hours |
| ||
It should be as simple as A9 ?? 8D E0 13 60, but for some reason it won't work. Has anyone else tried this? Is there another address that needs to be used? Changing 7E130E using ZSNES's cheat function works fine, I don't get why it wouldn't work with blocks. Unless Mario's image is being constantly written by the game's normal code, and ZSNES can override it but blocks can't. Any thoughts? |
|||
Dark Ludwig Red Paratroopa Level: 21 Posts: 139/172 EXP: 45740 For next: 4203 Since: 09-17-04 From: Georgia Since last post: 9 days Last activity: 2 days |
| ||
Hmm, thoughts? ZSNES's cheats rewrite RAM values immediately after that value is modified. It's possible that Mario's image is calculated after your custom block code. I would suggest using something with LEVELASM or PALASM, because they (I'm pretty sure) always override everything else. Have a custom subroutine check if Mario's touching that custom block, and then make that custom subroutine change his image. I'm not 100% sure that'll work, or if I was right about Mario's image not changing, but they are ideas, so I decided to throw them out to the community. |
|||
BMF98567 BLACK HAS BUILT A SILLY DICE-MAZE! GO! Current list of BURNING FURY >8( recipients: - Yiffy Kitten (x2) - Xkeeper Level: 53 Posts: 1206/1261 EXP: 1094149 For next: 62970 Since: 03-15-04 From: Blobaria Special Move: Rising Meatloaf Backhand Combo Since last post: 21 hours Last activity: 1 hour |
| ||
Hmm. My as-yet-unused shooter code writes #$20 (Mario sitting) to $13E0, and it works fine. As I recall, LevelASM code runs right before custom block code, so I don't see why a block wouldn't work. Double-check your code and make sure it's writing to the correct address (8D E0 13)...that's really all I can suggest. |
|||
Kailieann Koopa Level: 11 Posts: 59/106 EXP: 5320 For next: 665 Since: 10-09-05 Since last post: 2 hours Last activity: 2 hours |
| ||
Well, it may have something to the fact that I didn't use LevelASM. In fact, I'm not entirely certain what LevelASM is. Furthermore, a google search for LevelASM turned up one result, on a Chinese page. I was just using a block. |
|||
BMF98567 BLACK HAS BUILT A SILLY DICE-MAZE! GO! Current list of BURNING FURY >8( recipients: - Yiffy Kitten (x2) - Xkeeper Level: 53 Posts: 1208/1261 EXP: 1094149 For next: 62970 Since: 03-15-04 From: Blobaria Special Move: Rising Meatloaf Backhand Combo Since last post: 21 hours Last activity: 1 hour |
| ||
LevelASM Lets you run code every frame. Like a custom block, but you don't need to touch anything. |
|||
Kailieann Koopa Level: 11 Posts: 60/106 EXP: 5320 For next: 665 Since: 10-09-05 Since last post: 2 hours Last activity: 2 hours |
| ||
Well, obviously this is going to come in very handy, but I had wanted to change Mario's image for a few frames as a result of coming into contact with a 'generic' block, and I'm not entirely sure how this will help with that. | |||
Dark Ludwig Red Paratroopa Level: 21 Posts: 148/172 EXP: 45740 For next: 4203 Since: 09-17-04 From: Georgia Since last post: 9 days Last activity: 2 days |
| ||
Have the routine (triggered with LevelASM) check, each frame, if Mario is touching a certain block, you can have the block act any way you want. Then get it to check if Y holds the same number as that block's map16 number's high byte, then have it check 7E1693 for the block's map16 number's low byte. If it comes true both times, then have it write a number to an empty place in RAM, and have it also each frame check if that number is not 0. If it isn't, then write to Mario's image RAM address and decrement that counter. LDA (MEMORY) 7EXXXX;Spare RAM address (counter) CMP $00 BEQ $XX;To "*" LDA (IMMEDIATE) XX;Mario's image number STA (MEMORY) 7EXXXX;Mario's image number's RAM value DEC (MEMORY) 7EXXXX;(counter) RTS *TYA CMP XX;Map16 page of specific block BNE XX;To "~" LDA (MEMORY) 7E1693 CMP XX;Map16 block number on page BNE;To "~" LDA XX;How long you want Mario to have the certain image (See note) STA 7EXXXX;Mario's image RAM value ~RTS Note: One second is approximately 0x40 frames. This is completely untested. In fact, I just typed this up without opening any other windows or anything. This is not guaranteed to work, but it seems okay to me. I have all sorts of homework to do, and no time to test this, so I hope it works, and I hope I helped some. |
|||
Tauwasser Goomba Level: 10 Posts: 21/27 EXP: 3424 For next: 990 Since: 03-16-04 Since last post: 18 hours Last activity: 18 hours |
| ||
The only thing that I see might be an obstacle might be the processor mode and how it needs to be set to 16bit for the compare (since Y is 16 bit). cYa, Tauwasser |
|||
BMF98567 BLACK HAS BUILT A SILLY DICE-MAZE! GO! Current list of BURNING FURY >8( recipients: - Yiffy Kitten (x2) - Xkeeper Level: 53 Posts: 1222/1261 EXP: 1094149 For next: 62970 Since: 03-15-04 From: Blobaria Special Move: Rising Meatloaf Backhand Combo Since last post: 21 hours Last activity: 1 hour |
| ||
Actually, Y only stores the high byte of the block number, so it's 8-bit. |
Add to favorites | "RSS" Feed | Next newer thread | Next older thread |
Acmlm's Board - I2 Archive - Super Mario World hacking - Block to change Mario's image? | | | |