Tag Archives: Roguelikes

Auto Fire v0.6.61: Citadels, Balance, UI and Optimization

In the last couple of months we’ve made a number of changes to UI, the combat experience, and those you meet at citadels.  It’s a beefy update but more to come.  Download the new build, and while you’re waiting check out the new teaser!

Release Notes

Advanced Sector Preview

  • There is a temporary button in the Campaign Start dialog called ADVANCED SECTOR PREVIEW
  • This will advance you to a sector slightly deeper into the game.
  • This is recommended for experienced drivers only!

Combat/Driving

  • Made hits impact the exposed side of the target rather than randomly within their square
  • Fire gang implemented for region
  • Gave fire gang bosses rocket salvos that drop flaming oil
  • Enemy vehicles can now use dropped weapons.
  • Fixed a number of reverse control issues
  • Towers fire double rockets again
  • Entrances to roadways and garages are no longer barriers to be collided with, you can drive through them if you want.
  • The Camera now now holds on your target until the projectile hits, so you can better see the results of your shot

Balancing

  • A lot of difficulty tuning.  Damage ramping isn’t nearly so crazy.f
  • Adjusted enemy aggro down a little so we didn’t get mobbed from everywhere
  • Reduced the population of most maps, the player could easily get swamped if they covered a lot of ground
  • Fixed burning damage to not apply the weapon’s base damage, which was causing massively OP damage when you or enemies are on fire.

Citadels

  • Added a progression of mayor quotes in the citadel.  It increases as you get better renown or accept new sector quests.
  • Mayor feed in the citadel ticks out like the quest panels do.
  • Changed the faction readout to show the relevant factions in the current sector, and have room to show their full name.
  • The citadel screen shows sector stars in a cleaner fashion.
  • Removed skills entirely.  Perhaps they could return later, but right now they are not sighted to add value to the game.

Social Feed

  • Added a feed to the loading screen so we can have a colorful quote from the populace as well.
  • Improved some of the macros to better support “they” pronouns.
  • Cleaned up some bad citizen tweets.
  • The leader of a citadel waits for the player to get done loading before teletyping.

Content/Generation

  • Massively improved and refined the city ruins block set
  • Added randomness to a lot of rubble prefabs in the cities
  • Reduced the ruincity population
  • Overworld roads are more diagonal and less derpy looking
  • The highway map doesn’t have a missing tile at the exit
  • The highway map has additional patches and population
  • Less damn trash bags all around, none in the desert

Gangs/Organizations

  • Updated the bandit naming setup for better results.
  • Corporate agents and duellists now named better.
  • Wrote some minor encounters for fuel and towers
  • Reduced base quests from 4 to 3 fuel dumps and watchtowers

User Interface

  • Added a pointer that indicates the next objective if radar is pressed.
  • The player is prompted to press radar when the encounter is completed.
  • Added visual quality settings to  the in-game popup.
  • Some visual improvements to tablet displays such as challenge and mission completion
  • The in-game settings menu has a visual update.
  • Gender selector is now He She They
  • A lot of gamepay fixes and support.
  • Added gamepad control to Gear usage menu
  • Revised the social feed phone mask
  • The social tablet fades out after a set amount of time, but fades in for key messaging

Environment/Visuals

  • Created a full set of cars with color variants red, blue, yellow, black, and apply them to gang types
  • Replaced some of the old awful rocks with more stylized desert-worthy obstructions
  • Added VFX, sound and hitstop to crit hits
  • Fog of War should be steadier and not have a weird lag.
  • Terrain visuals are adjusted and scaled between tactical desert and overworld
  • Revised VFX for scattergun (not great, but better)
  • Smokescreens are now effected by the force of the vehicles moving between them.
  • Smokescreens and fire oil now decays out properly rather than pop
  • Smokescreens have an intro that plays in unscaled time so that it doesn’t look weird when the game is paused.
  • Mines and oil barrels now blink in unscaled time so they stand out to the user.
  • Flamer doesn’t attach to the muzzle anymore, should look better
  • Speed lines are more prominent with when the player is boosted
  • Dust motes are now in the world and affected by vehicle speed.
  • Fixed long wires appearing as short wires.
  • Adjusted the bloom of oil splats and removed oil hit VFX because it was causing a weird square bloom thingy
  • Adjusted some sparks to use a brighter and more efficient VFX.
  • Water tower no longer peeks through the fog layer
  • Emplacements do not disappear when obscured

