This is my submission for a TAS of Pokemon Pinball - Ruby & Sapphire. The goal of this category is to defeat Rayquaza as quickly as possible. There are no major glitches used to achieve this, just precise pinballing and physics manipulation.

Game objectives

  • Emulator used: BizHawk version 2.3.3
  • Defeat Rayquaza as quickly as possible

Comments

The general route for this speedrun is to earn and complete 5 bonus rooms, the 5th containing Rayquaza. We earn a bonus room by catching and evolving 1 pokemon. We also make frequent use of the slot mechanic - the second slot lets you enter catch mode, the fourth lets you enter evolve mode, and the 5th gives you a free bonus room outright. The first and third slots contain nothing relevant to the speedrun, so they are ended as quickly as possible. After you complete the first 2 bonus rooms, you have to do them again. After you beat the second bonus room for the second time, you catch Kyogre and are allowed to progress to bonus room 3, where you defeat Rayquaza and complete the speedrun.

Stage by stage comments

Catch Mode

While in catch mode, your goal is to hit the bumpers at the top of the table 3 times, causing the silhouette of the pokemon to fill in and gain collision. If you hit 3 bumpers all in one go, it plays a cutscene where the pokemon is immediately created, but this is considerably slower so instead we get 2 hits, drop the ball back down, then send it up for the 3rd. There is some dead time while the silhouette is filling in, which we use to set up a slot without wasting time. Once the pokemon gains collision, you have to hit it 3 times. If the ball is inside the collision box when it spawns, you can get all 3 hits immediately as it tries and fails to eject the ball. There is minor RNG manipulation during the 2nd catch to avoid a pokemon that has no evolution, which would break our route.

Evolve Mode

The goal of this mode is to collect the 3 golden "EX" gems that spawn around the table, one at a time. Once you collect the 3rd, you can enter the hole to evolve the pokemon. The RNG is purely based on the current in-game timer, and the location of all 3 EX gems is determined when you select the pokemon to evolve, so we can achieve a different pattern by waiting 1 additional frame before the selection. This lets us avoid the gems spawning in slow places, and set up to get multiple gems in one go or collect the last gem and immediately enter the hole. This is made harder by the fact that the gems don't get collision until the animation has completely finished, which lasts quite a bit longer than it appears.

Bonus Room 1 - Duskull/Dusklops

In this room, 2 Duskulls spawn on the screen at once and you must keep hitting them until you've defeated 20. Then after a short animation, a dusklops will enter the arena and require 5 hits to defeat. The location of the next Duskull depends on the frame the previous duskull was hit, allowing for some manipulation for favorable spawns and stringing multiple hits together. The dusklops is tricky to defeat because if the ball enters the area directly in front of it, it will catch the ball and throw it back which is very slow. We take advantage of the fact that if the ball is inside of it's collision box the game can be confused about how to eject it, so we can get 3 or 4 hits at once by dropping it through the dusklops earning a hit as soon as it regains collision.

Bonus Room 2 - Kyogre

In this room you must hit Kyogre 15 times in order to defeat it, or 18 times to catch it on the second visit to the room. Kyogre will attempt to freeze your ball in place or catch it in a whirlpool, both of which force you to stop for a while. Fortunately the corner at the back end of the Kyogre has interesting collision boundaries, and you can wedge the ball in there such that it isn't ejected after hitting the Kyogre. This allows you to get 5 hits in a single go, so we can complete the room for the first time in only 3 swings which saves quite a bit of time. You can also prevent the move that freezes your ball by hitting the Kyogre at the right time.

Bonus Room 3 - Rayquaza

