Submission #3426: Mukki's GBA Sonic Advance 2 in 18:01.78

Game Boy Advance
baseline
(Submitted: Sonic Advance 2 (U) (M6) [!].gba USA)
VBA-rr
64907
60
249497
Unknown
Submitted by Mukki on 1/14/2012 10:12 PM
Submission Comments
After submitting my Sonic Advance run in October 2010 I couldn't help but wonder if Sonic Advance 2 could also be improved. I soon began researching the game, but quickly recognised that this would be a completely different animal. In Sonic Advance 1 you are fairly unrestricted, not merely because you can blast through virtually any obstacle, but because there is no boost mode which, in SA2, is a constant concern. In Sonic Advance 2 zipping is rather useless and the possible routes are restricted by how quickly you can enter boost mode. Therefore, Sonic Advance 2 is more linear in this respect than its predecessor, however, the gameplay is far more varied and complex making the game far more difficult to TAS and far more entertaining to watch (in my opinion at least). Because of this the learning curve was rather steep and it wasn't until December 2010 that I had learned enough of the game's mechanics to match nitsuja's times and even then I felt as though I was just copying his strategies. I then decided that tackling this game sequentially was not the best method. I picked several levels at random and TASed them, finding a few frames each time discovering new tricks and optimisations. After submitting Pokémon Blue I started to hit this game pretty hard and through the summer of 2011 I applied the knowledge I had accumulated to gain some nice improvements. After discovering a few new tricks I realised that I would need to give everything another once over, but by this time I was confident enough to tackle the game from beginning to end with consistent quality. This run is an in-game improvement of 2070 frames (34.5 seconds) to the currently published run by nitsuja. I also found various real time improvements and with those included this run is 2591 frames (43.18 seconds) faster than the current run.
LevelnitsujaMeImprovement (in frames)
Leaf Forest 10:24:270:22:9281
Leaf Forest 20:23:700:22:8253
Egg Hammer Tank II0:05:620:05:620
Hot Crater 10:31:630:31:1330
Hot Crater 20:34:150:30:33229
Egg Bomber Tank0:06:920:06:5522
Music Plant 10:33:850:32:2397
Music Plant 20:40:920:40:1347
Egg Totem0:05:500:05:500
Ice Paradise 10:41:950:39:85126
Ice Paradise 20:32:850:31:9554
Aero Egg0:05:500:05:500
Sky Canyon 10:39:730:37:60128
Sky Canyon 20:37:650:34:77173
Egg Saucer0:07:320:07:0814
Techno Base 10:59:320:53:02378
Techno Base 20:32:530:31:0788
Egg-Go-Round0:06:480:06:358
Egg Utopia 10:52:480:47:83279
Egg Utopia 20:56:720:52:70241
Egg Frog0:08:520:08:520
XX Zone0:49:420:49:0522
Total10:37:0310:02:532070
The levels in this game are so huge that it would be impossible for me to describe the improvements in any detail. To overcome this I have annotated the level maps from The Sonic Center with the individual improvements for those that are interested. The maps can be found (adelikat: removed dead link) SonicAdvance2Maps.zip, though feel free to mirror these wherever you prefer. These were thrown together quite hastily so please ignore the awful grammar etc.
There are a couple of things worth noting that are not shown in the maps. Firstly, real time was improved by inserting a reset at the beginning to skip the intro (saves ~3 seconds), plus in some levels I use a glitch that allows you to skip the skidding animation at the end of the level to save ~2 seconds per use. Technically it is possible in all levels, but I only use it where in game time isn't affected. The glitch works by passing the goal line off-screen before it has loaded and then using A+B to come to a halt, or pass back through the goal in the opposite direction. This causes the game to skip directly to the score tally. Secondly, the improvements to the bosses are not shown in the maps. Most boss improvements are just from fiddling around with the positioning in order to get a hit in a few frames earlier. The only interesting improvement is the Egg Bomber Tank. The HP and invincibility counters for both the cannon and the body are held in different locations and you must defeat the cannon before defeating the body. Because the addresses are stored seperately you can, with precise positioning, register the first hit on the body on the same frame you register the last hit on the cannon. Thirdly, I'm not going to go into detail on the game mechanics as nitsuja amply covers the important points in his submission text. Fourthly, and finally, enjoy the run! That is worth noting and it is not shown in the maps.
Thanks to nitsuja for his masterpiece of a run. I was often dumbfounded that such well optimised work could be made with 2005/06 tools. This run wouldn't be half as good as it is if it weren't for his run.
Thanks also to Zeupar for watching my WIPs and for providing support when I lacked motivation.
And thanks to Aktan for providing the encode.

Adding a soniccenter.org comparison table:
LevelTSC (Sonic)MeDifference
Leaf Forest 10:28:880:22:920:05:96
Leaf Forest 20:29:900:22:820:07:08
Egg Hammer Tank II0:05:620:05:620:00:00
Hot Crater 10:37:680:31:130:06:55
Hot Crater 20:37:200:30:330:06:87
Egg Bomber Tank0:11:150:06:550:04:60
Music Plant 10:46:430:32:230:14:02
Music Plant 20:49:780:40:130:09:65
Egg Totem0:05:500:05:500:00:00
Ice Paradise 10:53:620:39:850:13:77
Ice Paradise 20:38:950:31:950:07:00
Aero Egg0:05:500:05:500:00:00
Sky Canyon 10:48:630:37:600:11:03
Sky Canyon 20:46:880:34:770:12:11
Egg Saucer0:14:950:07:080:07:87
Techno Base 11:15:920:53:020:22:90
Techno Base 20:38:900:31:070:07:83
Egg-Go-Round0:09:320:06:350:02:97
Egg Utopia 11:08:870:47:830:21:04
Egg Utopia 21:06:970:52:700:14:27
Egg Frog0:08:870:08:520:00:35
XX Zone1:30:080:49:050:41:03
Total13:39:6010:02:5303:37:07

DarkKobold: An substantial improvement to a highly-regarded published movie? Easy accept. Good work.
Nahoc: Processing...
Last Edited by adelikat on 9/24/2023 2:13 PM
Page History Latest diff List referrers