Notes: Please use 2.2.2 or the latest release of the emulator. Other versions may cause graphical glitches or even crashes while playing the movie.
ROM Checksum: 289f5621c49a22d08ef47e2a42461f57
Rohrleitung Gate (rohlreitung means pipeline in German) is a ROM hack for Super Mario Bros. by w7n that is based on a game, anime, manga or novel called Steins;Gate. I don't know much about the original, but I can guess it's about time travel. That's because it's incredibly difficult to beat without a savestates!
This hack consists of some very tricky puzzles. The main way to solve them is by kicking shell to reveal hidden coin blocks to create paths, or by breaking bricks to find new passages. One of the biggest matters in solving these puzzles is most glitches are banned, specifically walking through walls which can be abused to skip mazes unfairly.
To put it simply, SMB prevents Mario from going through a block based on $490. The value normally stays at 255, and when he hits an object, the value is reset to 0 (the reset value depends on the direction Mario is facing). If Mario's position and speed satisfy the conditions to clip the wall, then by pressing the opposite direction of his movement, the value will be set to 254 instead of 0 and he will be able to clip the block. However, the hack author wanted players to solve his puzzles fairly, so he modified the way the glitch worked to prevent cheating. But wall jumps are possible under limited conditions. Examples are when Mario jumps at running speed and can reach the boundary between two blocks in a diagonal line, or when he can jump at a speed less than 2 from under the block and have half of his body penetrate the block.
About the goal
This hack is known to have three endings: abuse ending, where you are punished for completing the game dishonestly; bad ending, where you fail to rescue the princess; and true ending, where you succeed in rescuing the princess. For unknown reasons, however, the true ending is thoroughly hidden by the hack author. True ending cannot be reached by any normal ways other than with the help of hex editing, cheat code, or lua scripts. Maybe he adopted gimmick from the original that I'm not aware of and put them into the hack as an easter egg. Thus, I aimed for the bad ending, which is the best of the normally accessible endings. I recommend watching this video for research on the alternative endings:
https://youtu.be/FNlzY1fUp7U?si=bi0YZ5Sw6IV8WCgd
Interestingly, abuse ending can be accessed without the player actually cheating. The game determines that the player has cheated if α-2 or α-3 is completed within 200 seconds to prevent fouls. My WIP also encountered the anti-cheat screen due to beating α-2 too quickly. However, DJ_Incendration pointed out to me that an intentional death would help improve α-2. How that strategy is used is: this hack automatically saves your progress when you get to a certain point, and also resets the time on restart based on the progress. So you can exploit this to effectively avoid the abuse ending by taking an intentional death in a room where your progress is saved and restarting immediately afterward.
I don't have much to say about the run itself; most of the rooms solve the way the hack author intended. The stages that require commentary are:
α-1 room 5 (timer 364): The mushroom is grabbed later because the vertical platform needs to be loaded first to reduce the amount of time Mario has to wait. Wall jump used here looks like it could be utilized as a wall clip. But as explained earlier, if Mario tries to get into the block it will immediately put him out.
α-2 room 5 (timer 778): The correct solution is to wait for the red shell on the ceiling to crawl to the hole, but that wall jump can usefully skip the time it takes for the shell to emerge and creep.
α-2 maze (timer 745 -> 400): The intentional death strategy described earlier is used, and Mario doesn't have to suffer through a tedious wait.
α-3 room 1 (timer 897): This hack has a unique screen scrolling mechanic that didn't exist in the original. If enemies are off screen and not visible, they may not move as intended or break bricks. Here, Mario needs to chase after the two shells to make sure they reach the right spot and break the bricks.
α-3 room 3 (timer 836): In a hard mode, there are two firebars in the next room that Mario can't get past while small, so you have to grab both the mushroom and the star, and keep the mushroom to enter the pipe. But the normal mode doesn't need to do that; just pick up the star and you can skip most of them.
α-3 room 4 (timer 812): Again, you could consider the idea of loading the green Paratroopa first and then grabbing the mushroom, but I didn't choose it for the same reasons described above.
α-3 room 6 (timer 782): Snake block appears that grows in length with coins. Three of the five coins have to be protected from being eaten by the snake block. It obstructs the entrance to the pipe if its length is more than 5 blocks long.
Final room: Bowser's movement pattern changes depending on the time you enter the final room, so frame adjustment was used to get him come toward Mario as fast as possible. The intended solution is to go down 3 times toward Bowser and shoot 5 fireballs into 3 shots, but I only needed to shoot 4 as a single fireball sometimes does double damage (probably based on subpixel?). Once Bowser dies, the platform to the final pipe will reveal after he falls to the bottom of the screen. The time it takes for the platform to appear can be earned by pressing the select button to deal self injure damage to Mario.
Possible improvements
Enter Konami Code at the start screen to begin the game in 2nd quest (hard mode). All enemies move faster in that mode, which also saves the time it takes to solve the puzzle.
I expect a slight improvement could be made if we could save more individual frames in α-3 to make a pattern that would allow Bowser to approach faster.
ThunderAxe31: Excellent TAS on an excellent game! Accepting.
ThunderAxe31: File replaced with a 1530 frames improvement, judgement stands.