Category Archives: Auto Fire

Coming up for air

It’s been a while! I’m about a month into ramping back up after the spring got eaten up by a much-needed personal break, and it’s been a while since I’ve shared the ongoing improvements to Auto Fire, so let’s get back to it! Getting things rollololling by pulling together the assets for some possible arena layouts and maybe even a racetrack or two… Been fun to explore!

One of the biggest changes I’ve been working on is a scale revision which will open up those cramped streets and other areas for more driving fun, as well as giving more impact and drama to features such as buildings, walls and streetlights.

I’ve also got some help from a talented friend in a much-needed overhaul of the UI. Just to whet your appetite, here’s a quick peek at one part of the dashboard… I’m already in the midst of revising the grip/skid meter to tie it all together a much clearer package in this new speedo.

Can’t wait to show you more.

Auto Fire v0.6.08: Toots on the Highway

It’s been about a month since the last update of Auto Fire, and I’ve been focused on the content arc.  In between hitting “refresh” on the Kickstarter page for Car Wars Sixth Edition (really excited to see car combat come surging back), I managed to assemble a build with a good chunk of stuff.

The upcoming goal is to really focus on content generation, bulking out how sectors are laid out and how quests are encountered within them.  This helps draw players through the various sectors and really gives some needed context and narrative to the play arc.

Some notable elements below are a larger emphasis on characters…  They are more prominent in encounters and they now are equipped to refer to each other in dialogue (which will continue to grow).  The player’s “feed” takes the place of a traditional Roguelike combat log, fielding tweets by your opponents as well as residents of the current sector.

More gameplay-relevant is the introduction of highway maps between the various overworld sectors.  These will continue to evolve and reflect the hazards of traveling long distances.  Eventually they will be the setting of convoy missions, but first things first…

As always, you can download the work in progress at Itch.io…

Try out the newest developments!

Gameplay

  • Rockets from watch towers now take a number of turns to reach their targeted destination.
    • When you’re trying to take them out, make sure to keep moving!
    • Rockets will aim for a spread around the intended target when sighting in.
    • Some (but not all) delayed projectiles can even predict where you’ll be when they hit, forcing you to keep maneuvering.
  • Various world objects are now destructible and break apart using physics.
    • Guard tower, water tower, trash pile
  • Line of Sight for firing now properly checks sight rather than actual blocking which means that crates and little things won’t block your shots (finally!)
    • Added Line of Sight blocking to several buildings and entities that were not blocking.
  • Extended the sight radius for vehicles. They now check in a square radius rather than a circle…  which results in cars pursuing you from a good amount away.
Those windmills were just meant to be knocked down…

Visuals

  • The overworld no longer slows time because it’s already an abstraction and doesn’t need even more… this is only reserved for combat maps.
  • Occupied (combat) locations show explosions and smoke to help players know that they will be driving into a combat zone.
  • When a player clears a map of hostile forces, they are informed with “Cleared!” upon returning to the overworld.
  • Adjusted the camera so it lags slightly when moving.  Is it good? The jury is still out on this one…
  • The machinegun muzzle flash ejects bouncing shells.
  • Adjusted where rockets come out of a watchtower.
  • Adjusted the default quality level, which was for some reason defaulting to ultra-low Atari 2600 mode.
  • Revised overworld explosions since they are, again, abstractions.
  • Lowered some mountain terrain that was poking up through the fog of war.

Environment

  • The map generator works with maps chopped into multiple terrain chunks rather than a single one, helping performance on some larger maps.
  • Fixed the placement of the highway in highway entrances.
  • Highway entrances are now skinnier than they would have been.
  • Revised environment items:
    • Skid decal for danger zones.
    • Added some new shacks for the desert to replace some of the trash ones I was using.
    • The watchtower and other points of interest in the desert have been beefed up a bit with some new breakable elements.
    • Barbed wire is chunkier and easier to see.  It breaks with physics also.
    • Ground decals under watchtowers, outposts, garages and homesteads are more transparent and hopefully less… ugly?
  • Fixed some issues with setpieces when they are laid out in desert combat maps.
Clever maneuvering or collateral damage?