Finally, you must defeat Rayquaza by hitting it 15 times. This room involves the least exciting TAS tricks because Rayquaza bobs up and down, and can only be hit while at the bottom of it's movement. This prevents you from getting multiple hits at once (except when it stops to do the lightning attack), so the focus is on getting a hit and returning the ball as quickly as possible, but not so quickly that when you go for your next hit it goes right under the Rayquaza. Additionally, about 8 frames after we achieve the last hit the Rayquaza will fly up offscreen and then do a flyby that spawns 2 tornadoes which can catch your ball and throw it up in the air, to say nothing of being unable to hit the Rayquaza for 5 seconds until it comes back. This thing is deeply annoying.

Other comments

Much credit to DaJaWi, whose youtube video inspired me to create this and let me know what is possible in several sections. I've linked their side-by-side comparison run of the Ruby table and the Sapphire table below. Credit also to roseasromeo for helping me pick apart the physics engine and analyze the relationship between the X and Y velocity, and where the ball ends up going (it's less straightforward than you'd think). We actually went way deeper into that analysis than we really needed to, if anyone else is interested in running this game I'd love to share what I learned about it.
I'm struck by how solidly put together this game is for being from 2003, I think it's fun to play and entertaining to watch. The easiest and hardest thing about putting this run together was the limited search space. On any frame you can flip either flipper, and you can bump the table left right or up every 27 frames. This means the input search space is relatively small, but it also means that you can discover that the only way to get the ball where you want it to go is to change the hit you did 100 frames ago so it has a better exit vector. Not sure what else to say here, it's my first time so please be gentle with me but I'm SO looking forward to getting feedback on the run/submission and joining this community!

ThunderAxe31: File replaced for removing 1127 blank frames at the end of the movie. Note that we don't use RTA timing (more here)
Samsara: I feel a precedent-defining judgement coming... But I don't think it should come from me. Resetting to new.
Memory: Judging
Memory: So optimization looks fine and audience reception was good.
There were initially questions about where the TAS ended, beating rayquaza as opposed to catching it, but with the recent clarifications to games without clear ending, this has been deemed acceptable.
Next there was discussion about how the TAS ends. It ends with beating Rayquaza and idling in gameplay. Previous pinball tases were suggested to game over and reach a credits sequence that only appears after game-over. Game over is extremely slow for this game and there is no such ending sequence here. As a result, there really wasn't a ton of consensus on how to end them and I believe that as long as the goal is finished, it is valid.
Lastly, there has been mentions of save corruption being possible. Since this TAS was well received, it's possible for save corruption to be a new branch, but that will be determined after such a TAS is finished.
Accepting to Moons.
Spikestuff: Publishing.