Audio

  • Hitting a soft thing like a body plays a different ram sound than a heavy vehicle thing
  • AL now has his own message sound

Bugs/Optimization

  • Upgraded to Unity 2020.3.40f
  • Quality Settings adjusted to default to High rather than V High or Ultra.
  • Fixed bug where scattergun could target itself(!)
  • Automap cleans up better and avoids memory wastage.
  • Fixed an issue with defining battlegrounds, we risked a crash when getting into a combat encounter.
  • Fixed camera view for vehicle in stable or character view.
  • Fixed an issue with the car stable sometimes showing improper buttons.
  • Deferred lighting is being used
  • Optimized some materials for draw efficiency and hitches
  • Cleaned up issues that occurred if the campaign is repeated multiple times in a single session
  • Hopefully fixed tires that could sometimes get out of sync and pop out of their wheelhubs
Click here to find it on Itch.io!

Auto Fire v0.6.55: Citadels and Renown

Some great new updates to Auto Fire this month.  The UI got another level up with some improved screens and a more lived-in look.  You can now go to the citadel and help those people out, building renown with that city.  Citadels are a little more solid in their representation also, with one of only a few corporations keeping control of the populace across the country.  Finally, the visuals took an uptick with better lighting, new desert terrain visuals and cleaned up foliage.  The time to check it out is now!

Click here to find it on Itch.io!

Content:

  • Sectors now have a renown level that gates new sector quests.
  • Tutorial also now uses renown sector quests.
  • Cleared up the skull rating and show it on the challenge tablet app.
  • Cleaned up factions signficantly.  At campaign generation there  are only four corporate factions, two military factions, one citizen and one duellist faction.
  • Set up each sector now with a consistent resident and enemy faction.
  • Changed enemy and sector definitions to be able to be controlled on a per sector basis, allowing for better channeling of content across the overworld maps.
  • Quests now have a clearer faction reward and renown award for sectors
  • Fixed up sector leader quest arcs.  The player can eliminate an enemy entirely from the overworld of a sector.
  • Quests now have a goto step or a load cargo step.

Citadels:

  • Each citadel is run by one of the 4 corporations.
  • The mayor or citadel leader will dole out a quest for you, which gives you an opportunity to increase your sector renown
  • The player can now abandon cargo in a citadel and it will be returned to the quest list
  • The player can even abandon sector quest cargo and it is returned to the sector quest list.
  • Cargo cannot be returned for salvage profit unless it doesn’t have a quest attached.
  • The player cannot accept a cargo quest unless they have room to haul it.

HUD:

  • Dashboard elements now have schmutz on their frames as well as the glass
  • Sped up zooms and added functionality to make any panel zoom, plus zooming recenters the view based on the visible portion of the screen.
  • Improved the Travel and reward tablet app visuals
  • New Challenge popup when entering a combat area
  • Fixed up the quote panel in the upper right.
  • Quest steps now read out as crossed out if completed in quest list

Menu:

  • Mayor feed in the citadel ticks out like the quest panels do.
  • Revised automap and travel panels to use the same look
  • Menus and screens also have some schmutz added for a bit more lived-in look
  • Added macros for if the player chooses the gender “they”, so we can say “who [is] [he]?” as “who are they?”
  • Added a feed to the loading screen so we can have a colorful quote from the populace on the current situation.

Visuals/VFX:

  • Fixed up quality settings in the settings panel, as well as setting the default quality to high.
  • Revised all desert terrain textures to something a bit more stylized and cleaner (Deep Desert Pack asset)
  • Fixed up all terrains to properly display grass again (broken links abound)
  • Adjusted lighting to not overbright, and made sure all views use deferred lighting so that VFX lighting shows up more effectively.
  • Put dirt decals under shacks so as to make them a bit clearer as obstacles.
  • Zoom makes a whoosh sound

