#4122: Noxxa's GB Mega Man: Dr. Wily's Revenge in 16:56.99

Submission Text Full Submission Page

Mega Man: Dr. Wily's Revenge in 16:56.99 by Noxxa

Encode (lsnes):

This run improves [336]GB Mega Man: Dr. Wily's Revenge by Bag of Magic Food in 17:11.30 by 1384 frames (23.17 seconds).
Note that the previous run used VBA-rr, which used a different framerate (60.000, as opposed to lsnes' and BizHawk's ~59.727) and a different definition of what constitutes a frame, which causes the difference to look like less than it actually is. The frame difference is determined by comparing AVI output.
In addition, BizHawk has slightly longer loading times and lag, which leads to some time loss in some areas.

Game objectives

About the game

Mega Man: Dr. Wily's Revenge (known as Rockman World in Japan, and also known as Mega Man I or Mega Man World) is the first installment of Mega Man on the Gameboy. The plot is minimal - after being defeated in Mega Man and Mega Man 2, Dr. Wily swears revenge of Mega Man (again) and brings out some old Robot Masters from the aforementioned games, as well as the first Mega Man Killer robot named Enker, to do the job. Obviously, Mega Man defeats them all, defeats Dr. Wily yet again, and the world is safe again until the next game is released. Yes, it's a really plain plot.

Improvements

Bag of Magic Food's run, even though it's dated 2005, was very optimized. Most of the individual improvements here come from heavy subpixel optimization, and occasionally lag management, shaving off mere frames at a time. There are only a few instances where I saved time through changing strategies, and even those would save only small amounts of time.
There are some very significant improvements, however: it turns out that pressing A or B during certain frames of the pre-Wily Castle and pre-Wily Space Station cutscenes allows you to speed up some events of the cutscenes. In the latter case, it's even possible to skip a large part of the cutscene, saving over 15 seconds.
The next big difference is a change in boss rush order. Instead of Bag of Magic Food's Bubble-Heat-Quick-Flash route, I opted to go for Quick-Flash-Bubble-Heat instead. This was so I could use Quick Boomerang against Bubble Man to defeat him faster, saving several lag frames. However, it means the Quick Man fight became longer.

Table of improvements

There are two comparison tables: one comparing the previous run with the current run on lsnes, and one comparing the previous run with the current run on BizHawk.
Stage nameframestotal
Pre-Cut Man (loading)-1-1
Cut Man stage-22-23
Cut Man boss-1-24
Pre-Elec Man-1-25
Elec Man stage-44-69
Elec Man boss-7-76
Pre-Ice Man+1-75
Ice Man stage-10-85
Ice Man boss0-85
Pre-Fire Man0-85
Fire Man stage-21-106
Fire Man boss-7-113
Pre-Wily Castle-192-305
Wily Castle stage-14-319
Boss rush-48-367
Enker-2-369
Pre-Wily Space Fortress-961-1330
Wily Space Fortress-49-1379
Wily boss phase 1-5-1384
Wily boss phase 20-1384
Stage nameframestotal
Pre-Cut Man (loading)+3+3
Cut Man stage-22-19
Cut Man boss-1-20
Pre-Elec Man+8-12
Elec Man stage-44-56
Elec Man boss-7-63
Pre-Ice Man+7-56
Ice Man stage-10-66
Ice Man boss0-66
Pre-Fire Man+6-60
Fire Man stage-21-81
Fire Man boss-7-88
Pre-Wily Castle-183-271
Wily Castle stage-14-285
Boss rush-30-315
Enker-2-317
Pre-Wily Space Fortress-957-1274
Wily Space Fortress-49-1323
Wily boss phase 1-5-1328
Wily boss phase 20-1328
Notes:
  • Due to the difference in boss rush route, it isn't possible to directly compare times in the route. These are the individual changes in each boss rush fight:
    • Quick Man: +265 frames
    • Flash Man: -12 frames
    • Bubble Man: -298 frames
    • Heat Man: -8 frames
    • 23 frames (BizHawk)/5 frames (lsnes) were lost due to additional loading times in between the fights.

Stage by stage comments

