Game objectives
Collect helicopter and safe tokens to complete 3 race minigames and 4 pachinko minigames to "beat the system"
- Emulator used: fceux-2.0.2
- Aims for fastest time to reach a "you beat the system" screen
- Manipulates luck
- Makes entertainment and speed tradeoffs
- Uses multiball at all times after collected
This game was released on the NES by Rare Inc. in 1991 and is based on a real pinball machine released by Williams pinball in 1985. I had always enjoyed pinball as a kid but this game pushed me over the edge in that I eventually purchased several pinball machines, High Speed included. I can authoritatively say that the core rules of High Speed were ported over fairly faithfully although Rare decided to add in two different minigames and a "wizard mode" goal. Rare had previously ported Pinbot to the NES and in which they opted to do unusual things like changing the ball into a triangle. Between the two games I feel High Speed offers more depth and a lot more defined goal, so I decided to do a TAS on it as my first project. This is my first submission, so please have grace with me if I've missed something.
Game goals
The game places tokens at random on the playfield which can be collected by shooting the ball past them. Collecting three helicopter tokens causes a racing minigame to start and collecting three safe icons causes a "Pachinko" cannon shooter minigame to start. Entering the minigames with more than one ball allows for more balls in the race minigagme and a faster shooting rate in the pachinko minigame. Completing all three races and all four pachinko minigames causes a spaceship to appear which displays a message that states "you have beaten the system". Reaching this screen is the primary goal of this run.
Game start and intro
The first thing you'll notice about this game is the unskippable cutscenes. They're long. They can't be skipped. I'm restating the obvious but they more than double the movie length. I play around with some input animations throughout to pass the time and advance as quickly as it is possible to do so but I'd recommend speeding past them.
Once the game starts, I immediately turn off the voice option because the game pauses while it's talking (a very annoying trait even outside a TAS run).
Multiball
There are three banks of three stoplights and each light has to be hit once to advance. You can also spot stoplights by using the ramp but this takes valuable time so I opt to nudge the table around a fair amount to try to hit the lights as quickly as possible. Once the light is red I run the red light (which is much more interesting on the physical pinball machine because it turns on a siren and a beacon light on top of the game, but I digress). After launching and locking two more balls I take advantage of the extra balls in play to quickly snag the last safe token to start the pachinko minigame.
Pachinko minigame #1
I initially took the approach of carefully aiming the cannon and firing an exact shot into one cup at a time but there is absolutely no speed benefit to holding back on the number of balls fired. So, after landing the first two cups I go postal on the remaining two. It's more entertaining that way.
Pachinko minigame #2
While starting the second minigame I get a multiball jackpot (which spots a minigame token) as well as an extra ball which gives me no benefit at all but has to be collected sooner or later to advance to the spaceship. I let a ball go behind / under the right flipper for a split second before returning it to play. Unfortunately, the jackpot shot left a ball in the right lock hole which I have to wait on; I avoid this in future iterations.
In the second minigame I go postal again and utilize the spray and pray method of ball placement. This is the first minigame completion that also includes fireworks. The unksippable kind.
Race minigame #1
While collecitng tokens for the race minigame I attempt to wear out the orbit spinners by flinging all three balls through them repeatedly. I have to collect the kickback before it will give me more tokens to move on, hence the delay.
This is the easiest race - I catch all three balls on the right flipper and release the flipper for a single frame which causes them to go straight up but never displays any flipper animation. This makes for an interesting effect. Hitting your car makes it go faster while hitting enemies fouls them up, although the speedup effect is not consistent (this can be seen in the second-to-last lap where a solid shot gives very little boost). I play around with some input animation after taking 1st.
Pachinko minigame #3
I use the upper ramp to score the hideout bonus and collect tokens faster. I also triggered a bug where it's possible to have enough icons to start both minigames at the same time, but the game always picks the first completed token set as the next minigame.
The third pachinko table's center cup gave me no end of grief. I finally resorted to alternating shots on either side of it to manipulate luck enough to get a ball "stuck" on a peg so it would drop in to the cup.
Race minigame #2
This minigame starts quickly because the tokens have already been collected.
This figure 8 race course was very generous with nitro boost drops; I was unable to find any memory addresses to help manipulate them into appearing consistently but I was able to trigger four of them to show up in this race which makes it go by quickly.
Race minigame #3
The helicopater / safe animation has to completely end before any minigame tokens appear on the table. This is particularly annoying here because it takes a while to manipulate a good drop (without manipulating luck it can take well over a minute of real time before the game gives even one token drop).
In this race I focus more on spaced out hits with one ball at a time. This makes for a more interesting race, especially when the hit comes after ricocheting the ball of the sides and top of the table to hit the car just right. Winning this race gets the second fireworks display and lights the ball save bonus.
Pachinko minigame #4
I opt to use the hideout bonus to collect the last minigame tokens required in the game.
This final pachinko table is handled significantly differently than the first three. I was able to better manipulate the luck so every ball fired reaches the intended cup. There's a fair amount of waiting required to manipulate luck so it isn't as fast-paced but it does complete the table very quickly.
Beating the system
I do a ball trap which triggers some interesting game physics (the balls... er.. appear to have a love-hate relationship and display it by creating their own inertia). Watch the non-trapped ball as it approaches the spaceship for pickup - a bug causes it to completely disappear for several frames in a row before it enters the beam.
Once all three balls are abducted a "You have beaten the system" message is displayed which is where I stop the movie. Please note that this screen also says "....so far." and is apparently not the final ending; I originally made this submission with an incorrect assumption about this. I have adjusted the submission's goals to state the correct goal.
Future Improvements
Luck manipulation improvements. I can't say this enough. The pachinko minigames nearly killed me as they are a lot tougher than they look. It turns out that every frame the fire button is held after a ball is released from the cannon significantly impacts the speed at which it travels and subsequently changes its bounce pattern (which means balls you have already fired are impacted by future ball releases). I didn't fully understand this mechanism until after the third cannon minigame. The main table and the race minigame could also be improved significantly by finding out more about the memory addresses that trigger the minigame tokens and the nitro boosters.
I opted to get multiball as quickly as possible to eliminate all enemies on the main table and give me more "ammo" in the miniames, but this also meant I had to load three balls for every minigame and it also increased the forced bonus animations. It's possible a one-ball run may be faster, but that would eliminate the possibility of collecting the "hideout escape" bonus which scores several minigame tokens at once and would introduce enemies into the main table.
Memory addresses
These are mostly of interest in the pachinko minigame. $07AC is the cannon angle where 00 is far right and 95 is far left. $0699 is a counter that generally shows you how many balls you can fire before it requires you to wait for some to drain. $03EE and $07B3 are the number of cups that you've filled and the total number of cups on the table, respectively. $07B0 is the game's timer countdown.
Thanks
I've been a long-time lurker and I'd like to say I never would have attempted an unassisted run without all of the information posted both in the FAQ's and the forums. While there always a few bad eggs in any group I cannot overstate how professional this community conducts itself and how impressed I am at the level of dedication and tenacity on display here. Thanks to everyone who helps make this what it is.
Screenshots: The alien abduction at frame 44700 might be a good choice.
adelikat: The hash in the movie file does not match the good dump but syncs on it, so I cataloged as the good one.