Gameplay-hacking Aladdin
-
Jedi QuestMaster
- Posts: 696
- Joined: Thu Sep 07, 2006 1:08 pm
- Location: United States
Gameplay-hacking Aladdin
While graphics hacking Aladdin (this game), I decided to split the project into two hacks: gameplay and graphics.
But before getting started, I'd first like to know which version of the game I have. I can't find it anywhere.
It seems to be this one:
• 1995 Copyright
• no weird number designations in the title
• music plays normally throughout the game
Anyway, gameplay mechanics I'd like to fix are:
• switch A & B buttons
• change running physics
• 'rug-gliding' speed (the way it works in this game makes it almost entirely useless)
But before getting started, I'd first like to know which version of the game I have. I can't find it anywhere.
It seems to be this one:
• 1995 Copyright
• no weird number designations in the title
• music plays normally throughout the game
Anyway, gameplay mechanics I'd like to fix are:
• switch A & B buttons
• change running physics
• 'rug-gliding' speed (the way it works in this game makes it almost entirely useless)
-
Sik
- Posts: 1589
- Joined: Thu Aug 12, 2010 3:43 am
Re: Gameplay-hacking Aladdin
How about just posting a MD5 checksum of the ROM? Somebody can probably try to hunt it down then.
-
Jedi QuestMaster
- Posts: 696
- Joined: Thu Sep 07, 2006 1:08 pm
- Location: United States
Re: Gameplay-hacking Aladdin
Because... I don't know what an MD5 checksum is.
And I think I may have overwritten my rom.
And I think I may have overwritten my rom.

-
tepples
- Posts: 22994
- Joined: Sun Sep 19, 2004 11:12 pm
- Location: NE Indiana, USA (NTSC)
-
Sik
- Posts: 1589
- Joined: Thu Aug 12, 2010 3:43 am
Re: Gameplay-hacking Aladdin
How are you making IPS patches then? o_O (you need the original ROM to base the patch on)Jedi QuestMaster wrote:And I think I may have overwritten my rom.
-
tepples
- Posts: 22994
- Joined: Sun Sep 19, 2004 11:12 pm
- Location: NE Indiana, USA (NTSC)
Re: Gameplay-hacking Aladdin
Apparently the different dumps are so similar that an IPS patch to one applies cleanly to the others. It's like Game Genie codes that work on more than one revision of a ROM.
-
Jedi QuestMaster
- Posts: 696
- Joined: Thu Sep 07, 2006 1:08 pm
- Location: United States
Re: Gameplay-hacking Aladdin
I haven't made an ips file since this screw up. So for now I'm good.Sik wrote:How are you making IPS patches then? o_O (you need the original ROM to base the patch on)
By the way, I think FARID found what I'm looking for: Aladdin (Unl) [p1][hM04].nes
Edit: The exact one I was using is Aladdin (E) [p1][hM04], and the only difference between this and the (Unl) one is byte 06, which reads '40' on the (Unl) one and '41' on the (E) version.
By the way, what does [p1] mean? I assumed it meant 'pirate' but wouldn't that only be used if the game is further pirated from its original state?
-
Dwedit
- Posts: 5259
- Joined: Fri Nov 19, 2004 7:35 pm
Re: Gameplay-hacking Aladdin
The original game wasn't MMC3.
Here come the fortune cookies! Here come the fortune cookies! They're wearing paper hats!
-
Jedi QuestMaster
- Posts: 696
- Joined: Thu Sep 07, 2006 1:08 pm
- Location: United States
Re: Gameplay-hacking Aladdin
This one is hacked to mapper 4. But what was the original?
Would a graphics patch not work correctly for both? I do recall reading that there's a graphical glitch on the ending screen due to this.
Would a graphics patch not work correctly for both? I do recall reading that there's a graphical glitch on the ending screen due to this.
-
Sik
- Posts: 1589
- Joined: Thu Aug 12, 2010 3:43 am
Re: Gameplay-hacking Aladdin
I imagine the original was a custom mapper.
-
tokumaru
- Posts: 12669
- Joined: Sat Feb 12, 2005 9:43 pm
- Location: Rio de Janeiro - Brazil
Re: Gameplay-hacking Aladdin
Or maybe that crazy Mapper 90.
-
lidnariq
- Site Admin
- Posts: 11803
- Joined: Sun Apr 13, 2008 11:12 am
Re: Gameplay-hacking Aladdin
Yeah, it was mapper 90.
-
OneCrudeDude
- Posts: 276
- Joined: Fri Aug 23, 2013 2:14 am
Re: Gameplay-hacking Aladdin
Speaking of gameplay hacking, the game can and will freeze under varying conditions. Once I managed to jump down, following a path of gems into the area where the snakes pop up, and the game froze. I also jumped on one of the enemies while I was close to a wall, and Aladdin jumped in a wall and crashed the game.
These were observed in FCEUX, so no telling if it's the emulator or the game doing it.
These were observed in FCEUX, so no telling if it's the emulator or the game doing it.
-
Jedi QuestMaster
- Posts: 696
- Joined: Thu Sep 07, 2006 1:08 pm
- Location: United States
Re: Gameplay-hacking Aladdin
So I assume the mirroring values are arbitrary because there's absolutely nothing else different between the two roms.
By the way. I know jack about hacking buttons. How would I go about this? So far I've found that changing address 03D0A5 from 80 to 40 makes the 'B' button throw apples, but not while he's running.
Either way, it'd be a good idea to playtest this on real hardware. I've noticed the game freeze a couple of times. Once on the Genie's lamp stage. I think it may have had to do with the enemies on screen.OneCrudeDude wrote:Speaking of gameplay hacking, the game can and will freeze under varying conditions. Once I managed to jump down, following a path of gems into the area where the snakes pop up, and the game froze. I also jumped on one of the enemies while I was close to a wall, and Aladdin jumped in a wall and crashed the game.
These were observed in FCEUX, so no telling if it's the emulator or the game doing it.
By the way. I know jack about hacking buttons. How would I go about this? So far I've found that changing address 03D0A5 from 80 to 40 makes the 'B' button throw apples, but not while he's running.
-
Sik
- Posts: 1589
- Joined: Thu Aug 12, 2010 3:43 am
Re: Gameplay-hacking Aladdin
That probably means the game has a different check for throwing apples while running. Yeah, there isn't much more to it, just keep looking around.
The game is storing the controller input in some byte in RAM then checking it afterwards, right? If so, just look for places in the code that attempt to access that byte. Not sure how easy you have that though, but it'll most likely show you all of the code accessing the controller.
The game is storing the controller input in some byte in RAM then checking it afterwards, right? If so, just look for places in the code that attempt to access that byte. Not sure how easy you have that though, but it'll most likely show you all of the code accessing the controller.