Bugs:

  • Fixed improperly LOD’ing models by a windmill
  • A courier quest to a combat area now can complete and the combat quest continues properly.
  • Fixed bug that if I killed the sector boss, the game would eventually crash
  • Boss camera on encounters now zoom into the proper target again.
  • Fixed several bad citizen tweets, some of which sounded extra dumb and others crashed the game(!)
  • Fixed crashes based on occasionally building battlegrounds.

Tech:

  • Adjusted night lighting settings (to be used in the future) for some experiements.
  • Updated to Unity 2020.3.33f

Auto Fire v06.52: Cleaning Up and Paving the Way

Some cleanup updates today, just paving the way for setting up new content in the future.

Gameplay/Content

  • The tutorial encounters aren’t as punishing as they were.  Sorry! 
  •  You don’t have to fight as long to reach the boss in the first outpost. 
  • Significantly more parts are awarded on the field.
  • Flamethrower line can now target the ground.

Settings

  • Did some fixes to how I was handling settings for those of you with laptops and unusual screen limitations.
  • There is now a minimum allowed resolution (Horizontal at least 1024, Vertical at least 720)
  • Graphics Settings should properly record your selected resolution.
  • Music and audio should also set and record properly in the main menu.

VFX/Visuals

  • The floating text and the pillars showing at an exit was creating a pretty bad experience.
  • Adjusted location labels for visual appeal
  • Made label ping show through world for visibility (hard to see the exits in canyons)
  • Location labels do not obscure your view when you enter a zone.
  • Fixed up flamethrowers on player as well as enemy flamers

Bugs

  • Entering combat in the field (via random encounter) now works properly.
  • Buying and selling at the citadel now properly supports stacks of items.
  • Repairs now work properly, you can’t get free repairs if you are near zero resources.
  • Small visual fixes and typos
  • Impassable outpost entrance now fixed (the outpost generator wants a larger palette to place protective walls)

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.

Progress both Practical and Pretty

There has been a solid amount of progress on Auto Fire in the last month, though not everything has been visible.

Conditions

There’s a condition system now, where entities can be stunned, set on fire, made to skid, be blind, etc, and that will last a fixed number of turns before automatically removing themselves. Nothing super fancy, but it allowed me to do stuff like cause a vehicle to spin out when it hits an oil slick.

It also allowed me to give the player’s radar more functionality, because it now “paints” targets within a specific radius for a set amount of time. Ideally the player should be able to build up sustained fire on a single opponent, or race through a group (at high speed to avoid being shot) and hit everyone with a radar ping before swinging around and taking advantage of the higher hit rate (and eventually critical hits spurred by this).

There is a new icon system above vehicles to show their current conditions, which hopefully will teach players more about the advantages of speed and choosing targets.

Weapons!

I did a bit of work on weapon resolution to clean up some weirdness, as well as allow for effective area effects over various volumes. I can have weapons with blast radius at impact, cone effects, lines, and more. This gave me some vastly improved versions of scatterguns, flamers, and so on.

Scattergun

I also switched over my missiles to LeanTween (a great Unity package that’s freeeee, although the Editor that goes with is worth throwing a few bucks at) so that I could use more sophisticated arcs (splines, eases, etc) for the projectile travel. This gave me some great drunk missiles and so on.

A heavy rocket, follwed by a mini-missile salvo.

City Flow

A somewhat smaller bit of work but vastly important was looking into problems I was starting to see in my city layout.

A couple of years ago I put multiple months into a city generation method that took pre-crafted blocks and spliced them together, street-to-street, with props and so on. It worked pretty well… However, lately the cities seemed to have wayyyy too many skinny alleyways and dead-ends, even though I remember putting a fair amount of effort into reducing these.

Worse yet, I’d started to see some passability issues and unplayable maps, which I know I did checks for. Ugh. I love dusty Mad Max wastes, but the cities are just as important a part of the game and they weren’t fun.

I spent some time trying to re-learn what the hell the 2016 version of me had made. For a little bit I thought 2016 me was a bit of an idiot… but it turns out he was somewhat clever. It was 2018 me who introduced a number of bugs that caused loops to no longer form… that guy was a jerk. Specifically I had some code that overlaid roads over previously populated obstructions to create extra loops, and those no longer overlaid properly. In addition, my passability checks were not properly busting holes through the buildings and obstructions when needed.

