Skip to content

Just in time for 2015

December 31st, 2015

John

Happy Holidays everyone!

It’s been another bumpy stretch, with lots of progress along the way. Sorry for the wall of text; I’ll be getting pretty deep into the details of the design challenges I’ve been wrestling with since that’s where my head’s been.

A Tough Choice

First some bad news: In the last update, I showed the changes I was making to have enemy turns happen along with the player’s. After a lot of deliberation I’ve decided not to keep these changes and return to keeping player and enemy turns separate.

Sequence 04_2
Actions are still executed simultaneously, but are separated by faction. The problem came up as I started working on larger encounters, where too much was happening at once and players weren’t able to keep track of it all. I eventually decided that I was fixating on getting convincing real-time execution at the expense of clarity. Clearly this is a big issue for a tactical RPG, and it’s especially problematic for us given how easily units can die in the game.

I spent a lot of time trying different ideas to make it work: an on-screen combat log, more overlay UI in general, bullet time, zooming and panning the camera dynamically to focus on important events, etc. but simply separating turns again seemed like the best solution.

The choice came down to keeping two way real-time turns or having larger encounters and more complex interactions. It was a hard choice to make, especially given how good the changes felt at smaller scales (not to mention the amount of work that went into them!), but hopefully you’ll all agree it was the right one. In the end, the decision came up because the mechanics and the scenarios are getting deeper and more interesting, which brings me to the next topic:

Progress

My main focus is still on completing the class system and building out a series of main encounters around their progression. As I showed last update, there’s almost 100 abilities in the game now, and I’ve been plugging away at implementing, testing, and balancing them. There was a ton to do here since many abilities require different animations for both the user and target, and some require additional variations depending on the user’s equipped weapon, target’s reactive ability, direction of attack, damage dealt, etc.

At a higher level, I wanted to mention three big changes that came up during this process:

1. Line of sight

Most attacks now require line of sight to an enemy, and cover now plays an important role in the game. In most cases, attacks can no longer go through other units. This was trickier than I expected to get working, since the game world doesn’t exist in true 3D space. Players can aim attacks manually, which opens up some interesting gameplay possibilities:

2. Joint Attacks and Damage Multipliers

Until recently I was committed to keeping the core combat system as simple as possible by separating the more complex mechanics into special abilities. I’ve loosened up a bit on this approach, so certain mechanics now apply across the board. The big two I want to mention are attack direction (flanking and back attack) and joint attack bonuses. Note the target info panel on the top right in the video:

In this simple example, Aidan’s attack is parried but forces the enemy to face him. This exposes the enemy to Matthias’ follow-up, which can’t be blocked and is boosted by back and joint attack bonuses.

Executing joint attacks, controlling enemies’ reactions and field of view, and optimizing attack multipliers have really become the core of the combat system. These mechanics become much more interesting later in the class progression, and luckily it plays well into the simultaneous execution we’ve invested so much time in.

3. UI

With all the new mechanics, there’s a lot more information that needs to be tracked by the player now, which has meant even more UI changes. I’m still trying to keep things as clean as possible, but as you can see I’ve had to allow for more UI elements than in previous videos I’ve shared.

Since things have been getting more complex, where possible I’ve been trying to reduce the number of “selectable” abilities by implementing them as passives or upgrades to base abilities. Quick example:

Here, instead of having a separate basic attack and “Lunge” ability, Lunge now works as an upgrade that’s applied automatically depending on the target’s range. Overall these types of changes have done a lot to streamline the game’s flow.

2015 and Next Steps

2015 was an interesting year. Simultaneous execution was really tricky to get right from both a technical and game design perspective. While clearly it’s set our schedule back quite a bit, I think it’s become one of the game’s most compelling aspects. Over the course of the year, the game’s combat and unit management overall has grown from the original design into something better than I could’ve imagined.

The combat system was by far the most complex aspect of the game’s development. Now that it’s almost complete, we can finally start tying together the various standalone encounters I’ve been designing around the class progression into a continuous main quest. After over a year of grinding away almost exclusively on combat stuff, I’m really looking forward to switching my focus back to story, art, and world building.

