Prototype 1 - First Test Drive


This is the first of several video dev logs I'm going to make while working on this game. After working on it on-and-off for a few months, I've finally got something interesting enough to show off.

Video Transcript (in case the caption boxes are going by too fast):

The following represents a work-in-progress. All assets are placeholders.

(Showing prototype gameplay footage; a red car drives around a track)

SpyCars will be a vehicular combat game based around races and arena deathmatches with up to 16 players.

What you're seeing now is a proof-of-concept I've been working on off-and-on for the past few months. It demonstrates basic driving mechanics and map rendering in the form of a quick time-attack game.

In addition to basic driving physics, I’ve got variable friction on different tile types and collision detection on the non-drivable barriers.

I chose the pseudo-Mode 7 style for being fairly easy to implement while still being an exciting enough viewpoint for an action racing game like this. A top-down, fully 2D game would’ve been easier, but too distant from the action for my liking.

Fun fact: the UI was actually readable before I put in the background. I’ll fix it later.

(Dev console opens to turn on visible hitboxes)

With the dev console, I can show off a bit more how the collision detection works.

The vehicle is made up of three Axially-Aligned Bounding Boxes that cover the hood, cab, and trunk. They all act as one unit when detecting collisions.

On the ground, you can also see the checkpoints used to track progress through a lap (purple rectangles). Funny enough, I thought this was the “lazy” way of doing it, but apparently this is how most racing games accomplish this.

(Screenshot of Tiled with the map from the prototype opened)

Maps are made in Tiled, a generic map-making program used by several games, including Shovel Knight and Axiom Verge.

I intend the game to be highly moddable, and this is one step toward that (also, it makes it easier for ME to make maps). In addition to maps, I also plan to (at least) make vehicles and maybe weapons customizable as well.

(Footage from Food Chain: There's Always a Bigger Fish)

Some backstory: Game dev is what got me into programming, but I lost my passion for it shortly after college. Short version, I placed my expectations on it way too high and burned myself out.

This is one of the few games I managed to finish. Did decent numbers on Google Play. 8,000+ downloads. Going by reviews, Russians really seemed to like it for some reason.

(Screenshot of DOOM + DOOM II title screen)

Last year, Nightdive’s new DOOM releases got me on a DOOM kick, which evolved into a history of DOOM and its modding scene kick, which got me interested in giving game dev a try again, this time doing it purely for fun.

(Gameplay footage from SpyHunter (2001))

I’d had a game idea I’d wanted to make for a while, inspired by the 2001 SpyHunter game. On top of there not being a lot of vehicular combat games, period, I especially hadn’t seen any with SpyHunter’s unique gameplay style.

For those who haven’t played it, missions were objective-based, and in addition to finishing the missions normally, you had to complete a certain number of side objectives in order to progress through the campaign.

Only the runs with the most objectives complete counted, so it meant you had to learn the levels inside and out so you could accomplish a perfect run.

Even its own sequel didn't keep this, cutting levels down to only needing to complete the primary objectives. I ended up not finishing it because the levels just weren't as interesting without the need for exploration and trial-and-error.

Anyway, I wanted to make a game like that first SpyHunter. To get started, though, I decided to focus on just making a good combat racing game. The world still needs more vehicular combat games, after all. Once that’s done, the mission-based campaign will be a sequel or DLC or something.

(Footage from an abandoned GZDoom-powered SpyCars prototype)

Given DOOM was what got me into this again, I briefly looked into making SpyCars as a GZDoom mod. I guess my thinking was hey, it’s already got guns and shooting, so I’d just need to make the character move like a car, and viola!

Turns out it wasn’t that simple. Don’t get me wrong, GZDoom is quite versatile, but I found that the further you got from a “DOOM clone,” the more using DOOM as a starting point became a hinderance rather than a benefit.

As such, I switched over to MonoGame. I enjoyed the challenge of using such a barebones framework, though I ended up deciding it was a little too barebones and ported everything over to LibGDX in order to get its nice bells and whistles (and its more extensive third party add-ons).

It’s a shame, because I really like this arena map I made. Oh well. At least I was able to reuse the movement code.

(Back to the prototype. The red car crosses the finish line, ending the race. A result screen shows the time).

At some point, I’ll be looking for people to collaborate with for the art and music and such. For now, though, I plan to just build up the core mechanics by myself till I have a more robust, feature-complete prototype.

Up next on the agenda is more advanced map making options. I’m going to add some more dimensionality to maps, like walls, ramps, and multiple layers. Obviously, that’s cheating the Mode 7 look, but screw it. It adds dynamism and variety to the level design and looks cooler than mere flat planes.

(The player's mouse clicks the quit button on the results screen. The screen goes black)

That's it for this dev log. I don't know when the next update will be. In addition to a fulltime job, I’m also trying to be an author, and I’m slightly more passionate about that, so my writing projects take priority. And that's before we consider all the other things life can throw at someone.

With that being said, tough, until next time, see you on the road.

Leave a comment

Log in with itch.io to leave a comment.