TASVideoAgent
They/Them
Moderator
Joined: 8/3/2004
Posts: 14776
Location: 127.0.0.1
Judge, Skilled player (1275)
Joined: 9/12/2016
Posts: 1645
Location: Italy
I've noticed that both Groudon and Kyogre require 18 hits to be beaten the second time you meet them. Does the same apply for Rayquaza? By the way, I found it very entertaining! Great job.
my personal page - my YouTube channel - my GitHub - my Discord: thunderaxe31 <Masterjun> if you look at the "NES" in a weird angle, it actually clearly says "GBA"
Player (50)
Joined: 4/1/2016
Posts: 282
Location: Cornelia Castle
While I feel like a lot of work was put into this, I believe the goal is too arbitrary. It doesn't actually beat the game, it only defeats a pokémon as the goal. No vote from me.
DJ Incendration Believe in Michael Girard and every speedrunner and TASer!
Emulator Coder, Experienced player, Judge (593)
Joined: 2/26/2020
Posts: 691
Location: California
DJ Incendration wrote:
While I feel like a lot of work was put into this, I believe the goal is too arbitrary. It doesn't actually beat the game, it only defeats a pokémon as the goal. No vote from me.
You do realize that Rayquaza is the final bonus room (or you could see this as the "final boss") for either field, right? This is essentially Any%? Please tell me what is "beating the game" if this isn't it (besides perhaps completing the dex, ie full completion). (doesn't help that the branch label probably shouldn't be Defeat Rayquaza in the first place, it should really be "Sapphire Field")
Player (50)
Joined: 4/1/2016
Posts: 282
Location: Cornelia Castle
I actually didn't realize. I thought it was different than an any% run. It seemed to me like it was just one pokémon to defeat for the TAS to be over, but I didn't realize that was the whole game. Sorry for my lack of knowledge for this game.
DJ Incendration Believe in Michael Girard and every speedrunner and TASer!
Sanqui
Any
Player (24)
Joined: 4/25/2011
Posts: 33
Is my understanding correct that the linked video (from 2015) is an older TAS?
ovo
eliilek
He/Him
Player (43)
Joined: 3/19/2020
Posts: 3
Sanqui wrote:
Is my understanding correct that the linked video (from 2015) is an older TAS?
That's correct! That video showed me a few things that were possible in the game and helped with general timing so I wanted to make sure to give credit.
Samsara
She/They
Expert player, Senior Judge, Site Admin (2121)
Joined: 11/13/2006
Posts: 2792
Location: Northern California
Here's a temp encode of the run itself: Link to video I feel like the input should be extended to finish out the game instead of hanging on the next shot for eternity.
TASvideos Admin and acting Senior Judge 💙 | Cohost
warmCabin wrote:
You shouldn't need a degree in computer science to get into this hobby.
fsvgm777
She/Her
Player, Senior Publisher (221)
Joined: 5/28/2009
Posts: 1180
Location: Luxembourg
I personally feel the movie should go all the way to actually catching Rayquaza, instead of just defeating it. It just feels incomplete to me. However, I believe it does require going through Duskull/Dusklops and Kyogre a third time. I do appreciate the effort that went on making this TAS, though.
Samsara wrote:
I feel like the input should be extended to finish out the game instead of hanging on the next shot for eternity.
I agree, since we're still in the middle of gameplay. I want to say we already have a precedent with Epic Pinball, but that one quits out of the table outright (which is not the same as a save & quit).
Steam Community page - Cohost profile Oh, I'm just a concerned observer.
Judge, Skilled player (1275)
Joined: 9/12/2016
Posts: 1645
Location: Italy
Samsara wrote:
I feel like the input should be extended to finish out the game instead of hanging on the next shot for eternity.
Why? It's not like the game over is an ending point, as this game doesn't really have any. Why can't we consider the Rayquaza bonus screen as an ending point?
fsvgm777 wrote:
I personally feel the movie should go all the way to actually catching Rayquaza, instead of just defeating it. It just feels incomplete to me. However, I believe it does require going through Duskull/Dusklops and Kyogre a third time.
But that would add a lot of redundant contents, which would make the movie much less entertaining. And that would be much more of an issue, since this movie is forging the use of known glitches that could allow to skip the bonus stages altogether, so this submission is not applicable for Vault in either case. I think that this movie should be acceptable for Moons, because it's providing a great alternative to the fastest-completion goal. It's avoiding major glitches, which results in featuring a lot of contents that would be completely skipped in a fastest-completion run. Also, this movie is doing exactly what the label says, so it's goal is sensible. Lastly, this is the most expected and popular goal.
my personal page - my YouTube channel - my GitHub - my Discord: thunderaxe31 <Masterjun> if you look at the "NES" in a weird angle, it actually clearly says "GBA"
Player (50)
Joined: 4/1/2016
Posts: 282
Location: Cornelia Castle
Oh, that makes sense. I shouldn't have voted no.
DJ Incendration Believe in Michael Girard and every speedrunner and TASer!
Samsara
She/They
Expert player, Senior Judge, Site Admin (2121)
Joined: 11/13/2006
Posts: 2792
Location: Northern California
ThunderAxe31 wrote:
Samsara wrote:
I feel like the input should be extended to finish out the game instead of hanging on the next shot for eternity.
Why? It's not like the game over is an ending point, as this game doesn't really have any. Why can't we consider the Rayquaza bonus screen as an ending point?
Movie Rules wrote:
It must be able to reach the credits or end screen without requiring any further interaction; all input must come solely from the input file (e.g. configuring the emulator to autofire after the end of playback is not allowed).
There are precedents in Epic Pinball (both runs, particularly this one that originally did the same thing this submission does and had to be updated to game over and enter a high score in order to be accepted) and Tetris, accomplishing their goals and then finishing out the game as fast as possible afterward to reach an end screen. EDIT: Not to mention this pinball submission that similarly does not end the game, and was rejected for doing so despite accomplishing its goal.
TASvideos Admin and acting Senior Judge 💙 | Cohost
warmCabin wrote:
You shouldn't need a degree in computer science to get into this hobby.
Judge, Skilled player (1275)
Joined: 9/12/2016
Posts: 1645
Location: Italy
Except that Epic Pinball has a credits roll, while this game doesn't at all. Edit: also, this submission can't be considered as fastest-completion, so the goal can be arbitrary, as long as if follows a clear objective. Edit 2:
Samsara wrote:
EDIT: Not to mention this pinball submission that similarly does not end the game, and was rejected for doing so despite accomplishing its goal.
Well, it's true that both this submission and that movie get to a stuck game state after finishing playing back, but it's slightly different. I don't think that movie could be considered entertaining, and on the other hand it couldn't be considered as proper full-completion either, as the movie rules don't consider valid the goal of maxing out the score counter. This submission instead is much more straight-forward in what it does. Apart that, causing an intentional game over would be pretty trivial to perform, while also detract entertainment by introducing repetitiveness.
my personal page - my YouTube channel - my GitHub - my Discord: thunderaxe31 <Masterjun> if you look at the "NES" in a weird angle, it actually clearly says "GBA"
Samsara
She/They
Expert player, Senior Judge, Site Admin (2121)
Joined: 11/13/2006
Posts: 2792
Location: Northern California
ThunderAxe31 wrote:
Except that Epic Pinball has a credits roll, while this game doesn't at all.
I don't see why credits matter. We have published runs of games that reach actual endings with no credits roll at all, they shouldn't be the de facto way of defining what is or isn't an ending.
Edit: also, this submission can't be considered as fastest-completion, so the goal can be arbitrary, as long as if follows a clear objective.
That doesn't mean the ending can be arbitrary, though. It accomplishes a clear objective, yes, but then it doesn't finish the game afterward. Granted, since pinball is inherently an infinite game, it's harder to define "finishing the game", but in this case it can really only be running out of balls, stop laughing, and game overing on the field.
Samsara wrote:
EDIT: Not to mention this pinball submission that similarly does not end the game, and was rejected for doing so despite accomplishing its goal.
Well, it's true that both this submission and that movie get to a stuck game state after finishing playing back, but it's slightly different. I don't think that movie could be considered entertaining, and on the other hand it couldn't be considered as proper full-completion either, as the movie rules don't consider valid the goal of maxing out the score counter. This submission instead is much more straight-forward in what it does. Apart that, causing an intentional game over would be pretty trivial to perform, while also detract entertainment by introducing repetitiveness.
I should have clarified that it wasn't PURELY rejected for not ending gameplay and there are other problems with it, but it was explicitly mentioned in the submission text that not ending gameplay was one of those problems, and given that this submission is in a similar state I don't see why the same wouldn't apply here.
TASvideos Admin and acting Senior Judge 💙 | Cohost
warmCabin wrote:
You shouldn't need a degree in computer science to get into this hobby.
Emulator Coder, Experienced player, Judge (593)
Joined: 2/26/2020
Posts: 691
Location: California
Why is this controversial, you get to go enter your name in the high score screen after a game over, seems like a good place to end the TAS (and again, precedent with Tetris).
Judge, Skilled player (1275)
Joined: 9/12/2016
Posts: 1645
Location: Italy
Samsara wrote:
ThunderAxe31 wrote:
Except that Epic Pinball has a credits roll, while this game doesn't at all.
I don't see why credits matter. We have published runs of games that reach actual endings with no credits roll at all, they shouldn't be the de facto way of defining what is or isn't an ending.
Sorry, I should have included the quote in my previous post. I was specifically comparing to the example you brought, Epic Pinball. Of course what I wrote there doesn't apply to all the published runs of games that don't have credits roll.
Samsara wrote:
Edit: also, this submission can't be considered as fastest-completion, so the goal can be arbitrary, as long as if follows a clear objective.
That doesn't mean the ending can be arbitrary, though. It accomplishes a clear objective, yes, but then it doesn't finish the game afterward. Granted, since pinball is inherently an infinite game, it's harder to define "finishing the game", but in this case it can really only be running out of balls, stop laughing, and game overing on the field.
I agree that the ending point point can't be arbitrary. My issue here is that I consider more appropriate a screen that tells to the player "you win" instead of a screen that tells "you lose". But I can't deny that for this game, the screen telling "you win" doesn't follow an end for the play, while instead the "you lose" screen marks an objective end.
Samsara wrote:
Samsara wrote:
EDIT: Not to mention this pinball submission that similarly does not end the game, and was rejected for doing so despite accomplishing its goal.
Well, it's true that both this submission and that movie get to a stuck game state after finishing playing back, but it's slightly different. I don't think that movie could be considered entertaining, and on the other hand it couldn't be considered as proper full-completion either, as the movie rules don't consider valid the goal of maxing out the score counter. This submission instead is much more straight-forward in what it does. Apart that, causing an intentional game over would be pretty trivial to perform, while also detract entertainment by introducing repetitiveness.
I should have clarified that it wasn't PURELY rejected for not ending gameplay and there are other problems with it, but it was explicitly mentioned in the submission text that not ending gameplay was one of those problems, and given that this submission is in a similar state I don't see why the same wouldn't apply here.
What I was trying to say there, is that if we extend the movie from this submission in order to manually trigger a game over, it would lose all chances to be entertaining, and thus it would be doomed (as it's forgoing a known skip glitch).
my personal page - my YouTube channel - my GitHub - my Discord: thunderaxe31 <Masterjun> if you look at the "NES" in a weird angle, it actually clearly says "GBA"
Player (16)
Joined: 7/3/2012
Posts: 33
ThunderAxe31 wrote:
Samsara wrote:
Samsara wrote:
EDIT: Not to mention this pinball submission that similarly does not end the game, and was rejected for doing so despite accomplishing its goal.
Well, it's true that both this submission and that movie get to a stuck game state after finishing playing back, but it's slightly different. I don't think that movie could be considered entertaining, and on the other hand it couldn't be considered as proper full-completion either, as the movie rules don't consider valid the goal of maxing out the score counter. This submission instead is much more straight-forward in what it does. Apart that, causing an intentional game over would be pretty trivial to perform, while also detract entertainment by introducing repetitiveness.
I should have clarified that it wasn't PURELY rejected for not ending gameplay and there are other problems with it, but it was explicitly mentioned in the submission text that not ending gameplay was one of those problems, and given that this submission is in a similar state I don't see why the same wouldn't apply here.
What I was trying to say there, is that if we extend the movie from this submission in order to manually trigger a game over, it would lose all chances to be entertaining, and thus it would be doomed (as it's forgoing a known skip glitch).
Is the skip glitch even faster? Looking at the clip it takes 40-45 seconds to skip the bonus stage, but this is more or less the same time as it takes in the TAS we have here. Deliberately draining two balls takes less than 20 seconds -- the TAS is over 8 minutes, I don't think that has much of an effect on entertainment.
Post subject: Pokémon Pinball 2
Joined: 5/1/2007
Posts: 294
Location: MD
The ball doesn't launch on its own, and since the movie ends after defeating Rayquaza, we must make inputs outside the movie to reach the high score screen. It would take a lot of time to get game over, especially with the ball savers. In case one would like to do a category where they catch all the Pokémon that can be obtained in the game; you can menu out of the game or soft reset after catching a Pokémon, each time the Pokéball regains its movement after the score tally.
I like Doraemon
Player (16)
Joined: 7/3/2012
Posts: 33
You're right, forgot about ball savers. That throws a wrench into the calculations because in order to get a game over we have two options: * waste time while waiting for the ball savers to expire, which takes 60 seconds each time -- leading to about 2 minutes of basically nothing, or * drain balls mid-run, which makes the run look sloppy.
Player (50)
Joined: 4/1/2016
Posts: 282
Location: Cornelia Castle
Why would it look sloppy though? I think there are things you could do while waiting, or draining them mid-run seems alright, too.
DJ Incendration Believe in Michael Girard and every speedrunner and TASer!
Spikestuff
They/Them
Editor, Expert player, Publisher (2254)
Joined: 10/12/2011
Posts: 6324
Location: The land down under.
Just for publication purposes I created extended input.
WebNations/Sabih wrote:
+fsvgm777 never censoring anything.
Disables Comments and Ratings for the YouTube account. These colours are pretty neato, and also these.
Site Admin, Skilled player (1234)
Joined: 4/17/2010
Posts: 11251
Location: RU
We slightly rewrote rules on difficulty loops for games without an ending, and made hardest loop not required, just like our guidelines don't require the hardest difficulty in other games. This way, if the changes in difficulty between loops are negligible, it's fine to stop the movie when all unique content has been completed.
Warning: When making decisions, I try to collect as much data as possible before actually deciding. I try to abstract away and see the principles behind real world events and people's opinions. I try to generalize them and turn into something clear and reusable. I hate depending on unpredictable and having to make lottery guesses. Any problem can be solved by systems thinking and acting.
Memory
She/Her
Site Admin, Skilled player (1515)
Joined: 3/20/2014
Posts: 1762
Location: Dumpster
What are people's preferences regarding ending? Game over to high score screen has a bunch of precedents but the majority of those don't have such long ball savers. If one considers this gameplay, one should spread such deaths over the course of the tas to minimize waiting time. If one doesn't, you could just add it in after the tas. One could also save and quit out but this essentially just suspends play, if you re-enter the game, everything will be as you left it. Finally there's the option of just leaving things as is which some people feel is unsatisfying. However for some other games, there really isn't any other option.
[16:36:31] <Mothrayas> I have to say this argument about robot drug usage is a lot more fun than whatever else we have been doing in the past two+ hours
[16:08:10] <BenLubar> a TAS is just the limit of a segmented speedrun as the segment length approaches zero
fsvgm777
She/Her
Player, Senior Publisher (221)
Joined: 5/28/2009
Posts: 1180
Location: Luxembourg
Personally, I feel all balls must be played out, as in, reach a game over to get to the high score entry screen. On a real life scenario, one wouldn't exactly leave the pinball table while a game is ongoing, because someone else could very well take over. I believe the deaths should be spread out in order to cut on waiting time, whilst doing as much playaround as possible, as I consider it gameplay. Though, I'm also fine if the deaths are added at the end.
Steam Community page - Cohost profile Oh, I'm just a concerned observer.
Judge, Skilled player (1275)
Joined: 9/12/2016
Posts: 1645
Location: Italy
My opinion is that committing suicide is not considerable as gameplay, as the purpose of a game is winning, not losing. So I think that the movie should be left as it is, and cut the encode right after the moment that the Rayquaza level has faded out.
my personal page - my YouTube channel - my GitHub - my Discord: thunderaxe31 <Masterjun> if you look at the "NES" in a weird angle, it actually clearly says "GBA"