Let's talk game design today.
As many of your might already be aware of, my game features a slightly different approach to handling weapon ammo. Weapons, instead of having ammo clips, have a heat indicator that goes up with every shot. Seems like a simple inversion of the ammo clips approach, right? Well, here's the main difference:
When the heat reaches maximum, the player is not forced to reload. They can risk taking a shot with an overheated weapon. What is more, such shot will deal more damage and is able to shred enemy armor (remember this part for later).
Rogue firing an overloaded shotgun, which shreds armor. And basically insta-kills the big rat in this case.
The downside of having access to such powerful attack is that there is a risk of weapon overload. This is clearly displayed for the player:
If an overload happens, the player receives damage. This introduced a nice risk/reward mechanics in the game. Both ranger and rogue classes had this mechanism present already.
Then I've added the soldier class to the game. He's a damage dealing tank class. However, his accuracy is not perfect.
I wanted to give the solder a special ability which would allow him to quickly put his weapon into overheated state, without having to fire any shots first. That would allow the player easily add some extra punch to his attacks (with the risk of overload still being present, of course).
Lore-wise, I had an explanation ready for this as well: characters using regular weapons would avoid overloading them on purpose as it can be dangerous. However, a seasonsed soldier might be hardcore enough to push the limits of his weapon/suit (as these two are combined - the gun IS a part of soldier's suit).
One might still argue that it's kind of silly, as overloading a weapon might simply be about firing a few shots into the sky/ground. Why would regular characters be really afraid of it? So why not add such action for everyone?
Anyways, not all of the stuff must be 100% realistic, right? I mean even XCOM had its own sins: number of grenades and ammo was basically infinite between missions, same with medkits. On the other hand, each character had a hard cap in the number of grenades they could carry on a mission, etc. etc.
Lore and realism issues aside, I found another problem with the "force overload" action for the soldiers: as I mentioned before, overloaded shots deal extra damage and shred armor. However, there is currently no need for the soldier class to deal even more damage than he is doing using his regular attack. He is already capable of killing most enemies in a single shot.
The most difficult enemy in the demo - the heavy rat, which requires some extra effort to be put down - does not spawn very often, so having the "force overload" action present only for the sake of killing a single guy was not worth it.
So I decided to pivot and change the way "force overload" action should work. It would no longer boost the damage and introduce backfire penalties - instead, it would allow the soldier to perform more than one "shoot" action in a turn. This might become very handy when dealing with multiple enemies.
First of all, to avoid naming confusion with all the overload mechanics, I renamed the new action to "combat suit boost". The suit enters a higher energy state, allowing the character to fire more than once.
Normally a soldier can perform one attack per turn, and performing such attack ends their turn immediately. When boosted, I wanted them to shoot at least three times in total. After some playtesting, this evolved even more: a boosted character was able to perform as many free shots as they want in a turn. However, there was a limit: no free shots were allowed if the weapon core became overheated.
This caused the following issue: if the player boosted the suit whilst having the weapon in an overloaded state, they were unable to perform any free shot - therefore using the boost was not making sense then.
I overcame this with making sure that the boost action additionally reloads the weapon's core, making sure that the player is able to perform at least as many shots as the capacity of weapon's reactor.
The players can still optimize the usage of "boost" action by making sure they have an action point left to actually reload the weapon when it gets overloaded after performing a bunch of free shots. With weapon core's capacity of three, it gives six free shots in total. It does not feel too much, as a) in some situations there can be a lot of enemies on the screen and b) the %to hit of the soldier class is not that high, so there might be a lot of misses.
Some of you might be thinking why a soldier would have a low % to hit rate. Well, it makes sense from the gameplay mechanics perspective - making that armored, high damage dealing guy deadly accurate would overpower the character, so I had to nerf him in some way.
And from the lore perspective? Well, this is a retired soldier, wearing an old, rusty armor. Most of the young soldiers are already dead/caught fighting on the streets of the Capitol anyway.
Anways, this is still not the final iteration of the "boost" action. I plan on testing how it would be working if I actually allowed using the free attack action when a weapon is overloaded. I could then remove the initial weapon reloading from the boost, as the skill would become usable even if taking each shot would have a risk of a backfire.
Well, this entry sure got very different from the usual "status update" stuff! On the other hand, describing my thought process on this helped me to clear my mind and actually gave me some new ideas for game mechanics.
Anyways, going through regular game development status update quickly: aside from working on that soldier class, I added some new in-game screens (a "welcome" screen, and a "thank you" one after one ends a mission).
I believe I will reiterate on the backfire and boost mechanics for the soldier some more. Also, I'd like to try out another library for handling game camera movement. The current one is pretty neat but has some disadvantages - I will happily write more about it in a future blog post.
Thanks for reading!
As usual, if you'd like to receive more frequent updates about the development and a heads-up about release of the demo, follow me on Twitter at @bryquTheDev.
Also, do help me out reaching a bigger audience! Please share, retweet or simply tell others about the game - each new follower gives me a big confidence boost!