Programmed Irritation

Right then, I think it's about time we all had a little testaroo.

Here's a pitched battle I've prepared for our testing pleasure, one that should provide lots of lovely and varied results from all our different computers.



The game is over, there's no Irritation to be gained from hindering my progress further. Because I had no need to build many boats I only had space for 10 Units in my fleet of 4 boats and I endeavoured to send my stock of Riders to the Ottoman Island for some battle testing. The first group of 10 got fairly well hammered by Archers and Horsemen, The next batch a lot less, and by the time I had all my troops over there was only token resistance.

So I have neatly separated all the injured/Elites/odds into one pile aside from the target city and left a nice stack of 16 Veteran Riders poised at the target city's gate. The the city in question is a Town which contains one Elite Spearman and 7 Veteran Spearmen. It is not a Capitol and has no additional hindrances.

Your Task:

Use the 16 Veteran Riders to attack the Town until all the defenders are dead and record the stats of the Riders you are left with thusly:

How many Riders died
How many Riders were just injured
How many hit points each of the injured Riders had left (3,3,3,3,2,1,1 for example if 7 were injured)
How many Riders became Elite

Do this exactly 5 times and post your results for each victory.

I have already done this but I shall hold back my results for a while in order to prevent pre-emptive arguing.

Here is the save file:

View attachment 16vetRidersStart.SAV

& good luck!
 
Why are we running the test 5 times? The game must have preserve random seed enabled because I ran the test twice and got exactly the same results both times right down to my elite promotions (and an elite promotion for one defending spear). This is far too small a dataset to base anything on. If we could run the test over and over and build hundreds of results, we might start to get somewhere.
 
Preserve Random Seed defaults to 'on' I think. Can it be toggled for an in-progress game by changing one of the values in Conquests.ini? I don't see a variable called RandomSeed in there, but there is a huge long string of bits, called Preferences...
 
Preserve Random Seed defaults to 'on' I think. Can it be toggled for an in-progress game by changing one of the values in Conquests.ini? I don't see a variable called RandomSeed in there, but there is a huge long string of bits, called Preferences...

Honestly I have no idea - I'm not good enough at modding to know. :) What I did do is create a test world and gave myself 25 swords (3/3) and my enemy 25 spears (3/3) and started testing. I have the game frozen at the point were my stack of swords reached their stack of spears and I ran 100 battles. They are on grassland and not fortified because they ended their movement by stepping off the road that was created between our two capitals. Preserve random seed is turned off. :p

The combat calculator shows expected results as 64.2% in favor of my swords. Actually results were 67 wins out of 100 (67%). Pretty close. Examining the set I see the longest run of wins as 12 in row. Next was a run of 7 and 6. The defenders have a run of 4 wins wth the next closest being 3 (the rest are 2's and 1's).
 

Attachments

  • Test1.SAV
    34.5 KB · Views: 60
They're correct in that you need to have preserve random seed off Buttercup for us to do such tests. That said, good try, and it looks like you have provoked some actually testing here. You might want to note that if you ever play for the HoF or an XOTM competition you have to have preserve random seed on (not that you can change it in XOTM... just that you will have it on).

One of the calculators indicated that the probabilities of a rider or knight-type unit winning differ from an equivalent hitpoint medieval infantry due to the retreat factor.
 
Has anyone actually figured out with certainty how the combat calculations work?

Yes. Game program determines the AI will win the round and the AI wins the round. Game program determines the player will win the round, the player wins the round. ;)
 
Why are we running the test 5 times?

Ah, the idea was 'share' the workload so that no-one had to get chronically bored, lol.

preserve random seed

This is interesting. I believe this can be circumvented by having a save a way back a bit because I've certainly had radically different results when I've gone back a few turns with a reload. Could I set up a scenario that required a few turns to achieve a battle point and still garner different results? How many turns is this 'seed' preserved for?

The Swordsman Test:

