Hi folks -
So we've been discussing the combat system internally along with taking player feedback on the game's balance into account and thought it would be good to get your feedback as obviously any large changes to combat are going to have a big impact on you.
First let me state some of the goals of this design.
1 - Keep it simple while allowing for a variety of strategic unit configurations.
2 - It should be easy to make adjustments to the balance without changing the system itself.
3 - Strong forces should be able to be whittled down over many battles if reinforcements aren't brought in.
Simplified Combat System to preserve the sanity of players and developers.
Stats -
ATK - Damage done per round
ATKSPD - Number of targets a ship can attack per round
DEF - Amount of damage a ship can attack in a single battle. DEF is completely regenerated at the end of combat.
INIT - (Initiative) used to determine the attack order. Highest initiative attacks first.
*Whenever I say 'ship' I'm referring to any unit that would be involved in combat so include ships, orbitals, and planets.
Step 1 - Calculate Bonuses
Assign ATK / DEF / etc. bonuses from all technologies to each players ships.
Step 2 - Determine initiative / Assign attack order
For each ship ( or orbital/planet) generate a random number 1 - 20 and add their initiative value. Ships belonging to the planets owner get an additional +5 if they're at war with the attacker. If the attacker is currently at peace with the attacker the attackers ships gain +5 initiative. These bonuses only apply to the first round of combat.
Highest number attacks first. In the event of a tie generate a random number for each ship. The ship with the higher number wins and has an earlier attack.
Step 3 Resolve Combat
(these steps are repeated for every ship)
Step 3a - Determine Target
(ATKSPD - If an attacker has an ATKSPD greater than 1 steps 3a/b are repeated the number of times equal to the ATKSPD value.)
Ships are attacked first, then orbitals, then planets. Within those categories target is assigned randomly. Yes, this means that attackers aren't choosing the optimal targets but since all ships are making the same less than optimal choices it should remain balanced and it saves us from having to worry about AI.
Step 3b - Apply Damage
Damage = Targets DEF - Attackers ATK. If target's DEF is reduced to 0 or lower it's destroyed and removed from combat. It does not get to attack this round if it has not already done so.
Repeat steps 2&3 until all ship from one side are destroyed.
Step 4 - Wrap up combat
Make diplomacy status adjustments if any between players and assign any capture colonies to the victor if necessary. The diplomatic status of the two players goes down by one step automatically, so a peaceful player is now embargoed, or an embargoed player is now at war.
Step 5 - Send out combat reports
(should be self explanatory)
Other considerations -
How long does combat last? Combat resolves instantly. (or as fast as the computer can do the math anyhow.) The combat animation playback should be roughly 3 seconds per attack.
What happens is Player's A&B are in combat and Player C attacks player A or Player A sends in reinforcements? Player C will enter into combat after Player & B's combat has been resolved. Player's A's reinforcements will be treated as a separate battle that will take place as soon as the current one is resolved.
Let us know what you think!