| |||
Views: 88,314,000 |
Main | FAQ | Uploader | IRC chat | Radio | Memberlist | Active users | Latest posts | Calendar | Stats | Online users | Search | 03-28-24 08:01 PM |
|
Guest: Register | Login |
0 users currently in ROM Hacking | 4 guests |
Main - ROM Hacking - aladdin sega genesis - hacking notes | New thread | New reply |
Metal64 |
| ||
Tektite Level: 18 Posts: 42/60 EXP: 25358 Next: 4539 Since: 02-02-16 Last post: 621 days Last view: 321 days |
I have being hacking the "disney aladdin" for sega genesis for months, so I decided to share my finds.
I will start with the sound data
|
Metal64 |
| ||
Tektite Level: 18 Posts: 44/60 EXP: 25358 Next: 4539 Since: 02-02-16 Last post: 621 days Last view: 321 days |
Entities Data
A list of the data of itens, enemies, boss, npcs and others objects Note: Incomplete
|
Metal64 |
| ||
Tektite Level: 18 Posts: 45/60 EXP: 25358 Next: 4539 Since: 02-02-16 Last post: 621 days Last view: 321 days |
Sound address
122db5 - flagpole 1b32a5 - menu change 1a9c73 - head pop 1b1353 - ne naw tune (music of preview level) 1af48b - apples 1af24b - gem 1b0d9d - music level complete 1b5199 - apu bonus level music 1abef9 - apple splat 1b5689 - pole slide 1acd3f - flamingo hey! 1acd1b - flamingo hey 2 1add93 - rock bounce 1a9473 - out of apples 1af3d7 - abu tokens 1af4ed - genie tokens 1aeeef - genie heart 1abe9f - sword ching (knife juggler, Fazahl, Razoul, Gazeem) 1ae5a9 - aladdin hurt 1ae699 - continue point (checkpoint) 1a96c5 - low sword 1aecab - gazeem hit 1 1ac209 - gazeem hit 2 1a944f - object throw |
Metal64 |
| ||
Tektite Level: 18 Posts: 46/60 EXP: 25358 Next: 4539 Since: 02-02-16 Last post: 621 days Last view: 321 days |
movement behaviour
11 F6 D4 60 <== apple projectile (aladdin) 11 F7 46 60 <== magic carpet 12 0F DE 40 <== ghost 12 16 C6 40 <== snake (2 stage) 00 00 00 40 <== skeleton/fire/fish/gazeem/knife juggler/jaffar/cobra jaffar/apple thief/bats 11 F6 FE 60 <== sword menu 12 11 C4 00 <== rolling giant rock (6 stage) 00 00 00 60 <== Fazahl/Zagoolien/Hakim/pot thrower/spawner ghost/genie tokens/snake of the snake charmer/ snake charmer/magic rope 00 00 00 20 <== lava splash (6 stage) 00 00 00 00 <== waterfall/spike in the ground (2 stage)/peddler’s stall/plataform cave/splash water/flagpole 12 0A CC 60 <== barrel (first boss and apu bonus level) 12 03 D0 60 <== barrel (iago boss) 00 00 00 60 <== spit dromedary 11 F6 D4 60 <== spit fish / knife projectile/ projectile of the shiva statues 12 0B 62 40 <== bones 12 0F 76 60 <== pot of the pot thrower 11 F7 2C 60 <== iago 12 17 10 60 <== jaffar tractor 12 03 E0 60 <== sliced apple 12 03 60 40 <== scrab halve (level transition) 12 03 C0 40 <== fire of the sub boss cave 12 11 8A 00 <== rock (5 stage) 12 11 8A 20 <== rock (6 stage) |
bitenfeu |
|
EggplantPimp |
| ||
Buzzy Beetle Level: 44 Posts: 367/378 EXP: 577638 Next: 33647 Since: 04-30-07 From: Boo York, Home Of The Big Pumpkin Last post: 1223 days Last view: 1223 days |
I think a level is near the future, great find! ____________________ - Nikki |
Metal64 |
| ||||||||
Tektite Level: 18 Posts: 48/60 EXP: 25358 Next: 4539 Since: 02-02-16 Last post: 621 days Last view: 321 days |
initial quantities of lifes in practice mode
0x1b0048 00 35 initial quantities of lifes in normal mode 0x1b0056 00 33 initial quantities of lifes in difficult mode 0x1b0064 00 32 initial quantities of apples in practice mode 0x1aa670 31 35 initial quantities of apples in normal mode 0x1aa67e 31 30 initial quantities of apples in difficult mode 0x1aa68c 30 35 initial quantities of gems (all mode) 0x1aa666 30 30 In the game, the aladdin's life limit is "9" (00 39). Example: If you want to change the initial life amount in the normal mode from "3" to "7", you will need to use "00 37". Do not use "30 37" (07), as this will glitch the amount of life apples and gems have a limit of "99" (39 39). dec hex 08 = 30 38 18 = 31 38 32 = 33 32 99 = 39 39 ------------------------------------------------------------------------ "START"
"UP"
"DOWN"
"LEFT"
"RIGHT"
"A"
"B"
"C"
|
Metal64 |
| ||
Tektite Level: 18 Posts: 49/60 EXP: 25358 Next: 4539 Since: 02-02-16 Last post: 621 days Last view: 321 days |
Here a is the list of ROM locations for entities function
note: incomplete
|
Metal64 |
| ||
Tektite Level: 18 Posts: 50/60 EXP: 25358 Next: 4539 Since: 02-02-16 Last post: 621 days Last view: 321 days |
Sprites data
|
Metal64 |
| ||
Tektite Level: 18 Posts: 53/60 EXP: 25358 Next: 4539 Since: 02-02-16 Last post: 621 days Last view: 321 days |
here is the level order table, credits go to the user Billytime at the gamehacking.org for find it
At offset 004080 in the usa version lies a level order table. Here is the list of levels: 01 - Agrabah Market 02 - Abu In Agrabah 03 - The Desert 04 - Sultan's Dungeon 05 - Cave of Wonders 06 - Abu In The Cave 07 - The Escape 08 - Rug Ride 09 - Inside The Lamp 0A - Sultan's Palace 0B - Jafar's Palace 0C - Final Boss 0D - Give Up Street Rat (Game Over) |
Metal64 |
| |||
Tektite Level: 18 Posts: 55/60 EXP: 25358 Next: 4539 Since: 02-02-16 Last post: 621 days Last view: 321 days |
I gonna try to explain the best way possible about this address list above, every address in this list contain the ID of an entity, his movement and his sprites. Lets pick for example the offset 1B8070 and lets analyze it 0x1B8070
The first byte refers to the char id, since it starts with “07”, this code is from the green snake. Now let's change “07” to “35” which is the char id of the apple... if we get in contact with the green snake, we'll collect it as an apple. now let's change it back to “07” to make other changes. I'm going to show you how to turn the green snake into iago step by step At the offset 1B8077 change "12 16 C6 40" to "11 F7 2C 60" explanation: 12 16 C6 40 = is the green snake movement code. 11 F7 2C 60 = is the iago movement code. After modification, the green snake will act like this: Now let's go to offset 1B807D and change bytes “12 52 F0 06” to “12 2D F2 12” explanation “12 52 F0 06” is the green snake's sprite code. “12 2D F2 12” is the iago sprite code. After this modification, the green snake will have the iago sprites as we can see in the gif below: However, he doesn't act like an iago. The movement is not correct and he does not die like yago. He still dies like the green snake, and he can handle 3 apples instead of 1. Iago must die like this: https://i.imgur.com/10oDS6n.mp4 Let's take a look at the iago code, it starts at offset 1B7A6C: 0x:1B7A6C
now let's go back to offset 1B8070 and change “07” to “03” which is iago's char id and see what happens https://i.imgur.com/jF88kQm.mp4 Well, now he's dying like a iago, and it only takes an apple to kill him, but he still doesn't move like a iago and also the sprite of the defeated iago doesn't disappear. Let's go to offset 1B8072 and change "21" to "20" https://i.imgur.com/5ZEc5t7.mp4 Now all the green snakes are acting exactly like iago. The movement is correct and the defeated iago's sprite disappears. |
Metal64 |
| ||
Tektite Level: 18 Posts: 60/60 EXP: 25358 Next: 4539 Since: 02-02-16 Last post: 621 days Last view: 321 days |
So, I was trying to change the spikes on the ground (2 stage) to the green snake, using the method above, but the result was this:
technically the spikes are acting like the green snake, but as we can see the sprites arent right. well, as I previously point out, the offset for the spike on the ground is "1B8250". So, I decided search in the rom for "1B 82 50" as hexadecimal values... the result lead me in the offset "1B6F21"
If we go to the offset 1B6F21 and change the hex values "1b 82 50" to "1B 80 70" and then we go to the offset 1B6F2D and change the hex values "12 5A 4C" to "12 52 F0", we gonna obtain the desired result I dont know why in the case of the spikes on the grounds we can't use the same method that I used to turn the green snake in iago, but this new method works fine. |
Main - ROM Hacking - aladdin sega genesis - hacking notes | New thread | New reply |
© 2005-2023 Acmlm, blackhole89, Xkeeper et al. |
MySQL - queries: 88, rows: 119/120, time: 0.017 seconds. |