I like that this test has taken place :goodjob: , however, what we are looking for is, firstly, In-game scenarios and, secondly, a comparison between Irritating inducing encounters (where the battle has a greater significance) and non-Irritating encounters. My second test was going to be from a currently active game that had not yet been won. and, thirdly, it must involve the taking of a city because determining the Irritation level of winning/losing a land battle is a heck of a lot harder to determine and generate, even more so now that we might need to go back a few turns in order to circumvent the Random Seed.

And what I'm looking for is not specifically averages (though this does have significance) but rather seeing just how 'extreme' we can get a result and the extent to which 'extreme' results are more common or less common than their extremity suggests when attached to battles that are significant/non significant.

Also, from a very left-field perspective, is the first attempt, before any reloads, *always* a consistently significantly different result to all subsequent results.
 
If you play enough games, something that happens to you 0.8 % of the time (roughly 1 in 125) is going to happen to you quite a lot.

Has anyone actually figured out with certainty how the combat calculations work? I've seen several "combat calculator" utilities, but even with those, there was no absolute certainty they had the math right. They were created just by people running a lot of different battles in different situations and doing there best to pull out what they could from the data based on known factors.

Yes, I think you are quite right. One thing that I am never really sure about is whether the defensive strengths are rounded or not. And if they are rounded, how?
 
Buttercup said:
This is interesting. I believe this can be circumvented by having a save a way back a bit because I've certainly had radically different results when I've gone back a few turns with a reload. Could I set up a scenario that required a few turns to achieve a battle point and still garner different results? How many turns is this 'seed' preserved for?

You almost surely didn't fight the exact same sequence of battles. 4/4 knight vs. 4/4 musket followed by 3/3 knight vs. 4/4 musket will not give you the same results as 3/3 knight vs. 4/4 musket followed by 4/4 knight vs. 4/4 musket. The total number of rolls is not necessarily the same in both cases. If you have preserve random seed on when you start the game, unless you can find some way to shut it off, it will stay on the entire game. The game does NOT shut it off at any point.

You need to start a game, make sure you have "preserve random seed" off, and then play the game out to the point where you want the tests to get conducted.
 
Ah, the idea was 'share' the workload so that no-one had to get chronically bored, lol.

Ah, my mistake. But we'll all have the same experience! ;) As far as I know, the preserve random seed will carry over in the save. That is how training day games work with 'mentors' following the actions of the 'new players' for the same results.

In order to build meaningful data I think that the test would need to be repeated for units with the same health and the same terrain. So if you have a stack of swords as in my example attacking a stack of spears, they all need to have the same characteristics. Mixing different units and health will make creating a meaningful dataset difficult and analysis even more so. A criticism of my approach, which was done for efficiency (of my time), is that I decided to run the test using stacks of units with identical characteristics. A purist might insist we use the same units by reloading 100 times.

The Swordsman Test:

I like that this test has taken place :goodjob: , however, what we are looking for is, firstly, In-game scenarios and, secondly, a comparison between Irritating inducing encounters (where the battle has a greater significance) and non-Irritating encounters. My second test was going to be from a currently active game that had not yet been won. and, thirdly, it must involve the taking of a city because determining the Irritation level of winning/losing a land battle is a heck of a lot harder to determine and generate, even more so now that we might need to go back a few turns in order to circumvent the Random Seed.

And what I'm looking for is not specifically averages (though this does have significance) but rather seeing just how 'extreme' we can get a result and the extent to which 'extreme' results are more common or less common than their extremity suggests when attached to battles that are significant/non significant.

Also, from a very left-field perspective, is the first attempt, before any reloads, *always* a consistently significantly different result to all subsequent results.

