Gameplay comparison

To tell the truth, it hasn't happened to me that an AI empire starts crumbling due to revolution since almost 2 years. And I play with revolution all the time. Always. It might depend on difficulty level; on noble/prince it never happened. Probably higher levels need AI Revolution Probability tuned down. Only times I see revolution in AI empires is for distant colonies. In this particular case, sometimes AI and rebels are at war but many times I've seen releasing the colony as a vassal, so that part of the code is definetely working.
 
That's all well and fine 45* but still if you are basing all your balance efforts with the Option REV ON all the time then your base Mod results are skewed towards REV conditions.

I still say that the Mod should be balanced from a minimalistic Option viewpoint to get the "base" mod balanced. Balance the base, then you know you have a solid base to work from. And then, "If" this is done, the Adding in of Options can be checked/balanced.

Having the Option REV On and then doing the balancing is basically saying you Must play with REV to have balanced gameplay in AND. Which in turn says you really should play AND with REV only. And that is something I've disagreed from the start of AND with Afforess way back in the early Modmod days in the RoM heydays.

I'm again asking, just as I did when Zappara with kalimachus(sp) 1st added REV to RoM, to keep the core of the mod very basic, don't make REV the core.

Otherwise AND is just LOTR/REVDCM with added content. And impo AND's core (RoM base) is diminished.

That's how I see it and actually always have.

JosEPh
 
Actually no, I'm not using Rev to balance the game. On the contrary, I mostly test the game in autoplay and I do it without Rev because playing with Rev intrrupts the autoplay too often for my comfort. So be assured about that, I only make additional tweaking for those playing with Rev but base balancing is done with Rev off. :)
 
That's good, because I never play with RevDCM either. :)
 
Turn 120!
Noble is definitely too easy for me.

I just keep expanding, 8 cities and more soon to come, while the AIs are stuck at 3-4.

Blitz is also way too fast for me, techs are just a blur. Though I do like having quick buildings and units :)
Without Multiple Production, Blitz would be either a waste of hammers, or an absurdly complicated exercise in micromanagement.
 
First off, thank you to 45* and Rezca. I picked Rezca as a benchmark to compare the AI against in some fine-grained debugging. In the first 60 turns, Rezca's save shows he has 3 cities and a score of 76. This is pretty good.

I ran a game with a debug DLL and let the AI play for itself for 60 turns. The initial results were not so great. The AI had only managed to found 2 cities, (a pitiful size 4 capital and a pathetic size 1 city) and had a meager score of 52. Rezca outmatched the AI by nearly 50%.

Save 1, Poor AI Run (60 turns in)

I began taking a look at the AI's actions in the Better AI log. Despite having only 2 cities (one of which was brand new) the AI had 7 military units. It was wasting a lot of production on military, when no one was even close by (only 2 others met, both far away).

I slowly walked through the code that determines how many defenders the AI needs. The code starts out with the assumption the AI needs 1 defender per city. Then an addition one for capitals. An additional defender for recently founded/captured cities. And on and on.

The result was the AI thought its capital needed FOUR defenders. Maybe later in the game this will be true. But at turn 60, no way. I added some logic to shortcut the normal defender additions for capitals & recently acquired cities in the early game. I hoped this would be enough. I recompiled and let the AI play from the start again.

Failure. The AI did not even expand past its capital. It kept trying to churn out wonder after wonder. It had a settler built, but was not moving it. It had built the settler about 20 turns ago, and it had never left, despite 3 military units in the capital. SO... the problem wasn't just wasteful military production. Why was the AI not settling with its settler? I slowly executed a turn at a time, walking through the AI_settle() code in the UnitAI. The AI settler puts out a contract for an escort, which is fulfilled. Then the AI settler hits a part of the code that tells it to retreat to the nearest city...What? The AI was breaking up its escort each turn. Only in rare cases (very close by, good city spots, or city locations on another continent/island) would this retreat check fail. I removed it. I recompiled. I loaded up the save. Next turn, the settler took off, heading to found a city. Problem solved. (Note: I did not make a save of this run, due to me advancing past 60 turns to debug the settler issue).

Take 3: I started the initial save again, with my last 2 changes. The AI built a settler after building an initial javileneer. It had a 2nd city in the first 20 turns. It grabbed Stonehenge. Then some more military. Then a third settler. Before 60 turns were up, the AI had 3 cities, a score of 78 (A full 2 points higher than Rezca!) and combined empire population of 11. Things are looking good so far.

Save 3, Good Run (60 turns in)

Things look better, at least early on. But could this game be a fluke? A few good rolls of the dice? I reloaded the start save and ran the AI again. From the start, in 60 turns the AI had again 3 cities, a combined population of 13, and a score of 86. Even better than the last run, and a full 10 points better than Rezca. So my changes are not a fluke. Early AI: A success!

Save 4, Good Run (60 turns in)

I'll be pushing the AI enhancements later this evening, and using Rezca's 60 turn save to run the next 60-120 turn batch of save games. ;)
 
