A run that aims to finish Dragon Warrior II as fast as possible. Actually the first goal was to make this console-verifiable to show in a future TAS block. But it turned out that no resets or other changes are needed so it stands as an any% run as well. There are several glitches in this game that are not interesting to a TAS and no known ACE exploits.
The original Japanese Dragon Quest II can be done a few minutes faster mostly because it lacks the unskippable opening scene. A few other changes make the two versions quite a bit different. The biggest change is that Dragon Quest II had no savegame battery, you had to write down a password. That doesn't come up for us since we never reset.
Used FCEUX 2.2.3 as console verification tools are set up better for it. It does not sync on BizHawk due to lag differences. This doesn't matter for console verification since TASBot just ignores lag.
Most of the improvement ideas for this run came from a Japanese TAS of Dragon Quest II, the original Japanese version of this game. Most of the glitches, tricks and game mechanics are the same in this version. The main difference is using the main hero more or less exclusively, leaving his cousins to follow as ghosts for the entire journey.
The previous run
was done by me in 2006. At that time I did not disassemble the RNG or have a good handle on a lot of the internals. As a result I assumed that it would be necessary to get some advantage on Malroth more than just dodging his blows. After considering a few different schemes I settled on leveling up the princess to get Surround and then reviving her before the fight to use it. Compared to the new solo route there were a lot of points where time was lost to get experience to the princess. However, having the princess alive also saved time at a few other points, part of why the improvement is not so big.
Like most of the classic Dragon Warrior games, this game actually has a fairly strong RNG. There is a 16 bit linear feedback shift register used for most checks. The system is initialized based on the character name and message speed. It gets re-initialized on saving with data such as your stats and inventory shifted in as well. There are some additional accumulators and counters that make some events even more random. Some things are completely controlled by the main RNG though:
- Triggering encounters
- Enemy groups and starting hps
Things that are more complicated:
- Preemptive/surprise attacks - one input is a counter that can often be manipulated to force or avoid preemptives. The "But the enemy did not see you" message takes so long to display that it is usually better to not get preemptives.
- NPC movement
- Hit/miss/crit - There is a very complex accumulator system that I gave up trying to figure out. I found the best way to control this was to allow an enemy to attack first which is why you will see much fewer preemptive fights and more enemy attacks than you might expect.
You start out with just the leather armor, but the chest from the king gives you a copper sword and 50 gold. The 50 gold plus 113 from selling leather armor gives me enough to buy two wings in Cannock. We also get a lottery ticket. Playing the lottery nets me a Wizard's Wand which I can sell for 1875 gold. I also pick up an Iron Helmet from a metal slime which sells for 2363 gold. This is more than enough to buy the rest of the items I need: a broadsword (1500 gold), jailor's key (2000 gold), medical herbs (15 each) and more wings (80 each).
With a decent broadsword in hand the necessary fights are really no problem with the level of manipulation we can bring. That is, until the final battle. Critical hits are not possible and with a minimum of 189 hp the fight can be several rounds shorter with just a few more damage. The previous run reached level 13 and was able to do about 8-9 damage per hit. Well, there is a tradeoff between the damage amount and the time spent waiting for good luck on each hit. At level 14 we can do as much as 12 damage and achieve much higher DPS. But it takes a lot of experience even at that point.
I wouldn't have expected level 14 to be worthwhile if I hadn't seen how the Japanese TAS manipulated a very rare group of five metal babbles to get it done so efficiently. The key here is a hidden experience bonus applied when more than one enemy shows up to a battle. The bonus is 10% for each enemy past the first, so 40% for five enemies. The bonus is set at the start of the fight so it doesn't matter if enemies run away or call for reinforcements. This means that the two metal babbles that flee still contribute a 20% bonus to the three that die, giving us enough xp to reach level 14 after Zarlox.
Attack/defense update glitch
Your attack and defense are actually only updated after going through the equipment dialog or leveling up. So if you sell, throw away or uncurse an equipped item you still get its stats until changing equipment or leveling up. Unfortunately this is only harmful to us as it means we retain the defense level of the leather armor after selling it and enemies do less damage when we are trying to set up a deathwarp!
For an unmanipulated run this is a huge sanity saver in the endgame. It can be activated by changing equipment in Hargon's fake Midenhall and then using the Charm of Rubiss or walking out. Doing so can result in having two hits from the Falcon sword with the attack power of the Sword of Destruction and no curse either. However for a TAS it would not only be costly timewise to get 25000 gold for the Falcon sword but the glitch would end on each levelup!
The RNG gets checked every step and compared to a threshold that varies based on the terrain. If it is under that threshold then you get a fight.
- Ship: 4
- Towers, dungeons: 8
- Grassland: 10
- Forest: 16
- Mountains: 25
- Dark transition in dungeon or tower: 84
There is quite a bit of variation. The two keys are watching the terrain in the overworld and where the transition points happen in dungeons and towers. On the other hand when we want to find a random fight, pushing into the dark is the best way to do it. That also gives more control over the enemy group we see.
The RNG advances an extra time almost every non-lag frame. When walking around it lags except for one frame each step. So on each step it gets one RNG to check for encounters and burns another one. You really want to look at every other RNG value to see when your next fight will be. Stopping gets quantized to 16 frames so each step stopped will advance the RNG 16 times. To get more refined control you can hit A to open the menu. The RNG advances once every frame and you can hit B at any point to land on the RNG you want. It takes 44 frames to do this. Occasionally it's worthwhile to open the menu just for manipulation. But we'll try to avoid that and just take advantage of it when we have a reason to open the menu. Any dialog can also be used as a manipulation point.
Optimizing this is tricky. 16 frame stops are the shortest thing we can do. But we need the menu for more precise control and to switch the even/odd parity of which numbers control encounters. However, typically the biggest concern is lining up good luck to manipulate a deathwarp or story fight. So first I would go through a section using the menu. This takes longer overall but doesn't advance the RNG as much. Then I can see if there is a good spot earlier on the RNG or if it is better to use more 16 frame stops to save time manipulating away fights.
There is a random factor in enemy hp that applies to all fights. Each enemy's hp can be up to 25% lower than their maximum value. For many required fights in the run getting close to the lowest value is necessary to one-shot them. This hp tweak gets done based purely on the main RNG so it is easier to manipulate than other battle mechanics.
We name the hero 'W' to save time when it gets printed out. This also gets us the shortest names for the two cousins, Lars and Roz. Slow message speed actually prints out most test at the same rate, just with more stops to hit a button. We can use those points for manipulation. This is likely a translation artifact as the printing rate actually does change in the Japanese version.
The three minute opening sequence was added to the US version to expand the plot a bit more. Once the messenger says his piece and dies we can get underway. We start with leather armor and open a chest for 50 gold and a copper sword.
Even if this is going to be a solo run we still need to get the two cousins to pass some crossings that will be blocked otherwise. So first we head to Cannock castle, home to one of them. On the way we drop the unneeded copper sword and take some damage in the swamp to set up for an upcoming deathwarp.
In Cannock we sell the leather armor and buy two wings. We get one lottery ticket, a 25% chance random bonus on buying something from an item shop. Talking to the king is a necessary plot trigger and we also save our game. An interesting detail I discovered is that talking and not saving still sets the point where wings take you, just not where you get revived on dying. Anyway, we head out and travel to the Spring of Bravery cave. We find out that we missed the prince and then get into a fight to die. The big cobra has the hardest hits out of the enemies here, getting us a one shot death with less setup in the swamp earlier.
Revived in Cannock, we head down to Leftwynn and meet up with our second party member Lars. This will be the first of many times we take advantage of the ability to use wings from a town. From outside of Cannock we head through a shrine - where we would have been stopped without Lars - and cross through a small cave in the next continent.
On reaching the next town of Hamlin we use our lottery ticket to win a wizard's wand. This was manipulated not just for the prize but also to get the reels to stop sooner. Then we save to update our revival and wings point. The next trip is the Mirror of Ra, found in the swamp after a bit of a walk. We take advantage of this to drop some hp for another deathwarp and then use our second wings to warp back to Hamlin. Now we head for the tower of Wind and pick up the Cloak of Wind. The next deathwarp takes advantage of the relatively high damage from the magician's firebal spell. Revived in Hamlin we use the mirror to release the princess from her furry form.
The journey to the next town is one of the rougher sections of the game. First we have another shrine crossing where we would be stopped without the princess. On the way we admire Moonbrooke castle from the swamp, once again taking damage for an intentional kill. In the desert we encounter a metal slime to get some gold and experience we'll need shortly. There were a lot of ways this could have gone down and it really came down to what fit well with the RNG. It turned out that the princess was able to get a good hit before going down to a fireball. This was a little faster than taking time to equip the wizard's wand to up our attack power enough for a one shot kill. We get an iron helmet and a few levelups as a reward. Continuing on, we climb the tower and jump off, crossing the strait to reach the next town of Lianport.
In Lianport we sell the wand and helmet, raising all the gold we'll need. We spend some of it on a broadsword, powering up just in time for our first plot-required fight. Conveniently, this puts us in range to one shot these gremlins in combination with manipulated lower starting hp. Gremlins like to use sleep, giving us an attack we can easily manipulate to miss. They drop wings and it is faster to get them that way then from an item store. Now we have a ship!
With the ship we can sail all over. There are a lot of things to do and get but the first order is to get some keys. The first key is in the small fishing town of Zahan. This is supposed to be a small fishing town but the people are actually all crammed into one part of town, making it easy to lag. Walking around the dog saves a small amount of time compared to letting it show us where our first key is. The next stop is the fire monument for the sun crest. This is the first of five crests we need to assemble to earn the Charm of Rubiss. On this time through we sail right by the world tree. Getting a leaf of the world tree was actually worth considering because it isn't far out of the way and temporarily reviving the princess would allow her to use her healing magic. But it turned out to not be the fastest option.
Anyway, we reach the town of Wellgarth which is mostly accessible only with the golden key we got in Zahan. There we visit the special item shop and select the blank spot in their list to buy the Jailor's key for 2000 gold. We also buy some more wings and two medical herbs. Finally, there is one more errand in this town. We use the keys to track down the thief Roge Fastfinger who hands us the Watergate key he stole. With this done use wings, heading back to Hamlin.
In Hamlin we can now open some doors to reach a jail where we are attacked by two Ozwargs. These palette-swapped gremlins are a little stronger, with higher hp and a few different moves. It is a bit tight but we can still one-shot them for a fairly quick battle. The reward is the water crest lying on the ground where one was standing. To get out quickly we use some wings after picking it up.
The next stop is the lighthouse tower on an island in the inland sea not far from Hamlin. This is one of the longer dungeons with a winding path through the large bottom floor before climbing up and following a strange old man down. Since he isn't suspicious at all we open the chest he leads us to, only to be ambushed by four gremlins. Well, that's the plot but we actually enter the fight with a preemptive free shot in the first round. A note about this, every battle in the game can be preemptive or a surprise attack. You can also run, but for plot battles this will not be productive. Either enemies will still be there or will you will not get a needed reward. Anyway, these are the same gremlins as before, we just need to deal with four of them instead. That takes four rounds with one crit for each. At the end we manipulate another wings drop and also get the stars crest.
After getting the crest we jump off the tower and get back on the ship. It is a short trip to a shrine with a teleporter giving us a shortcut to the next area we need to visit. From the other side a little hike takes us to the town of Beran. There we enter to save our game and set our spawn point one last time. Using wings brings our ship back to us.
The last town we visit in this run is Tuhn. The initial visit is a bit of a trek up the river followed by a hike through mountains and forest. The main reason for coming here is to open up the watergate with the key we recovered from the thief in Wellgarth. This connects the river to make the return trip easier and provide access to the tower of moon.
While we are here, we stop by the item shop since we pass right by it. Now we could have gotten everything we needed in Wellgarth and avoided the extra dialog the comes with an extra visit to the shop. But it is worth it because by putting off getting these wings we are able to avoid transferring items between our characters. As ghosts the other two characters can hold items but not use them. At this point the main character's inventory is starting to fill up with keys and necessary quest items, even as we throw away what we are done with. Another plus is that the wings we need are the first slot in the item shop. Side note, while passing items to the ghosts is weird, the Japanese version has coffins instead and the transfer is described as putting items in and taking them out of the coffin.
After opening the watergate we use wings to get back to Beran for another river voyage to the tower of moon. This tower is much easier to navigate. A few floors up and down and we find the chest with the moon fragment. Our first death in a bit and at this point the enemies are strong enough that it is quite easy to die.
Back in Beran with our moon fragment, we head out on the next trip. The moon fragment raises the tide, turning the shallow shoals into passable ocean that gives us access to to the sea cave. Interestingly, there is a small variation in lag depending on which direction you approach from and where you use the moon fragment. This sea cave can be a bit of a maze when you don't know where to go. But it is actually not long when you do. The lava here only does one damage per step, funny when you consider that swamps do two. Anyway, since our hp just refilled on that last death we have no problem getting through to the end.
The required fight vs two evil clowns is actually a little easier than some of the ones we have already won. They have multiple useless moves we can use to manipulate luck. Instead we let one attack since the animation is faster. Just past them is the chest with our next key item, the eye of Malroth. Another quick and easy death to get out and we are back in Beran.
Now we get to the infamously difficult endgame. This next part is what we got the medical herbs for. These squares do 30 hp of damage per step. We don't quite have 60 hp so we can only take one at a time. Luckily there are only three squares and then a small patch of swamp to deal with so two medical herbs is all we need. This cave has several important items and on this first trip we will get two of them. First is the basement chest containing the life crest. This basement has an annoyingly very high encounter rate. Then we head through the cave and down a long side passage to find Erdrick's armor. While not strictly necessary this is a key pickup because it allows our hero to pass harmlessly over the damage squares that slowed us down before. We now take a death to get back to Beran - quick and easy with these enemies.
Revived in Beran once again, we take the ship to get the last key items. First stop is Osterfair to get the last crest. The king makes us fight his pet saber lion before giving it to us. The saber lion has an extra high dodge rate, making it difficult to manipulate the crit we need for the kill. So we take some damage to prime the RNG a bit. With the last crest in hand we head back to the ship and sail to the shrine of Rubiss. After taking a few stairs down we are granted the Charm of Rubiss and use some wings to get back to Beran.
We have a much easier time getting back to the Rhone cave with Erdrick's armor and the entrance already open. With everything we need we can head straight through the cave and on to Hargon's castle to finish things up. Only problem is that the endgame is going to throw a series of powerful boss monsters that we need to prepare for. First step to do that is picking up the game's most powerful weapon, the Sword of Destruction. It can only be obtained from enemy drops. The least tanky of those enemies is the green dragon. The encounter with a single green dragon is fairly rare and the drop rate is low, making this method less viable for unmanipulated runs. I would say that luck is no object for us, but we do let it attack and almost kill us because it is tricky to manipulate a miss. The Sword of Destruction is cursed, but the curse's only effect is to randomly cause us to miss a turn. On the other hand it ups our critical hit rate, an overall pretty big upside for our purposes.
Finally we pass through the cave and reach the endgame area of Rhone. We have no need to save or heal so we head straight to Hargon's castle. The charm of Rubiss, eye of Malroth and our two keys are needed to reach the final tower with Erdrick's armor getting us past the long passages of damage squares. But wait, we forgot to grind out some levels! To catch up, we will encounter five metal babbles. A very rare enemy group with the richest xp payout. Since our hp is almost down we force all of their attacks to be surround. After the first one works the following ones skip the result message, speeding things up. The two that run contribute a 20% xp bonus to the three we do take down.
Now the boss rush. First up is Atlas. His AI is simple, he always attacks. But he gets two attacks and they hit hard. Dodging is possible but tough to manipulate so we ensure a preemptive attack. Two crits and he is down. Next is Bazuzu. Like other magic enemies it is easy to manipulate a useless move so we let him go first to juice our luck for crits. Zarlox looks imposing but goes down the same way.
Finally we reach Hargon. Your answer to his question doesn't matter so we pick the faster option. Hargon actually has lower hp than the last three bosses so we are able to win with one crit and one normal attack, saving a little time over the crit animation.
Now for Malroth. We need to get him to attack every round and then manipulate a dodge. We cannot crit so this is going to take a while. It didn't want to give me good preemptive start. Getting the min hp of 189 with an easy dodge in the first round is just fine though. We can get up to 12 damage but it ends up faster to have 19 faster rounds of battle rather than taking time to get higher damage. I set up a simple bot just for this fight though it turned out to be more straightforward.
With Malroth down our party is fully revived and Lars can use the wings we bought for him back in Tuhn. Since we didn't save in Rhone we go straight to Beran where we board the ship and make our way back to Midenhall. We could have ended input earlier but it continues through last few dialogs to dismiss them faster. As in the first game, the final question is a "But thou must" moment. "Then peace returned."
- 152425 - Dodge on Malroth
- 140650 - Five Metal Babbles appear
- 79500 - Preemptive on the Gremlins that thought they ambushed us
: But thou must judge this run!
Well, this was an impressive improvement with great subtitles and much-improved audience reception. Even for a 44 minute run, the pace was still really nice, the routing and planning was clear and well thought out, and... I have to bring up the subtitles again. They were fantastic: Informative, never boring, and they made the run even more impressive and fun to watch.
Accepting to Moons as an improvement to the published run
. Excellent work!