Today I'll be showing off EdC468's Speed Racer X, the first of his two ZZT racing games!
Racing games are kind of an interesting one for ZZT. Like with platformers, the rigid grid-based layout of everything makes it difficult to create a smooth experience, but Ed does an admirable job with this first entry.
Racing in ZZT has been done before. We've actually seen Hydra78's attempt at it in the sidescroller Freak Da Cat which takes a sharp turn (get it) at the last moment and goes from side-scroller to kart racer. The engine there worked decently enough with adjustable speeds and running a few laps around a track. A few months after the release of the first Speed Racer X, MadGuy's NextGame 33 also had one of its scenarios end with a race, this time on foot.
For these other examples of racing in ZZT, the engine was a small subset of the game. Ed here is taking on the challenge of creating a racing engine that isn't just some one-off minigame, but something that can carry its weight for an entire game. (And eventually a sequel too!)
There are quite a few challenges with making a good racer in ZZT. Firstly, your vehicle will be making 90 degree turns for its steering. Then if you slow your vehicle down by increasing its cycle, you run the risk of dropped inputs if the player tries to issue commands faster than the vehicle can process it. Lastly, you can't easily have multiple vehicles to race against. Some of these can be managed somewhat, but Ed doesn't do anything with any of these issues. Your car can turn at-will, the cycle adjustments can drop inputs, and the entire game is a time trial with a goal of simply beating the clock on each track.
And yet it's a blast to play. It's one I played frequently as a child, and have been wanting to return to for some time. So fasten your seatbelt and let's see how Ed's first ZZT release beat the odds and got the gold. And by gold I mean it won a Game of the Month award. (Interestingly, the GOTM review mentions a previous racer by eJECTION13 that I can remember playing, but at this time isn't preserved on the Museum.)
I of course was quick to select "How to work this Menu".
Of actual interest is the about section which explains the concept. There are a whopping 20 tracks to race on and a two minute time limit for each track. There's no storyline, just racing.
What makes Speed Racer X rise above the driving mini-games seen elsewhere is by creating a more dynamic racing environment with certain obstacles and a rather clever power-up system. It would have been easy for this game to feel very stagnant, but repeated play-throughs do offer you the opportunity to genuinely improve at each course and lower your times.
The tutorial takes on this incredible chalkboard theme that I'm amazed more games didn't do. The controls are similar to other racers, with left/right to steer clockwise/counter clockwise and up/down to accelerate/decelerate. By shooting south, the player can use an item.
For the most part the controls are fine, but it would've been nicer to adjust the engine a bit so shooting in any direction would use an item instead.
There's a little disclaimer asking for you to wait for your car to move once before adjusting its speed. This is an unfortunate coding issue resulting from having the race car do some initial setup at the start of each race. If you hit a button too quickly, the object will be sent to another label and the setup won't happen which can result in your car being unable to accelerate, or the player to not have ammo to fire a bullet in order to use an item.
The second tutorial screen entices the player with all the unique items and obstacles seen throughout the various races. There are speed boost items that can be used to move even faster than normally possible, items to reduce your overall time, and an item that will outright skip an entire lap.
For obstacles, there are acceleration pads that send the car zooming ahead like the speed boost item, boulders to shove out of the way, moving walls to crash into, a "shredder" which slows your car down, and a "track switcher" which will move positions after each lap preventing the same route from being taken twice.
This is the system that makes this game work so well. These items help make each lap play out differently and do a good job of providing some ways to save time if you can hit acceleration pads.
One of the more interesting mechanics is that the speed boost can actually cause the car to move so fast that objects won't recognize the car as having passed it. In the case of something like a shredder, this can be a boon, but it is possible to have a lap not count because you moved too quickly past the end of the track.
While going too fast to detect laps is an engine limitation, there's a conscious choice as well to require the player to slow down in order to collect power-ups. This is hard coded into the items to check that your car's speed is set to its lowest setting when you drive past it, which makes for some interesting gameplay where you want to slow down as late as possible to manage to grab an item, but if you time it wrong and miss, all you accomplish is burning precious time on the clock.
Oh heck, I typed those explanations forgetting that the next board gives all that information.
Oh man and the chalk becomes more a nub on each page. Beautiful detail.
The test track provides a basic idea of how the game actually plays. A decently sized sidebar holds information on the time remaining, laps left, and your current item. It's the sort of thing that could be compressed a little which would give more room for larger tracks, but the game works best with the more claustrophobic tracks that it offers.
In addition to demonstrations of several of the track elements, Ed has been nice enough to mark the "Checker" and "Checkpoint" objects. These are used to count laps and to prevent the player from just turning around their car around and driving across the finish line repeatedly. You could of course drive to the lone checkpoint and turn around, but that's probably not why you'd be playing this game.
Similarly, given the time of its release, I don't think anybody would have faulted the game if it didn't have these invisible checkpoints. It's the kind of effort that would be expected just a few years after this game's release, but I feel like a scroll saying "Please don't turn around. Thanks." wouldn't have been out of place for a game from 1999.
Oddly the test track at the end of the tutorial isn't the same as the training course from the main menu. This one kind of just dumps you in and is actually far more simple in design than the tutorial track.
The training race also makes it pretty clear where the hidden checkpoint is. Every track will have at least point where the layout forces the car down a stretch of road just one tile wide in order to be able to detect that the car has reached that point. These days with external editors some advanced tricks would allow you to detect passing a point better, but the limitation works out in favor of Speed Racer X as you have to quickly line yourself up with these checkpoint chokepoints so as not to crash!
With two races for practice, it's time to get to the actual gameplay experience. Every track must be played in a linear order and the game is split up into these "Pit Stops" as the board titles call them. These provide cute little overviews of each course, and some stats on your time played and car upgrades.
Yes this game has an upgrade system as well that goes completely unmentioned in the tutorial. It's not quite as fleshed out, there's no currency to buy things with or bonuses for achieving a fast time, instead after each set of four races you automatically receive a permanent upgrade to your car. While this feature won't make the game radically different, and the upgrades are in the same order every time, it is a simple way to spice up the game a little.
So here we are on our first track! "Got Knives?"
A good amount of this game's appeal comes from these billboards scattered across various tracks. You'll quickly find yourself wanting to see what (if anything) the next track will be decorated with, and it adds some much needed visual flair to the game.
As this is a racing game, it's best presented with video recordings of each track. This first one is as basic as it gets being a fairly simple if slightly irregular circuit. Aside from the large decoration, the only notable feature are these two sort of bridges which serve to funnel the car down something narrow enough to function with the checkpoint system.
Even from the start though, it's surprisingly fun. The strict 90-degree turns of your car mean that turns are an exercise in wiggling the wheel back and forth, and it's quite satisfying to line yourself up with the bridges perfectly.
Around 1:12 into the video I bump into a wall and we can see how Speed Racer X handles crashes. It's as simple as knocking the car backwards and decelerating, but there's a nuance to it, that's probably unintentional that makes things feel very chaotic. Here what should be an issue with the game's coding, namely the switching of cycles to control speed, makes crashes feel so much more significant.
When you crash, the object isn't locked, so you can be quick enough if you realize what just happened and escape it, but as you certainly weren't trying to crash in the first place, you're likely going to be bounced backwards as your indication you struck a wall. If your reaction time isn't fast enough to quickly take control back over your car, the vehicle will slow down by a cycle. With the exception of grabbing items, you'll always want to be moving at max speed as even the roughest turns in this game are doable at cycle 1.
Once you're knocked to cycle two though, the controls inherently become less responsive. The car can be told to accelerate, but on a tick where it won't execute code, and then told to turn on the next cycle where it receives the command but remains at cycle 2.
In practice this means crashes become chaotic trying to juggle accelerating again and changing direction quickly to not lose time, but slow enough to not drop inputs. Do this too slowly and you may even crash again and drop down to cycle three, exacerbating the problem!
The second track introduces some more bends and adds our first set of power-ups to collect. Ed immediately begins rewarding smart play when attempting to get the best times. Rather than start the race by accelerating to maximum speed as quickly as possible, a tucked away lap skipper right by the starting line offers an incentive to wait until it's been collected first. (Remember that you must be moving at the slowest speed to collect items.) By grabbing it on the first lap, the player can maximize their time spent at full speed in future laps.
One fun quirk of the orthogonal movement is that the sharper the turn is, the easier it is to make. The inner "U" shape starts with essentially a 90 degree turn, hit the button once and the car immediately points in the direction it needs to. The next turn is a bit more curved, though it can still be completed in one adjustment to steering, but this kind of quick steering won't last long as the tracks get more complex.
On the third course, the pattern continues, resulting in driving in an outline of a "W".In addition to a few speed boosts, the game introduces zips here. Obviously missing one can be quite costly to your time as boosts make your car more two tiles in a single cycle, effectively doubling its speed while active.
The zips also encourage smart use of your speed boosts. The effect of the single use boost and the on-track zips are identical, so you'll want to note where you get an opportunity to safely use them.
There's also a spectacular crash about 15 seconds in where the narrow track results in quite a lot of bouncing around trying to regain control of the vehicle. When in doubt, its best to just stay at a low speed until your car is pointing in a safe direction and accelerate from there. Trying to do both at once in a tight fit like this makes it all too easy to crash and crash again. This also can make it tough to successfully hit both boosts along the horizontal strip along the bottom of the course. Bumping a wall will easily mitigate any time saved by the extra burst of speed.
Ed pulls no punches either. Three stages in and I already manage to run out of time.
Despite a rough first lap, a second attempt fares better, but even it ends with just 14 seconds on the clock.
Course four begins by dunking on diet colas. I have not seen Pepsi One in probably 20 years, but I remember it being preferable to diet. Thank you for reading my opinions on long out of production sodas. (Huh, apparently it was actually produced all the way up to 2015)
Perhaps more importantly, this is where the curves stop being nice easy to cut corners. You need to start shimmying your car around these bends making for a track that looks pretty much like you'd expect a top-down single-screen racetrack to look, but hides its difficulty in its apparent normalcy.
Also worth noting is at around 0:24 when I slow down to collect the lap skipper, and then just use the zip to accelerate only to discover that this speed boost doesn't also force the car into max speed. As soon as its boost wears off, the car immediately goes back to its minimum speed.
Having finished four races means a return to the status screen. The player is locked in here until the time calculation finishes which doesn't take too long this early, but as it will be a running total, towards the end of the game it can be a bit annoying to have to wait for its calculation to complete.
The next four courses take on more of a desert theme and focus heavily on track switching objects to change your route with every lap.
In addition, the first upgrade is received, improving your car's bumpers so that crashing will only knock the car back a single tile. Even though this means the time before your vehicle slows and becomes tougher to send input to is now shorter, it still feels like an improvement. I suspect this is just since as you get better at the game you'll get a better feel for when you've crashed and be able to react quick enough.
I really like the look of course five! That big curve on the left really sticks out and requires some good timing to take it as cleanly as possible.
The track switchers do a great job as well. It's amazing how a simple alternation between two routes makes following those routes that much more difficult. At this point you have to juggle learning the timing of two routes at once.
The general lack of straight roads means you have to find a moment to pop your lap skipper, and this being the first time one is received with track switchers on the board, there's a bit of apprehension wondering if using one will cause the track switchers to move. I was a little disappointed to discover that they don't. There is a benefit in that the player won't block off the path they're currently on if you use the item at the wrong time, but if the track switchers did move there'd be an extra element of strategy as skipping a lap would let the player bypass the track layout they dislike more.
For race six, there's another starting power-up with a time bonus. These ones feel the most boring as skipping laps has a noticeable impact and the speed boosts allow for some strategy with when to use them. Just gaining more time.
Also upon re-watching the video, I don't even think it worked since I used it so early. These items might work better on a track where the time limit was really strict, but Ed opted to always give the same amount of time for each course. Give me a track with 30 seconds to complete and a whole bunch of these and you'd have an interesting challenge.
Layout-wise this one doesn't feel as good as the previous one, ending with a very similar split path and no boost power-ups or anything to take advantage of them with. Though I do appreciate the recurring theme of items that can only be picked up (smartly) on one track layout.
I also miss having billboards. (Don't worry, they'll return.)
Track seven is fun enough, and takes an usual approach of having the fast track switcher only open and close one path. The longer path is always available, though obviously there's no reason to ever take it when the straight-line alternative is an option.
I wonder if this track would feel more substantial by moving the zip down a tile and making the turn before it prevent you from pulling the car directly into the row with the zip. Then you'd have a tougher decision of making a very tight maneuver to be able to reach the zip with the risk of a crash or opt for a safer but slower method along the upper row.
For the final track in this second set, the switchers are used solely as obstacles and the circuit is a more basic shape. Honestly, this is all it takes as far as variety goes to make a track feel like there's more too it than rote memorization of how to drive it. There's not a lot of finesse when dealing with a tile-based racing engine so just this tiny bit of forced variety is enough to make these races feel a little more involved than the earliest ones where there's a clear optimal way through it.
Not that this one doesn't still have a clearly defined optimum solution, but that it has one for each layout. No power-ups are needed to make sure the player is still awake as they drive.
The third set of races is where the game gets its most exciting. From now on the car will start with multiple boosts instantly giving the player the opportunity to think about the best place to use them.
These are tracked by giving the player 3 score at the start of each race to count them down. If the car picks up a different item (or another boost on the track) it gets priority so there's no need to worry about having to use all your boosts before a lap skipper.
And Ed immediately puts the question of "to boost or not to boost?" into practice with a course full of lengthy straightaways, but with the twist of moving obstacles that dance from side to side. This is really where the game peaks. It feels great timing a boost and zooming past a bunch of barriers just in time! The timing is on the player and can be unintentionally influenced as well by close calls. Block a barrier from moving as you drive past and it will desync from the others resulting in far more dynamic races.
And Super Street Fighter 2 Turbo Special Edition is out!
Perhaps the only real flaw is that while this course is clearly designed to take advantage of your new triple-boosts it has seven laps. With two great spots to use a boost, it's pretty easy to burn through them and then just drive as you had been before.
Race ten is certainly derivative of the previous, but it still manages to have its own identity through the addition of some power-ups right in the middle of the moving barriers. So now you need to deal with not only getting through the much more synchronized barriers, but also slowing down in the middle of them to grab items.
The billboard is also my personal favorite. This game almost predicted Bomberman: Act Zero.
The first two courses of this set are essentially a gentle introduction returning to a classic circular (well, for ZZT) layout, but the training wheels are removed here with the return to a more twisty layout. It feels quite difficult to actually drive your way through when the paths of the barriers are so narrow, which honestly is a bit detrimental to the experience. While you have boosts it's still fun to fly through them, but it's quite easy to smash directly into one.
Surprisingly there's very little penalty for crashing like this. It doesn't actually cause the car to go into its crash code or even end the boost! It's not entirely without consequence though as it will waste the number of spaces the car gets to move before returning to its regular speed. Still, the previous races feel like you're doing something right when you get through everything, while this course makes it apparent that it hardly matters what your timing is.
"Naughty cars get put in the car wiggler" sums up this track.
Of course, when not hoping to squeeze through narrow passes you get quite a few rough turns. A lack of power-ups on the track mean that this is all on you. The game definitely suffers a little with this kind of track design which earlier felt like there was a lot more care put into it and now things have really turned into cramming more and more moving obstacles in narrow corridors.
If they just moved slower so you could actually predict them it would be fine! Instead it really feels like you're losing your ability to control what happens after your boosts are gone, and even with the boosts it's still a gamble as to whether or not your car will make it through. This one in particular feels really rough to play.
This one starts off with a prominent menu boasting its unbreakability. Easy enough. The player gets to move a cursor and select from a brief list of options.