I added a bit more two-lane roads and discouraged alleys from forming very often. In addition, I added some new block types to my definition that had fewer buildings, so some extra open spaces could be formed. I can pretty much make an infinite number of city block components, so I’ll keep adding ones that give some more driving freedom.

Battling some Ace Panthers in Old Custerton.

Onward

Anyway, I hope to have a new version out this weekend, it’s been too long. Wish me luck!

Tiles, tiles and Tools

I was just thinking about the challenges of generating a city map for Auto Fire and realized that I’ve accomplished a whole lot and haven’t really discussed it in a long while.

City layout workspace

Really early on in development I created some tools to generate block templates that get placed during map generation. This allows me to work with actual crafted sections of map (with variant buildings and other things that can be adjusted after the template is laid down). It’s more or less a requirement for cities since the classic “cave-style” procgen or even dungeon layout techniques don’t work as well as I’d like.

I create template patch objects that have a bunch of data attached to them such as exit points (for cities) as well as a variety of variable bits like spots for random decor and building styles (depending on the generation profile I’m using).

The block data that I save out actually even supports 9-slice scaling, so I can declare borders to be of a fixed size, but the center to be a repeating tile section that can be any size. It’s really useful in some situations like when I want a long crafted section of wall, or a large 4-lane boulevard on a city map.

For cities, however, I actually work mostly in blocks that are 4×4 in size, with street connectors that are 1, 2 or 4-lanes in size. If I want to make a larger block such as 4×8 or 12×16 I can do that as well. Getting the whole system to rotate blocks properly was probably the hardest part (you can see in the build right now that I have a few multi-tile objects that don’t yet collide properly… my work is never done).

I’ve got several workspace maps that I use to create these blocks of content (desert outpost, city, overworld, etc), and it’s a scalable system that could support a whole ton of layouts. When I say “damn I gotta work on content”, making 10x the tile variations and cities with specific flavors are ways that I could take advantage of the systems I’ve created.

Anyway, this approach isn’t particularly new but it works great for my needs… It deserves a more crunchy article dedicated to it, but it’ll have to go on the to-do list for sometime in the future. For now, hope the peek at the approach was a little interesting.

Roguelike Celebration 2018

This past weekend I attended the Roguelike Celebration, which I had heard was more of a fan gathering as compared to the developer-focused IRDC…  Still, it’s a pretty cheap flight down to SF so I decided to attend based on the recommendation of friends.  We thought it would be a good place to show off Auto Fire and gather good feedback from people that are dedicated to the genre.

What I wasn’t prepared for was that it was the single best developer’s conference I’ve ever attended, whether that was the focus or not.  Informative, entertaining, comfortable, stylish, professional… It was filled with some legendary creators and you’d be hard pressed to find even a shred of ego anywhere. Nothing but mutual respect and support, wall to wall.

These people were accessible and open.  They were humble and eager to learn themselves.  They shared openly.  Everyone was positive, whether we were discussing a text-based passion project with the classic @ for the player, or a high-falutin’ mass-market-friendly game using roguelike principles.  (Which is good, because I’m aiming slightly for the latter, although I want to stop short of making a “Roguelite”).

There was talk after talk after talk, and most of the presentations were pretty relevant to general game creation beyond Roguelikes.  In particular, Roguelike developers are intensely focused on two things…

The first is (of course) procedural generation.  This includes not just map generation, but encounter/trap creation, procedural storytelling, god/pantheon/myth/food/whatever generation, and so on.  What started as a passion for building noodly dungeon spaces has turned into a community dedicated to crafting entire universes through intensely clever processes.

The second is creating a flexible game architecture that allows for nearly infinite rule expansion.  A trademark of Roguelikes is that the creators just add on feature after feature for years and years, which lead to so many interconnected systems that have to elegantly support (for example) the player getting polymorphed into some new form that has extra arms, which allows you to wield more weapons, or being able to animate any world object including bookcases and walls, then charming them to becoming your faithful pets.

