Development update July 2019

It’s been an exciting month of June here at Shy Snake. We are doing a lot of testing now to make sure the game runs smoothly for players. We made good progress, so let’s get to the specifics.

AI

We are continuing work on the NPC AI system in the game. They now evaluate cover and will take cover if they need to. The AI evaluates cover based on where the PCs are, and only PCs it knows about are considered. So if you have a hidden sniper, you may be able to drive an NPC into their field of fire. Now, once you spring the trap, the others may choose cover more wisely.

Screenshot of cover points. The size of the red dots shows how good the AI thinks a given cover is.

Gunsight

We made another set of revisions to the gunsight. We made it larger, because when it’s open the rest of the HUD and other game UI is inaccessible, so there’s no reason to keep the gunsight small. This also provided room to add the various attack modes we were planning. Not all of these are implemented yet, but you can see buttons to select the six different types of attacks. Changing an attack mode will change the controls on the right-hand side to reflect the options available in that attack mode. In some cases, this will also change the aim point shape.

For instance, selecting “aim” will remove the controls to select the number of shots and will only show the maximum aim time circle. “Aim” is useful in situations when you want to max out your chance to hit on a target and be able to quickly fire with that increased chance to hit at a later time. Example, your sniper is positioned and aiming. If things go bad, they would get a quick shot at max aim to open the conflict.

Screenshot of the updated gunsight view. The buttons on the left are: aim, hip shot, aimed shot, area fire, overwatch, and suppression fire

Player base changes

The base has been moved to a generated map. The building and everything the player interacts with remain unchanged. However, this allows us to split up the base map so each function is better served and most importantly, dramatically reduce load times.

Map layout improvement

Our generated maps have gone through some iterative refinements to improve how we place buildings. They are now better form more realistic groups. In addition the new code is much more robust when placing buildings on smaller maps. This lets us avoid generating extra large maps for missions that don’t require it. AKA, take place mostly indoors.

2D UI improvements

We have cleaned up a number of issues in the UI. The graphs for movement and weapons have been cleaned up and updated to match the rest of the UI style. In addition we have updated several of the UI assets for a more consistent UI feel.

3D UI changes

For markers in game we have switched from the old 3D meshes above a character’s head to using 2D sprites. We now clip the position of markers to the edge of the screen so you can see at a glance which way you would need to pan the screen if you want to look at the marked object.

Internal cleanup & testing

Markers along edges of the screen show where the marked objects and characters are in relation to current camera view

We have done a lot of code cleanup to bring stuff that was written in the early days of Spy DNA development in sync with the latest changes. We also created targeted testing maps for several game mechanics and underlying components. This allows us to verify changes more quickly, plus the simple tests also act as good examples of how to use the mechanics.

Thanks for reading, hopefully this gives you an idea of the progress we have made.