Category Archives: Procgen

Way too many changes at once

Oh man oh man it’s been far too long since I’ve published an update to Auto Fire. That’s a terrible thing I don’t want to happen very often, but I started to put in the quest updates and it made sense to get a number of additional features up to snuff in support of it.  

Worse yet, I sat on a hojillion changes in my source control before I checked everything in. I think it was like a month. Work was making me a little crazy, but that’s ridiculously bad form. On the upside, this update brings about a bunch of changes in a big sweep. 

My primary goal for this update was to add more exploration and stages to the boss fights and quests. For this I needed to support better quest state reporting, and make new emplacements to fight against to draw the boss out. Then I realized that the whole system fell apart when you left the area, so I had to improve how quests were maintained when you leave an area. Then I realized I wasn’t really saving data the way I should and basically had to improve the saves to be near-ready for cross-session saves (hopefully soon). Then I realized that spawning emplacements in random locations was really ugly and made them hard to find, so I added a content socketing system for bosses, emplacements, loot and hazards so that their placement could be more deliberate and hand-crafted.

Along the way I cleaned up the UI, added dynamic music, fixed some lingering physics problems (which caused invisible soldiers when the ragdolled out of the world, as well as making some tiles near rotated large objects to be un-enterable. I even stripped out some of the anti-aliasing that was making the game look muddy.

Quests

  • Entering a map occupied by a boss now requires the player to progress through the map and take out a number of strategic structures in order to coax the boss to face you.
    • Outpost maps are defended by armored watchtowers.
    • Ruined cities require you to take out fuel dumps.
  • The quest title is shown when entering and area, and updates are shown as the player achieves objectives.
  • The mini quest display is cleaned up and should update properly.
  • Quests are properly resumed when the player returns to a location.
  • Reviewing your quests that are in maps other than the current one is handled better.

Music

  • Added some post-apocalyptic music and a couple stingers.  Adjusted existing stingers.
  • Added dynamic music tracks for city and outpost tactical maps.
  • Dynamic music now escalates as the player takes out more emplacements and the enemy spawns get more intense, up until the boss is unleashed and the boss music is played.
  • Added boss-specific music, and adjust the intensity based on how close the boss is.

Visuals

  • Adjusted the anti-aliasing so the game isn’t blurry.  Temporal anti-aliasing can cause a smearing effect might work for realistic titles but ain’t great for games with precise information to dole out.

Combat/Systems

  • Added sustained fire bonuses that improve player accuracy after multiple attacks.
  • Painting an enemy with the radar will improve player accuracy against them.
  • Improved some targeting response elements by indicating which entities are people, cars, emplacements, etc.
  • Emplacements such as watchtowers have new aggro and play distinct spotted sounds.
  • Extended the aggro duration of enemies and made sure they don’t lose interest in the player while still in sight.

 Balance

  • Junkthrowers do 50% more damage. They were supposed to be scrub-tier weapons but they were just sooooo bad.
  • The Stallion now has a bolt rifle mounted front and two junkthrowers (one per side).  Its combat capability was depressingly terrible.
  • Mines have a lower cooldown again.
  • Significantly more cash is dropped from loot crates and enemies.  Killing a boss and getting $4 was definitely sub-awesome.
  • Zones have fewer garages.

Map Generation

  • Quest emplacements like watchtowers and fuel dumps are placed in sockets that are part of map generation.  Thus their placement is more crafted.
  • Loot crates and barrels also have specific hand-crafted sockets for various map generation tiles, for a less haphazard placement.  
    • Crates are off the beaten path, sometimes in nooks or dead-ends, but generally in a place somewhat thought out.
    • Barrels are placed in clusters around road hazards, fuel stations and large wrecks.
  • Loot and barrels now have a tunable target number placed per map.  Before it was a much wilder range of possibilities.

Progression

  • Population, quest progression and entity placement is now saved when exiting and returning to a map.
  • Entities, enemies, sites and pickups now save their state (when marked to do so) when leaving and returning.
    • This is not quite all the way to full savegames, but we’re very close.

UI

  • Improved the display of enemy misses somewhat.  Shots go wide and misses are pretty clear.
  • Cleaned up the “chrome” UI window borders.  They were originally photoshopped from actual chrome dashboards but that didn’t scale as well as I’d like.  Buttons have their own appearance now.
  • Improved some bugs with weapon targeting and the widgets over target vehicles.
  • Can now display entities as singular or plural for quest readouts.
  • Boss and targeting popup displays are now cleaner and, well, less terrible.

Bugs

  • Fixed the handling of rotating large objects… This means that there should no longer be any invisible barriers.
  • Improved some poorly-handled persistent effects such as oil jets and skids…  These are now handled with greater safety and more robustness.
  • Enemies no longer can get in a state of attacking inanimate objects or themselves.

Content Flow

Not a lot of talk coming from me lately, but Auto Fire is coming along as always.  I’ve been trying to bind all these systems I’ve created into some structure that pulls the player through the game more effectively.  Driving around and blowing things up is great, but there’s no goal yet.

I’ve been working on a faction system that allows various groups to occupy each location and sector on the map.  These factions have unique names and a variety of bosses under their employ, and each owns a location.  Various types have different types of bosses and relationships with other factions, etc etc.

On the upside, I was able to mess around with some more procedural generation and come up with boss names and even randomly-generated quotes.

In addition, I realized that I was going to hate playing through progression without having an automap, so I set down to work on that last night……..

It took all of two hours.

Dammit, I should have done this a year ago.

I owe everyone a build, and I’m hoping that a real content flow will warrant that.