That's great Afforess! I remember having this problem in the past where AI wasn't expanding. It was definetely something I imported from C2C; I was able to remove a part of the code which was causing part of this problem but still AI wasn't expanding very much at the beginning of the game. Now I can see the problem, your fix is really good news! :)
 
Thank you for taking the time to do this. :)

JosEPh
 
It was fun, and I'm not done yet! Please pull down Rev715 and see if you verify my results!

If you have multiple monitors, comparing games is easy, you can launch multiple Civ4 instances, with this extra argument in your startup shortcut:

"C:\Users\Afforess\Desktop\Sid Meier's Civilization 4\Beyond the Sword\Civ4BeyondSword.exe" multiple mod="Rise of Mankind - A New Dawn EXP"
 
I'm finding it quite hard to do adequate comparisons in the 60-128 turn phase of the game, using Rezca's 60 turn save as the base for the AI.

Basically it seems this is the point in the game where strategies begin diverging rapidly and the AI seems overeager to declare war on either Babylon or Zulu, despite being ~10 tiles away from their borders in both cases. The rapid gamespeed punishes the AI for such a long distance war, as by the time stacks arrive, the enemy has had ample time to beef up defenses, and wars end up just as financial drains, as stacks obliterate each other fairly evenly.

However - I don't think the AI should be declaring war this early. The moment troops set foot outside the friendly borders, unit supply costs jump up 20-30 gold per turn, sending a stable economy into a crash. I am looking into the AI financial planning checks when deciding warplans and I am not sure how robust they are. I am testing out some changes that will hopefully cause the AI to assume any war will cause them immediate financial losses, and then test if they can still afford it. I will report back - hopefully with more comparison data.
 
First off, thank you to 45* and Rezca. I picked Rezca as a benchmark to compare the AI against in some fine-grained debugging. In the first 60 turns, Rezca's save shows he has 3 cities and a score of 76. This is pretty good.

I ran a game with a debug DLL and let the AI play for itself for 60 turns. The initial results were not so great. The AI had only managed to found 2 cities, (a pitiful size 4 capital and a pathetic size 1 city) and had a meager score of 52. Rezca outmatched the AI by nearly 50%.

Save 1, Poor AI Run (60 turns in)

I began taking a look at the AI's actions in the Better AI log. Despite having only 2 cities (one of which was brand new) the AI had 7 military units. It was wasting a lot of production on military, when no one was even close by (only 2 others met, both far away).

I slowly walked through the code that determines how many defenders the AI needs. The code starts out with the assumption the AI needs 1 defender per city. Then an addition one for capitals. An additional defender for recently founded/captured cities. And on and on.

The result was the AI thought its capital needed FOUR defenders. Maybe later in the game this will be true. But at turn 60, no way. I added some logic to shortcut the normal defender additions for capitals & recently acquired cities in the early game. I hoped this would be enough. I recompiled and let the AI play from the start again.

Failure. The AI did not even expand past its capital. It kept trying to churn out wonder after wonder. It had a settler built, but was not moving it. It had built the settler about 20 turns ago, and it had never left, despite 3 military units in the capital. SO... the problem wasn't just wasteful military production. Why was the AI not settling with its settler? I slowly executed a turn at a time, walking through the AI_settle() code in the UnitAI. The AI settler puts out a contract for an escort, which is fulfilled. Then the AI settler hits a part of the code that tells it to retreat to the nearest city...What? The AI was breaking up its escort each turn. Only in rare cases (very close by, good city spots, or city locations on another continent/island) would this retreat check fail. I removed it. I recompiled. I loaded up the save. Next turn, the settler took off, heading to found a city. Problem solved. (Note: I did not make a save of this run, due to me advancing past 60 turns to debug the settler issue).

Take 3: I started the initial save again, with my last 2 changes. The AI built a settler after building an initial javileneer. It had a 2nd city in the first 20 turns. It grabbed Stonehenge. Then some more military. Then a third settler. Before 60 turns were up, the AI had 3 cities, a score of 78 (A full 2 points higher than Rezca!) and combined empire population of 11. Things are looking good so far.

Save 3, Good Run (60 turns in)

Things look better, at least early on. But could this game be a fluke? A few good rolls of the dice? I reloaded the start save and ran the AI again. From the start, in 60 turns the AI had again 3 cities, a combined population of 13, and a score of 86. Even better than the last run, and a full 10 points better than Rezca. So my changes are not a fluke. Early AI: A success!

Save 4, Good Run (60 turns in)

I'll be pushing the AI enhancements later this evening, and using Rezca's 60 turn save to run the next 60-120 turn batch of save games. ;)

Good work:goodjob: i have already noted that piece of code but i never removed it because i thought it is probably only used if no escort is available. You are very good in analyzing such things, my focus at the moment is on bugfixing and performance so i just merge these changes over to c2c.

45°38'N-13°47'E;13237167 said:
That's great Afforess! I remember having this problem in the past where AI wasn't expanding. It was definetely something I imported from C2C; I was able to remove a part of the code which was causing part of this problem but still AI wasn't expanding very much at the beginning of the game. Now I can see the problem, your fix is really good news! :)

