Author Topic: Auto Fire: A turn-based roguelike car combat RPG  (Read 21162 times)

PatrickLipo

  • Rogueliker
  • ***
  • Posts: 52
  • Karma: +0/-0
  • Game development vet in title, indie in spirit
    • View Profile
    • Vertigames
    • Email
Re: Auto Fire: A turn-based roguelike car combat RPG
« Reply #45 on: December 07, 2019, 07:36:37 PM »
Been a while again since I'm juggling some contract work. I'll trim my update to the bone.

Things are lively on the Auto Combat Zone Discord mainly because of the Car Wars 6th Edition Kickstarter, which is pretty exciting if you're a fan of cars shooting other cars. I'm all right with my project taking a back seat as the community gets amped for a new release of a game I first played 35 years ago.

Content

Lately I've been adjusting my focus towards cleaner content generation... by that I mean missions and encounters rather than map variance and weapon variety. My current quest system seems... fragile... right now and I need a more compelling arc to the player. That means less of a soup of basic sandbox missions but more of a crafted arc.

To remedy I'm probably going to go a little too far in the crafted direction, by laying out my overworld sectors a bit more deliberately and creating an easier method for predefining some of the more story-driven quests within. I originally had a campaign map of 10x10 overworld sectors (each with multiple combat zones within) and I brought that down a little to 6x6 so that I can pull the player through a bit easier. Adding sectors back in later should be easy, and I'll still need all those generated quests to glue together the rest of the content.

On the upside, I've created highway maps that connect each sector together, so when you head north from overworld sector 2,3 you have to brave the open road to reach the next sector. Right now that's pretty bare bones, but the goal is to both make some really hazardous runs, and to ultimately support Convoy Missions which are the lifeblood of Mad Max and Car Wars' storytelling. Maybe even some Eastbound and Down haha :-)



I also leveled out the difficulty and base it off a health, damage and loot table with a level 1-20 scale. Enemies have a "difficulty band" that they appear in based on the area, and an adjustment to their stats within that band (e.g. 0.6xhealth, 1.8x damage, loot level +1). This isn't "leveling to the player" (which is one of my least favorite features of certain RPGs) but rather keeping me sane by using a set of tables as an anchor for balancing. It also means those stats I have to balance with aren't buried in the vehicle definitions like they were.

Gameplay

To add a little more emphasis on shooting and driving, we have some delayed action effects now. The first place it manifests is in guided rockets that take a few turns to reach their destination. This was a little quirky because of the team-based turn updates that are part of the system right now. Rather than each move being interleaved, the player executes a full turn of moves (for example, 3 moves if they are moving at a speed of 3), then the enemies do all their moves (based on their vehicle speeds). This means the rockets use the same stop-start logic. It reads a bit funky but I think it still works.



As part of this I started making a bunch more of the world destructible. This wasn't a big deal, but going through the exercise of breaking up the models I had into parts and assigning them physics properties was a good process for future adds.

Plus, driving through a windmill feels good.



Fame Building

Finally, as part of the overall "fame" experience, I brought back my old "classic" combat log and reinvented it as a social media feed with only limited gameplay information (kills, item pickups) conveyed within. Yes, the populace in the walled citadels are following the player's exploits and voting with their "likes" and slinging emojis. Your rivals and your stunt driving will tie more and more into the social experience as we go forward.

PatrickLipo

  • Rogueliker
  • ***
  • Posts: 52
  • Karma: +0/-0
  • Game development vet in title, indie in spirit
    • View Profile
    • Vertigames
    • Email
Re: Auto Fire: A turn-based roguelike car combat RPG
« Reply #46 on: February 14, 2021, 11:24:58 PM »
Long time no post!  Auto Fire rides again!

OUTPOST REVISIONS
Check out the results in action right here!

Something that is really enjoyable, believe it or not, is refining ways to generate cool maps. To see the result of a mad pile of code and some assets turn into something you can play can be a bit addicting. I've certainly got a lot to do for entirely new content, but since I was working on creating new types of maps, it was worthwhile to look back at how I was generating outposts.



