Gauntlet mode: Game flow from menu to end

Gauntlet tasks to do before initial release

Get local games fully working
Object for holding game state in Gauntlet mode
Auto-repair system + vehicle swap ability
Gauntlet game flow from menu to end
– Score system
– Level generation tweaks
– Update scrap drop system
– Item unlock system
– Update How To Play screens
– Test and balance gameplay
– Music?

Gauntlet game mode flow

Most game development starts with the developer testing things by dropping directly into a level. No menus, no options, no worries about setup or unloading things on quit. But eventualy you’ve gotta make it playable for the masses.

I’ve posted enough boring flow charts already recently but in Gauntlet the player goes from the main menu, selecting Gauntlet mode, to a vehicle select (or build) screen, to Gauntlet World 1-1. Then they either die, taking them to an end game score screen, or they make it to the evac point, getting them some free repair time, and then time to spend the scrap they’ve collected. Then they drop into Gauntlet World 1-2. And so on.

I’m not happy with the look of my end-of-Gauntlet score screen (it’s so boring) but it’s got what it needs in it:

The scores are fake for now – that’s the next task on the list. High scores are likely to be local only for the initial release of Gauntlet mode but barring any serious issues I intend to add worldwide leaderboards later.

Loading time saga

Soon after I started to code in the actual flow through a game of Gauntlet, I came across a loading time issue.

Gauntlet maps give the player a random chunk of a much bigger map to play through, with semi-random content spawned on it. I knew that loading the map with all the possible content and then deleting what I didn’t need would be terrible for loading times, so I’d already written a system for packing the map’s content into data and only spawning in what was wanted. I hoped that would be enough.

It wasn’t. The map’s terrain and extra static content still had to load in and loading times into a Gauntlet level were around 15 seconds. So I went on a bit of a mission to reduce it.

  • Removed level walls that were only there for editor use. Now it was 12 seconds.
  • Reduced detail on the walls that are generated when the level starts. Now 8 seconds.
  • Wrote a packer to pack all the remaining terrains and static content in the level and only spawn in what’s needed. Now 5 seconds.

That’s Good Enough.


I also did a couple of extra things that’ll make it into the inevitable Gauntlet release eventually. These took way less time than the game flow code but look a lot more interesting in a blog post.

Actual light cast by weapon muzzle flashes. Shown here in an artifically dark scene to make them more obvious:


Extra FX on plasma weapons. The side-ejected plasma FX were already there but plasma weapons didn’t have a muzzle flash which was kind of weird. Now a burst of plasma residue comes out the front as well, along with the actual projectile:


Bookmark the permalink. Trackbacks are closed, but you can post a comment.

One Comment

  1. JimmyVolatile
    Posted August 24, 2017 at 2:54 am | Permalink

    Liked the dark scene!

Post a Comment

Your email is never published nor shared. Required fields are marked *

You may use these HTML tags and attributes <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>