That piece of code exists since AND svn-rev14 so this time it's the other way around;)
 
If you like that, then you are going to like some more AI bugs I have fixed (I will commit later today, after I get some sleep).

I found a situation where AI workers get "tricked" into thinking there is nearby danger, when there is none, causing them to sit and skip turns in their city.

I also fixed multiple issues with the AI not being able to correctly assess and disband units when it has financial difficulty. Frequently the AI will be saddled with too many units and the code that exists currently completely prevents it from disbanding units unless the unit has 1 or less experience. Considering that most units get *some* level of free experience in RAND, this means the AI can never disband units!

I also rewrote the code that determines the financial worthiness of wars. I am less certain about this, but I noticed the way the AI determined if a war was a good financial decision was absurd. The AI was taught that some wars could *earn* it more money. Ha.

And finally, the AI very drastically underestimates the financial pain the "gold per military unit" cost civics can have. I have corrected this.
 
Looking forward to the new changes to AI :)

A little flattered my save got picked for 'testing' purposes too :lol:


From what I've seen the AI in AND does seem to be a bit lacking in the early game. If they are left alone to build up during the Ancient and Classical and early Medieval, then they tend to end up pretty strong. If they can't expand fast enough or are provoked during that time - or if you expand faster, which isn't often difficult - then they get steamrolled during the post-medieval (I'll never spell that silly word right >< ) and early Industrial. Sometimes even before the Industrial rolls around!


On the other hand, I'd hope they don't expand *too* quickly during that time and end up in financial trouble!
 
Looking forward to the new changes to AI :)

A little flattered my save got picked for 'testing' purposes too :lol:


From what I've seen the AI in AND does seem to be a bit lacking in the early game. If they are left alone to build up during the Ancient and Classical and early Medieval, then they tend to end up pretty strong. If they can't expand fast enough or are provoked during that time - or if you expand faster, which isn't often difficult - then they get steamrolled during the post-medieval (I'll never spell that silly word right >< ) and early Industrial. Sometimes even before the Industrial rolls around!


On the other hand, I'd hope they don't expand *too* quickly during that time and end up in financial trouble!

I'm wondering, if its not too boring, if you could start from Rev720 and the 45* original save, and play another game on the same map? Your saves after 120 are skewed unfairly against the AI because Revmod was broken a few revs back, and you had no revolution issues. In addition, I am interested in how your play style changes with (hopefully) improved AI.
 
I'm wondering, if its not too boring, if you could start from Rev720 and the 45* original save, and play another game on the same map? Your saves after 120 are skewed unfairly against the AI because Revmod was broken a few revs back, and you had no revolution issues. In addition, I am interested in how your play style changes with (hopefully) improved AI.

Yeah I'll get it downloaded and play it. This time properly deleting the ini files so that it includes REV :lol:

I usually double up or triple up on military during expanding phases with Revolutions
 
Yeah I'll get it downloaded and play it. This time properly deleting the ini files so that it includes REV :lol:

I usually double up or triple up on military during expanding phases with Revolutions

If you wish, I'm pushing another update in half an hour.
 
45°38'N-13°47'E;13229136 said:
I'm still working on balancing the game, but I think the game will never be completely balanced for every style of play. Just for comparison, I'm uploading here the starting save for a blitz game I'm currently playing (rev708, but 710 should be fine as well). If someone wants to try it with the settings I'm using. Just make sure you rename your AND folder to "Rise of Mankind - A New Dawn EXP" (that's my experimental folder), or the save won't load. If someone wants to try it, I'd like him to post here saves of his game every 60 turns (60, 120, 180 and so on) to check how the game progresses in comparison to mine. Just curious on how people will play a game in comparison to my playstyle (only option that you might need to change is AI Flexible Difficulty under BUG option, which should be ON).

By the way, because you never can completely balance a game (with small exceptions) there is always a randomizing effect in play (e.g. random recoil in shooters, goodie huts, card drawing in ccgs, damage spread in mmos...), which evens out different tactics. You can consider this during your development of your mod.
 
Turn 60, 120, and 180 saves attached.


Was amused when I saw Genghis lose a core city of his to rebel-spawned Incans only for them to vassalize to the Siam many miles away on the very same turn. Currently they've "given up their independence" to Siam who now likely has to deal with not only the maintenance costs of a city halfway across the world, but also is running the risk of it rebelling again - I mean, it's miles away AND surrounded by Mongolian culture :rolleyes:



Game is definitely playing out differently than the first time around. Missed out on Buddhism by a few turns, and Naghualism is the only religion under my control. Shaka more or less expanded in the exact same way he did the first game though heh.
 
Hah so I had built this fort here a while back and came back many turns later to see a wandering Siam warrior had walked through it and "captured" it despite me having built it in the first place. :lol:

Now there's a patch of Siamese land that I can't work or settle on but the fort is unowned :crazyeye:


I suppose the only way to remove that fort now is to use a Spy to sabotage it?
View attachment 376025
 
Top Bottom