Dragon Quest IV - Michibikareshi Monotachi
|Dragon Warrior IV|
Dragon Warrior IV was phenomenally popular in Japan as Dragon Quest IV, but wasn't released in the west until late in the NES' lifespan, when most non-Japanese gamers were already occupied with 16-bit platforms.
Nevertheless, IV featured an innovative (for its time) chapter-based story system and continued the series' tradition of solid gameplay, eye-catching monster designs, and a memorable soundtrack. It was later remade for the PlayStation in Japan only, but that version was later ported to the DS and released internationally.
- 1 Subpages
- 2 Debug Features
- 3 Unused Abilities
- 4 Unused Enemies
- 5 Revisional Differences
| Regional Differences|
Not quite as many as the previous games in the series.
A debug mode can be accessed with Game Genie code ATEGAENY. When you start a new game, you will be given a chapter selection menu. If you press B at this menu, you will start at Chapter 5 with a full LV1 party, and the hero gets 65535 HP and MP, all spells available, and all return destinations available. If the hero is healed, he will lose the 65535 HP.
Otherwise, if you get to Chapter 5 and skipped earlier chapters, the characters from the previous chapters will join the party with 0 for all stats, including HP and Max HP, making them useless.
While using the debug code, you can also hold B to walk through walls, and the Return list is in a different order and has additional destinations.
Dragon Warrior 2 and 3 had an "Open" spell to unlock doors, learned at an extremely high level but obviating the need for keys. While none of the heroes in DW4 learns this spell, it does exist in the ROM and is fully functional, although its name is a blank space in the US version. In the Japanese version the spell has the same name as it did in the previous games, アバカム. The Game Genie code PLNOGPIU for the US version, or PUUPLPIU for the Japanese version, will replace Brey's Outside with Open (note that this code will only work if Brey has already learned Outside--changing the spells a character learns requires more invasive surgery than a single GG code)
Presumably the spell was disabled (and never brought back in any subsequent main-sequence DQ game) because being able to open any door just by gaining enough levels would play havoc with the storyline.
Find out more about the enemies' stats and actions during battle. Also figure out where on the ocean each is actually supposed to appear after the bug is fixed.
Six entirely unused enemies are hidden away in the code, along with four enemies that can only be encountered under very specific circumstances.
A palette swap of Roric, minus the boomerang (it's hidden by using an all-black palette). His battle stats (at 61094 in the ROM) are clearly incomplete: nine zero bytes (giving him zero HP, MP, attack, defense, agility, experience and gold) followed by "(193)" and eight spaces in ASCII (most likely some kind of placeholder, although he's actually enemy number 189 in decimal).
For the record, he's one of the few human opponents in the Dragon Quest/Warrior series, despite never being used in a final product.
Unused sea enemies
The following five enemies have complete stats, but don't appear anywhere in the game. All of them were intended to be encountered at sea, and do appear there in the PSX and DS remakes.
A palette swap of Pteranodon and Chillanodon.
A palette swap of Poison Lizard and Baby Salamand.
A palette swap of Great Ohrus and Sealthrope.
A palette swap of Giant Worm and Sand Master.
A palette swap of Bangler.
Rare sea enemies
The following four enemies can be encountered, but only when a random encounter occurs on the exact step you transition from the Shrine of Breaking Waves to your ship on the world map. Like the above five, they all appear normally in the remakes.
A palette swap of Guzzle Ray and Raygarth.
A palette swap of Elefrover and Tentagor.
A palette swap of Armor Scorpion and Metal Scorpion.
Another palette swap of Bangler.
The reason so many sea enemies don't appear anywhere, while others only appear under specific and strange conditions is, not surprisingly, because of a bug in the code that calculates what encounter zone you're in. The encounter zones for each roughly screen-sized section of world map (16 by 16 squares) are packed into a single byte, with the land encounter table index in the lower 6 bits and the sea encounter table index in the upper 2 bits. The bugged code starts in bank 18, address 9C5A (offset 61C6A in a headered .nes ROM image):
18/9C5A: AD 45 A2 lda $A245 ; lo byte of ptr to world map encounter table 18/9C5D: 85 00 sta $00 18/9C5F: AD 46 A2 lda $A246 ; hi byte of ptr to world map encounter table 18/9C62: 85 01 sta $01 18/9C64: A5 42 lda $42 ; player's X position in map squares 18/9C66: 4A lsr 18/9C67: 4A lsr 18/9C68: 4A lsr 18/9C69: 4A lsr 18/9C6A: 85 06 sta $06 18/9C6C: A5 43 lda $43 ; player's Y position in map squares 18/9C6E: 29 F0 and #$F0 18/9C70: 05 06 ora $06 18/9C72: A8 tay 18/9C73: B1 00 lda ($00),y ; read packed encounter table indexes 18/9C75: AE 15 05 ldx $0515 ; current vehicle (0 = on foot, 1 = ship, 2 = balloon) 18/9C78: E0 01 cpx #$01 18/9C7A: F0 05 beq ship 18/9C7C: 29 3F and #$3F ; the land encounter table is in the lower 6 bits 18/9C7E: 4C 88 9C jmp storeit ship: 18/9C81: A5 07 lda $07 ; bug! this variable hasn't been initialized yet 18/9C83: 0A asl 18/9C84: 2A rol 18/9C85: 2A rol 18/9C86: 29 03 and #$03 ; the sea encounter table is in the upper 2 bits storeit: 18/9C88: 85 07 sta $07
The uninitialized variable $07 contains the index of the encounter table that was checked the previous step. So each step you take on the ocean, the game uses the index of the previous encounter table divided by 64 as the current encounter table. As a result, the only time a table other than table 00 gets used is when you have an encounter immediately upon moving from an area with an encounter table index of 64 or greater. The only such area that you can move directly into the sea from is the Shrine of Breaking Waves.
The four enemies that you can encounter via the Shrine of Breaking Waves method are in encounter table 01. If there were a dungeon with an encounter table index of 128 or greater that was accessible by ship, you could encounter the remaining five enemies (all of which are in encounter table 02), but the encounter tables used by the game don't go that high.
To fix the bug, change the byte at ROM offset 61C8B from 05 to 07 (i.e. change the destination of the beq so it skips over the bogus lda $07). A Game Genie code for the bug fix is YANOUGIA.
The speech of this soldier in Chapter 5 was changed between the first and second Japanese revisions:
|Japan PRG0||Japan PRG1||US|
His line in the US version is a direct translation of the PRG1 line. The PRG0 line translates to "Please tell Ryan [Ragnar] to come back to the castle once in a while."
In all versions, he only says this line if Ragnar/Ryan is not in the active party; if he is, the soldier greets him instead.
Casino text color
Like the other Dragon Quest/Warrior games, the color of the text windows changes if you have a party member who is severely wounded or dead (in this game, to green or red respectively). In the first Japanese revision, the text windows change color no matter where you are. In the second Japanese revision and the US version, when you're in the Casino in Endor, the text windows remain white regardless of the status of your party members.
|Japan PRG0||Japan PRG1||US|
Party AI improvement
There are other differences in the battle/AI code between the two Japanese revisions; figure out what they mean.
In the first Japanese revision, the party AI in Chapter 5 evaluates damage-dealing spells based on the average damage dealt by each spell. In the second revision and the US version, it was changed to use the minimum damage instead. This change ensures the AI does not choose a spell too weak to finish off an enemy when a stronger spell is available.
|红白机NES/FC官方||勇者斗恶龙 • 勇者斗恶龙II - 恶灵的众神 • 勇者斗恶龙III - 接着迈向传说 • 勇者斗恶龙IV - 被引导的人们|