Cut Man

  • A large amount of the stage-by-stage comments from Bag of Magic Food's submission still apply to the overall run. This run mostly uses the same strategies.
  • One of the first things that motivated me to continue the run in the first place was a 4-frame save at the first enemy by better subpixel/acceleration manipulation.
  • The post-battle dance after Cut Man's fight probably took twice as long as the boss battle itself. I spent a lot of care at trying to make them as entertaining as possible. It's also, to me, the most memorable part of Bag of Magic Food's run. Hopefully I succeeded on the entertainment here (and in the other bossfights).

Elec Man

  • The way the stage is laid out with several ladders allows for a lot of room for subpixel optimization. In most rooms here, I saved at least 1 frame from subpixel optimization.
  • Near the end of the stage, at the second room of the last big ladder section, I save 1 frame by jumping up to the middle Octopus Battery instead of walking into the bottom one. This is because the middle one is 1 pixel closer and thus can be hit sooner.

Ice Man

  • On ice, jumping costs a few subpixels when landing. Therefore, I minimize the amount of jumps in this stage.

Fire Man

  • On the first Hothead enemy, it turns out Bag of Magic Food overkilled him by one damage point (it has 10 hit points, buster shots do 1, and Elec Beam does 2 per hit). I use 1 buster shot more, so it is destroyed with one Elec Beam hit less.
  • The last room with all the Hotheads was very hard to optimize. A lot of precision is required to optimally hit the Hotheads. One of them can't be destroyed in one shot due to its position.
  • I move a bit to the left during the Fire Man fight to manipulate him to walk further to the right. This saves a few frames.

Wily Castle

  • The first really big timersaver happens here. Pressing A or B at certain frames (or just autofiring A and B for the same effects) allows me to save 183 frames in the pre-Wily Castle cutscene.
  • The second Mole room, near the end of the stage, was by far the hardest room to optimize in the entire game. Both Mole rooms are hard, because the position of the moles is dependent on the frame you destroy them and your position. Do anything slightly different and a Mole will come in your way and block your path.
  • I take a different route for the boss rush, taking on Quick Man first instead of Bubble Man. This is because Bubble Man's fight is very laggy, so it's better to have that one done as fast as possible. Quick Man's fight is nearly lagless.
  • Starting with a Mega Buster shot also saves some frames in Flash Man's fight.

