If you'd like to support our preservation efforts (and this wasn't cheap), please consider donating or supporting us on Patreon. Thank you!
Proto:Lufia II: Rise of the Sinistrals
This page details one or more prototype versions of Lufia II: Rise of the Sinistrals.
| This article has just been started and needs the article basics added. Help us out and add them. |
In July 2012, ASSEMbler games forum member Jackhead purchased a Japanese Estpolis Denki II prototype PCB from famous prototype collector DreamTR. While attempting to dump the chips with a Willem EPROM programmer, at least one of the chips suffered corruption. With no way to undo the damage, Jackhead resold the prototype to Trevormacro. With some examination of the crash logs, enough of the corrupt bytes were identified to get the game up and running. After documenting a mostly complete playthrough of the game in a forum thread, Trevormacro released the prototype along with an IPS patch file on July 12, 2013.
The unmodified corrupt prototype has a size of 2,621,440 bytes / 20 megabit (same as final) with the following MD5: D8CC3BDF62E42B3EE95326DEE3E910BE
The prototype contains significant differences. A textbox displayed during the game's ending includes a date of 7/18/1994, indicating that the build is from that date or later.
Contents
Corrupt Bytes
A list of known bytes damaged. See the Notes page for more details. EPROM writing clears bits; the corrupt bytes will have a lower value than their original state.
EPROM 1
0x000000-0x0FFFFF
0x000000 0x00 -> 0x78 0x004000 0x02 -> 0xFA 0x004400 0x02 -> 0x03 0x006600 0x00 -> 0x51 0x016600 0x01 -> 0x69 0x077600 0x02 -> 0x1E
EPROM 2
0x100000-0x1FFFFF
The corresponding locations of those seen on the first chip don't seem to be affected... More research required.
EPROM 3
0x200000-0x27FFFF
Unused Graphics
Win Poses
All characters have winposes after a fight, similar to the ones in the first game. They all look very rough and much different from even the used graphics in the proto, which would indicate they are leftovers from a very early build that never got updated graphics.
Known Bugs
A list of currently known bugs. If the game crashes, it has the potential to erase the save data.
Lake Cave/Sundletan Shop
The shop referenced above sells a glitched/unfinished item "F", and simply opening this shop menu overwrites Maxim's name. If you attempt to rescue Tia in Lake Cave following this, the game crashes while attempting to process the player name:
This bug affected Jackhead's initial playthrough attempt, before the EPROM corruption occurred.
Lake Cave Entrance
If you save the game inside Lake Cave, the puzzle at the entrance is reset. Maxim is unable to leave as the water level is lowered and the wood planks are on the other side of the water. Likely caused by the puzzle solved flag being stored to a temporary address in RAM which gets cleared, instead of a more permanent address that gets saved to SRAM. You can walk through walls with the debug mode to leave.
Alunze Castle B5 Underground Waterway Barrier
When stepping on the switch pictured above after the thieves are washed away, the barrier is lowered but it still acts like a solid wall that can't be passed. One way to bypass this is to enter Pro Action Replay code 7F3F7200, step on the switch, and then disable the code. Alternately, use the "walk through walls" function of the debug mode.
| To do: Find the exact cause of the bug. |
Tarantula Boss Battle
The bottom edge of the spider boss in Ruby Cave has glitched graphics while in its idle animation, and while attacking. It seems that when an enemy sprite has a y coord too close to the bottom half of the screen, it interferes with the battle GUI. This is also seen with the Gades boss battle (exists in the boss data, but not yet implemented into event data) which uses an extra large sprite. Not believed to be a corruption issue.
Underwater Animations
The final "PS" tile animation packet located at offset 0BB3A5-0BB3C6 (SNES address 97B3A5-97B3C6) used by four underwater locations is incomplete and will freeze the game a few seconds after entering the screen. This can be worked around by changing the A5B3 entries in the animation pointer table to 0000, which toggles animations off.
ID refers to the location index affected. The final column contains PAR codes to apply the fixes without having to make permanent changes in a hex editor.
| ID | Offset | Before After | Pro Action Replay |
|---|---|---|---|
| CD | 020BCF | A5B3 -> 0000 | 848BCF00 + 848BD000 |
| CE | 020BD1 | A5B3 -> 0000 | 848BD100 + 848BD200 |
| D3 | 020BDB | A5B3 -> 0000 | 848BDB00 + 848BDC00 |
| D4 | 020BDD | A5B3 -> 0000 | 848BDD00 + 848BDE00 |
Talking To Enemies
In dungeons, if you run away from a battle then attempt to talk to the monster sprite you just ran from, the game crashes.
Staying At Inns
If you stay at an inn that charges money, the game doesn't check if you can afford it before subtracting the amount. If the result is less than zero, the total gold amount rolls over, giving you a ton of money.
Debug Mode
The debug mode buried in the retail version exists in this build and is accessible without game enhancer cheats, but is in an earlier state with less features, and some other changes. It relies on the same 7E057C memory address, where the value is either $00 (off) or $FF (on).
To enable it, in a location, press Y + Start + Select and you'll hear a confirmation sound effect. To disable it, press L + R shoulder buttons (a sound effect will play for this, too).
Press Start to enter the first debug menu EV FLAGS.
EV FLAGS
Instructions:
- R - increase page
- L - decrease page
- A or B (in left column) - toggle flag (see Notes page for a list)
- A (in right column) - increase register
- B (in right column) - decrease register
- X - switch between EV FLAGS and TP FLAGS menus
- Y - go to debug main menu DEBUG COMMANDS
- Select - go to LOAD SAVE debug menu
TP FLAGS
Same controls as EV FLAGS apply.
LOAD SAVE
Instructions:
- A - load previously saved data, or save the game
- B or Start - go to EV FLAGS menu
DEBUG COMMANDS
Instructions:
- A GO TO WMAP - Instantly teleports you to the world map.
- Y MASK OFF - Removes the masking effect in interior areas, allowing you to see the entire map, including what's "behind the black".
- X SET MASK - Re-enables the masking effect.
- B TRANS SC - Sprites that were disabled by SPR OFF reappear. Unknown if this is the sole intended purpose of this command.
- R SPR OFF - Removes all sprites from the screen; leave the screen to make them reappear. Also note that this only removes the graphic, not the coding, so it's possible to run into invisible enemies if this is used inside a dungeon.
Hex values displayed:
- 1st line - Maxim's current X coord and Y coord. RAM addresses 7E06B6, 7E06DE
- 2nd line - The X coord for the first 8 NPCs (towns) or enemies (dungeons). RAM addresses 7E06BE-7E06C5
- 3rd line - The Y coord for the first 8 NPCs (towns) or enemies (dungeons). RAM addresses 7E06E6-7E06ED
Menu Controls
Move the cursor over SPELL or CAPSULE and press X for various bonuses:
- SPELL - Gives every character who can use magic all the spells they can carry.
- CAPSULE - Toggles whether or not the option can be selected. Capsule monsters are in a very preliminary state.
Location Controls
Instructions:
- Hold Y to dash and walk through walls.
- Press Select to enter a battle (not in locations where the tool ring can be brought up)
| To do: Add cycle sprites controls. |
World Map (WMAP) Controls
Instructions:
- A - board airship
- Start - pause game
Proto vs. Final Comparison
| Proto | Final |
|---|---|
![]() |
![]() |
The coordinates hex values were replaced with console info and build details.
Dash/WTW was changed from Y to B and the trailing fire animation seen here was removed for the retail version:
Unused Debugging Features
RAM/ROM Monitor
Programming for this RAM/ROM monitor begins at $80C9C9, but no routine was found that calls it. Use PAR codes 80C71FC9 80C720C9 to access it in place of the debug menu load/save submenu.
Instructions:
- L - decrease bank
- R - increase bank
- Up - address -0x1000
- Down - address +0x1000
- Left - address -0x80
- Right - address +0x80
- Start - exit
Unknown Z0 Y1 Z1 XR YR
No programming was found related to this menu; only the text printing exists. The memory addresses for each entry are as follows (Z1 is a 16-bit value, all others are 8-bit):
- Z0 - 7E14C5
- Y1 - 7E00A0
- Z1 - 7E0051
- XR - 7E1465
- YR - 7E1485
All values are displayed in decimal format. It may be possible to determine its original purpose by the memory addresses used.
Locations
| Elcid Elcid, Elcid South Cave, and Elcid North Cave. |
| Sundletan Sundletan, Lake Cave, and the Shrine to Alunze Kingdom. |
| Alunze part 1 Alunze Kingdom, Foomy Woods, and Nikoru/Koniru (an unused village!). |
| Alunze part 2 Alunze Castle, Alunze Northwest Cave, and Alunze North Shrine. |
| Tanbel Tanbel and Tanbel Southeast Tower. |
| Doom Island An early, unfinished map. |
| Unknown shrine Location $F1 |
| Mystic Stones The various Mystic Stone chambers. |
Location Names
A summary of map names that were changed. The name changes apply to all floors of a given location. For simplicity, the table below lists just the first floor (e.g., B1 for applicable dungeons)
| To do: Elcid North Cave, Elcid South Cave, Lexis Labs |
| ID P/R | Prototype | Translation | Retail JP | Translation | Retail NA |
|---|---|---|---|---|---|
| 42/40 | メリクス 北の洞窟・B1 | Merix North Cave B1 | 橋の洞窟・地下1 | Cave Bridge B1 | Cave Bridge B1 |
| 49/47 | 北の洞窟・B1 | North Cave B1 | 北の迷宮・地下1 | North Labyrinth B1 | North Dungeon B1 |
| A5/A3 | まよいの山 | Lost Mountain | 帰れずの山 | Mountain of No Return | Mountain of No Return |
| D3/CD | 神の海底都市 | Submarine City of the Gods | 神の海底神殿 | Submarine City of the Gods | Submarine Cave Shrine |
Graphical Differences
| To do: Move to Location subpage eventually. |
Submarine Shrine Floor Tiles
| Proto | Final |
|---|---|
![]() |
![]() |
The programmers forgot to update the reflection on the floor when the wall design used in the prototype was changed.
Audio Differences
Music
| To do: Add song files to this page. |
The prototype contains 4 tracks "PANICK", "SORA", "WAKARE2" and "SERENA" that were replaced in the final build with dummy ("DAMY") placeholders.
- PANICK - Song ID $0C. A "critical moment" type song. It's unused in the prototype, and unknown where it might have been used.
- SORA - Song ID $0E. The Excerion theme with a longer intro, which can also be heard on the Lufia II OST CDs. In the final, its song ID of $0E was dummied out and the replacement SORA added as song ID $39
- WAKARE2 - Song ID $30. Unused in the prototype, and unknown where it might have been used.
- SERENA - Song ID $31. The sad theme from Lufia 1, which can also be heard on the Lufia II OST CDs. "Serena" is Selan's japanese name.
Additionally, other songs contain small differences and/or are less polished than their final counterparts. In particular, Saigo Kessen ("The Final Decisive Battle") which is the background music of Doom Island, plays for only two loops in the proto while in the final version it plays for two-and-a-half loops. The prototype also switches from a brass ensemble to a string ensemble for the second loop's intro, whereas the final version retains the brass ensemble for both loops.
| To do: Comparisons. |
PAR code 82DD3Bxx can be used to change the song that plays on the load screen.
These songs are NOT in the prototype ($39 SORA being the shorter Excerion theme):
| To do: Explain where these songs are used in the final, and what the prototype uses instead (e.g., the Mystic Stone areas use one of the tower tracks). |
| ID | Title |
|---|---|
| 37 | NAZO NO HITO |
| 38 | KOKUUTOU DAS |
| 39 | SORA |
| 3A | BOSKAIWA |
| 3B | NAZONOFUE |
| 3C | MUUS CYANGE |
| 3D | NALBIK |
| 3E | MUUS 2 |
Internal SPC Track Names
The decompressed SPCs contain a 16-byte header (see Notes for more details) which includes a short song title/description.
| ID | Title |
|---|---|
| 00 | FIELD |
| 01 | SHIRO |
| 02 | MACHI |
| 03 | MURA |
| 04 | OYASUMI |
| 05 | TOU |
| 06 | OPENING 2 |
| 07 | DOROBOU |
| 08 | DOUKUTHU |
| 09 | CUCHYUTEIEN |
| 0A | DENSETU |
| 0B | HANA |
| 0C | PANICK |
| 0D | OPENING.1 |
| 0E | SORA |
| 0F | KEKKONSHIKI |
| 10 | PARTY |
| 11 | WAKARE |
| 12 | UMI |
| 13 | YAMA |
| 14 | MUUS |
| 15 | MINATO |
| 16 | MACHI HAKAI |
| 17 | DOUKUTHU 1 |
| 18 | BATL 1 |
| 19 | BATL 2 |
| 1A | HAKA |
| 1B | BIG BOS |
| 1C | LAST BATL |
| 1D | KACHI |
| 1E | HOKORA |
| 1F | KENKYUUZYO |
| 20 | KAICYU |
| 21 | KAICYUCITY |
| 22 | KAZINO |
| 23 | 777 PLAY |
| 24 | 777 JAC GAME |
| 25 | 777 START |
| 26 | GAAAAN |
| 27 | HARU |
| 28 | NATU |
| 29 | AKI |
| 2A | FUYU |
| 2B | NAME IN |
| 2C | SHINDEN |
| 2D | ENDING |
| 2E | LOVE |
| 2F | SHINDEN |
| 30 | WAKARE2 |
| 31 | SERENA |
| 32 | HIDECKA |
| 33 | ITEM GET1 |
| 34 | ITEM GET2 |
| 35 | ITEM GET3 |
| 36 | ITEM GET4 |
Sound Effects
| To do: Comparisons. |
PAR code 838071xx changes the sound effect played when debug mode is toggled (see Notes page for a list).
Enemies
Enemy Graphics
| To do: Rip graphics, a table of different enemies started below. |
The Sinistrals all have different battle graphics.
- Gades
| Proto | Final |
|---|---|
![]() |
![]() |
The following enemies had their graphics and/or palettes changed:
ID Name 07 08 0E 0F 10 11 17 18 19 1E 2E 31 32 33 34 36 37 38 39 3E 3F 40 41 42 43 44 45 46 47 Mosquito 4C 4D 71 76 84 90 91 AB Mimic AC Blue Mimic C2 C6 Gades C7 Amon C8 Erim C9 Daos
Enemy Names
There are seven names that were changed. Enemy $AC (a fake treasure chest monster) underwent a palette change to become a "new" enemy and match the color of the blue treasure chests found in the Ancient Cave (which wasn't added yet in the proto).
| ID | Prototype | Translation | Retail JP | Translation | Retail NA |
|---|---|---|---|---|---|
| 09 | リザード シャーマン | Lizard Shaman | リザード メイジ | Lizard Mage | Skull Lizard |
| 7A | ネクロマンサーA | Necromancer A | ネクロマンサー | Necromancer | Necromancer |
| AC | ゴールドミミック | Gold Mimic | ブルーミミック | Blue Mimic | Blue Mimic |
| BA | ネクロマンサーB | Necromancer B | しりょうつかい | Necromancer (lit. "User of the spirits of the dead") | Wizard |
| BB | ネクロマンサーC | Necromancer C | ダーク サモナー | Dark Summoner | Dark Sum'ner |
| BC | なまず | Catfish | おおなまず | Big Catfish | Big Catfish |
| BE | くも | Spider | おおくも | Big Spider | Tarantula |
- Entry 09 only displays the first 8 characters in battle - リザード シャーマ Enemy names in the prototype can be up to 10 bytes, but the programming to display them only reads 8 bytes. The Japanese retail version shortens the maximum name length to 8 bytes, and required this enemy name to be changed in order to fit.
Items
Keys
In the prototype, keys don't have specific names. Key 05 is found and used in two dungeons, clearly a mistake. You can use your Ruby Cave key in Gordovan West Tower to skip the immortal zombie puzzle. Keys 06 through 10 exist in the item data but weren't yet placed into treasure chests.
| Item ID | Name | Translation | Where it's found |
|---|---|---|---|
| 015A | 力ギ01 | Key 01 | Elcid North Cave |
| 015B | 力ギ02 | Key 02 | Alunze Northwest Cave |
| 015C | 力ギ03 | Key 03 | Tanbel Southeast Tower |
| 015D | 力ギ04 | Key 04 | Lake Cave |
| 015E | 力ギ05 | Key 05 | Ruby Cave, Gordovan West Tower |
| 015F | 力ギ06 | Key 06 | n/a |
| 0160 | 力ギ07 | Key 07 | n/a |
| 0161 | 力ギ08 | Key 08 | n/a |
| 0162 | 力ギ09 | Key 09 | n/a |
| 0163 | 力ギ10 | Key 10 | n/a |
Item $0167 Description
The item name and properties for item $0167 weren't yet implemented (which causes the glitched "F" item in the Sundletan shop noted in the Bugs section), but the text table of item descriptions does have an entry for it. In the North American retail version, the Green tea occupies the slot in that shop. The Japanese description is a bit more expressive, translating to, "The green tea is hot-hot-hot-hot-hot!"
Shops
Skills Shops
Skills shops can be found in Nikoru / Koniru, Tanbel, Parcelyte, Bound Kingdom, Narcysus, Treadool, Auralio Kingdom, Treble, Barnan and Chaed. Here, you can buy skills like Arrow and Bomb, which are normally found and used in the game's dungeons. This implementation is far different from what we got in the final version (and this prototype, where you start a new game with a full skill ring).
These shops feature a "Skill" graphic in the upper left corner and a wallpaper depicting a bow and arrow, bomb and chain links (from the Hook or Hammer).
The inventory for each Skills shop is identical no matter which village/city/kingdom you're in. There's ten total items for sale. All of the skills are available for purchase except the Fire arrow.
In these shops you can buy 2 upgraded versions of the bomb skill not seen in the retail version. However, they're identical to the original except for the name and cost.
| To do: Each character can equip certain skill tools, it seems |
| ...But what does it mean? This game has text or audio that needs to be translated. If you are fluent with this language, please read our translation guidelines and then submit a translation! |
WARNING: Language tag not added.
| To do: Finish table (the two screenshots above show the full shop inventory) |
| Item ID | Name | Translation | Cost |
|---|---|---|---|
| 0147 | フック | Hook | 2000 Gold |
| 0148 | ボム | Bomb | 1000 Gold |
| 0149 | ハイボム | Hi-Bomb | 2000 Gold |
| 014A | TODO | Ex-Bomb | 3000 Gold |
| 014B | アロー | Arrow | 1000 Gold |
| 014D | TODO | Hammer | 4500 Gold |
| 014E | てぶくろ | Gloves | 2500 Gold |
| 014F | TODO | Sickle | 1800 Gold |
| 0150 | TODO | Whirlwind (Sickle) | 3100 Gold |
| 0151 | TODO | Lawnmower (!) | 1500 Gold |
Description for item $0148 (skills descriptions aren't visible in retail version IIRC as they're not inventory items anymore):
Description for item $0150 (not in retail version):
Hidden Tiles
There are several invisible event and exit tiles located one step down from Maxim's position in the screenshots below.
Elcid (water)
Executes this event script starting at offset 0F2905 (SNES address 9EA905):
2B01 Add Selan 2B02 Add Guy 2B03 Add Artea 351A F201 (chrnum 26 in location index F2 related) 3529 F401 (chrnum 41 in location index F4 related) 16F2 6301 Warp to location index F2 Doom Island
(take a few steps down for the entrance event)
Also tacked on the script above are some commands used to instantly finish the game:
1A83 Set event flag $83 (destroyed Mystic Stone 3) 16F6 0207 Warp to location index F6 (final room) 00 end
However, there's no known way to reach this part of the script.
Elcid (tree)
Either of the two tiles behind the tree executes this event script starting at offset 0F291E (SNES address 9EA91E):
2B04 Add Tia 1A0A Set event flag $0A (this is the same flag set when entering Tia's shop at the beginning of a new game, so no effect) 00 end
WMAP (Nikoru/Koniru)
An entrance to an unused village!
WMAP (water)
Step on any of the top three dark blue edge tiles to warp to Doom Island location index $F2.
Unlike the Elcid hidden tile, no party members are added.
| The Lufia series | |
|---|---|
| SNES | Lufia & The Fortress of Doom • Lufia II: Rise of the Sinistrals (Prototype) |
| Game Boy Color | Lufia: The Legend Returns |
| Game Boy Advance | Lufia: The Ruins of Lore |































