I've been trying to think of a way to salvage this battle system. Clearly, there needs to be some kind of primitive battlefield so that players can make tactical decisions that affect the outcome of combat.
What I would do is put all units into a two dimensional array. The beginning of the array is the "front line". The front lines of the attacking and defending side are matched together and combat starts.
Number of rows.
The number of rows in the battle formation array signifies how big the front line is. For simplicity (and to concede to unit bias) lets say the number of rows is 10. Therefore, every round, ten melee units will attack the opposite 10 melee units as long as there are troops filling those slots.
Flanking
You get flanked when all of the units from one of your rows dies. In this example, one of your ten rows is empty and one of your opponent's ten rows needs a new target to attack.
For simplicity, lets say it was your first row whose units got wiped out. Now your opponent's first row would be attacking your second row, but that row would also be getting attacked by the opposing second row as well.
Now range actually means something.
Now that only 10 melee units can attack every round, ranged units are very valuable. Ranged units behind the front line add extra damage per round, so stacking all melee units will be very counterproductive.
For example, units with range of +1 would be able to strike the opponent's front line if they were in column two, right behind their own front line.
However, balancing this system wouldn't be trivial. It would have to be decided exactly how ranged damage works. It might be smarter to give units longer ranges like +5 or +10. This way you'd be able to put 5/10 melee units in front of the ranged unit and it would still be able to attack.
If this was the case, there would also have to be a rule that stated only one ranged unit per row could be attacking at one time, or players would just stack the units with the highest range and exploit the massive damage output.
Special abilities
A system like this would still require special abilities for each unit in order to give them a reason to be used in combat.
Bazooka (AOE)
He's already doing AOE damage, so why not take it a step further. Instead of doing damage to five targets, why not nine in the adjacent 3x3 grid?
Sniper (headshot)
Long range and prioritizes high value targets like bazookas and mercenaries. Targets could be prioritized by cost (default) or even chosen by the player in advanced options.
Ninja (first strike)
With first strike, ninjas could kill units on the front lines without taking any damage.
(As long as the unit they are attacking has less than 50 hp)
However, a ranged unit could take them out pretty easily.
Mercenary (Penetrating shot)
Line damage. Mercenaries have decent range and their attacks can penetrate front line targets and hit the ones farther back.
Gunman (Spray and Pray)
Instead of firing straight across the gunman will split his damage between the adjacent row and the row above and below his intended target. This idea could be taken even farther and split the damage across the entire front line.
Hitman (Assassinate)
Auto-kills the target no matter what defense they have.
Counter: Easily headshot by snipers.
Advantages of a playing field.
Way more strategy is added to the game using this system. Players would be able to choose how they wanted to attack and defend. Templates could be created to this effect.
You could make a template with 10 rowdies on the first line, 10 bouncers behind them, and then 10 knifers behind the bouncers. The server would attempt to create your template with the units under your contol, and any extra units would simply be appended to the back of the battle array using the default order.
That's all my ideas for today. I might actually try programming this myself as it is very closely related to the Nexus Wars clone I want to make.
Return from DrugWars Battle Formations to edicted's Web3 Blog