Tuesday, October 31, 2017

Tachyon Chase FX devlog 0

Aight, so I've got one monstrously over-scoped project in the pipeline which is... not going to result in money (or, indeed, anything more presentable than a forest of terrifyingly complex code for managing the back-end of the battle system) any time soon.

Thinking it's probably pretty wise to have a sane one on the table, too. That's what this is!

I'm gonna warn you right now: this is A Thing as of, uh, last night. So it's real early. My goal is to iterate rapidly here in order to quickly produce something I can ship, but I'm a frustrating thorough person, so that doesn't mean "whoa look at the rad jiffs I have right this fucking minute." Gonna get some jiffs, though; don't worry about that. They're gonna be rad; they may even be bitchin'.

Instead, this is mostly about putting my thoughts in order so I can start moving forward. So: my goal here is: simple, mechanically-driven action game with a minimal control setup (thus suitable for mobile devices) that'll make a cool portfolio piece and also make me at least a little bit of cash.

So far, so sensible.

Then I thought about how to go about this in a way that'd result in building a game I thought was cool and what I got was "okay so it's F-Zero + Tempest with a flat-shaded low-poly aesthetic inspired by Star Fox." That sound you just heard is a market researcher inexplicably clutching their chest and screaming in inconceivable agony somewhere.

Let me explain the broad conceit here, first: this is a stage-based time-attack focused action game where players are tasked with steering a very, very fast futuristic spaceship thingy through tubular, octagonal tracks filled with obstacles, with the goal of reaching the end of the level as quickly as possible. You're always accelerating forward, but have the ability to freely move clockwise or counterclockwise along the track to dodge hazards and attempt to grab powerups and whatnot in order to go faster. You always want to be moving as fast as possible. More fast is more good.

Players automatically accelerate to their top speed over a timeframe of about one second. (Any figures I give here are bullshit, of course. What matters is what feels good in practice.) When you collide with a hazard ahead of you, you barrel straight through it, but at the cost of slowing back down to the start of the acceleration curve. (This is not a standstill. You never stop moving. You just have More Fast or Less Fast, and you're encouraged to seek the Most Fast.)

After about five seconds (again, bullshit) of sustained "max" speed, the player enters what we'll call a boost state. This provides an instant, noticeable increase in your movement speed, causes your ship to be trailed by an afterimage effect, and adds some nice camera-shake effects and distortion around the edges - this shouldn't ever impair your ability to see what's ahead of you; the regions of the screen that are blurred here are things behind your ship.

When in the boost state, the player's ship is also surrounded by a bullet-shaped "barrier" effect. When you crash into something head-on while surrounded by this barrier, the barrier vanishes - taking about a second to return - but you don't lose any speed; on the contrary, you gain a momentary boost, but at the cost of being unable to make lateral shifts until that boost has worn off and your barrier has recovered. This encourages players to gamble with their hard-won boost state - you want to barrel through hazards as much as possible, but you need to quickly appraise the oncoming track (while moving at breakneck speeds) in order to determine which things are safe - and, being safe, actively advantageous - to boost through. Slamming into things in the boost state cedes control of your craft for a moment and leaves you vulnerable to anything in your way to boot.

Of course, if you hit anything in the boost state while not protected, your boost state is gone.

You can also hit things by shifting into them laterally. This only costs you speed while colliding with the object, so it's less bad than hitting things head-on... but whenever you hit anything in any direction, you still lose control of your craft for a moment, and if you're in the boost state, you lose your barrier (if it's up) without even getting a boost out of it, which sucks. And of course if your barrier is already broken, bye-bye boost state.

So, lotta room for forcing really split-second situational analysis here, already.

Let's kick it up a notch, though.

Players also have the ability to "jump" with the press of a button. This causes your ship to launch into the air, where it'll flip over in the process before landing on the section of track opposite to the one it was on when you started. You move faster whenever you're airborne, so this is handy, and it allows you to follow lines that wouldn't otherwise be possible.

It's also a useful tool for dealing with situations where there are gaps in the track - missing segments in the octagonal tube - and allows players to avoid making lateral shifts that'd compromise their optimum line in favor of just flipping to avoid hitting a gap. (If you hit a gap, of course, you fall out of the track, which is generally bad, because it means you won't finish.)

The cost of jumping: it costs you one of your ship's three hit points whenever you do it. If you run out of health, your shit gets all blowed up, which makes it somewhat hard to go fast. So, between that and the loss of control, you can't just hop everywhere - you have to deploy those carefully and cautiously in order to use your health efficiently.

(You also lose health whenever you hit something while not protected, of course.)

This is basically cribbed straight from F-Zero, of course. I love the way the latter F-Zero games tie your boost directly to your health bar - and the way they let you get speed boosts out of tactical slides into landmines, electrified rails, etc. It encourages players to play really recklessly, which is great. Your health isn't something to conserve; it's a resource to burn, and if you have anything left in that bar when you cross the finish line that means you could've played better.

On that note, we're also going to crib another mechanic: when you run out of health, you don't just stop. Your ship explodes... but it holds onto momentum, and actually gets a pretty substantial speed boost for a minute before it starts bouncing around like crazy and decelerating rapidly. Which really contributes to the idea of "smart recklessness" that I want to capture here - if you're playing as well as possible, you're literally going to crash and burn over the finish line. That's a wonderfully unhinged dynamic.

Finally, let's talk (briefly) about power-ups, There are only really two I'm concerned with at this juncture: HP recovery pickups (recover 1 HP) and warp factor up pickups. Warp factor is what I'm calling a mechanic that ties your nominal max speed and your boost speed to the number of these pickups you've acquired during the current track - each one you acquire gives you a little More Fast. You want to go fast! However, moving faster also directly makes the game harder by reducing the amount of time you have to react to oncoming hazards. Moreover: since warp factor up pickups are desirable as hell, they can be used to bait players into attempting maddening slalom slides through fields of moving hazards or what have you. You can take a safe path - but if you want the warp factor up pickup, you have to bet your skills can get you to it without taking a hit.

And, of course, you do drop a warp stage whenever you take an unprotected hit. So this creates a lot of room for skilled players to get through well-designed stages much faster even with the essentially autoscrolling nature of the mechanics.

Lastly: why the hell say "also it looks like a SuperFX game?" Uh, okay, I'mma be honest: I'm an obsessive perfectionist with way stronger aesthetic sensibilities than my art skills can actually justify. Saying at the outset that my aesthetic is small numbers of flat-shaded, mostly-untextured polygons keeps me from wasting nearly as much time obsessing over aesthetics.