I could not disagree more there. You will always have unlucky losses and lucky wins. Otherwise you could just calculate how many units you would need to bash an enemy city and you would always be right.
If the game did not have any of this randomness, it would become less interesting. You could tell for sure if a defending army would be large enough or not and such. Not being able to tell for sure creates some more interesting choices. Will you reinforce your city, or do you trust the defending force as it is?
Also a good strategy calculates in the losses that you will have. In any war there will be casualties, and even a superior army can de defeated on a bad day. This keeps thing surprising and interesting, and it can not be compared to a game of chess, which evolves solely around the pieces and the moves they make. The battle in chess is fought before the piece is taken, and a piece that is taken has lost.
Main problem is that the AI, combat and the costs of war in every Civ - / Col - Game so far were not implemented very realistically ... they lack details, strategically depth, use unrealistic rules and they rely on RNG to partly compensate this ... If the AI would be able to surprise you by tactics and strategic maneuver, you would not need RNG for surprise and interesting game ... Also remember that each unit in civ / col actually represents hundreds or thousands of men ... so combat should be kind of statistically balanced ... no need for too much RNG there ...
RNG actually makes combat a part of the game which I "dislike" ... in other turn based combat simulations (e.g. PanzerGeneral, HeartsofIron (turn = 1h)), the statistically variation of combat results is more tight ... and they are still fun to play ...
Here are some examples of odd things I noticed :
- maximum statistically range of possible combat results :
If you have two identical units of same type and same strength fighting each other, you can get all kind of statistically possible combat results from "unit A defeats B without taking any damage" to the opposite result, just determined by RNG. So RNG represents some kind of invisible detail or information (Luck) which is considered for fighting and winning, but which is unknown to the player. Since the effect of RNG on a single battle is much higher than that of every possible strategic action the player can do, it limits strategic planning.
- Global Good / Bad Luck :
In most games you will encounter a situation where the next attack you will order will be definetely a failure due to unfavorable RNG-values since RNG is global and not local... no matter if you will attack in Europe, Asia or America, even when you use a tank to attack a spearman ... you won't have a chance to win ... This is totally un-fun since you cannot do anything against it ... the game has decided by coin flipping that you are not allowed to win the next battle. Transfered to real live, this does not make much sense ... In this situation there are only two options you have : 1. sacrifice a unit and continue your attacks this turn or 2. stop fighting for this turn if you are strong enough on defense and hope for better luck next turn ...
- Single unit attack :
10 units against 1 enemy (same unit-type) ... in real live I would suppose that some own units get damaged but the enemy gets defeated (destroyed or surrenders or retreats) ... In civ / col every unit attacks on its own ... and may win or loose, depending on RNG ... but that's not realistic ... units represent 100 (or 1000) men each ... so you would have 900 men waiting while your first 100 gets massacred ... and then the next wave would go in and so on ... would be a poor strategy for real live ... a good leader would try to use the strategical advantage of 10:1 by encircling the enemy and start a combined attack ... in the game, you don't have the advantage ... you attack with your 1st unit and a coin is thrown who will win ... your advantage of 10:1 is ignored by the game ... if your 1st unit lost, your 2nd unit might have a better chance based on the damage the 1st did ... but it is not assured ... and so on ... so statistically your just exchanging units at a rate of 1:1 ... and this can be calculated ...
- One unit must die :
Fights in the game usually end with the complete destruction of either attacker or defender ... Exceptions are fights where units (e.g. dragoon) can withdraw ... in real live, units who are fighting under disadvantageous conditions would stop the attack or would try retreat if possible to avoid unneccesary losses. As long as the unit is not completely encircled (in a pocket) the fight would be aborted before complete destruction. (This may depend on the leader ... in WW2 Rommel at El Allamein defended well and finally rather retreated than having his troops destroyed by the superior british troops (superior in number of units and supply). )
- Damaged units heal free of costs (if you can spare the time) :
If you fight a battle with 10 soldiers (= 1000 men) and you end with 10 soldiers with 50% Strength each, mathematically you have an army with Strength of 10 x 0,5 = 5 soldiers (= 500 men left) .... but after a few turns they have regenerated and now you have an army of Strength of 10 soldiers again (= 1.000 men) ...
If you fight the same battle and RNG determines that you end with 5 soldiers at 100% instead of 10 soldiers at 50%, then you just have an army of 5 soldiers (= 500 men) and must build additional 5 soldiers to regain the old strength ...
In real life both battles would have about the same costs ... 500 men lost ... in civ / col they do not cost the same ... case 1 costs some time to regenerate but has no building costs ... the missing 500 men are coming for free ...
So while in a non-RNG-combat-model each fight would have certain costs which you would have to consider before fighting, in civ / col the RNG decides if you have costs at all (due to healing of damaged units.)
I believe that it is possible to change the civ / col combat mechanics to be fun and challenging even without RNG ... Only problem might be the AI which somehow must be introduced to the new rules ...