Elemental Changes to Combat System

raystuttgart

Civ4Col Modder
Joined
Jan 24, 2011
Messages
9,672
Location
Stuttgart, Germany
Hi guys,

over the last years I have read a lot of posts and had several intersting discussions with other modders about the Combat System.
(Of course there are many interesting ideas out there.)

Although I am (currently) not modding anymore, I thought I would present my conclusion of the elemental changes I consider to be the base for a more interesting combat system.
(A lot of other people came to similar conclusions so it is not necessarily "my" idea.)

Currently a Unit has this value:

iCombat

It resembles

  • Health
  • Attack Strength
  • Defense Strength

Thus creating versified combat is really difficult.
(A unit is simply either strong or weak.)

And yes I know, that there are TerrainAttacks, TerrainDefenses, FeatureAttacks, FeatureDefenses, UnitClassAttackMods, UnitClassDefenseMods and UnitCombatMods.
(But the Combat System I have in mind is more complex than that.)

To enable a more versified combat system I think it migth be interesting to spilt up iCombat to these 3:

iHealth --> Damage a unit can take
iAttack --> Damage a unit deals while attacking
iDefense --> Damage a unit deals while defending

Thus it would get possible to have units that are:

* Strong attacker but weak defender
* Strong defender but weak attacker
* Being able to take a lot of damage but not dealing much
...

The modifiers listed above and also all modifiers from Promotions, Founding Fathers ... would of course still be part of the computations.

----------

The complete combat system I was dreaming of (and started creating concepts) is much more complex, but these changes would be the base for it.

But be warned:

Even implementing something that sounds that simple will require lots of adjustments.

  • Coding for new combat calculations.
  • A lot of AI decisions (combat behaviour, buying, training, ...) would need to be adjusted.
  • A lot of rebalancing (units, promotions, terrain modifiers, ...) would get necessary.

----------

Well, maybe somebody might find that idea interesting. :dunno:

Edit:

By the way, similar changes would need to be done to Professions.

iCombatChange would be split up into

iHealthChange
iAttackChange
iDefense Change
 
