Hi guys,
After much thought I've come up with a very simple simultaneous combat model which would require very little human interaction.
First of all, a battle should be broken up into combat events:
1) Engagement
2) Combat Resolution
i) Target Selection
ii) Random Number Generation
iii) Attack Resolution
iv) Damage and Damage Effects
v) Retreats and Routs
vi) Movement and Unit Detection
2a) Repeat Combat Resolution
3) Post-Battle Effects.
1) When 2 armies first engage one another, the starting battle range should be equal to the Max Sighting or Max Weapon Range. A mini-window window should also pop-up in the top corner of the screen-in this screen you will see all your units and all your enemies units (that aren't stealth rated!) arranged in a row. In this window will also appear 2 numbers, the first will be the range between your armies (in km-approx 5-200km), the second will be the computer generated Random Number for this combat phase. This is the box where you can watch your units attack and defend.
2) Combat Resolution: This phase is made up of a number of different actions. The most vital statistics for units would be Attack Strength (AS), Defense Strength (DS), Firepower (FP) and Armour (A). If a unit is out of range it can defend, but not attack.
First, all your units are paired to a target unit in the enemy army based on the formula: AS and FP = or > DS and Armour. If no free units match this fomula, then the unit will be paired to a target thats already been matched (allowing units to "gang up" on enemy units for a bonus to AS).
Next, the computer generates a random number from 1-100 (or 0.01-1.00). This number will be used in several later events.
Next the attack is resolved-basically the Success Chance (SC) is equal to (AS-DS); if SC is greater or equal to the random number, then the attack hits.
The next thing which is resolved is damage, which would be equal to ((FP*(SC-RND))-A)=Damage in Hit-points.
AS, DS, FP and Morale are then recalculated based on the units new hit points. Next you check to see if units retreat/rout:
If Morale is greater than the random number, nothing happens.
If Morale=RND, then unit retreats; unit will be removed during movement, but any enemy units which were targetting it will get a free attack.
If morale is less than RND, then the unit is routed. Same as a retreat, but any free attacks are made against 1/2 DS.
Finally, movement of armies is resolved, which is based on the slowest MP of each stack (will be between 5-50km/ turn)
Combat Resolution then continues until one side is destroyed/retreats.
3) After a battle is finished, the following post-battle events are resolved:
a) Damage to terrain and Improvements.
b) Effects of Casualties on Population and Happiness
c) For certain tiles (Resource, City/Colony, Tile Improvement), a pop-up box should appear giving the army the choice of Occupation, Razing/Pillaging or Liberating.
The Beauty of this model is that it's not just simple, it's also Dynamic (ie: Targets can radically change through the course of the battle). It's certainly a simplification, but its better than the "Jousting Model" put forward by Firaxis, and would not require much more work to implement.
So come on guys, what do you think-am I on to something. Let me know!
Yours,
The_Aussie_Lurker.
After much thought I've come up with a very simple simultaneous combat model which would require very little human interaction.
First of all, a battle should be broken up into combat events:
1) Engagement
2) Combat Resolution
i) Target Selection
ii) Random Number Generation
iii) Attack Resolution
iv) Damage and Damage Effects
v) Retreats and Routs
vi) Movement and Unit Detection
2a) Repeat Combat Resolution
3) Post-Battle Effects.
1) When 2 armies first engage one another, the starting battle range should be equal to the Max Sighting or Max Weapon Range. A mini-window window should also pop-up in the top corner of the screen-in this screen you will see all your units and all your enemies units (that aren't stealth rated!) arranged in a row. In this window will also appear 2 numbers, the first will be the range between your armies (in km-approx 5-200km), the second will be the computer generated Random Number for this combat phase. This is the box where you can watch your units attack and defend.
2) Combat Resolution: This phase is made up of a number of different actions. The most vital statistics for units would be Attack Strength (AS), Defense Strength (DS), Firepower (FP) and Armour (A). If a unit is out of range it can defend, but not attack.
First, all your units are paired to a target unit in the enemy army based on the formula: AS and FP = or > DS and Armour. If no free units match this fomula, then the unit will be paired to a target thats already been matched (allowing units to "gang up" on enemy units for a bonus to AS).
Next, the computer generates a random number from 1-100 (or 0.01-1.00). This number will be used in several later events.
Next the attack is resolved-basically the Success Chance (SC) is equal to (AS-DS); if SC is greater or equal to the random number, then the attack hits.
The next thing which is resolved is damage, which would be equal to ((FP*(SC-RND))-A)=Damage in Hit-points.
AS, DS, FP and Morale are then recalculated based on the units new hit points. Next you check to see if units retreat/rout:
If Morale is greater than the random number, nothing happens.
If Morale=RND, then unit retreats; unit will be removed during movement, but any enemy units which were targetting it will get a free attack.
If morale is less than RND, then the unit is routed. Same as a retreat, but any free attacks are made against 1/2 DS.
Finally, movement of armies is resolved, which is based on the slowest MP of each stack (will be between 5-50km/ turn)
Combat Resolution then continues until one side is destroyed/retreats.
3) After a battle is finished, the following post-battle events are resolved:
a) Damage to terrain and Improvements.
b) Effects of Casualties on Population and Happiness
c) For certain tiles (Resource, City/Colony, Tile Improvement), a pop-up box should appear giving the army the choice of Occupation, Razing/Pillaging or Liberating.
The Beauty of this model is that it's not just simple, it's also Dynamic (ie: Targets can radically change through the course of the battle). It's certainly a simplification, but its better than the "Jousting Model" put forward by Firaxis, and would not require much more work to implement.
So come on guys, what do you think-am I on to something. Let me know!
Yours,
The_Aussie_Lurker.
Comment