Content

  • The tutorial is spread out to include special encounters where you can get instructions on how to play.
  • Overworld sectors are now connected by long highway maps that must be traversed, which have some barricades and watchtowers along the way.  
    • More to come with these.
    • Highways now generate appropriate names and state highway numbers.
  • Population is now more aggressively associated with faction, so that dropping a new gang into an existing map changes the experience.
    • The boss quests are also determined by the faction, so each faction can have its own quests based on what location they might find themselves in.
  • Overworld enemies now explode immediately after you finish an encounter rather than one move later (which was confusing)
  • Introduce a new intro encounter for bosses when encountered in the field.
  • Camera zooms in on intro boss when played.

User Interface

  • Added highway signs indicating what sector we’re heading for.
  • The Highway designation is seen when entering a highway map.
  • The combat log is now the equivalent of a social media feed, bringing in more of the publicity elements that will ultimately define your quest for fame.
    • The feed contains information about kills and items that are acquired.
    • Boss barks now manifest as Tweets (or “Toots”)
    • Added new citizen tweets about various agents and parties.
  • Adjusted the encounter portrait to use large portraits now.
  • Improved the ability of quests and encounters to refer to you, locations and other characters.
  • Improved the automap title information to show the map and its current difficulty level.
  • When a contested area is defeated, display CLEARED! floating text.
  • All popups use black borders rather than metal.
Hitting the open road!

Balance

  • Adjusted weapon drop rate down in general.
  • No weapons dropped at tutorial.
  • Tutorial cars and tutorial level crates no longer drop weapons.  The only weapon you get at the very start is the single weapon you get after beating the first battlefield.
  • Adjusted the bosses after the tutorial so they don’t kick you in the nuts.

Audio

  • Properly called TargetSpotted when a vehicle spots the player.
  • Spotted sounds now use a cooldown in general so there aren’t honks all over the damn place.
  • Adjusted the default music volume, which was previously too damn loud.

Miscellaneous

  • Cleaned up a bunch of stuff to reduce the size of the game on disk and memory.
  • Fixed bugs with returning to conquered maps.
  • Fixed a variety of bugs related to killing things before their projectile lands.
  • Fixed issues with tossing loot
  • Added collision to city road tiles so physics works properly with them.
  • Fixed a variety of issues with grass
  • Added killall and noclip console command for development.
  • Try to avoid accidental triggers of entrances.

Dev Streams!

I’ve been doing development streaming on Twitch lately, and it’s been pretty enjoyable actually. It’s early afternoon for me, Tuesday at 1PM Pacific, and it’s been fine. I worried about the cats disrupting things but I just embraced the cat break. I worried about boring people with some noodly code problem on camera but there’s always something I can pick up that’s interesting to work on and talk about. I’d like to think that people are learning things about game development as well, which it turns out is part of what it’s about.

I’ve saved some of these streams on Youtube, which has been good since there are sometimes concepts that I want to convey to people that are helping me out… and having a demo of its use is super-handy.

In stream #2 I showed off how patches are created in-game, and punch up some in-game objects. (The first stream was unfortunately lost to the fact that Twitch doesn’t save broadcasts by default). We also got our first visit from Sam.

Stream #3 started pretty weird because I had the mic off for a good chunk of the start. In this I actually crack open the very improved Blender after only an hour of watching tutorials and use it to update and break up some models, to improve the physics impact of destruction. Then we cut loose with some rockets.

See you on Tuesday!

Auto Fire v0.6.07: To Progress!

There have been improvements to Auto Fire both big and small! There was a list as long as my arm of bugs and nitpicks that I discovered when showing off the game at the Roguelike Celebration. Quality of life improvements are always crowd-pleasers, and they happen to also be me-pleasers since I’m playing the game everyday.

More importantly, I started setting an eye to a longer play arc than I have now. That includes laying the foundation for loot, health and damage that’s defined by a progression arc. This means that I can balance numbers globally, as well as more easily drop in enemies and items to the game and have the system distribute them more easily.

This may not affect your experiences that much just yet (aside from some new items dropping!) but I’m looking forward to bulking up the content soon. (If you’re impatient, here’s the download link now)