I agree, making Combat more nuanced could add a lot to the bland combat of the vanilla game. As you point out, deciding to make any kind of entirely new system that has never been worked on before can have lots more AI difficulty, crashes & complications etc than expected. For that reason, what Kailric did in brining back the existing First Strikes feature from Civ4BtS was ideal. I think a similar system to what you describe of Attack and Defense ratings (though maybe not "hit points") has been implemented in several other mods of Civ4Bts and worked on & refined by them; IIRC these mods include FfH2 and its modmods (I think maybe DuneWars as well but I'm unsure.) It seems many of these mods had skilled DLL developers who worked for a long time adding & refining new features which many aren't aware of; so any interested modder could have a browse through them to see if there's any existing features that could be good to adopt.
 
As you point out, deciding to make any kind of entirely new system that has never been worked on before can have lots more AI difficulty, crashes & complications etc than expected.

Yes, it is a lot more complicated than it sounds.
(Especially if you really want to have AI understand the implications.)

For that reason, what Kailric did in brining back the existing First Strikes feature from Civ4BtS was ideal.

First Strike is another good option to add.

I think a similar system to what you describe of Attack and Defense ratings (though maybe not "hit points") has been implemented in several other mods of Civ4Bts and worked on & refined by them; IIRC these mods include FfH2 and its modmods (I think maybe DuneWars as well but I'm unsure.) It seems many of these mods had skilled DLL developers who worked for a long time adding & refining new features which many aren't aware of; so any interested modder could have a browse through them to see if there's any existing features that could be good to adopt.

It is like always in modding.
You can take a look at what other people did and try to adopt and improve or implement of your own.
(Usually it is a mix of both.)

However, it will probably not be possible to adopt 1:1 since Civ4 does not have the concept of Professions like Civ4Col does.

The "HitPoints" (iHealth) would be something I would introduce, because my full concept for the new Combat System would require it.
(e.g. Fights not always taking only one round or having "ranged attacks" that are not always directly killing another unit.)

---

Well, I just wrote this to share some ideas. :)
 
The change doesn't seem all that complex in nature, maybe just in implementation. The change you suggest should've been the way firaxis originally designed the game. It only makes too much sense...
 
There was a version of Civ that had a Attack and Defense right? I have thought about this and I can't see the real benefit of separating Attack and Defense but maybe I am missing something. For example say there is a Knight attacking a Spearman.

The Knight has an attack of 10 and defense of 8 the spearman has an attack of 4 and defense of 8. Using the current combat CivCol formula lets see what happens...

Code:
iTheirOdds = ((GC.getCache_COMBAT_DIE_SIDES() * iTheirStrength) / (iOurStrength + iTheirStrength));

Knight Attacks Spearman


Spearman Odds = 8(using his defense strength) * 1000 (current combat dice) / (10 (knights attack) + 8 (spearman strength) = 444

Spearman's odds are 44% chance of doing damage per round

Now let's use the current system of one Combat value with some Bonuses thrown in.

Knight Attacks Spearman


Knight has attack of 8 but has a bonus Vs melee of 20% making his total attack to 10. Spearman has an combat value of 4 but is fortified for 25% bonus and gains 100% bonus Vs Mounted. This brings his combat Value to 9.

Spearman Odds = 9(using his defense strength plus bonuses) * 1000 (current combat dice) / (10 (knights attack) + 9 (spearman strength) = 473

Spearman's odds of doing damage each turn is 47% chance but without the Fortified bonus odds are the same under both systems and I can't see how separating the two would make any significant change.

If you ask me (which you did;)) the Bonus system we have now is very dynamic and can set up some interesting scenarios. What I "would" like to see added to combat is "Special Abilities" for units. I started adding this to the M:C mod but have not fully developed it. So far I have introduced...

Glancing Blows - If a unit is wearing Plate Armor all attacks have a chance of having it's damage cut in half
Shield Block - if a unit carries a shield they have a chance to block incoming damage, I believe this can only occur once per battle.

There could be all sorts of special abilities granted from weapons and armor plus experience at combat. Players of Roleplaying Games, such as DnD know what I am talking about. Examples; Critical Strikes, Feints, Disarms, etc. Of course, combat of this sort (and the more interesting combat in my opinion) happened prior to gun powder as there is not a whole lot going on when one unit shoots at another unit from across the way. But you could add things like Sniper Shot and First Strikes and Collateral Damage from Cannons. For Gun power games there would be more of combined arms tactics perhaps.

I am not a math expert or experienced military general either but that is my buck and a halfs worth or comments :lol:

Edit: Adding health bonuses is something I'd like to do as well
 
@Kailric:

Well, your approach is to introduce lots of new "Special" Abilities to cover certain types of weapons and armor.

I would simply do that with 3 general xml settings instead.
(Health, Attack Strength, Defense Strength.)

And yes, it is possible to create lots of different cases depending on Terrain, Features, UnitClasses and UnitCombats.
But it is very tedious to create a Unit (or Profession) that is generally strong attacker and weak defender if you have lots of Terrain, Terrain Features and UnitClasses.

Currently the system could do:

The unit is very strong.
But it is weaker defender on Terrain 1, Terrain 2, Terrain 3, ... (until you named all terrains)

Wouldn't it be much simpler if I could say ?:

The unit is a strong attacker.
But it is a weak defender.

-------------

I am not saying that we should get rid of all current modifiers.
They are still useful.

But splitting up iCombat would give additional flexibility. :)

I could generally set up all basic aspect of different combat units and professions with only 3 XML settings.

And then give modifiers additionally.
(So they would become the exception and not the rule.)

Also, they 3 main combat values would be displayed directly (and always) at the unit, which would make it easy to understand for players.

Now I have to throw around with modifiers like crazy, just to realize different types of combat units and professions.

-------------

While you are talking about role playing games, have you ever seen a role playing game that did not differentiation in some way between Constitution, Offensive (e.g. Strength) and Defensive (e.g. Dexterity).

-------------

Depending on what you want to achieve, this might of course not be interesting at all.
It is just an idea for a base of combat system that is a bit more complex and interesting. :)
 