I think this poses some interesting questions but I don't know that it supports the idea of an irritation program. The test should be as valid as any 'in game' test. In order for this to not be true we need to theorize that the game somehow knows the difference between a real game and a test game. We could hypothesis that the Irritation Program does not start until after a certain point is reached in the game – for example a number of turns or when a tech is researched. Or that it is more of a triggered program such that it executes at a certain time or certain dates, etc. The main issues with advancing that criteria is 1) proving it exists will be very difficult and 2) how likely is it that this programming exists considering the other limitations to programming in the game. There could be many other options but the point is that the more ‘working parts’ the theory needs, the less likely it is to exist, in my opinion.

The example above also demonstrates the necessity for a large dataset to establish a pattern. Even the test I ran is a limited dataset but I would consider a dataset of at least 100 to be a minimum for meaningful discussion. I wouldn’t want to draw any conclusions without at least 100 data sets (10,000 calculations). For example, in my testing I specifically called out a win streak of 12. The statistical chances of this turn out to be 0.5%, which is a 1-in-200 chance (even less likely than the 3 horse example you provided). The win streak of 7 is (roughly) a 4.4% chance while the 6 win streak is 7%. If I looked at only a small dataset I might have seen only these results and concluded my success rate is closer to 100% rather than 67% which the extended dataset established. Likewise, the 4 losses in a row (the chances of this occurring are about 1.6%) would be seen as a 0% success rate.

The problem with small datasets is that it is too easy to take them out of context. I might have completely discounted the win streak of 12 because I ‘expected’ the sword to win (3 attack vs. 2.2 defense). However when I lost 4 times in a row I would have wanted to call shenanigans. However, when we look at the total dataset it is clear that the results were within the expectations predicted by the combat calculator based on our knowledge of the RNG (in whatever form it exists). That is what Spoonwood meant about bias and selective memory (IMO, not to put words in his mouth).

Statistically I don’t see any relevance to seeing how ‘extreme’ we can get. Mathematically speaking, something that has a 1-in-1000 chance of occurring will eventually occur. So long as the actual results match the predicted results on a large scale, the deviations are just that – deviations. Nothing more needed. To put this in more obvious terms, in the 3 horsemen win scenario, the chances of their success are (roughly) the same as if you dug out 3 six-sided dice from a box game, rolled them, and came up with all 1’s. You can try this at home. It is really not as astronomical as the numbers make it sound.
 
Ok, very next game, no huge wait for the next miracle battle results to come along. Here we go:

My fortified in a town spearman dies to one archer. Another town, two archers beat my fortified in a town spearman. I try to retake the first town, no archers remain it's now oane spearman. I attack with a swordsman and a medieval infantry. I die. I attack again with two medieval infantry, I die.

Later on one swordsman lands on my island, it is not fortified, i have two medieval infantry die attacking it and one swiss pikeman also dies trying to finish it off on the redline.

I quit the game because it's SPAZ.

The purpose of these pointless island drops is to cripple war weariness and is purely an irritation device designed to slow down progression.

The game is a complete shambles.
 
Ok, very next game, no huge wait for the next miracle battle results to come along. Here we go:

My fortified in a town spearman dies to one archer. Another town, two archers beat my fortified in a town spearman. I try to retake the first town, no archers remain it's now oane spearman. I attack with a swordsman and a medieval infantry. I die. I attack again with two medieval infantry, I die.

Later on one swordsman lands on my island, it is not fortified, i have two medieval infantry die attacking it and one swiss pikeman also dies trying to finish it off on the redline.

I quit the game because it's SPAZ.

The purpose of these pointless island drops is to cripple war weariness and is purely an irritation device designed to slow down progression.

The game is a complete shambles.

Why didn't you use more artillery units? (it seems like you didn't use any). Again, you win faster by winning more battles in general, not by rushing to a military victory and forgetting about artillery type units. Unless you have multiple armies (and even after then), they can definitely help. You wanted real game testing right? So why not use artillery type units, and also note the probability of bombardment successes?

What about the rest of the battles you fought that game?