Gameplay Improvements

  • Rams are more sophisticated in their detection now! They now check relative speeds, and factor in the ram plate only when your front is colliding with the enemy.
    • The relative mass and levels of the vehicle are also factored into the damage that is done.
  • The Cricket’s Bootlegger now executes a stun burst upon completion! (Like it’s supposed to!)

Content

  • Sectors are now set up to control the challenge within them! This gives me the first tools to really smoothly lay in progressively advanced content.
  • There are now tables that control the base amounts of health, damage, fame, item value, vehicle value, and various resource drops.
    • Varying the content from this baseline will help generate new content and help balancing as the content grows.
    • This was waaaaaay harder than it should have been, except it’s because vehicles have a fairly involved way of installing themselves on various vehicle chassis. Players do it differently than enemies, but they all use the same basis.
  • Loot tables now spawn based on the challenge level of a map or opponent as well. Items are now set up to drop in quickly via a spreadsheet, allowing content growth to be much easier!
    • Part of the result of this is that there are some new tires, engines, blast gadgets, and weapons that took a few minutes to whip up. A significant improvement.

Visuals

  • Adjusted the fire trail from exploding barrels and vehicles to be more flamboyant.
  • Added physics objects to destructible entities.
  • Fixed orientation and camera angles of special moves.
  • The overworld vehicle is a tad smaller now, to better fit the other elements within.

User Interface

  • Automap is (finally!!!) closed with the Escape key
  • Objective Pointer improvements!
    • Objective pointers now can point to things that can be killed in the map if there are more than one.
    • When there are multiple objective targets, only show the ones that have been seen so far.
    • Pointer flashes regularly and is pushed slightly further inward for better visibility.
    • Pointer starts in the center and moves out when changed.

Environment

  • Revised the feel of the ground, leaning a little bit in the direction of more detail. I don’t want it to get too busy but it was blandtown.
    • Experimenting with grass, textures, some more boundary variance, and so on.
  • Outposts now have some slightly more interesting walls.
    • There can be breaks on multiple sides, and now the break isn’t always predictably on the south end either.
    • There are some corner variants now, just to mix things up.
    • The walls have a bunch more variance and they are not always rail-straight.
  • Wanted a little more verticality, so I made the guard tower and water tower taller.

Audio

  • Physics objects like exploding cars now have sounds when they collide with the world!
  • Some sounds are no longer affected by slowing down time, because they sounded pretty dumb (like the “clink” of a dropped item)
  • MasterAudio (my sound system) was logging all sounds, spewing into the text log. Turned this off, which could improve performance slightly.

Bug Fixes

  • It turns out I wasn’t reading my data files in an internationally friendly fashion. PC’s with Russian language, for example, would have empty levels and no weapons. Derp. This should be fixed with new parsing improvements. Hopefully Russian computers can run the game better now!
  • When attacking with a ground-only weapon or special move, don’t snap to an enemy.
  • Vehicles now have their special moves and speed perks built-in as vehicle defaults. This makes them not part of the inventory and not removable.
  • Fixed some targeting issues caused by weapons with a minimum range calculating incorrectly.

Other

  • The Steamworks library has been added to the game! It doesn’t do much yet, but it’s a start!
  • The game has been updated to Unity 2019.2.9f, and now uses Unity Plus. This means no more Unity splash screen for extra Pro Points(TM)

As always, you’re welcome to try out the current build at Itch.io!

October Gameplay Update

Testing out my new hardware in the run-up to my first stream, I whipped up a quick video blog showing off the most recent changes to the build and its vehicle playstyles. Enjoy!

And hey, yes! I did stream for the very first time this week. I unfortunately didn’t know that Twitch didn’t default to saving past broadcasts so the first session isn’t viewable, but head over to my channel and give me a follow! I promise to save all future sessions!

Auto Fire v0.6.06: Perk-olation

It’s been a couple weeks since the last build, but a lot has happened due to things that I’ve wanted to get in for the Rogue Celebration 2019​, which I’ll talk about in another article.