Wily Space Station

  • As if the cutscene time-saver before Wily Castle wasn't large enough, the pre-Wily Space Station cutscene allows you to skip an entire section, saving over 15 seconds in one go.
  • The trick with Carry to put it so close into a wall it disappears can be done at the end of the first room, saving 17 frames.
  • Carry ammo is weird. Look at the ammo consumption the last time I use it.
  • Like Bag of Magic Food, I end input two frames later than is necessary, so no more input can stall the ending. (You can still press A+B+Start+Select to soft-reset during the ending, but let's just ignore that).

Other comments

Recommended screenshot:

TODO (suggestions?)

Thanks:

Thanks to Bag of Magic Food, for creating a very high quality run, which would last for over 8 years, for me to beat. It was an interesting challenge to improve on a run that was already very optimized to begin with.
Thanks to Nach for support and motivation.
And thanks to everyone else who supported me in the game thread!
And thanks to you for watching and/or reading this!

Nach: Turns out this run runs in lsnes also, so judging...
Noxxa: Replaced submission file with a lsnes conversion which finishes the game 56 frames faster.

Nach: Very nice run. Good feedback. Accepting as improvement to existing run.
Ilari: Processing

TASVideoAgent
They/Them
Experienced Forum User, Moderator
Joined: 8/3/2004
Posts: 11813
Location: 127.0.0.1
This topic is for the purpose of discussing #4122: Noxxa's GB Mega Man: Dr. Wily's Revenge in 16:56.99
Editor, Experienced Forum User, Published Author (662)
Joined: 11/8/2010
Posts: 3903
Exotic platforms TASer of 2014NES TAS of 2013
All right, you finished it! Nice to see an already optimized run optimized even further. Great job, yes vote! And thanks for thanking the people who posted in the game thread. I'm glad we helped you.
Editor, Experienced Forum User, Published Author (2042)
Joined: 6/15/2005
Posts: 3084
Glitchy TAS of 2013Gameboy TAS of 2013PSX TASer of 2010
Are the colors in the encode standard for this game? I thought GB colors are generally monochrome (grayscale).
nymx: Wow, this looks like the kind of fights I saw in high school. Quick and dirty...over in seconds! EZGames69: What kinds of fights involved stabbing yourselves to kill opponents?
Experienced Forum User, Published Author (364)
Joined: 8/21/2012
Posts: 428
Location: France
Looks like a veeery good run, and I was totally entertained :D Voting YES and congrats for the improvements. Actually, when I was searching for a new TAS to make (some months ago), I thought about giving a shot to this game. It didn't happen in the end, but I remember watching the "old" publication in detail and thinking it would be a serious challenge because it looked really good already. So, again, good job ;)
Editor, Experienced Forum User, Published Author (662)
Joined: 11/8/2010
Posts: 3903
Exotic platforms TASer of 2014NES TAS of 2013
FractalFusion wrote:
Are the colors in the encode standard for this game? I thought GB colors are generally monochrome (grayscale).
I believe the colors are added by BizHawk to mimic how the game looks when played on the Game Boy Color. By the way, will this be the biggest obsoletion so far? 8 years and nearly 7 months?
Noxxa
Any
Admin Assistant, Experienced Forum User, Published Author (5230)
Joined: 8/14/2009
Posts: 4022
Location: The Netherlands
Exotic platforms TASer of 2018Exotic platforms TAS of 2018Exotic platforms TASer of 2017Exotic platforms TAS of 2017Exotic platforms TAS of 2017Exotic platforms TASer of 2016Exotic platforms TAS of 2016Gameboy TASer of 2013
FractalFusion wrote:
Are the colors in the encode standard for this game? I thought GB colors are generally monochrome (grayscale).
BizHawk has palette files for GB games, presumably to emulate the appearance of GB games in GBC or GBA handhelds. It has palette files for Mega Man/Rockman World (and sequels), which has the colors I used for the encode. Though the main reason I used this palette was just for visibility reasons. The contrast in colors makes it easier to differentiate Mega Man and objects/enemies from the background.
http://www.youtube.com/Noxxa (formerly known as Mothrayas) <dwangoAC> This is a TAS (...). Not suitable for all audiences. May cause undesirable side-effects. May contain emulator abuse. Emulator may be abusive. This product contains glitches known to the state of California to cause egg defects. <Masterjun> I'm just a guy arranging bits in a sequence which could potentially amuse other people looking at these bits <adelikat> In Oregon Trail, I sacrificed my own family to save time. In Star trek, I killed helpless comrades in escape pods to save time. Here, I kill my allies to save time. I think I need help.
Experienced Forum User, Published Author (1412)
Joined: 10/12/2011
Posts: 5898
Location: The land down under.
PSX TASer of 2016
Lovely run. Now go an improve THIS. :3
WebNations/Sabih wrote:
+fsvgm777 never censoring anything.
Disables Comments and Ratings for the YouTube account. These colours are pretty neato, and also these.
WST
She/Her
Experienced Forum User, Published Author (463)
Joined: 10/6/2011
Posts: 1671
Location: RU · ID
Good run, good entertainment moves, nice usage of time-saving damage, it’s a yes vote
Spikestuff wrote:
Lovely run. Now go an improve THIS. :3
IMO that looks more like bernka’s or Qwerty’s kind of the game ^^
S3&A [Amy amy%] improvement (with Evil_3D & kaan55) — currently in SPZ2 my TAS channel · If I ever come into your dream, I’ll be riding an eggship :)
mklip2001
He/Him
Editor, Experienced Forum User
Joined: 6/23/2009
Posts: 2190
Location: Georgia, USA
You've been really prolific in running Mega Man lately, Mothrayas. Great job again! I'm surprised that the improvement was as small as it was, though the cutscene skip was a cool change. It's pretty tough to tell this run apart from the currently published run. I guess the only Mega Man game for GB that's missing now is MM4.
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.
Experienced Forum User, Published Author (66)
Joined: 11/28/2013
Posts: 114
Very nice optimization, especially in the later stages. I like the dodging from 14:53-15:11.
Projects: Tetris DS Genesis Toys: Let the Toy Wars Begin
Emulator Coder, Experienced Forum User, Published Author (1288)
Joined: 5/1/2010
Posts: 1217
Rookie of 2010New systems TASer of 2010New systems TAS of 2010
Why the darn this comes nearly a second shorter after conversion to .lsmv: http://tasvideos.org/userfiles/info/11042360351558760 ? It is not the ending point: Both movies cut out immediately after the final B-button press...
Glitcher
He/Him
Experienced Forum User
Joined: 3/24/2007
Posts: 216
Location: London, U.K.
Seems to get the job done quickly. I forgot how catchy the music in the final stage is. :)
Noxxa
Any
Admin Assistant, Experienced Forum User, Published Author (5230)
Joined: 8/14/2009
Posts: 4022
Location: The Netherlands
Exotic platforms TASer of 2018Exotic platforms TAS of 2018Exotic platforms TASer of 2017Exotic platforms TAS of 2017Exotic platforms TAS of 2017Exotic platforms TASer of 2016Exotic platforms TAS of 2016Gameboy TASer of 2013
Ilari wrote:
Why the darn this comes nearly a second shorter after conversion to .lsmv: http://tasvideos.org/userfiles/info/11042360351558760 ? It is not the ending point: Both movies cut out immediately after the final B-button press...
Seems to be loading time differences. I replaced the BizHawk movie file in the submission with the lsnes file, since that one turns out to be faster. WIP #11047073432876185 - original BizHawk submission for reference's sake
http://www.youtube.com/Noxxa (formerly known as Mothrayas) <dwangoAC> This is a TAS (...). Not suitable for all audiences. May cause undesirable side-effects. May contain emulator abuse. Emulator may be abusive. This product contains glitches known to the state of California to cause egg defects. <Masterjun> I'm just a guy arranging bits in a sequence which could potentially amuse other people looking at these bits <adelikat> In Oregon Trail, I sacrificed my own family to save time. In Star trek, I killed helpless comrades in escape pods to save time. Here, I kill my allies to save time. I think I need help.
Editor, Experienced Forum User, Published Author (55)
Joined: 7/11/2010
Posts: 1014
For people who don't know, when playing a GB game on a GBA or GBC, you can set the palette (color for backgrounds, color for sprites) via holding a key combination during the boot process. I think that's what BizHawk is simulating.
Editor, Experienced Forum User, Published Author (1794)
Joined: 3/31/2010
Posts: 1988
TAS of 2017First edition TAS of 2017PSX TAS of 2017
Sweet, gonna watch this asap. Will edit my post later. //Very great run, pretty smooth considering how limited the game often feels. Yes vote natch.
Editor, Experienced Forum User, Published Author (2799)
Joined: 5/15/2007
Posts: 3821
Location: Germany
Gameboy TASer of 2015NES TAS of 2013Gameboy TASer of 2011Gameboy TASer of 2010
As noted here, jumping has an X speed of 234 whereas walking only has an X speed of 200. You walked in many places instead of jumping.
Emulator Coder, Experienced Forum User, Published Author (1288)
Joined: 5/1/2010
Posts: 1217
Rookie of 2010New systems TASer of 2010New systems TAS of 2010
I'm debugging some sound issues, looks like problems in Gambatte core (I already fixed one, but there might be others / I might have introduced a new problem). Specifically, the problem is rather sizable DC components when sound channels are enabled. Constant or slowly varying DC component wouldn't be a problem (just highpass it away), but the fast transitions in DC component creates glitches that aren't easy to edit away. Also, yes, the palettes are changeable. Specifically, background palette, sprite 1 palette and sprite 2 palette can be set individually (to arbitrary RGB colors).
Noxxa
Any
Admin Assistant, Experienced Forum User, Published Author (5230)
Joined: 8/14/2009
Posts: 4022
Location: The Netherlands
Exotic platforms TASer of 2018Exotic platforms TAS of 2018Exotic platforms TASer of 2017Exotic platforms TAS of 2017Exotic platforms TAS of 2017Exotic platforms TASer of 2016Exotic platforms TAS of 2016Gameboy TASer of 2013
MUGG wrote:
As noted here, jumping has an X speed of 234 whereas walking only has an X speed of 200. You walked in many places instead of jumping.
Not sure how you came to these numbers, but they're incorrect. Both walking and jumping have a max X speed of 240. EDIT: I see your lua script posted there uses RAM address 0xD82A, but that's not correct. (I don't know what that value does, and it seems to correlate somewhat with speed, but it definitely isn't speed). The correct X speed address is 0xD826. (Note how the X subpixel value adds up in correspondence to the X speed in memory. It's the same regardless of whether Mega Man is walking or jumping.)
http://www.youtube.com/Noxxa (formerly known as Mothrayas) <dwangoAC> This is a TAS (...). Not suitable for all audiences. May cause undesirable side-effects. May contain emulator abuse. Emulator may be abusive. This product contains glitches known to the state of California to cause egg defects. <Masterjun> I'm just a guy arranging bits in a sequence which could potentially amuse other people looking at these bits <adelikat> In Oregon Trail, I sacrificed my own family to save time. In Star trek, I killed helpless comrades in escape pods to save time. Here, I kill my allies to save time. I think I need help.
Synahel
She/Her
Experienced Forum User, Published Author
Joined: 1/19/2011
Posts: 258
Location: France
Great job, Mothme, another old run bites the dust!
Editor, Experienced Forum User, Published Author (2799)
Joined: 5/15/2007
Posts: 3821
Location: Germany
Gameboy TASer of 2015NES TAS of 2013Gameboy TASer of 2011Gameboy TASer of 2010
Mothrayas wrote:
MUGG wrote:
As noted here, jumping has an X speed of 234 whereas walking only has an X speed of 200. You walked in many places instead of jumping.
Not sure how you came to these numbers, but they're incorrect. Both walking and jumping have a max X speed of 240. EDIT: I see your lua script posted there uses RAM address 0xD82A, but that's not correct. (I don't know what that value does, and it seems to correlate somewhat with speed, but it definitely isn't speed). The correct X speed address is 0xD826. (Note how the X subpixel value adds up in correspondence to the X speed in memory. It's the same regardless of whether Mega Man is walking or jumping.)
Hmm weird. I'm going to check later.
Editor, Experienced Forum User
Joined: 3/10/2010
Posts: 897
Location: Sweden
Why did you get hurt at ~3:16?
Noxxa
Any
Admin Assistant, Experienced Forum User, Published Author (5230)
Joined: 8/14/2009
Posts: 4022
Location: The Netherlands
Exotic platforms TASer of 2018Exotic platforms TAS of 2018Exotic platforms TASer of 2017Exotic platforms TAS of 2017Exotic platforms TAS of 2017Exotic platforms TASer of 2016Exotic platforms TAS of 2016Gameboy TASer of 2013
henke37 wrote:
Why did you get hurt at ~3:16?
If you mean by the electricity at 3:12, it's faster to get hit and pass through the electricity than wait for it to disappear.
http://www.youtube.com/Noxxa (formerly known as Mothrayas) <dwangoAC> This is a TAS (...). Not suitable for all audiences. May cause undesirable side-effects. May contain emulator abuse. Emulator may be abusive. This product contains glitches known to the state of California to cause egg defects. <Masterjun> I'm just a guy arranging bits in a sequence which could potentially amuse other people looking at these bits <adelikat> In Oregon Trail, I sacrificed my own family to save time. In Star trek, I killed helpless comrades in escape pods to save time. Here, I kill my allies to save time. I think I need help.
Experienced Forum User
Joined: 12/11/2010
Posts: 60
Why no palletized version? It looks roughly 2000% better.
Emulator Coder, Experienced Forum User, Published Author (1288)
Joined: 5/1/2010
Posts: 1217
Rookie of 2010New systems TASer of 2010New systems TAS of 2010
MrTickles wrote:
Why no palletized version? It looks roughly 2000% better.
Yeah, but what palette(s) to use? The "per-game" one has things like green fire... There is SGB palette for the game, but I haven't dumped it (and thus not checked how it looks). Edit: The SGB default palette for the game seems to be: action bgpalette ffefce de944a ad2921 311952 action sp1palette ffefce de944a ad2921 311952 action sp2palette ffefce de944a ad2921 311952
Post subject: Movie published
TASVideoAgent
They/Them
Experienced Forum User, Moderator
Joined: 8/3/2004
Posts: 11813
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. ---- [2492] GB Mega Man: Dr. Wily's Revenge by Noxxa in 16:56.99