Auto Fire uses a few different generators, one for rolling terrain, one for piecing together city blocks, one for populating hand-crafted levels... Originally I had been using the straight terrain generator that I use for battlefields and the overworld maps... a method of laying out blobs of varying terrains using Voronoi regions. If you're unfamiliar those may sound froo-froo-fancy but for grids they are almost embarrassingly simple: Throw a bunch of spots down on the map that have a particular terrain type: mountains, clearing, rough terrain, etc. Test every tile on the map and mark it as part of whatever spot it is nearest. Add some noise and various other properties of each spot/region, plow roads to get you from place to place and you're pretty far along. It's at least enough for stuff like the overworld, where the specific terrain isn't so important.



For outposts, however, that was only part of the equation… I needed walled areas, I needed an “inside” and “outside” area. I wanted buildings to make the interior more interesting. I managed to piece together features like the walls and special setpieces like water towers and little dwellings. In the end the placement of buildings were random, which created a lot of unbelievable areas and many dead-ends… a curse for a driving game where speed is king.

The buildings were also single-tile affairs… This scale mismatch was deliberately set on early in the game’s development for cities, but have since been changed to a double scale that allows buildings to be more interesting and for roads to have more width in cities.

What I realized is that I had a really refined measure of control in cities, with varying width roads, support for passability and large crafted areas, and just overall a less random feel.



Cities are constructed using 8×8 blocks (which was 4×4 back when buildings were single-tile) that are crafted to hold a 2 or 4-lane road connector or a 1-lane alley (either left or right side). Each block has one or more exits, and a bunch of places where optional exits can be punched through if the system needs to create extra loops.

So why not do this with desert maps? Walls can be made this way of course, but we don’t want a desert map to look like Manhattan… Luckily there are a ton of tricks to keep roads from being straight and buildings falling in irregular patterns. This generator set used 4×4 tiles and almost entirely 1-lane roads, which can meander within a block like a Carcassone tile to keep things from looking too precise. One set of blocks can be used for the inside of the walls, and another for the lighter desert features outside. Everything’s great except that terrain needed to come back into the fore.




And so it did! Parts of the terrain generator came over to the block generator to give the map a more natural appearance… considering it was largely giant squares. With it we got terrain rendering thanks to Microsplat and some pretty nice grass from Advanced Terrain Grass. Our road-plowing routines guaranteed passability and some other code helped give the driveable spaces a little bit of vertical rise and fall.

So “why now” might come to mind… “You’ve had outposts for years now, so what’s the big deal about revising them now?” Fair question. The main reason is my recent investigation into new map types: Industrial parks! Dueling arenas! Race tracks! I have some examples that I’ve hand built with assets I have, but I want to get those generating also… and this same method will work for all of them.

Highways are also a culprit, because they are okay maps, but the road is arrow-straight and can’t really incorporate curves. With my current overworld system I can’t draw two-lane roads without using this block method. Also, a road that curves gently like a highway or race track is best laid out on an 8×8 tile… or even a 16×16. These things are all possible in our brave new world!



That’s the big news of February… a new build will be coming out tomorrow. Excelsior!

PatrickLipo

  • Rogueliker
  • ***
  • Posts: 52
  • Karma: +0/-0
  • Game development vet in title, indie in spirit
    • View Profile
    • Vertigames
    • Email
Re: Auto Fire: A turn-based roguelike car combat RPG
« Reply #47 on: February 18, 2021, 09:03:13 PM »
Another update is inbound!  This one is focused on revising the world generation methods for more interesting and playable maps.  This lay the system foundation for new types of biomes and better overall map layouts moving forward.  You'll see the biggest example of this with the walled outpost maps, which are entirely revised and much more look the part.

There were also a lot of stability and quality of life improvements along the way...  You can shoot mines!  Car control and skidding interact a bit better, armor repairs cost less parts.  There was a bug with missions that people who liked to haul cargo ran into.  For keyboard and gamepad players, the dialogues should not lose their selection (which required you to touch the mouse if it happened)



Check it out and get your vroom-vroom-pew-pew on!

PatrickLipo

  • Rogueliker
  • ***
  • Posts: 52
  • Karma: +0/-0
  • Game development vet in title, indie in spirit
    • View Profile
    • Vertigames
    • Email
Re: Auto Fire: A turn-based roguelike car combat RPG
« Reply #48 on: May 29, 2022, 07:31:28 PM »
Been a long time but the game is still in the works.  Trying to a get a long-delayed release out with massive visual and UI cleanup, consumable use and a deeper set of equipment.

PatrickLipo

  • Rogueliker
  • ***
  • Posts: 52
  • Karma: +0/-0
  • Game development vet in title, indie in spirit
    • View Profile
    • Vertigames
    • Email