The approach for solving this issue mostly shakes out to a couple core philosophies, but the humility, willingness to learn, and eagerness to share was pretty amazing from these creators…  young or old, aspiring or legendary.

You can find the videos posted here.  Check ’em out.

At the end of the first day, they set us up in GitHub’s phenomenal common area with drinks and food and let whomever set up whatever they were working on and showing it off.  I had a potato-level laptop that barely ran Auto Fire at 2 FPS, but a fantastic soul named Jaxon (whose last name I unfortunately never discovered) was amazingly cool enough to let me use his super-baller laptop for the night.  Jim spectacularly scrounged up a giant TV and we were able to show it at around 100 fps x 55 inches.

It was a blast and tremendously inspiring to he feedback was awesome.  I got some really good comments on the game and came back with a big list of what sorts of things I wanted to take care of.

I am working on the skid model most of all. I just showed it at the Roguelike Celebration conference and got a lot of good feedback. I want players to be keenly aware of how close they are to skidding out, and to be able to better influence their skids once the tires break loose. I think a combination of feedback and control tweaks will help that.

I am eager to push into more content so that I get more of a game loop, but UI and feedback will be visited up front.  I want to get another update out before I head to Wisconsin next week.

Auto Fire Status Update – Oct 2018

Over the past several months I’ve been working through some significant issues to get Auto Fire up to snuff…  Good ol’ Jim talked me into going to the Roguelike Celebration 2018 in San Francisco this weekend so I could start showing my game to people more widely.  Pretty exciting!  Also pretty nerve-wracking given all the other stuff going on this summer.

Unfortunately there were a ton of things about my game that still drove me crazy…  For example I wasn’t able to save the state of maps between visits… which meant that the overworld in particular would regenerate every time you left a location.  I had to finally take the plunge and deal with that particular issue.

Man I hate two-years-ago me.  I did some real hack jobs to get that 7DRL challenge done, and I guess I wasn’t done paying off that technical debt. 😛

Luckily I got all the proper stuff to function, save off map states and basically am ready for honest-to-god savegames (although I don’t do save/load just yet.)  I’ve also made a whole bunch of quality-of-life improvements based on early player feedback:

This slideshow requires JavaScript.

  • The camera is now behind the vehicle at all times.  This way the WASD weapon keys are always consistent and understandable, and you don’t have to envision tank controls.  I had always suspected this would be a problem, but I think I was so used to camera-always-north that I didn’t have any trouble playing.  The added benefit is that the game has a fairly unique look as compared to other Roguelikes now.
  • Improved feedback for speed.  This is always a work in progress.  The player needs to know when they are speeding or skidding.  Putting the camera at a shallow angle and adding speed lines is my current strategy.  I also shake the camera a bit, but that may just be too much.  We will see where things go as feedback comes in.
  • Recolored environment.  A good friend did a paintover of a screenshot of my city environment a while back and it helped me gravitate towards dark ground surfaces, light obstructions, and bright colored gameplay elements.  This wasn’t the case with deserts (because, y’know, desert), but I’ve been darkening things quite a bit and trying to get the colors to pop.  Still a work in progress.
  • Revised balance and loot drops.  This isn’t really finely balanced, but I did make the early-play experience quite a bit easier so that people that wanted to try out the build could get a good idea of what the game was about quickly.  I also brought down the size of the average “loot pinata” that existed when I was testing loot out.  I really still need to do a huge push towards making content, maybe after the RogueCel.
  • Revised location names.  More on that next article!
  • New garages in the overworld and desert outposts.  I’m trying to make sure that the player has plenty of places to equip all the weapons and vehicle components I’m dropping.  That includes in hostile areas.  That will be a balancing act in the future.
  • UI improvements.  Again from feedback, I flash the weapon when you try to use it but can’t, and flash the grip meter if you are skidding and try to accelerate.
  • Music and sound improvements.  I got some new weapon sounds and hooked them up.  The quality is steadily improving there.  On the music front, I went back to Michael La Manna‘s excellent western apocalypse music… The quality is really high and fits the feel of the game really well.

My next step is to get the game out onto itch.io so that more people can play.  That will be sooner than you think!