Over the July 4 holiday I managed to get a good, solid, 5-day weekend, which in turn gave me great blocks of time to work on Auto Fire. It felt great to get some really nagging things out of the way. There’s a bunch of stuff here that is new since last time I blogged about it:
Site System. I created a new structure for holding what I call “sites”, which is any point of interest on the map. This can include cities found in the overworld, highway entrances and exits, garages, and even regular landmarks and points of interest. The sites are what I use to guide road plotting, so roads can connect exits, cities, garages and even just weird old non-functional shacks out in the desert, which I constructed from groups of tiles. It gave me a system for sprinkling them into a map from a table, which adds more life to most maps.
Encounter System. The encounter system is something that I’ve wanted to do for a while, to allow the player to deal with random stuff that they meet along the way. Call it FTL-style, although I associate the concept with pen and paper games as well as wayyyy back to ancient games like Odyssey on the Apple II. This allows players to consider some simple risk-reward propositions, or to choose between acts worthy of fame or notoriety.
Stylized Visual Effects. I took some of the realistic visual effects for weaponry, explosions and smoke and returned them to the stylized versions I had used a year ago. I found that these stylized VFX had extra punch and grabbed the player’s attention among a lot of noise, but more importantly, fit the oddball scale of the world in Auto Fire. With buildings and cars and chests all coming in at unrealistic sizes when compared to each other, I found that realistic visuals just made that mismatch even more pronounced. Somehow having unrealistic smoke and fire just helped with the suspension of disbelief, and I think it can look just as compelling.
Walled Outpost Generator. One of the biggest things I got done over the holiday was to finally prepare enough ramshackle walls, dirt roads, windmills and metal-roofed buildings to create a special generator for badlands outposts. This is a heightmapped terrain map that sets aside a center section as the “core”, where buildings and certain visual points of interest will lie. Around the perimeter is a wall made of scrap, cars, wood, and anything else… I had to make a version of my patch generator that would stretch and rotate this wall in any direction with repeating motifs. Dirt roads are then stretched to the various sites around the map. I’m really happy with how it came out.
Smoother Driving Feel. One thing I did fix in recent months came from feedback I got from right after the 7DRL that spawned Auto Fire… For some players the movement felt stuttery and halting. Part of that is unavoidable with a turn-based game, but some of it was fixable. There is no longer a single-frame stop between various units executing their turn, and if the player cues up multiple moves, it executes smoothly if possible. The movement from square to square in slightly slower than it was as well, creating an subtle improvement that I feel when running the new build versus an old one.
Wall Deflection. This last one feels intangible as well, but I implemented it because the more I played, the more I felt cheated that the mechanic did not exist. If the player is heading diagonally towards a wall at high speed, he or she can get deflected off the wall and into a new movement path parallel to the wall. This is a fairly common occurrence in the city maps in particular, and even lets players use it to their advantage if they wanted to keep shooting rather than steer (this is an option in Auto Fire!)
Okay, so there’s a lot more work to do. I feel that I’ve hit some fine polish points, but I mainly need to assemble content together into something more playable, to have more of a reason and tension in the overworld. All that will hopefully come next.
I had a few core things I wanted to refine and adjust from the original, particularly in the feedback department… Since the controls for AutoFire are similar yet different from a typical roguelike, creating an experience that is easy for beginners is a continual work in progress.
In terms of driving, I simplified the grip meter to make it easier to do the “drift racing” style actions that people wanted to do, and then added new cues to help people understand their current speed. For combat, there was a lack of understanding of when damage was being done, so I improved damage and attack feedback as well as gave users more information on the HUD about the weapons they were using. World generation got a slight improvement, and the difficulty was increased from the admittedly easy 7DRL release as well.
Changelist for v0.2:
UI: Grip meter no longer has two halves.
UI: Highlight weapon that would be fired when targeting enemy
UI: Display stats in the target panel of the weapon that would be fired
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:
In 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.
I 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.
Some 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!
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.
Day 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!
So I’m halfway through the week and making okay progress on my Auto RL. In the last 3-plus days I’ve replaced the fantasy graphics from last year’s RL, ripped out all the sword-swinging and put in a vehicle system with multiple mounted weapons and variable actions per turn based on your vehicle’s speed. Forward and back accelerate your vehicle and left and right will turn and advance… but I wanted to keep the feel of “one result per action” of typical Roguelikes.
So, if the player gets, say, 5 actions per turn (100 MPH), they have to choose each action whether they turn, shoot (which forces them to move straight that turn), change speed or wait (which will also result in moving forward). However,since each weapon has a fixed-duration cooldown, you have to switch to weapons on different sides of the vehicle if you want to attack multiple times a turn. Why exactly do you get more attacks when you’re driving at higher speeds…? Adrenaline!
I had to start doing some cutting if I want to be done Sunday morning. I don’t think I can do getting out of the car or vehicular enemies and my world generation quality may take a hit, but I know now that I’ve got a lot of work to do on UI and selling the movement of the car. My major improvement will be to hook up the “Grip” system, which will force players to balance speed with control and allow for skids. I’m excited so far!
This year is my second 7DRL, and this time I wanted to push some systems I’ve been tossing around in my head for years. The plan is to get the player driving an armored car through a post-apocalyptic wasteland, battling bandits and salvaging gear while hunting down bounty contracts. I chose to strip down last year’s entry Huge and use it as a starting point, focusing on significant core mechanical improvements that will hopefully set it apart from that entry.
Day 1 was a busy one, ripping out the fantasy graphics and putting in sci-fi themed ones from Oryx and other sources. I added facing and vehicle functionality to my entity system, with a variable turn-length based on speed. I also roughed in an ugly HUD with the various systems I wanted to track. Unity makes a lot of the early stuff fairly simple, but now I actually have to make this stuff work and hopefully fun!
So it turns out that the Web Build I’ve had out for the last couple weeks of Huge was actually set to Unity’s default low quality, which meant that none of the bump-mapped sprites I labored on over the 7DRL week were lighting the way I saw them in the editor… This bugged me enough that I put out a new build. I also upgraded from Unity 4.6 to Unity 5 (although there isn’t a difference between the results) and I wrapped a quick five-cent title screen around the experience (using an oh-so-simple stub scene in Unity) so that the player can die and respawn gracefully rather than the ghetto reload I required before.
The extra work was an hour or two, but just in case it bothers the 7DRL people, I’ll leave the original version playable as well.