Re: Auto Fire: A turn-based roguelike car combat RPG
« Reply #49 on: July 02, 2022, 10:51:16 PM »
It’s been a long time coming, but Auto Fire is back in action with a bunch of updates and improvements!

There has been a major UI revision for just about all of the supporting screens and menus. Consumable gear was added so you can manually heal up in the field if you have the right items. There is a significant and growing tutorial that pops up how to play the game as situations present themselves. (And yes, you can turn them off in the settings!) More is in the works, including the long-promised arenas, hope you enjoy!

As always, check it out at https://vertigames.itch.io/auto-fire.



Gameplay/Content
  • Some garages and repair outlets have a limited amount of gas or ordnance they can sell you.
  • Consumable gear was created that can repair your internals, drop mines or smokescreens, or basically enact any normal equipment’s function.
  • You can also target yourself on specific sides for armor repair gear, and the UI reflects it on your armor display.
  • When you complete an encounter, the loot is generated immediately rather than waiting until you move.
  • Radar is now a dedicated equipment type and slot called “Sensors”.  All cars have a default radar sensors package, but this can do a lot of different things.

Combat
  • Desert encounters now include combat moments that will drive you into a fight.
  • AI Updated for more responsiveness when spotting the player.
  • AI consider facing when planning their navigation routes, meaning that vehicles will plot paths more naturally and loop around their targets.
  • The line flamethrower can now target the ground.

Content/Tuning
  • Starter car only has 1 plate of armor all around, and no minedropper.  You’ll have to buy your own upgrades to get the good stuff.
  • Equipment crates now drop more items (versus from normal vehicle drops)
  • First outpost in the starter sector now requires some vehicles to be killed before the boss emerges.
  • Old instant repair and armor pickups removed from drops in favor of the repair consumables.
  • Desert sectors should no longer have random encounters, only emplaced ones (that is, glints and smoke columns rather than just rolling dice)
  • Adjusted grip recharge rate to be a bit more generous.
  • Significantly more parts are awarded on the field.

Controls
  • Big cleanup to allow for gamepad control of menus without losing focus.
  • Made accelerating into a skid work better, should not infinitely skid if you thrust against it.
  • Acceleration now waits until the next move to reduce your move’s time slice, so as a player you cannot reach max speed in a single turn the way you previously could.

HUD
  • Rework of the HUD colors and aiming interface.
  • Shrank the HUD components (gear, armor, social) slightly to allow for more playable space.
  • Changed social feed to dark mode, because the bright display was distracting from the gameplay.
  • The boss is removed from the HUD once you wipe them from a location.
  • Event-based tutorial popups appear when the player experiences various events, from taking damage to skidding to picking up gear.
  • The player’s challenge is now expressed with skulls, which is conveyed in the travel/gas popup to tell you what you’re getting into.
  • Added a real date display that updates based on player turns.
  • AL has a new look.

Menus
  • Complete rework of the character and loadout screens.
  • Complete rework of the repair experience.
  • Complete rework of the vehicle stable, to show all stats for all vehicles.
  • Complete rework of inventory, buy and sell screens to add categories and better controls.
  • Complete rework of the loading dock experience to show a map where you must deliver your chosen item.
  • Automap re-envisioned to use a higher quality smooth shader.
  • Automap locations are now interactive and can be hovered for popup info, and they ping indicating where quests are directing you to go.
  • Quest display revised to display a map telling you where you must go.
  • Quest steps are now crossed off in the Quest character panel.
  • Faction and skills are now shown in the character panel.
  • Entirely new inventory icons, for a punchier and yet colorful look
  • All item UI buttons are have a new shiny shader.
  • Items now display with level badges, indicating the raw progression tier the item has.
  • The loadout view shows pips that indicate when a higher-level item is available to be slotted in that location.
  • The inventory view shows pips that indicate when an item is new and has not yet been examined.



Visuals
  • Enemy shouts appear in bubbles both on the HUD and over the enemy vehicles in-world.
  • Agents no longer echo their encounter dialogue into the social feed (it was cluttering the experience too much).
  • Zoom in moments happen after the level fades in rather than zooming when you can’t see.
  • New power lines, cargo containers, and other assets
  • Adjusted lighting on tail lights.
  • 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.

