"!" is back again, in my first submission since 2006!
  • Recorded with FCEUX 2.0.4 (also syncs in 2.1.2, with new PPU)
  • Fastest time to reach the ending
  • Uses death as shortcut
  • (A lot of) Luck manipulation

Improvements

  • Metal slimes: 172 frames
  • Goldman: 30 frames
  • Death after keys: 12 frames
  • Axe Knight: 140 frames
  • Death after harp: 38 frames
  • Dragonlord: 838 frames
  • Rest: 28 frames
Total: 1258 frames (20.97 seconds)

New changes (outside of luck manipulation)

I switched the ROM from PRG1 to PRG0, the only signifiant change is the shorter text when enemies attack ("Thy Hits" instead of "Thy Hit Points"), saving a few frames each time. (it happens 4 times in the whole run, so it's still less than 1 second total)
The Dragonlord's first form is no longer put to sleep. Instead, he feels the pain and desperately tries to stop !'s magic TAS powers, but realizes too late that Stopspell is completely worthless against that ... This is slightly slower, but saves MP to use Hurt one more time against the second form and avoid most of the long manipulation delays.

About the luck manipulation

$0094-$0095 are used for random values, and change when:
  • Something in game needs a random value (enemy encounter, damage, etc.)
  • Player input is read
Player input is usually read once per frame when used (waiting input), or not at all otherwise (text, moving between tiles), but one exception is when pausing on the map, where the input is read in a loop (until Start is pressed again), randomizing 86-87 times per frame (about 86.6 average, alternating in a way that's hard to predict).
I've been able to predict every random result in advance (encounters, enemy HP, damage, dodging, even enemy moves), except for the pausing (see above), so it made the battles much easier to manipulate. The only thing I still couldn't improve much was for avoiding battles, but it'd be a whole other story if the movie input could work by CPU cycles instead of frames ... with midframe unpausing, I could cut anywhere into the last frame's 86-87, giving much better control without wasting time and saving at least a few more seconds.
I once again pushed it farther for the Dragonlord fight, as ! took some advice from P (the Monopoly player!) and bruteforced the whole battle to find the best manipulation delays. This alone helped a lot, since my first attempt at the new strategy (manipulating hits one by one) was 10 seconds slower!
In the making of the run, I used a custom built FCEUX with a few small changes to lua:
  • readpc() to get the current PC register
  • readsp() to read the stack pointer (so I could get the return address)
  • memory.register called the function even when the memory write didn't change the value
Then I had a script that counted how many times the randomizer was called per frame and where it was called from, and showed a few variables like $0094-0095 (random), $004F (used for timing) and the X/Y position.
I've even done a (unfinished) disassembly of the ROM last year, hoping to find glitches or at least something useful for a new run ... and while I did find quite a few things I didn't know about, most of it was only good for better luck manipulation, so that's most of the improvements here.

adelikat: Accepting as an improvement to the published movie.
Aktan: Processing


TASVideoAgent
They/Them
Moderator
Joined: 8/3/2004
Posts: 15576
Location: 127.0.0.1
This topic is for the purpose of discussing #2590: Acmlm's NES Dragon Warrior in 17:47.74
NitroGenesis
He/Him
Editor, Experienced player (556)
Joined: 12/24/2009
Posts: 1873
Going to encode! Yay.
YoungJ1997lol wrote:
Normally i would say Yes, but thennI thought "its not the same hack" so ill stick with meh.
Skilled player (1652)
Joined: 11/15/2004
Posts: 2202
Location: Killjoy
Obvious yes vote, but a few questions - You pick up the 120 gold chest, and then die after some metal slime fights. That leaves you with 60 gold from that chest, iirc. I'm wondering if there is some interim enemy with a useless attack, like the dragon lord's stop spell, that if you killed, could get you your level 7 and enough gold to buy the keys, if you didn't pick up the 120 gold until after the metal slime fight... It seemed like, with 52 gold after the keys, the 120 gold was only used for 8 gold in the end...
Sage advice from a friend of Jim: So put your tinfoil hat back in the closet, open your eyes to the truth, and realize that the government is in fact causing austismal cancer with it's 9/11 fluoride vaccinations of your water supply.
Active player (478)
Joined: 11/14/2004
Posts: 169
Location: Mirabel, Québec, Canada
There's only 4 enemies with Stopspell, in the whole game: - Wolflord (20 EXP, 60-79 gold) - Druinlord (22 EXP, 67-89 gold) - Knight (33 EXP, 97-129 gold) - Dragonlord's first form Knights are near the metal slime area, and wolflords are with goldman, but obviously killing anything takes longer than picking up the chest ... For EXP, nothing can replace a metal slime ... even killing one less would put me 105 EXP away from level 7, and I don't even gain that from the rest of the run. The goldman could also be manipulated to give more gold, but only up to 5 more, still not enough. (the metal slimes can't give more either) But it does feel like the chest is mostly wasted, still ...
snorlax
He/Him
Joined: 5/20/2007
Posts: 174
Location: Wisconsin
How do I get this to synch? I keep getting into a fight with a Magidrakee that doesn't end. Rom matches, and I even downloaded 2.1.2; I couldn't find 2.0.4. If there is an emulator that should work, can you link to it directly? Is it possible that there is some setting that is off that I'm unaware of? It does seem to be lagging at random spots like inside the throne room already, so maybe it's an issue with my computer.
Active player (478)
Joined: 11/14/2004
Posts: 169
Location: Mirabel, Québec, Canada
* Recorded with FCEUX 2.0.4 (also syncs in 2.1.2, with new PPU) FCEUX 2.1.2 with old PPU gave that same desync here, so make sure to set it to new PPU first.
snorlax
He/Him
Joined: 5/20/2007
Posts: 174
Location: Wisconsin
I didn't know what that meant, but after looking I just found the option. I'm looking forward to watching this in full now. Great run...I don't know how much more time you guys could possibly take off this game, but I'm sure you will someday.
mklip2001
He/Him
Editor
Joined: 6/23/2009
Posts: 2227
Location: Georgia, USA
Nice improvement! I'm surprised that it ended up being faster to use this new Dragonlord strategy, given that he now takes extra time to cast a spell in almost every turn of the first round.
Used to be a frequent submissions commenter. My new computer has had some issues running emulators, so I've been here more sporadically. Still haven't gotten around to actually TASing yet... I was going to improve Kid Dracula for GB. It seems I was beaten to it, though, with a recent awesome run by Hetfield90 and StarvinStruthers. (http://tasvideos.org/2928M.html.) Thanks to goofydylan8 for running Gargoyle's Quest 2 because I mentioned the game! (http://tasvideos.org/2001M.html) Thanks to feos and MESHUGGAH for taking up runs of Duck Tales 2 because of my old signature! Thanks also to Samsara for finishing a Treasure Master run. From the submission comments:
Shoutouts and thanks to mklip2001 for arguably being the nicest and most supportive person on the forums.
Joined: 11/15/2004
Posts: 804
Location: Canada
Great job. I love how you go right to the line, having exactly as much HP and MP as you need. The Dragon Warrior runs have always been case studies in efficiency. Back in the day, I checked to see what happens if you don't save the princess, and I still can't believe that the king doesn't insist that you go and save her ass before declaring the game over. It's easy enough to do on your way home now that there isn't a green dragon guarding her!
TASing or playing back a DOS game? Make sure your files match the archive at RGB Classic Games.
Active player (253)
Joined: 7/30/2006
Posts: 207
Location: Alefgard, USA
After the Armor Knight fight (where you earn Erdrick's Armor), how much time difference is there between immediately dying and going from the castle to Garinham compared to just walking to Garinham from Hauksness?
Player (105)
Joined: 6/7/2005
Posts: 290
Location: New York
I really like this run. I love number and luck manipulation, so seeing the same route with faster results is interesting, especially considering when I tried to TAS this game to see how hard it was, I couldn't even HIT a metal slime let alone excellent hit it...This game is certainly beyond conventional means.
Soft Blue Dragon
Active player (478)
Joined: 11/14/2004
Posts: 169
Location: Mirabel, Québec, Canada
Axe Knight to Garinham: 158 steps + 1 map change King to Garinham: 119 steps + 2 maps + death It's 39 less steps (10-11 seconds), but the death sequence alone (from the encounter until I can move) takes about 14 seconds, and the stairs add another 2 seconds, so it'd be at least 5 seconds slower. Another thing I tried was to kill a wolflord after the goldman (2 hits, no Sleep), buy 2 more keys to get the wings at Rimuldar, and use that instead of dying, but it was 7 seconds slower. The time difference at the dragonlord goes like this: - No sleep: 4 seconds gained from not casting Sleep, but 2 lost per turn (6 times) - 1st form in 7 hits (was 8): 5 seconds gained (3 with Sleep), 2 lost from the longer delays - 2nd form in 12 hits (was 11): 5 seconds lost for the added turn, but over 20 gained from shorter delays (from about 30 to 6)
Post subject: Movie published
TASVideoAgent
They/Them
Moderator
Joined: 8/3/2004
Posts: 15576
Location: 127.0.0.1
This movie has been published. The posts before this message apply to the submission, and posts after this message apply to the published movie. ---- [1482] NES Dragon Warrior by Acmlm in 17:47.74
Joined: 7/8/2009
Posts: 43
Location: Catalonia
I was never ever able to finish this game. I like the way u manipulate it.
Banned User
Joined: 3/10/2004
Posts: 7698
Location: Finland
The publication lacks the "heavy luck manipulation" category tag. RPG runs such as this one are the uber-examples of that.
Player (98)
Joined: 7/16/2005
Posts: 34
I have a suggestion for a possible, albeit minor, improvement. I might have some of my facts wrong, or the manipulation necessary might outweigh any savings. But I'll toss it out there. According to FAQs, metal slimes drop up to 6 gold. If you manipulate a total of 24 when hunting, you'll have 12 after you die. This, plus the 120 from the starting chest (if saved until later), plus the max of 80 that you could get from fighting a Wolflord instead of a Goldman would be exactly enough to buy 4 keys in Rimuldar. It should be possible to kill a Wolflord in 2 rounds instead of 3, plus they can be made to use Stopspell instead of attacking, allowing you to skip Sleep.
Active player (478)
Joined: 11/14/2004
Posts: 169
Location: Mirabel, Québec, Canada
It wouldn't work, for 2 reasons: - Because of the way the randomized gold is calculated, the max value is always 1 less than the real value (5 for metal slimes, 79 for wolflord, 199 for goldman) - If you don't pick up the 120 gold the first time, it's gone forever (like the torch chest) It'd be possible to kill a goldman in 2 hits too, but only with perfect HP and damage, so the manipulation would take too long.
Player (98)
Joined: 7/16/2005
Posts: 34
Makes sense. I didn't know that the 120 gold goes away if you don't take it.