This also doesn't prove anything about the game as complete shambles. You haven't indicated anything about the hitpoints of the units you attacked or those you attacked with, or the terrain you attacked on and got attacked on (including the attacking/defending across a river modification), or anything about having or lacking city walls, or what happened in the rest of the battles in that game. Didn't you see all those modifiers in the combat calculator? And even after that got pointed out you make a vague post like this and expect to get taken seriously?

This combat calculator might work out better here. But, since you've now made a vague post like the above after you've had indications that you need to provide more information, it comes as reasonable to doubt your sincerity Buttercup.
 
Tell me about the Archers Spoonwood.

The Swordsman was on flat plains, not fortified. The Town in question has NO ADDITIONAL DEFENCES OTHER THAN IT BEING A TOWN I THINK I MIGHT HAVE NOTICED AND BEEN AWARE IT IF THERE WERE ON A RIVERED HILL BEHIND EVERY MODIFICATION KNOWN TO THE GAME. eDIT: OOPS, CAPS LOCK :/

It's a joke, you can't have 2 Catapults at every location an AI might drop a Unit.

I can't believe you're still hammering that point.

I had Catapults, stacks of them.

The AI knows where they all are. The AI knows where to drop Units. It knows every weak spot to the smallest detail.

There's something called 'an economy', it LIMITS the amount of Units you can field, losing 7 Units on stranded islands IS JUST ABOUT THE LIMIT YOU CAN COMMIT TO THESE PLACES - AND THE ai KNOWS THAT, THAT'S WHY IT LANDED THE MIRACLE UNITS. Edit: OOps CaPs LoCk :/

Christ almighty.
 
My fortified in a town spearman dies to one archer. Another town, two archers beat my fortified in a town spearman. I try to retake the first town, no archers remain it's now oane spearman. I attack with a swordsman and a medieval infantry. I die. I attack again with two medieval infantry, I die.

Later on one swordsman lands on my island, it is not fortified, i have two medieval infantry die attacking it and one swiss pikeman also dies trying to finish it off on the redline.

I would find situations like that all the time in games. These were modified games where att/def and hp stats had been heavily moddified in units, and the odds against AI winning was greater than in a standard game. At the time I thought there was some sort of modifier to the RNG that would kick in randomly and favor the AI, but your idea about an "irritant" program sounds possible, too. It would explain the periodic AI superman units which are highly irritating.
 
The AI knows where they all are. The AI knows where to drop Units. It knows every weak spot to the smallest detail.

Yes, I agree with that. I can't tell you the number of times I've launched a war, and thought I had all the towns on my frontier defended properly.

Nope. I missed one, and that's the one where the AI sent its horsemen or knights.
The "threat assessment" or "enemy weakness assessment" portion of the AI programming seems to be very good. It seems to like invading my islands, because there are sometimes resources there ... most often, it's because I skimped on defenses there.

When attacking, the AI will send a lone spearman, gallumphing along, looking for workers that I had assigned to road building and forgot to pull into safety. It doesn't attack my cities (and would lose if it did), but it will pillage my luxuries or grab workers, and isn't easy to kill if the majority of my forces are 4 squares away, pressing the attack.

While I understand the hypothesis of programming logic that is designed to irritate the human, I'm more comfortable with a hypothesis of "knowing all the weak points." In my game last night, I bribed AI forces to attack another AI that had DoW'ed on me when I wasn't really ready. I saw lots of cases where the Maya left stragglers, and the Arabs picked them off... ignoring other strategic goals to do so. This became especially evident, when (as so often happens in the latter stages of an AI invasion) the entire invading force was composed of onsie-twosie stragglers.
 
Buttercup said:
Tell me about the Archers Spoonwood.

What about the archers? A fortified 3/3 spear in a town with no walls on flatland vs. a 4/4 archer has a 49.15% chance of winning. In other words, the archer will, on average, will win the battle.

Buttercup said:
The Swordsman was on flat plains, not fortified.

So what? Again, not enough information.

Buttercup said:
I had Catapults, stacks of them.

