Last Call - Small Spaces, Big Choices

Joel Haddock

October 16, 2024

Last time, I touched a bit on the general overall structure of Last Call. Today I wanted to dive into some more detail on what makes up the bulk of the game: the combat system.

It’s been a winding road to get the system to where it is now. Starting from the roots of a more traditional turn-based RPG system ala the older Final Fantasies, I quickly came to one big conclusion: it wasn't much fun in this context. I decided I wanted to introduce a little more depth beyond just attacks and special abilities. At the same time, I didn’t want battles to stretch into interminable slogs. I needed to find that sweet spot of creating interesting complexity, but not making it overly heavy.

The original combat system
Starting from a familiar format

After a whole bunch of iterations, I finally settled on the idea of the “split grid” system. By dividing the battlefield into separate grids, I was able to provide with some interesting positional options for the player and enemy, but avoid ramping up to the full complexities of a unified battle map, which I felt would pull the game too far towards becoming more of a tactical slog.

The split grid battlefield
Where I ended up

Knowledge and Space

Combat in Last Call is broken up into discrete rounds, and within each round all units, player and enemy, act based on their speeds. At the beginning of each round, the player can see all of the moves the enemy will take during the round, ala Into the Breach. With full knowledge of the enemies’ actions, as well as the order in which those actions will be taken, the player should have all the information they need to figure out how they can have their units respond.

Enemy actions indicate their target, and based on what kind of target it is, players have options to influence or mitigate the ability’s effects. Direct attacks, for instance, specifically target a unit and will continue to hit that unit regardless of whether they move or not. On the other hand, an Area attack is aimed at a hex (or group of hexes), and if the target is no longer there by the time the ability executes, it will miss.

This, hopefully, creates a lot of interesting choices for the player. If one of their units is being targeted by a strong area attack, they have the option to move them out of the way. However, moving uses up their action for the turn, which means maybe another enemy gets to survive a round longer, or another of your units doesn’t get healed. Not to mention maybe moving puts the unit in a non-optimal position for their skillset (we’ll talk about that in a bit). So maybe the unit can take the hit and carry on, or maybe there’s another unit’s ability that could be used to mitigate the impacts. Or maybe they can't avoid the attack at all, it's just imperative they Defend to hold out long enough for someone else to heal them.

It’s these sorts of scenarios I think will give the player plenty of tactical decisions to chew on, but at the same time exist within tight enough confines that it doesn’t become constant analysis paralysis.

So, having units move about the board (or move enemies around the board) creates one layer of decision making, but the second big factor to add to that is the idea of Rows. Each Grid is divided into three rows*: Melee, Extended, and Ranged. These rows dictate a lot about where abilities can be used, and who they can be used on.

How the grid is divided into rows
The three ranks for each grid

All abilities have a “usable ” range assigned to them, and if the unit trying to use them doesn’t fit that range, the ability is unavailable. If you've played Darkest Dungeon, its similar to the range restrictions of your class skills.

Something like the Cutpurse’s Cheap Shot, for example, is a Melee-only attack. This means they can only use it when they are in the Melee row. and the attack can only hit enemies in the Melee or Extended rows. Units in the Ranged row are protected from everything except Ranged attacks until the rows in front of them are emptied.

In addition to dealing damage, the Cheap Shot ability has the Cutpurse retreat to the row behind them upon execution. Now, on their next turn, Cheap Shot is no longer available because they are now in the Extended range. However, Knife Throw, which is a Ranged attack and was not available in the Melee row, is now usable.

Putting it all together

It might sound a little complicated written out, but in practice I think it’s something the player can adjust to pretty intuitively. To help with that, I'm also focusing on providing clear visual signaling of what works where.

In this clip, for example, we can see the player units with a few more advanced abilities unlocked to widen their options. The Apprentice, for instance, is able to use their Blink ability to move themselves from the Ranged row to the Melee row as an action. Once in the Melee position, they are able to use the “Arcane Blast” attack, which deals a whopping 5 damage. As good as that is, it comes at the risk of the Apprentice now being exposed at the front. As a pretty squishy unit, they can’t take many of the kinds of hits the front ranks usually absorb.

Units using some more advanced skills

My hope is that with the benefit of full turn knowledge, along with the space to play in, the player will have a constant stream of interesting choices; weighing risk/reward, and thinking not just how they can make the most of the current round, but to position themselves for what comes next.

In this way, beyond just the tactical decisions of individual battles, the player will also need to think about how to develop their party. Success will mean developing units with a mix of abilities that work in multiple situations and can support each other. Now, not every unit is going to do great in every position, but it is possible to mix and match abilities on a run to make sure you don’t have holes in your ranks.

Next time: How party building works, and the wonderful world of meta-progression!

P.S. To celebrate both the 10-year anniversary of the launch of Camp Keepalive, and also spooky season, we've got a special sale going! Get Camp Keepalive and Night in the Unpleasant House both for the price of one, and enjoy your Halloween in the comfort of some spoopy fun.

*I know, they are technically columns. It just feels better calling them rows.

Run, jump, shoot, and think your way to safety in this retro-inspired 2D puzzle-platformer. Station Zeta is out of control, and you'll have to deal with crazed robots, terribly designed station machinery, and blatant safety hazards as you try to make your escape across over 35 levels.

<p>
    <a href="https://store.steampowered.com/app/2950320/Station_Zeta/">Station Zeta on Steam</</a>
</p>

Return to Home