Well, for one thing combat is 100% "relative", meaning the out come is determined by lots of factors. And obviously we are talking about combat in relation to mods not to vanilla Col as there is only 3 combat units so not a whole lot of reasons to come up with an elaberate system.

I do want an elaberate system for the M:C mod, so I am considering what you are saying but still not convienced. Like I said combat is relative, if you want a unit to be strong offense and weak defense you are then setting the unit to be weak Vs everything. If you wanted a scout to be Attack 3 defense 2 but you want the scout to be strong Vs Animals you would have to add modifiers to both attack and defense Vs Animals. If an Bear attacks with an Attack of 4 and the Scouts defense is 2 you would want to add the scouts defense vs Animals, say 100%, which would bring the scouts defense to 4, now him and the beast are even, But if the Scout attacks the bear the scout has a clear advantage. The problem I have with this is that if Bear sees Scout and wants to attack and Scout sees Bear and wants to attack it simply comes down to whoever's turn it is when combat is initiated will determine who gets the advantage. To me this isnt right as once combat starts there is really no attacker and defender but rather two combatants engaged in combat, some rounds one will be more aggressive while the other defends and the visa versa.

Under a seperate attack and defense you still would have modifiers all over the place and even more so as you would have to add in modifiers for two attributes. I think a better solution to make a unit weak on defense is to simply add in a new attribute called "DefenseMod" and that figure modifies the combat value when ever the unit is on defense regardless of anything else.

Also, even if you do seperate attack and defense I don't think it would be hard to code as the AI only looks at Combat Odds and it doesn't care how you arrive at those odds. Combat odds are calculated in one function and you can mod that function to your hearts content.
 
As Ray mentions a lot of options are already available by TerrainAttacks, TerrainDefenses, FeatureAttacks, FeatureDefenses etc, but the only issue is its a bit tedious to mod all if these if you'd want a general bonus. So another option rather than reworking iCombat into different values could be to add an AttackMod and DefenseMod that would work like the above but not be specific to a single terrain/feature. (edit: I now see that Kailric already suggested that.. it's true as you mention you could get the same effects by making only one of these like AttackMod, if you want to change the overall relative difference between attack and defense.) <NoDefensiveBonus> can be useful as well for making units that can't "fortify".

One good general method for interesting strategic balance in game design is that of "rock-paper-scissors", ie units of type A have advantage vs type B, type B have advantage vs type C, and type C advantage vs type A. That kind of thing is possible by unitcombat advantages & is put to good use in the Spearman example Kailric mentions. The First Strikes and Glancing Blow also add some nice strategic depth that's situation dependent. I'd say the more things that add a slight but noticeable advantage in some situations, without being an overwhelming boost in all situations, the better! :king:

The idea of adding Health is interesting, mainly because it makes combat less of a binary and random "winner-take-all" seeming outcome, if the usual outcome were both units surviving the skirmish but being damaged depending on their relative strength, instead of always a single winner/loser based on a single chance ratio. It's finally a solution to the classic complaint of all Civ players about a Spearman defeating a Tank..
:spear:

I suppose for most mods it wouldnt make sense for some units to be dramatically "healthier" than others, but simply for most units to have enough health that they won't die on the first attack would be great. Particularly in the vanilla game it seemed quite easy to quickly overwhelm other cities in combat, capture the entire city and gain lots of population that way. If combat were more of a drawn-out, bloody affair with units first wounding each other horribly and often only dying on the second attack, it would add oodles of strategic interest as well as gorey realism :mad::cool:

