Greetings Luminaries!

Today we’ve got a dev blog from Jon and Jason detailing some of the recent updates from the latest patch of Soul Locus. We hope you enjoy reading about some of the nitty gritty of our game design and have a great weekend!

It's likely that our most common player feedback has been in regards to how towers select their targets. It hasn't yet felt satisfying and can often be the deciding factor in defeat when playing. We're laying out steps to fix that and thought it might be an interesting topic to share with our audience.

The primary targeting AI is programmed to simply to hit the target that has been present the longest, with the assumption it will be closest to the Ox and thus the greatest threat. This logic is flawed, but it was a starting point for us early in development. That behavior also has an override that prioritizes anything hitting our precious Ox, no matter how long the enemy has been present. This is what players have been experiencing so far in the game.

Here are the steps that we're considering next for moving forward with targeting AI.

Step 1:
Fix the current targeting bugs. We found a couple of bugs that were making the targeting AI feel worse than it really is. In short, it wasn't accurately determining which enemy was around the longest. There was also a condition where something attacking the Ox might be missed as an enemy selection target.
We fixed these bugs for Patch 0.0.3 (Which went live yesterday!).

Step 2:
Divide enemy targets up into two states: Attacking the Ox and Walking towards the Ox. Aside from rare exceptions, if something is hitting your Ox, that enemy is the highest priority to be eliminated. Moving forward, we are dividing all valid targets between attackers and walkers. For now, the attacker list takes priority over the walker list in all cases. Eventually we may revisit that, depending on player feedback and gameplay feel.

Step 3:
Select the best enemy target from the two states determined above in Step 2. The best target will be a setting on each monster/tower, not just a general AI action. We haven't yet determined what rules we'll implement but some simple rules we’re considering involve highest and lowest health, most and least recent spawned, and closest to the Ox. More complicated possibilities might match your Guardian vs. the enemy they are most suited to defeat or other logic to use the Guardian's abilities to their fullest. We'll try simple options first with future patches and evaluate the overall improvement before moving on.

Step 4:
Increased frequency in target acquisition. To minimize processing tasks, towers only change targets whenever their current target dies or leaves range. We're going to experiment with acquiring targets after every shot or in shorter intervals. Assuming performance isn't significantly slowed, this will make any other targeting changes work much better.

Step 5:
The logic we use to determine the greatest threat needs to be updated. Each level has portals, which spawn Corruptor enemies. Sometimes those portals spawn enemies close to the Ox, while other portals are far away. A nearby spawn will hurt the Ox much sooner than something spawning at a distant portal. We haven't decided how to rework this, but Steps 2 and 3 will assist gameplay until we do.

Step 6:
Who knows, improving targeting AI may not be enough to really bring the gameplay up to where we want it for final release! If that is the case, we will work on adding user targeting controls where players can set the preferred targeting method themselves.

Step 7:
The next question to solve, if we go with Step 6, is to decide whether players can set their own targeting preferences during a mission or changing each Guardian behavior on their cards individually in the Inventory screen. Or maybe both may be an option?

Step 8:
Finally, the user experience for making these changes needs to be determined, if we do make it this far. Is the setting clear and easy to find? Is it a drop down selection? Is it simple to do without needing to pause? How frequently are players feeling obligated to change settings? It is fun and empowering?

So there’s a look into how we’re tackling this problem. Player feedback sparked this plan. As we work through each step, we'll be seeking more feedback to confirm the solutions are working for our players! One advantage to succeeding with Steps 1 through 5 is we won't have to complicate player interactions nor add targeting micromanagement to the game experience. If that’s what it takes, however, we’ll do whatever we can to make sure players never feel cheated by poor targeting AI. Winning or losing should always be in the player's hands, not due to a stray Bold explosion.

We hope you enjoyed this look into our development and design process! Is there anything you are particularly curious about in the development of this game? Let us know on the Steam forums!

- Jon and Jason