Acmlm's Board - I2 Archive - Super Mario World hacking - Kicking Koopa Shell
User | Post |
BrooklynMario
Posts: 86/110 |
Wow, I come back after 2 days to see this topic is of discussion still and if you think about it, it should be because no one has changed what Mario does besides shoot fireballs. I know it wont be as simple as using the same address for mario kicking and over writing the fireball throwing routine. |
DisruptiveIdiot
Posts: 114/147 |
Originally posted by HyperHacker Actually, I was screwing around with the fireball code a bit and did manage to remove the limit, but any more than 2 just appear as a white spot in a random place and disappear.
O_o indeed. That must mean it's hardcoded to only have at most 2 fireballs on the screen at once. |
Sukasa
Posts: 890/1981 |
Originally posted by Glyph Phoenix You might not even need to trace it - Mario World Reconfigurer can tell you where each sprite's ASM pointer is. I think. I still haven't figured out how to translate the pointer into a hex offset.
No, that's just the pointer to a handler rountine, usually. By that I mean it would point to something like this:
cmp #$01 beq xxxxxx cmp #$02 beq xxxxxx
etc... |
HyperLamer
Posts: 5100/8210 |
Actually, I was screwing around with the fireball code a bit and did manage to remove the limit, but any more than 2 just appear as a white spot in a random place and disappear. |
DisruptiveIdiot
Posts: 110/147 |
Originally posted by UnsurpassedDarkness You could just set a limit to how many shells you can shoot at once, can
UnsurpassedDarkness
Posts: 587/746 |
You could just set a limit to how many shells you can shoot at once, can |
BMF98567
Posts: 933/1261 |
- Fireballs don't count as regular sprites, they're separate entities. - Mario wouldn't be able to shoot any shells if there are already 12 sprites on-screen, maybe less depending on the sprite memory setting (and believe me, if he starts shooting shells willy-nilly, they're gonna add up quick), thus making the powerup useless. Fireballs, being separate entities, are exempt from this limitation. Also, if too many shells were spawned right before the goal tape/sphere, it might not appear.
I believe a hack of this magnitude is beyond the current abilities of just about everyone on this forum. It involves a LOT more than just attaching the sprite generator code to the fireball routine... |
Alastor the Stylish
Posts: 6649/7620 |
Originally posted by Clockworkz I didn't mean the graphics; Example: A while back, Kyouji found a way to make Lakitu's through fire by changing a hex address (which I can't remember; can someone tell me what it is again?). If you change the hex address for what sprite Mario fires, it's possible to spawn a shell, I believe...
Wuh? That wasn't me, that was BMF. I'm pretty sure asking for someone else to find something doesn't count as finding something. And besides, IIRC the fireballs themselves are part of Mario, so it's not as simple as that, and simply making use of existing sprite generation code probably wouldn't help you too much (yeah sorry guys ). You'd most likely need to write your own code.
Glyph Phoenix
Posts: 292/745 |
You might not even need to trace it - Mario World Reconfigurer can tell you where each sprite's ASM pointer is. I think. I still haven't figured out how to translate the pointer into a hex offset. |
Sukasa
Posts: 869/1981 |
As a sprite generator, look up the code for the bullet bill shooter, or the torpedo ted shooter. If you trace their code, you should be able to find out how to generate a sprite and set it's direction. |
DisruptiveIdiot
Posts: 109/147 |
Originally posted by Smallhacker I'm pretty sure that fireballs aren't (what Lunar Magic calls) a sprite. Fireballs are their own categoty, like Mario. Therefore, it's not as easy as changing byte or two. You have to edit the fireball code to generate a sprite instead of a fireball.
It shouldn't be too hard to edit the code, of course, first we'd have to figure out exactly how sprite generators work, then the rest is just gravy. Of course it might turn out that the generator code won't function properly if used as a fireball code.
Hey, wait, how many of the subroutines required to do this are known?
Shell kick routine, where mario hits a shell and it slides forward, is that known?
Sprite generator routines, has it been figured out how they work?
Fireball routine, we know how to change the physics settings but are those part of the routine itself or is that address just referenced by the routine? |
Smallhacker
Posts: 1736/2273 |
Originally posted by Clockworkz (which I can't remember; can someone tell me what it is again?)
Look at the very first post in the ROM Address thread. |
Clockworkz
Posts: 1554/2002 |
I didn't mean the graphics; Example: A while back, Kyouji found a way to make Lakitu's through fire by changing a hex address (which I can't remember; can someone tell me what it is again?). If you change the hex address for what sprite Mario fires, it's possible to spawn a shell, I believe... |
Surlent
Posts: 883/1077 |
Originally posted by Clockworkz Wait, I think what you want is the sprite address to change the sprite that Mario fires (fireballs) to Shells, so when wever you press the Y button, you spit a shell out... am I close?
I suppose he means to make shells appear which travel along with its physics (falling down lower terrain, hitting obstacles, coming back when hitting a solid tile and so on) - that would be a weird thing if just changed the fireball's "graphics".
And since the fireballs turn, it might be very weird to see turning shells |
BrooklynMario
Posts: 85/110 |
ohh....ehhh....damn. Well atleast you guys understand what I am saying. |
Smallhacker
Posts: 1734/2273 |
I'm pretty sure that fireballs aren't (what Lunar Magic calls) a sprite. Fireballs are their own categoty, like Mario. Therefore, it's not as easy as changing byte or two. You have to edit the fireball code to generate a sprite instead of a fireball. |
Clockworkz
Posts: 1552/2002 |
Wait, I think what you want is the sprite address to change the sprite that Mario fires (fireballs) to Shells, so when wever you press the Y button, you spit a shell out... am I close? |
BrooklynMario
Posts: 84/110 |
Ok. What I would like to know is the ROM address for Mario kicking a shell.
The reason I want this is because I want to see if I can use it to replace fire marios routine.
I will make a powerup where Mario goes around and kicks shells instead of shooting fireballs.
I have these ideas from Dhark Daiz Mario 3 hacks where he used other objects. |
Smallhacker
Posts: 1733/2273 |
I have absolutely no idea what you're asking for. Can you describe it a bit better? |
BrooklynMario
Posts: 83/110 |
Anyone have the hex address I seek? |
This is a long thread. Click here to view it. | | |
|