speedrunning gizmos & gadgets: puzzle glitching and best parts guaranteed
in super solvers: gizmos & gadgets!, you need to solve puzzles to unlock doors to find the best parts to build the fastest vehicles to win races.
i speedrun the Windows versions (v1.2 and v1.12), and i currently use two novel techniques in my runs: puzzle glitching makes the puzzles easier to solve, while the best parts guaranteed strat finds safe, deterministic routes by predicting where the best parts will spawn.
if you want to speedrun this game, download v1.2 for Windows or v1.0 for MS-DOS and head to our forum on speedrun.com to learn more! note that some historical runs are currently hidden from the leaderboards due to a configuration issue.
puzzle glitching
[historical context: 2020 forum thread, research thread]
in my experience, Balance puzzles are the easiest to learn to solve quickly, but they can also be exploited to make them even easier to solve over the course of a run.
you can turn Off puzzle types in Options > Puzzle Customization, but the game tracks which puzzles you’ve solved, to create a progression from easier puzzles to harder puzzles and to avoid giving you the same puzzle twice. it can be difficult to finish a run without exhausting your favourite puzzle type, or even impossible in the case of full game runs.
when you enter a locked door, the game chooses a random puzzle type from the puzzle types that are On, then chooses a random puzzle from the first three unsolved puzzles of that puzzle type. once you’ve solved every puzzle of a certain type, the game locks that puzzle type to Off. but since the game has more doors than puzzles, you can end up completely running out of puzzles. once that happens, the game enters an “endgame” mode where you can get any puzzle. in the endgame, you can still turn Off puzzle types, but the game turns all of the puzzle types back On each time you solve a puzzle, which is annoying.
Balance puzzles have a bug that we can exploit to solve them without marking them as solved, which effectively allows us to play the easiest Balance puzzles as many times as we want. press and hold the Enter key before placing the final blue weight, and release Enter after you’re through the door. if you do that, you will almost never increase the Puzzles Done counter in Puzzle Customization.
best parts guaranteed
[historical context: 2017 forum thread, 2021 forum thread, two research threads]
if you race with a vehicle having all of the best parts, you’re guaranteed to win, but how can we know where the best parts will spawn?
empirical techniques for planning routes based on where parts will spawn have been used as far back as oddtom’s 1:03:56 in 2017, and the spiritual successor to his gizmos.js tool is ssgesus. both tools use the locations of parts on the initial screen of the warehouse, as input by the runner, to calculate where parts will spawn, and both tools are completely isolated from the game process, making them essentially glorified calculators.
when you start working on a new vehicle by clicking NEXT LEVEL or clicking a building, the game will spawn parts in the warehouse for you (and the chimps) to find. each part is spawned in a random location in the warehouse (ssgwin32.exe v1.2 414750h), and this only happens once per vehicle, when you enter the workshop for that vehicle for the first time. once the parts are spawned, their locations are stored in your save, and loaded from your save when you exit and re-enter the building (or QUIT and relaunch the game).
random events in the game use a simple RNG (ssgwin32.exe v1.2 454254h), whose initial seed is the unix time (in seconds) of when you launched the game. exiting and relaunching the game resets the initial seed in the same way.
if we can avoid doing any other random events before spawning parts, we can predict where the best parts will be! there are no random events in the Technology Center, but there are many random events while you’re in a building. as long as you QUIT and relaunch the game before you start working on each new vehicle, spawning parts will be the first random events, making the outcome fully predictable as long as you can guess that initial seed.
future strats: worse is better?
if you’ve ever played the game normally, you probably know that you aren’t actually required to have the best parts to win the race. the game tolerates some amount of suboptimal parts, so we may be able to intentionally choose worse parts that would give us a shorter route than the best parts guaranteed strategy.
-
race oracle: ideally we would learn enough about the race algorithms to be able to reliably calculate whether a given set of parts would win without actually racing. in other words, we would have some oracle function
winner(playerParts, mortyParts)that returnsplayerormortydepending on who would win. this should give us the ability to find the absolute shortest possible route. -
morty plus one: we may not even need a race oracle to do better than the best parts guaranteed strategy. R and i both discovered that the parts Morty uses for each of his vehicles are baked into the game’s
PARTresources, and they never change. in other words, the chimps don’t steal your parts for Morty’s vehicles, they do it just to be a dick! if the races are designed such that upgrading any single part always makes your vehicle faster and never makes your vehicle slower, then any vehicle that has the same parts as Morty plus one upgrade should win.
to make these ideas viable, further reverse engineering of the game will be required, then we can extend ssgesus to help runners make these more complex route plans. stay tuned for some more posts about that!