BTW I personally have a rare disease which causes me to save and reload before important combats until I get a good result :mischief: If most attacks instead cause damage to both units with a relatively modest random component, this would probably benefit me and other sufferers of this disease! :p

well thanks for the cool discussions :cool: here's to more interesting combat in C4C!

edit: would also be cool if injured units got penalty to production until they were healed. that way Native Raids etc could be a nuisance you'd want to defend against, without being too frustrating by overwhelming/destroying lots of colonists and buildings.
 
Well, there are a lot of "roads to get to Rome". :)
But it seems that we all agree that the current Combat System in Civ4Col is boring.

Personally I would like to see aspects like

1. Removal of binary combats where there is always a winner and a dead unit.
(Well ok, there is withdrawal.)

2. Possibility to easily separate offensive capabilities and defensive capabilities.
(Without having to adjust all balancing if a new UnitClass or a new Terrain is introduced.)

3. Good AI that understands all implications of the new system, whatever it may be.
(Strategic Planning, Buying, Training, Unit Movement, Combat Behaviour, ...)

-----------

The current possibilites with modifiers are of course still useful to implement some very special purpose units or "Rock-Paper-Scissor" system as has been discussed many times as well.
Other new features like "First Strikes" or whatever modders come up with, might be interesting as well.

-----------

We'll see what modders will come up with to change (or not change) this issue. :dunno:
 
Wow, I had totally forgot about my Strategic and Tactical combat mod. I added some interesting concepts to combat in Civ4 and still had more ideas to implement but never finished them. In that thread I talk about combined arms bonuses, barrage attacks, and flank attacks. What exactly was flank attacks in Civ4? Was that the ability of units to damage siege engines after making an attack?

Anyway, the thread is here... http://forums.civfanatics.com/showthread.php?t=274440
 
How about getting rid of unit vs unit combat and arranging units into armies.Stack against stack.And not whole losing side's stack necessary has to die,but some units may manage to withdraw and escape dead, some may taken prisoners of war.
This could make combat more chaotic. Of course it would be harder to see the impact of different units, bonuses and other parameters to battle results, but I don't think it would be any less fun.
In original colonization from 1994, there's a combat screen that shows the odds for battle. I liked it a lot. There could also be a aftermath screen that show which units died and wounded in the stack battle and who gained experience. Big battles could become major events in game.

How would the stack against stack combat work? Unit abilities could be divided in three categories:

firepower(cannons,muskets,archery units)
melee
flank (dragoons and other horse units)

Then results could be calculated by some formula.

But I do realize that this kind of system becomes easily too complicated to implement and also it may seem too random for some players to enjoy.
 
Well, it is a matter of taste like always. :)

For me, having stacks or armies fight without being able to control the single units, would be as interesting as "Autoresolve Fight in Total War", meaning really boring. :dunno:
 
Well I think you are right actually, civ4col is unit oriented game, and that's where the fun is.
And that's why I would like to incorporate things like morale and nationality into the game.
Morale would be constantly changing value, that depends on unit's nationality and other factors such as health, and goods unit is supplied with. For example you are playing spanish and you have german mercenary unit who is defending against dutch attacker. He is low on food and rum, so his morale to defend isn't as high as spanish nationality unit would have. Possibly he doesn't want to fight for catholic faith as much as well. Morale can be boosted with goods like rum and cigarettes and food. And resting in churches and taverns.
Health would be something similar.
But then again, it will be complex...:crazyeye:
 
And that's why I would like to incorporate things like morale and nationality into the game.

Diggin' these!

For me, having stacks or armies fight without being able to control the single units, would be as interesting as "Autoresolve Fight in Total War", meaning really boring. :dunno:

Auto resolve in TW is ********. Agreed. :) It would be flippin awesome if we could have TW like battles inside of Civ4Col. lol
 
Back
Top Bottom