I’m racing to get the next build out for our alpha testers and to open up the beta soon afterwards. More on this and some new footage to follow in January; just wanted to give you all an update on what’s been going on before the year was up.

See you all in 2016!

More Combat Stuff

September 28th, 2015

John

Hi everyone, it’s been another long stretch… here goes.

Taking simultaneous execution a bit further

Towards the start of the year I introduced simultaneous execution to the combat system. I’ve done a ton of playtesting in the months since, and the feedback’s been very positive.

Since the last update, I’ve been working one last big change to take it a step further: Before, each faction moved separately, so your units would move, then the enemy’s, back and forth. Now, all units execute their turns simultaneously.

To be clear, mechanically the game isn’t affected! These changes only affect the presentation of how actions are executed. All the planning and decision making is still completely turn based.

Here’s a quick video demoing how the new system plays:

To make this work, I created an algorithm that processes the player and AI’s queued actions at the end of the planning phase, identifies dependencies between them, then figures out who’s “allowed” to move when during execution while respecting the player’s input. This was a pretty tricky programming challenge and I came close to scrapping the whole thing at least a few times, but I’m glad I stuck with it.

I still need to spend some more time polishing up the algorithm and animations, but hopefully you’re all as excited by this last change as I am! To those of you who were looking specifically for an old school experience, I’m planning on putting in an option in to support it (this will be closer to what I showed in the first alpha video way back, but with all the new features and other goodness we’ve built up since then).

Classes, Abilities, and Unit Progression

Apart from the changes to make the turn execution phase completely real-time, I’ve been working on implementing and balancing the game’s classes and abilities. If you can remember all the way back to the campaign, the original plan for the combat system was something “chess-like” in its simplicity. There were only 10 classes in a simple, mostly linear progression path, and each class had just one corresponding ability.

While this was interesting in prototyping, early in development it became clear that we’d need to increase the scope of the class and abilities system significantly to keep things engaging for three full releases. Here’s the WIP class hierarchy I shared around that time for reference.

Since then I’ve been iterating through lots of different possibilities, and in the last few months I’ve been closing in on the final progression. For the first release there are now 18 playable classes, and each class has five unlockable upgrades. Here’s what the current class/ability tree looks like (click for hi-res, note the ability icons are missing since they’re not finalized):

hierarchy-large
As you can see, things have grown quite a bit!

Originally, the plan was to let players create “hybrid” units by leveling multiple paths simultaneously. After some testing, I decided against this, since it made advancement feel unfocused and balancing basically impossible. Now, units need to specialize down a path, but can choose which classes to unlock along the way. Additionally, within each class, players can choose three of five advancements.

These changes result in units feeling more purpose built and makes party balancing more interesting. I’m trying my best to have give each ability a unique behavior with at least one counteracting ability, as opposed to just having lots of ways to deal different amounts of damage.

anims

Events, Playtesting, and an Award!

As mentioned above, I’ve been doing lots of playtesting at local indie game events at Playcrafting, The Sheep’s Meow, Babycastles, and the NYU Game Center. The ongoing playtesting has been really helpful for figuring out what’s working, what’s not, what’s confusing, etc. plus I’ve already gotten to meet a bunch of you in person which is always great. If you’re in the NY/NJ area, come say hi!

playtesting

Earlier this month, we were also one of about sixty games selected for the Digital Games Showcase at the Boston Festival of Indie Games. Here’s a little interview I did there. We got tons of great feedback, and even won the award for best art!

award

Coming Up

art

The final vertical cut build will be up later this week for our alpha backers with the above changes, the auto-save system enabled, and lots of other tweaks/polish. The following build will be up in October and will have additional content past the vertical cut unlocked (finally).

I’ll be in the LA area from 10/21-10/24 for IndieCade. If you’re around there and want to take the latest build for a spin, drop me a line!

Once again, you’ve all been really patient, so thank you. There are times when I get pretty burned out and feel tempted to just wrap things up as quickly as I can, but I really think the extra time we’re taking for all these changes will be what takes the final product from good to great.

Lastly, here’s a couple more tracks to share :)

– John