VFX
  • New explosion and fire VFX from toon explosion to a better stylized/realistic hybrid.  (It doesn’t block the player’s view as much)
  • Revised fire oil, burning objects and flamethrower VFX
  • Revised occupation VFX
  • Added decals on the ground from gunfire and explosions.
  • Fixed up flamethrowers on player as well as enemy flamers

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.

Audio
  • Vehicle audio uses Realistic Engine Sounds package and adjusts and shifts gear based on speed.
  • Use audio mixer to duck car audio when waiting between turns.
  • A new stinger or tutorial popups and specific informational moments.
  • Revised boss music slightly to stutter less, and use a continuous loop sometimes for quality’s sake.
  • Audio is set properly on startup from the prefs now

Bugs
  • Fixed several bugs with how bosses dole out their quests and get resolved at the end of a combat.
  • Fixed several screens where their text didn’t align properly.
  • When returning to a previously visited map, we handle the population correctly.
  • Fixed speedometer flashing visuals to properly flash at the end of a turn.
  • Made reverse skidding work better, it had some really bad behavior.
  • 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)

PatrickLipo

  • Rogueliker
  • ***
  • Posts: 52
  • Karma: +0/-0
  • Game development vet in title, indie in spirit
    • View Profile
    • Vertigames
    • Email
Re: Auto Fire: A turn-based roguelike car combat RPG
« Reply #50 on: August 01, 2022, 05:09:44 PM »
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!



https://vertigames.itch.io/auto-fire

PatrickLipo

  • Rogueliker
  • ***
  • Posts: 52
  • Karma: +0/-0
  • Game development vet in title, indie in spirit
    • View Profile
    • Vertigames
    • Email
Re: Auto Fire: A turn-based roguelike car combat RPG
« Reply #51 on: October 07, 2022, 08:14:22 PM »
Something you never hear about in game development is the challenge of capturing footage for a trailer or some amount of publicity.  Few games, particularly those with any kind of randomness or procedural generation, look 100% perfect at every moment during development.  Even if there aren't bugs, you're trying to take a slice of time, a single image, where the game shines as what you envision it to be.  It can take weeks and weeks and at the end of the process you feel a strange mixture of pride in what you have created and despair over all the things you have left to do.



So over August and September as I've been catching snippets for use in the Seattle Indies Expo, I got a face full of the driving experience at times when I wanted to feel the Drive Magic.  However, as you drive and shoot there are stalls (put in there intentionally) as the game resolves projectiles and impacts.  That sort of turn resolution is pretty common in tactics games, it lets you see the results of your attack (or attacks against you) and process the result before moving on.  I originally set the system up that way because "that's what Roguelikes usually do"

However, the frequent halts during my drivin' and skiddin' started to bug the crap out of me, especially when there were a lot of enemies nearby. Of course I don't pause the game when something happens offscreen, but when there are a lot of enemies it can happen often, especially in the arena where enemies were attacking each other.

So, to the experiments!  I decided to try a couple things:
  • I removed the projectile pause entirely and let attacks just resolve while the various vehicles moved to new positions. 
  • I adjusted the speed at which the turn played out based on the player speed, so turns (including those of opponents) just play out faster when the player vehicle is moving at higher speed.  Turns at 25 MPH play out faster than turns at 100 MPH.

The results were interesting.  Keep in mind that this is still 100% turn-based.  The only thing that has changed is how turn results are represented.

https://youtu.be/LNrce4pa7y8

You can specifically see the lack of a delay when the player fires machineguns and rockets.

Yes, the result needs a bit of work, specifically:
  • Bullets don't yet "lead" their targets so they are striking behind the vehicle.
  • Some slow weapons like rockets that take longer than a typical move duration (generally between a quarter and a half second) need to be converted to take multiple turns to reach their destination.
  • (...but hey that's gameplay, y'all!)
  • I still need to make sure combat resolution is as readable as possible, such as:
  • Armor impacts and damage numbers are still getting obscured.
  • The armor side that gets hit isn't as obvious as it should be
  • And of course, special moves will still need to stall the game, but that's fine for something that doesn't happen often.

However, in all it did improve the overall feel of driving and smoothness.   This was a worthwhile experiment and I'm all in on making sure the game feels great and still has a clear turn-based combat resolution. Not sure where this will lead, and I know that a certain segment of the audience will want to be crystal clear on what's going on in combat, in the same way that another segment will want to cut loose and skid around fluidly.  Possibly I'll leave a toggle for the roguelike turn resolution if the player wants that (should be possible).  

More to come as the game continues to evolve and improve!