Did you? For all we know you might not have played any game where these things happened at all. Again, not enough information, nor any save.

Buttercup said:
The AI knows where they all are. The AI knows where to drop Units. It knows every weak spot to the smallest detail.

If you have your capital on the coast you can take advantage of this by never leaving any units in your capital. Consequently, the AI will land units next to your capital. So, you leave a stack of some artillery units and some attackers near the capital for getting rid of the AI units.

Buttercup said:
Christ almighty.

Why do you think someone will just offhand believe you when you make vague reports like the OP, they get pointed out as vague, you continue to make vague reports, they get pointed out as vague again, and yet you continue to provide another vague report after that? Like for your last supposed example you write
Buttercup said:
Later on one swordsman lands on my island, it is not fortified, i have two medieval infantry die attacking it and one swiss pikeman also dies trying to finish it off on the redline.
Well, there do exist situations where the medieval infantry are not actually favored. A 3/3 medieval infantry attacking a 5/5 unfortified sword on a hill (no barricades or fortresses) has a 35.934% probability of winning. Heck, even a 4/4 medieval infantry attacking such a sword on a hill only has a 52.721% probability of winning. So, what you've written doesn't really prove anything at all, as we simply don't even know if any of the individual battles you fought had unlikely results in any particular case.

And again, what about all the other battles you've fought... and what happened with those results? I mean... it comes as a real "irritation" when you get an MGL within your first 5 elite victories, or it comes as an "irritation" when you get an SGL on your first or second tech researched. Plenty of those fast, lower level especially, HoF games rely on "irritation"... indeed.
 
At the time I thought there was some sort of modifier to the RNG that would kick in randomly and favor the AI, but your idea about an "irritant" program sounds possible, too. It would explain the periodic AI superman units which are highly irritating.

I'm now absolutely convinced that the AI tactics tie in with War Weariness rather than specifically combat. I've called it tactics but superman miracle Units can't really be called tactics, it's more accurately an AI-only exploit.

The "threat assessment" or "enemy weakness assessment" portion of the AI programming seems to be very good.

Yes indeed, and I'd go so far as to say it sometimes knows what we're doing before we even do! Lol.

How this game panned out in fine detail:

Monarch. Large Archipelago. Playing as the Dutch (for food bonuses if stuck on a desert & no river start, which I was).

My island turned out to be relatively small. Not to worry, I thought, I've won on Regent from starting on an 80% Jungle tiny island before. So I start pumping Settlers. While I'm filling up my island I make a few Curraghs to see what else is about. I immediately find two islands next to mine, one almost pure Mountains (directly to the south), one pure Grassland (directly to the right). Both could cope with either 3 or four Cities. I immediately start planning for their settlement.

A couple of turns later I discover another island is adjacent to the Grassland island, a large one with another Civ on it. It's Portugal :( and I immediately realise I'm on for an early Seafaring competition. Not to worry, I have a huge tech lead and will probably have a good time advantage. Oh how wrong I was.

I had soon filled my island (which had two cows on Grassland right at the furthest point from my capital) and endeavoured to land a Settler at the southern most point of Portugal's island which, by careful application of cities, I could culturally link up with the Grassland island and my main island.

Meanwhile, my Curraghs were still exploring and I found I had the Maya to my north (relatively, but not dangerously, close) and the Zulu to the right again of the Portuguese (again, close, but not dangerously close). Needless to say, none of them had anything I wanted after the initial exchange of techs and I put them out of my mind.

When I landed my Settler on the Portuguese island, landing on the spot I wanted to settle, what should I find waiting? I find a Zulu Impi and a zulu Settler literally adjacent to my Settler/Warrior. Not Portuguese, Zulu. They moved into view in the interturn after landing. Luckily they were being harassed by Barbarians and I managed to make my city the next turn. I start building a Temple to ensure it never falls victim to a cultural conversion.

