Submission #6425: MUGG's GBA Mario Pinball Land in 07:00.41

Console Game Boy Advance Emulator Bizhawk 2.3.1 mGBA-core 0.6.0
Game Version JPN Frame Count 25110
ROM Filename 1630 - Super Mario Ball (J).gba Frame Rate 59.7275005696058
Branch Rerecord Count 28291
Unknown Authors MUGG
Game Mario Pinball Land
Submitted by MUGG on 6/13/2019 5:07:27 PM

Submission Comments
This run is 00:19.76 seconds faster than the previous run, thanks to route changes and slight optimizations.


  • Genre: Action
  • Uses resets
  • Emulator: Bizhawk 2.3.1 mGBA-core 0.6.0
    Previous versions of Bizhawk use older mGBA and therefore will not sync.
Ever since I finished my previous run, I knew about a possible improvement which is to take the star from the 3 fly-guys in Bowser's Castle and skip another, longer star. Recently I gained interest in this game again and started investigating. I determined that the fly-guys star took ~9 seconds to get, and the snakes star in the pyramid takes ~13-14 seconds, therefore I expected a time save of 4 seconds. So I started the project.
This game is usually sync friendly. Same inputs will yield same outcomes. But after migrating to mGBA core 0.6.0, some of the old strats wouldn't work anymore. I couldn't find the exact root cause for this, but the ball would sometimes ricochet to a different angle despite using the same inputs. Perhaps the game uses some kind of RNG, or other factors to determine the angle. I noticed that the ball sometimes had a different facing direction than before, for some reason (as in, it had the same position, velocity etc. but it looked different). This seemed to increase the risk of desyncs. As a result, I had to redo a few rooms, such as the penguins and the windmill exterior. Lakitu didn't sync because he appeared 1 frame off. The problems weren't very prevalent though, since many other rooms (especially later ones like Fun Fair and Bowser) synced without problems.
Throughout the run I found more route changes leading to more time saves:
Old route
  • Ice (get Yoshi egg - used in Desert)
  • Desert (get Lightning - used in Fun Fair)
  • Fun Fair (get Lightning - used in Grass)
  • Grass
  • Bowser's Castle
New route
  • Ice (get Yoshi egg - used in Desert)
  • Grass
  • Desert (get Lightning - used in Fun Fair)
  • Fun Fair (get Lightning - used in Bowser's Castle 3 fly-guys room)
  • Bowser's Castle
Not using Fun Fair's Lightning on the goombas in Grass Land costs ~2.5 seconds, but allows to instantly kill the 3-fly-guys and get the star without having to shoot at anything, saving ~7 seconds back.
I noticed that the right room in the pyramid had a faster pattern than the left room, so I took the right path, saving ~5.25 seconds.
In the Desert, I changed up the order of the first rooms because the strat to go straight up to the pyramid did not sync anymore. I also determined it was faster to kill the 2 Pokeys when they were closer together, which saved ~2.6 seconds.
Other than that, I found a few optimizations such as in the underwater sections and at the windmill exterior. I slacked off at later sections determined later sections (Fun Fair, Bowser) where fine so I synced in the old strats. Initially I wanted to do the Toad minigame before Boo instead of after because I needed the extra star to enter, but with the additional route changes that was not necessary anymore, not to mention it would have been ~0.5 sec slower.
From what I saw, there was some additional lag from coins that spawned after Tutankoopa and Boo (also random lag in other rooms). Nothing much I could do about it. This amounted to about 5-6 frames lost.


I'm not sure I will work on 35 stars right away, but it's definitely something I would do eventually. Maybe. I made this map and I just need to figure out a good route before I begin. I expect much Yoshi egg and "get stars while leaving the room"-glitch shenanigans. Also buying items at shops and planning coins ahead of time will be kind of a hell.

ThunderAxe31: Judging.
ThunderAxe31: Accepting as improvement over the published movie.
feos: Pub after Lion King
ThunderAxe31: File replaced for a header.txt that points to a good dump. Only game name and ROM checksum have been modified. Movie syncs perfectly with the good dump as well, so the current judgment stands.
feos: Replaced with a movie that doesn't skip to the title screen, as discussed here.

Last Edited by adelikat 3 days ago
Page History Latest diff