Tag Archives: 7DRL

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!

Auto Fire Rides Again

I should own up to not finishing my 7-Day Roguelike challenge this year…  it was tough to admit defeat after two fairly successful years in a row.  I had started up the Jam with plans to take last year’s 7DRL code and work in a campaign and convoy mechanics, as a way to prove out some things that I’d been considering for Auto Fire.  However, I found it nothing but discouraging to work on such old decrepit code, trying to make something for a game that was so much farther along.

In the end it just made me want to push towards realizing those ideas in the current codebase of Auto Fire instead.  Sooooo…  I’d been working on tying up loose ends and prepping the driving feel and visuals of Auto Fire.  Take a quick look:

Next up are my plans for improving the inventory and rounding out the campaign into a compelling loop.  It should provide some much-needed depth, which will make me more happy to share my work more widely once it’s in.  Wish me luck!

7DRL 2017: Day 1

7DRL Challenge Day 1: Unfortunately GDC lay me flat on my back for five days straight through the weekend, so I’m getting a really late start on my challenge. I guess I’m be aiming for submission late Sunday to get as many hours logged as possible.

Today I was able to re-acquaint myself with the ugly-ass 7DRL 2016 codebase and temp sprites. <Shudder> All I had time for was to start working on road generation and take a step in the direction of transforming my combat movement into strafes, accelerations and so on. Still got lots of work to do. Still, fun to see things moving forward.

7DRL 2017: Westbound and Down

This is my third 7DRL, and this year I’m hoping to kill two birds with one stone by exploring some alternate gameplay concepts I first explored in last year’s entry, Auto FireAuto Fire introduced car combat and exploration of a (poorly-rendered) cityscape and in the ensuing year has been extended to 3D, with richer generation, an overworld countryside, and a variety of superior UI and tools.  None of which I’m going to use this week, see below.

This year, with Westbound and Down, I want to explore some of the “Convoy” style aspirations that I have yet to put into Auto Fire…  Traveling from town to town and taking on cargo missions between outpost cities in a post-apocalyptic western U.S.  Instead of exploration combat, the player must drive “blocker” for a convoy of trucks that is continually harassed by bandits and other road hazards.  Upgrade your car and convoy vehicles, hire drivers, maintain your stock of ammo and fuel, and take on loads with higher risks for greater rewards.

The tough part of this year is that even though I’ve progressed quite a bit with Auto Fire’s codebase over the last year…  in the spirit of making this a fresh 7-day effort, I’m working from the code from 2016’s 7DRL and seeing what I can construct within those confines.  I hope to create an alternate movement model (forced directional movement, with most of the maneuvering involving lane-changes and acceleration/deceleration), a regional highway map, a cargo quest structure, some interfaces for cargo and hireling loadout, and hopefully some FTL-style dialogue encounters which could lead to bonus salvage or ambush.  That’s a fair amount of stuff, but I’m hoping I’ve got enough to build from…  and if I have to hack up my code a bit to try something, that’s okay, I can take any successes and work them into Auto Fire later, hopefully the “right way”. 🙂

So Many Datafiles

Yes, Technical Debt is still rearing its ugly head.  One of the things that any procedurally-generated Roguelike has is a ton of different files that hold profiles that define how to generate cities, landscapes and enemy encounters.  And tables, so many randomized tables!

sceneinspectorDuring the 7DRL I found an expedient solution that worked for the challenge and a fair amount of time afterwards.  I baked data right into each Unity scene that I saved out, imagining that I could just make a scene for each type of scenario or terrain profile I wanted.  I could bake in components that had all the predefined information I needed and just load them as needed.  I could even drag-n-drop the appropriate prefabs for everything I wanted to spawn.  How simple.  Sure, it nagged at me that it wasn’t super extensible, but scenes were cheap to make and I was interested in how far it could get me.

Wellll, it turned out it was pretty far, but eventually it started to haunt me.  The more scenes there were, the harder they all were to maintain, even if all the common information was kept in Unity prefabs.  Oh god, the prefabs…  they are great sometimes, but they also can puke all over themselves if I moved files around or a metafile got invalidated somehow.  Also, any time I wanted to choose something randomly, it felt like I was writing new code to deal with it each time.

I also used the serializer for a number of structures, but there was always a desire to have more flexibility when reading data.

Anyway, I knew I needed to up my datafile game.  My friend Jim’s amazing RL Dungeonmans has something like 500+ datafiles holding anything from name generation to encounters to tile definitions, with weighted randomization tables and tables that reference other tables.  How slick!  He spent many years refining his data methods and he encouraged us to reuse his approach in our own games.

So last weekend I finally bit the bullet and built a datafile system around some of the same concepts and in the end my format is virtually the same as Dmans.  This way I can build a sector with a pretty flexible format:

defThing sector_basic
{
 class adSectorData
 scene Overworld

 biome Desert
 nametable sector_name_chart
 treasuretable sector_treasure_table

 music mus_desperado

 basic_city_table 1d2
 sector_outpost_chart 2d4
 sector_town_chart 2+1d3
}

And these tables have some handy reference capabilities (recursing through each table referenced) and weighting for randomized results:

defTable "sector_name_chart"
{
 #t1 "sector_place_types"
 #t2 "place_nouns"
 #t3 "sector_adjectives"

 "The [t1] of [t2]" 10
 "The [t3] [t1]" 10
 "The [t1] of [t3] [t2]" 10
}

defTable "sector_adjectives"
{
 "New" 10
 "Old" 10
 "Dry" 10
 "Frosty" 10
 "Winding" 10
 "Hewn" 10
 "Locked" 10
 "Winding" 10
 "Ancient" 10
     ...

…and bingo, my world generation becomes 10x more flexible and powerful.  I’m dyin’ to get back to the drive-shoot stuff, but this was so worth it.

namegen

Autofire: 7DRL Aftermath

It’s been a little under a week since the conclusion of the 7DRL and I’ve been excited that people have been pretty receptive to my entry, AutoFire.  I had a lot of fun making it and people seem to be having fun with it too:

PC Gamer – Free Games of the Week

car100000In the past week I’ve gotten some good feedback, some of which I’ve been able to act on.  The first bit is that folks are excited about drifting and controlled skids in the game, and I realized that by allowing players to drop below zero grip (into the red) is really punishing…  It’s very hard to regain traction without crashing.  I updated the game to not allow the grip to drop below zero, so a moment of control will allow players to get control back…  This makes it a little more about deliberately losing control and then regaining, Ridge Racer style.  This is something I want to continuously refine, and supplement with skid marks and other speed feedback.

car50000I also added a “preview” in the grip meter of how much grip you’d lose if you do a maneuver at that moment.  It’s difficult to figure out the right type of feedback for a keyboard-driven game like a Roguelike.  I wanted to keep the “one input, one turn advances” feel of a typical Roguelike, so it’s hard to give much information about what your next action will result in (without mouseover or two-step advancement) .

People also still have a little difficulty understanding the four weapon mounts and their individual cooldowns.  I added a bit of information about the weapon that would be fired when showing a viable target.  I will probably also show a prediction of the damage to be done and more on-map indications of the weapon to be fired… perhaps a change in the crosshair or displaying the weapon sprite.

car150000Some others suggested that the game was too easy, which I won’t deny.  I was pretty stingy with the drops early in development, but for the 7DRL release I worried that all the work on weapon upgrades I did wouldn’t be noticed, so it ended up pretty generous. The goal eventually is to create situations where you have to drive fast to get the extra attacks and stay alive, so it’s definitely a goal to balance things better. Once I get enemies obeying line-of-sight (haha) and reduce their hit chance firing at a high-speed target you’ll have more tools at your disposal and I can crank up the difficulty.

Some additional things to come:

  • World tiles that aren’t cobbled together from a number of sprite libraries (they were so damn ugly)
  • Competent world generation that feels like a place to drive.
  • Loot improvements such as armor patches that must be mounted on a single side, improved tires (grip) and improved engines (speed).
  • Enemy vehicles (At last! This was a painful cut for 7DRL but I ran out of time)

Not to mention an actual adventuring environment with areas to advance through, assassination contracts, vehicle gangs, and so on. So much to do!

AutoFire: 7DRL Victorious!

Welp, the 7-Day Roguelike Challenge ended in a photo finish… Not only was I putting in stuff up to the very end, but I uploaded a build to my website and not a minute later I hear an EXPLOSION outside and the power goes out. There’s a transformer out on one side of us and a power line down in the other, so no more power today.

Luckily I have a nerd-huge phone and managed to use it to update my website and finish my entry into the challenge’s website. A few minutes later and all the hard work this week would have ended in a major disappointment. Instead I’m pretty happy with the results!

For 2016 I wanted to stray from the comfortable gameplay I did for my inaugural 7DRL with Huge. There were some systems for turn-based car combat that I’ve been tossing around for a while… But applied to the Roguelike mold.

Check out the game’s page here.

 

AUTO RL – 7DRL DAY 5

7DRL2016_Day5Day 5 of the 7-Day Roguelike Challenge has completed now and I’ve finally got smooth vehicle movement in my Auto RL.  I put some time into an improved UI that hopefully starts to convey the concept of “you get more actions when you go fast”.  With this is the implementation of Grip, which drains from manuevers at high speeds so you can lose control  It has hints of greatness but is hard to deliver satisfyingly on a grid in 7 days.

My remaining work on weapon pickups and types, some improved world generation and a weapon pickup inventory, and hopefully an opponent you’re stalking (I’m starting to regret throwing out my boss code from last year!)

Since I don’t have time for you to get out of the car and salvage, you just run over the equipment and I’ll prompt you to choose which of the four weapons you want to replace (or discard it).

My one regret is spending as much time as I did on the basic sprites on Sunday.  Last year I was reasonably good about keeping the scale of Oryx’s sprites so that 24×24 was a standard tile, but this year I had to bring in graphics from a number of sources that varied from 16×16 to a car I found that was some weird rez like 56×108.  Plus, I reduced the size of Oryx’s character sprites which implies a resolution of 32×32.  In a way it probably would have been better in this case to stay representational and not cobble together a vague swipe at pretty, but it inspires me to work in an environment with visual flavor.

Check it out below…  I apologize for the atrocious 20-minute sound hookup.  2 days left, wish me luck!