Now for those other islands. In a mere couple of turns I have a Settler on a boat and heading for the Grassland island. My boat is two squares from landing and in the interturn a Portuguese Galley comes steaming out the fog and lands a Settler on the island. Undeterred I land my Settler and make the first connection to the currently isolated city on the Portuguese island. The Portuguese settle at the northern-most tip of the Grassland island. I get the final spot which does indeed link me up culturally all the way from my island to the Portuguese-settled city.

Likewise, at the same time, I'm in the process of making Settlers to land on the southern Mountainous island. On the turn before my Settler is ready to set sail, a Portuguese Galley comes roaring out the fog and lands a Settler/Spearman on the northern most tip of this island. I end up getting the two southern-most position, the Portuguese the two Northern-most positions.

While this is going on the Zulu grab an island to the north of the Portuguese, an island with Incense. This island is so close to the Portuguese land mass and so small it would be the equivalent in context to Manhattan Island in the US or the Isle Of White in Great Britain. While all this is going on, I'm starting to spam Catapults, Swiss Pikemen, Medieval Infantry, Galleys in preparation for the invasion of Portugal and the 'neatening up' of the two smaller islands.

Irritation points so far:

Once again, three different Civs, all running at different speeds with different terrain hindrances/benefits, all manage to land Settlers AT EXACTLY THE SAME TIME.

The Portuguese appear more interested in undefendable Irritation city placement than actually, initially, settling their own damn island, even when Luxury Resources are at stake.

Back to the unfolding events:

A few turns after buying my Temple and expanding the borders of the city on the Portuguese island, two Zulu Impis come wandering into its borders. I ask them to leave of declare war. They declare war. They die.

The very next turn a spam load of Portuguese Units appear from out the fog. I am about to lose my foothold on the Portuguese island. I ask the Portuguese if the want to ally against the Zulu for a tech and they accept. Then the next turn they invade my city and declare war on me.

At the same time the Maya make a demand for 'this-that-or-the-other' and I tell them where they can stick it. The Maya declare war.

The fairly large stack of Catapults, Medieval Infantry and Swiss Pikemen are now having to be separated all over the shop to cope with an almost unceasing bombardment of single Unit drops left-right-and-centre and the planned invasion, which was about 5 turns from landing in the borders of my pre-prepared foothold is now delayed by 20+ turns, my War Weariness starts stacking up to the point where, by the time I do land, I am running an economy of 10% Science, 40% Luxury, 50% Tax.

It is at this point where the 'Miracle' Swordsman lands on the fully conquered Grassland island and survives a triple assault from an Elite Medieval Infantry, Veteran Medieval Infantry and Veteran Swiss Pikeman. The Maya never showed up but the Zulu were quite happy to drop Irritants here and there at the worst possible moment.

I would have been delighted to declare peace with the Zulu, but by that point I was in the catch 22 of needing their War Happiness.

Some additional Irritation points:

The city that the Portuguese settled on the Grassland island stayed at size 1 for 'ever' whereas the cities the Portuguese founded on the Mountainous island (settled on Tundra) very quickly rose to size 2. This was deliberately done to either make me build yet more Settlers or delay my ability to capture and retain the city which the AI, obviously, knew was going to be an easy take.

I still find it an utterly infuriating aspect of the game that, even when a whole Age in technological advancement, one still can't produce any naval vessel (Unique Units aside) which can be 'guaranteed' (cough cough) to take down a Galley. Having to plan the 'sacrifice' 3 or 4 Galleys for each one attacked is utterly crazy, especially when AI Civs can make them in a couple of turns. Naval dominance should be an option for any Age, not just Industrial+
 
Buttercup, when your Galley comes across an enemy Galley, stop and fortify. Let them attack you. See if you get better results.
 
I thought I read on this forum that fortifying at sea gives no benefit?

Maybe you did, I'm not sure. :)
I believe the defender in combat normally has the advantage and fortifying seems to help me.
 
Top Bottom