For Auto Fire, RogueCel primarily meant that I had a lot I wanted to do in proving out playstyles.  This manifests in the player’s vehicle chassis selection…  It includes speed perks (passive effects triggered when driving at 60 MPH or higher), and special maneuvers (gas-consuming all-in-one moves that launch the vehicle to a new location and affects everything around it.

As always you can check out the state of development for free on Itch!

Explode-o-Ram Speed Perk

General Improvements

  • Cached Line of Sight: I used to do a pretty dead-simple Line of Sight test… I traced from one tile’s center to the other. Sounds simple, but there are a ton of edge cases that come about from testing that way.
    • To get it right requires a couple extra tests, primarily tracing to each far corner of the tile.
    • This allows you to see tiles that are partially obscured by walls, as well as being able to target walls themselves (such as when shooting the destructible outpost borders).
    • To reduce the load of this, I cache the results of these multiple line traces in all directions out to 15 tiles (this is tunable). That way I can look at the offset from the viewer and quickly retrieve all the tiles I need to query for blocking. Is it done in the most efficient way? Not yet, but it definitely is an improvement so far.
  • Improved item gathering: Vehicles now automatically pick up items from the ground adjacent to the vehicle, rather than requiring the radar to be used.  It feels so much better!
    • The player also automatically picks up adjacent items in the overworld!
Jet Wash Speed Perk

Gameplay Systems

  • One thing I really needed was to introduce more playstyles for players to choose from. I decided to bake in special abilities into various vehicle chassis.
    • To facilitate this, I created the ability for equipment to have passive effects when installed, and remove them when uninstalled. 
    • Effects have an ambient effect on their target, and can also trigger gameplay or visuals as a result of having triggers on its target… such as being hit, losing control, or colliding.
    • Vehicles now have two new equipment slots (which are not player-editable):  Speed Perk and Special Maneuver.  This equipment will in most cases be baked into the chassis itself when used.
    • A minimum speed can now be defined for effects, allowing for things like speed perks which trigger whenever the vehicle is traveling 60 MPH or over.
  • The stun condition keeps an AI (or player) from firing or controlling their movement until it wears off.  This means pedestrians stay in place while vehicles will continue forward at their existing speed (or until they hit something).
  • The focus condition increases the subject’s ability to hit targets and inflict crits.
  • Turret fire (the F key or the gamepad triggers) now can launch any weapon or special ability.  It also won’t attack the ground the way it used to.

Vehicle Upgrades

  • Ram Blast (Stallion):  Speed perk that triggers an explosion whenever the vehicle collides at high speed.
  • Ram Piston (Stallion):  Special maneuver that launches forward and bashes through the selected target, knocking it aside.
  • Advanced Radar (Stallion):  The Stallion has special radar that has a bigger radius than other vehicles.
  • Hyperfocus (Panther):  Speed perk that increases the hit and critical chance when at high speed.
  • Jet Thruster (Panther):  Special maneuver that launches forward and puts the car at max speed, leaving a trail of fire behind.
  • Jet Wash (Cricket):  Speed perk that stuns vehicles and foot soldiers that are passed at high speed.
  • Bootlegger (Cricket):  Special maneuver that launches forward and spins the car around, ending with a large stunning pulse.
  • Note: Special Maneuvers all consume gas!
Jet Thruster Special Maneuver

Visuals

  • Created new shader for the fog of war that scrolls and has interesting edges. 
    • This was only my second or third foray into Amplify shaders… It’s been great to be able to the work in the editor rather than have to code them, since I really did a lot of experimentation here.
    • The main goal was to create something more dynamic on edges and more particular to have fewer tiles obscured by half-opacity textures, which made things feel extra floaty and mushy on a large part of the screen.
  • Destroyed vehicles now do not fly into the air as ridiculously far.  It was fun but you often never even saw the vehicle because it flew so high.
  • Adjusted the color of the ordnance and gas can icon and model to be more prominently colored, so they are easier to spot.
  • Added glinty materials to pickups to make them catch the eye better.
    • This is mostly by cranking up the brightness of the specular in the toon shader I’m using for gameplay objects. It looks pretty nice when the objects spin.

Content

  • Adjusted the loadout of starting vehicles to match playstyles. 
  • Updated start screen to give more description of cars. 
  • Updated some tutorial text to match the new control method.
Revised fog of war using Amplify shader

Bug Fixes

  • Fixed bug with effects such as dropped items. One symptom was smoke and oil overwriting each other. This may also eliminate some of the mysterious crashes I’ve seen.
    • It turns out that in a specific case I was passing a single dictionary around for effects rather than properly instantiating it for each instance of an effect. That caused some serious weirdness, glad to have tracked that down.
  • Fixed a problem with firing while stationary, which remained in slomo during execution.
  • Changed the ragdolls for humans and dogs to move smoothly.

Audio

  • Added audio mixer slowdown when slowing down time. 
  • When destroyed vehicles are flung into the air, they now play sounds when falling to the ground.
  • Added a techy burst sound for the bootlegger.

User Interface

  • Targeting squares are more yellow now, rather than green. 
  • The (A) button prompt disappears when the player centers the gamepad stick.

Auto Fire v0.6.05: Advancing the Experience

It’s been a few weeks since the SIX update, and there’s a lot of meaty gameplay work to show off.  Ammo! Maneuvers! Slo mo visuals! Better ramming!

Slo Moooooo

  • One of the biggest issues of having a turn-based game with realtime visuals is that a lot of the time people don’t grok that the game is waiting for their next input.
    • As a way to get around this, I added a slowdown when the game is waiting for player input. 
    • As a delightful side effect, it looks pretty damn cool. 
  • Had to move a number of UI inputs to use unscaled time so it ignores slomo. I might have missed a few, so will be on the lookout.
  • Made a bunch of UI effects use unscaled time so they play at a normal rate even during slowmo.
  • Fixed camera and a bunch of other elements that slowed down inappropriately during slowmo

Special Maneuvers

  • Special maneuvers appear as “equipment” (currently occupying gadget slot 3), but are eventually going to be baked into specific vehicle chassis, which allow you to take special actions in a crisis.
    • This means that different vehicles will help with different playstyles.
  • The first special maneuver is the Ram Piston
    • This maneuver launches the car forward 2-4 tiles within a set arc and rams an enemy out of the way.
    • You can also use it to get out of a jam by launching to an empty tile.
    • It has a cooldown and also uses gas as its ammo, which you can find out in the field or purchase at a garage.

Resources as Ammo

  • Players have always been able to collect gas, ordnance and parts around the battlefield.  These items are now used as ammunition for some weapons and equipment.
    • Mines and rockets use ordnance
    • Ram piston, flamers and flaming oil takes gas.
  • Many weapons do not require ammo (just a cooldown), so ammo-consuming equipment will be stronger for its limitation.
  • When you highlight a weapon, it should explicitly say the ammo it uses, if any.
    • If you’re out of ammo, hopefully it will be very easy to see and understand.
    • There is a dry-fire sound when out of ammo. 
  • All game hints are now moved to middle-screen and important information such as being out of ammo also appears in that space as needed.
  • Now that ordnance and gas are much more needed by players, I added significantly more drops of them to the loot lists.
    • Loot dropped from cars and crates now has a new definition type, so every drop won’t have 5-6 items in them (it was just out of control)

Ramming

  • Ramming something at a high enough speed will now knock it to the side rather than stop you dead.  It’s far more fun.
  • The mass of an opponent or object now matters more. Your speed and your mass is factored against their mass.
    • NOTE:  More will happen with this in the future, since relative speed and resultant velocity aren’t all factored as they should.

Additional Targeting Changes

  • Area-effect weapons such as rockets, shotguns and flamers can now be aimed at the ground if you want to position their blast for maximum effect.
  • Some weapons and abilities now have a minimum range.
    • Rockets have a min range of 2. 
    • Multifire rockets have a min range of 3.

User Interface

  • Updated the position of resources in the HUD.
  • Revised frames in HUD to use a superthin frame.
  • Updated skid meter and needle, and repositioned turn pips.
  • Boost hint only appears when at max safe speed now.
  • Cleaned up the UI camera for inventory and garage. It’s not blurry anymore. 
  • Fixed broken portrait from game startup.

Audio

  • Revised the collision sound (hated the old one).
  • Added a new wood break and revised rock break sounds.

General

  • Edited the speed lines for movement and ram tile with a new graphic.
  • Fixed some rare crashes