(CONFIRMED) Marathon/Espionage Bug

I don't know exactly how this program works which you wrote but it is hard to discuss with a program and it won't get us any further. I'll just do some calculations here and we can then discuss those. That will be easier and can help us find the exact point where we disagree. Our points of disagreement won't be hidden behind some programming lines. ;)

I assume that you'd like to see the following mission at marathon speed
8 unhealthiness for 3 turns, then 7 unhealthiness for 3 turns, then 6 unhealthiness for 3 turns, then ... like suggested in the 8-th post of this thread,
as opposed to the normal mission at normal speed:
8 unhealthiness for 1 turn, then 7 unhealthiness for 1 turn, then ...

Let's assume a size 20 city, with 20 :health: and 20 :yuck: and 0 surplus :food:
We need more assumptions to get any further. Let's say that the city uses one tile of 4 food, 14 of 2 food and 2 of 0 food (specialists, plains hills). We will of course use the high food tiles to stop the loss of population and sacrifice the low food tiles first.

Normal scenario:
City is size 20, 0 food in storage, 0 surplus :health:
Turn 0 (poisoning) City is size 20, 0 food in storage, 8 surplus :yuck:
Turn 1 City is size 19, 0 food in storage, 4 food surplus, 6 surplus :yuck:
Turn 2 City is size 18, 0 food in storage, 4 food surplus, 4 surplus :yuck:
(city won't starve any further)

Marathon scenario:
City is size 20, 0 food in storage, 0 surplus :health:
Turn 0 (poisoning) City is size 20, 0 food in storage, 8 surplus :yuck:
Turn 1 City is size 19, 0 food in storage, 4 food surplus, 7 surplus :yuck:
Turn 2 City is size 18, 0 food in storage, 4 food surplus, 6 surplus :yuck:
Turn 3 City is size 17, 0 food in storage, 4 food surplus, 4 surplus :yuck:
(city won't starve any further, but won't grow for a some time either)

The difference is not only that the Marathon city is losing 1 extra population point, but also that it will take a lot longer before it starts to grow again, so in this situation the mission is more than 50% more severe.

About the influence of the food in storage thing on the severity of these 2 spy missions:
I just don't see what food in storage has to do with ferment unhappiness or poison water supply. It's the growth mechanic in the game. Why should it determine the severity of a spy mission which ferments unhappiness or poisons the water supply? If Firaxis had related the severity of the mission to the amount of hammers in the present building project or the amount of research points generated in the city at the moment of the mission, would you defend that mechanic too? It all seems unrelated to me, but is made to be related by the way the mission is implemented.
 
If Firaxis had related the severity of the mission to the amount of hammers in the present building project or the amount of research points generated in the city at the moment of the mission, would you defend that mechanic too? It all seems unrelated to me, but is made to be related by the way the mission is implemented.


Well for the old sabotage mission, damage Was related to how many hammers had been invested in a project.

I feel that while it is somewhat imbalanced, as it is intended as an attack against the population of the game, it seems reasonable to include the population growth mechanism.

What I feel we are likely to get (and would Sort of settle for) is a simple 8 sickness/unhappiness for 8*speed turns with a decrease happening every Speed turrns (*essentially my model without the different effect during pop starvation) This does render it more severe on Marathon, but not as significantly as it does now. (maybe by Christmas something like one of our more complicated models will be in)
 
I don't know exactly how this program works which you wrote but it is hard to discuss with a program and it won't get us any further. I'll just do some calculations here and we can then discuss those. That will be easier and can help us find the exact point where we disagree. Our points of disagreement won't be hidden behind some programming lines. ;)

Fair enough. (All it does is make all these turn by turn calculations automagically and displays the data.)

The difference is not only that the Marathon city is losing 1 extra population point, but also that it will take a lot longer before it starts to grow again, so in this situation the mission is more than 50% more severe.

EDIT: You also have to take into consideration tile juggling. In a size 20 city, it's safe to say there are at least a couple 0 :food: tiles/specialists being worked and a couple more 1 :food: tiles. (Yes there are exceptions, but typically few.) We shuffled the 0 :food: tiles/specialists around to get to +4, but then as citizens begin dying, they will be the 1 :food: guys -- thus leaving us with a net of +1 :food: in the wake of their demise.

Knowing this, we can re-evaluate even the 0% food city to see the results indeed are the same:

Marathon scenario:
City is size 20, 0 food in storage, 0 surplus :yuck:
Turn 0 (poisoning) City is size 20, 0 food in storage, 8 surplus :yuck:
<-- we decide to "kill off" the Grassland Hill Miner and thus now have an extra :food: he freed up
Turn 1 City is size 19, 0 food in storage, 5 food surplus, 7 surplus :yuck:
<-- we kill off another Grassland Hill Miner
Turn 2 City is size 18, 0 food in storage, 6 food surplus, 6 surplus :yuck:
Turn 3 City is size 18, 0 food in storage, 6 food surplus, 5 surplus :yuck:
Turn 4 City is size 18, 1 food in storage, 6 food surplus, 4 surplus :yuck:

/EDIT

Even without the tile juggling, if you bump up the food stores to just 10%, you'll see the missions are equivalent.

Code:
Turn	Population		10%	Food stored
	MarathonEpic	Normal		Marathon	Epic		Normal	
										
0	20	20	20		18	180	9	90	6	60
1	20	20	20		14	180	5	90	2	60
2	20	20	19		10	180	1	90	0	58
3	20	19	18		6	180	0	87	0	56
4	20	18	18		3	180	0	84	1	56
5	20	18	18		0	180	0	84	3	56
6	19	18	18		0	174	1	84	6	56
7	18	18	18		0	168	3	84	10	56
8	18	18	*18*		0	168	5	84	14	56
9	18	18	18		0	168	8	84	18	56
10	18	18	18		1	168	12	84	22	56
11	18	18	18		2	168	16	84	26	56
12	18	*18*	18		3	168	20	84	30	56
13	18	18	18		5	168	24	84	34	56
14	18	18	18		7	168	28	84	38	56
15	18	18	18		9	168	32	84	42	56
16	18	18	18		12	168	36	84	46	56
17	18	18	18		15	168	40	84	50	56
18	18	18	18		18	168	44	84	54	56
19	18	18	19		22	168	48	84	2	58
20	18	18	19		26	168	52	84	6	58
21	18	18	19		30	168	56	84	10	58
22	18	18	19		34	168	60	84	14	58
23	18	18	19		38	168	64	84	18	58
24	*18*	18	19		42	168	68	84	22	58

On that, I won't try to argue against the validity of your statement of disproportion, because I've also noticed that inequality. Smaller cities and cities with no food or low food will see a greater detriment at Epic & Marathon.

Considering how extremely close the speeds come to equality by changing only the foment value, I take this to mean the current system is broke in its current state and only just barely broke in its "modified" state (changing value only).

I seriously think we're grasping at straws trying to use this disproportion (the 8 :yuck: over 24 model) to propose an entirely different game mechanic.

The conditions for disproportion are a lot smaller than it seems. The city has to be less than size 15 with no tiles to juggle (plausible with size 5-10 cities) less than 30% food in the food bar (basically starving or no Granary), less than +4 :food: surplus and no extra :health: to spare.

Not to defend Firaxis or to say this incomplete scaling fix is the answer, but how many cities really fall into all 4 of those categories? Nobody disputes the value of a Granary even now, so it's likely your :food: bar will always be between 50% - 99%. Every bit of city-placement strategy advises to have at least +4 :food: surplus in any city (typically worded as "you need either a Flood Plain or a Food Resource in the Fat Cross"). And, the presence of :health: resources is typically more numerous than that of luxury resources, which usually results in the smaller cities (even in the early eras) having an excess of healthiness stuck at the happy-cap.

Honestly, I just don't see enough cities falling into all 4 of those categories to merit requesting such drastic overhauls (especially in light of alleged issues with the AI's inadequate implementation of Espionage/Corporations/Teching.)

Making the foment value change can be done very quickly and will bring the system nigh to within perfect, which I think is more than adequate in the meantime while they dig deeper into the possibilities of completing the balance or repairing other, 'bigger' issues.

About the influence of the food in storage thing on the severity of these 2 spy missions:
I just don't see what food in storage has to do with ferment unhappiness or poison water supply. It's the growth mechanic in the game. Why should it determine the severity of a spy mission which ferments unhappiness or poisons the water supply? If Firaxis had related the severity of the mission to the amount of hammers in the present building project or the amount of research points generated in the city at the moment of the mission, would you defend that mechanic too? It all seems unrelated to me, but is made to be related by the way the mission is implemented.

And what, pray tell, does stockpiling food in a Granary have to do with 'growing people'? This is simply the mechanic used to simulate and regulate population growth.

It's been this way since the very first Civilization, so it only makes sense other game mechanics should work within these same bounds.

If you really want a good, RL explanation, the city's food storage has to do with how well it can cope with (un)natural disasters.

A perfect example is something you have probably no more than a mile from your house -- a water tower. If something happens to your city's water, you and the rest of the city will rely on the water stored in that tower. If there happens to not be any there (i.e., the food bar is empty), I guarantee your city will go through some hard times (at the minimum, 8 turns is 8 years ... that's a damn long drought).

It could also be looked at this way: the fomented :yuck: could be because the city's farms are poisoned/sabotaged -- leading the population to rely upon the city's food stores instead of the harvest. Since there is little / no food stored, people begin starving and dying.

Dependence upon the food bar seems perfectly legitimate to me and adds an interesting element to the game.

Where we agree (I think):

What doesn't add an interesting element is ...

  • ... the fact that Epic & Marathon are way past OP-borke.
  • ... the fact that even leveling out the foment values still leaves Epic/Marathon OP-borke proportionally for low-food cities (just not near as bad).
 
Could someone provide an step-by-step idiot guide to how we can edit out these two missions -especially the poison water 'nuke' kerrrrazy - please. Perrleeeezz.
 
Could someone provide an step-by-step idiot guide to how we can edit out these two missions -especially the poison water 'nuke' kerrrrazy - please. Perrleeeezz.

1) open .../Firaxis Games/Sid Meier's Civilization 4/Beyond the Sword/Assets/XML/GameInfo
2) copy the file CIV4EspionageMissionInfo.xml into your .../My Games/Beyond the Sword/CustomAssets/xml/gameinfo directory
3) open .../My Games/Beyond the Sword/CustomAssets/xml/gameinfo/CIV4EspionageMissionInfo.xml in a text editor
4) search for the mission you want to delete e.g.
ESPIONAGEMISSION_CITY_POISON_WATER or
ESPIONAGEMISSION_CITY_UNHAPPINESS
5) delete everything from the <EspionageMissionInfo> to the </EspionageMissionInfo> for this mission
6) save and exit
7) start a game, have fun ;)

This should do - I have not checked it though... But if I understand it correctly the game does not call specific missions from elsewhere. If it does not work or you want to revert simply delete the .../My Games/Beyond the Sword/CustomAssets/xml/gameinfo/CIV4EspionageMissionInfo.xml file...

Edit: DON'T edit the .../Firaxis Games/Sid Meier's Civilization 4/Beyond the Sword/Assets/XML/GameInfo/CIV4EspionageMissionInfo.xml file directly - if anything screws up you'll have to reinstall. Files in the CustomAssets directory can simply be deleted if not needed.
 
What if we made the cost of doing the mission not scale with game speed, and had the effect of the mission not scale with game speed?

Ie, on Marathon, you'd get +8 sick, +7 sick, +..., +1 sick, +0 sick after doing the mission.

After doing it 3 times, the city would end up taking roughly the same amount of damage. There would be some differences.

It is true that a city with next to no food and health would be hurt more than this than normal game speed: this is because the game does not refill your food box when your city shrinks.
 
If you really want a good, RL explanation, the city's food storage has to do with how well it can cope with (un)natural disasters.

A perfect example is something you have probably no more than a mile from your house -- a water tower. If something happens to your city's water, you and the rest of the city will rely on the water stored in that tower. If there happens to not be any there (i.e., the food bar is empty), I guarantee your city will go through some hard times (at the minimum, 8 turns is 8 years ... that's a damn long drought).
Why would a real-life granary empty (or half-empty) when the population grows?
 
@OTAKUjbski

Sorry that I didn't respond earlier, I didn't have a lot of time. Quoting your entire post would start to make this thread a bit unreadable.

I'll give another example of a large city, this time with a half filled food storage. Again at marathon speed, the city suffers more population loss. It is important to mention the available tiles for the city, so you'll know which low food tiles can be disabled for extra food once population loss occurs. I already did this in my previous post and you also did this in the edited part of your post. This is the exact same city as in the previous post except now it has a half filled food storage.

Let's assume a size 20 city, with 20 :health: and 20 :food: and a half filled food storage.
We need more assumptions to get any further. Let's say that the city uses one tile of 4 food, 14 of 2 food and 2 of 0 food (specialists, plains hills). We will of course use the high food tiles to stop the loss of population and sacrifice the low food tiles first.

Poisoning occurs at turn 0

Normal speed

turn | size | food storage | surplus health + surplus food
0 | 20 | 30 | -8
1 | 20 | 22 | -7
2 | 20 | 15 | -6
3 | 20 | 9 | -5
4 | 20 | 4 | -4
5 | 20 | 0 | -3
6 |19 | 0 | 0


Marathon speed

turn | size | food storage | surplus health + surplus food
0 | 20 | 90 | -8
1 | 20 | 82 | -8

12 | 20 | 12 | -4
13 | 20 | 8 | -4
14 | 20 | 4 | -4
15 | 20 | 0 | -3
16 | 19 | 0 | -1
17 | 18 | 0 | +1

You see that in the marathon case 2 population points are lost and at normal speed only 1.


I've explained in post 18, a while back why this occurs. Once the food storage empties, the rate of health increase (or unhealthiness decrease) at marathon speed is still a lot slower than at normal speed while the population decrease occurs at the same speed.

Of course, when a city with a serious health surplus or a city with a serious food surplus is hit by this mission, then the difference between Marathon and normal speed is not noticeable. The mission will just not hurt the city very much. With a 4 food/health surplus and a normal food storage from a granary, both cities won't decrease in population. It's not very useful to use the mission on such a city. But many cities will reach a fully grown state where they won't have any surplus and then these missions will hurt and will hurt more at marathon speed.

A slightly different remark: the ferment unhappiness mission will generally hurt more in a city at its happiness limit than the poison water supply mission in a city at its health limit. Losing 8 population for food generation will generally cost you far more than 8 food per turn. So it's a bit weird that both mission have an equal cost.

Some other posters have already said why it is weird that the food storage influences the severity of the ferment unhappiness and poison water supply missions.

a_civilian said:
Why would a real-life granary empty (or half-empty) when the population grows?

It's just the growth mechanism and the cycle in this mechanism shouldn't influence the severity of the poison water supply or the ferment unhappiness missions. It's especially weird with the ferment unhappiness mission.

Because a discussion tends to polarize the positions, I would like to add that the option we're discussing here (marathon has -8 healthinss/unhappiness for 24 turns and it decreases by 1 in 3 turns) is not very bad. It was already discussed in the first few posts of this thread and it's a reasonable first fix. However, since both spy missions are hopelessly broken at marathon speed at the moment, I don't see a reason to not completely fix them. Why should we be satisfied with a fairly good solution when better solutions are available?
 
I concur.

I went ahead and removed those two missions (simply delete the entries in the xml) and I like it.

/stuff
With this change - does this mean Marathon mode is kind of OK now?

Also
1) open .../Firaxis Games/Sid Meier's Civilization 4/Beyond the Sword/Assets/XML/GameInfo
2) copy the file CIV4EspionageMissionInfo.xml into your .../My Games/Beyond the Sword/CustomAssets/xml/gameinfo directory
3) open .../My Games/Beyond the Sword/CustomAssets/xml/gameinfo/CIV4EspionageMissionInfo.xml in a text editor
4) search for the mission you want to delete e.g.
ESPIONAGEMISSION_CITY_POISON_WATER or
ESPIONAGEMISSION_CITY_UNHAPPINESS
5) delete everything from the <EspionageMissionInfo> to the </EspionageMissionInfo> for this mission
6) save and exit
7) start a game, have fun ;)

This should do - I have not checked it though... But if I understand it correctly the game does not call specific missions from elsewhere. If it does not work or you want to revert simply delete the .../My Games/Beyond the Sword/CustomAssets/xml/gameinfo/CIV4EspionageMissionInfo.xml file...

Edit: DON'T edit the .../Firaxis Games/Sid Meier's Civilization 4/Beyond the Sword/Assets/XML/GameInfo/CIV4EspionageMissionInfo.xml file directly - if anything screws up you'll have to reinstall. Files in the CustomAssets directory can simply be deleted if not needed.
If you use custom assets will it load your completed game into the high score table when you finish a game?
 
If you use custom assets will it load your completed game into the high score table when you finish a game?

It should (of course there is the odd chance that something changed in BtS). If that does not work: create a mod directory, e.g.
...\My Games\Beyond the Sword\MODS\GreatNewSpiesMod\
then create the follwoing directory inside: \xml\gameinfo
then copy CIV4EspionageMissionInfo.xml into this directory and change it.
then load the whole thing as a mod - but then the HOF will definitely only show results for this mod...
 
It should (of course there is the odd chance that something changed in BtS). If that does not work: create a mod directory, e.g.
...\My Games\Beyond the Sword\MODS\GreatNewSpiesMod\
then create the follwoing directory inside: \xml\gameinfo
then copy CIV4EspionageMissionInfo.xml into this directory and change it.
then load the whole thing as a mod - but then the HOF will definitely only show results for this mod...

I just did a quick test game. Loaded into HoF and I "think" all went perfect. Didn't see the options... but I am curious:

Will the AI still be able to use those two espionage features against you (I'd prefer not)? I'm concerned all this edit did was eliminate it from the menu of choices for the human - not the AI.
 
Is there any word on when this is likely to be fixed? I play Marathon games and to be honest it's pointless me continuing playing until this bug is fixed. I was just in the middle of a game where I was doing really well and then my main unit production city got hit by the poison water supply. It's just crippling.
 
I just did a quick test game. Loaded into HoF and I "think" all went perfect. Didn't see the options... but I am curious:

Will the AI still be able to use those two espionage features against you (I'd prefer not)? I'm concerned all this edit did was eliminate it from the menu of choices for the human - not the AI.
No - this edit removes this mission for every player regardless of whether he is in front or within your computer ;)
 

With this change - does this mean Marathon mode is kind of OK now?

Also if you use custom assets will it load your completed game into the high score table when you finish a game?

Well, the missions simply are gone, so neither you nor the AI can use them. Whether that is "kind of ok" is something you have to decide for yourself. :)
It doesn't break the game, if that's what you mean.

And yes, it will still be in the high score table.
 
For those of us who don't follow the maths, but would like to play with the missions enabled but as fixed as possible, what values should we put where for Epic/Marathon speeds?

Cheers :)
 
For those of us who don't follow the maths, but would like to play with the missions enabled but as fixed as possible, what values should we put where for Epic/Marathon speeds?

Cheers :)

That is not easy - the whole thing scales with speed but if you change the scaling in the Civ4GameSpeedInfo.xml you will end up messing with the scaling for ...
Spoiler :

Conscripting Units of all things :crazyeye:


But if you want you can change the value of
<iHurryConscriptAngerPercent>
which is 300 for Marathon, 150 for Epic, 100 for Normal and 67 for Quick
However - they use the same modifier to determine the costs of all spy missions - so by reducing them you would also make them cheaper.
There is only one real solution to this: programmers have to split the duration and the effect of those missions and give them a separate modifier in the Civ4GameSpeedInfo.xml instead of abusing a totally unrelated modifier :)
 
Sorry about this bug.

The patch will simply remove game speed scaling from those two espionage missions. They will always result in 6 unhappy/unhealthy for 6 turns.
 
For those of us who don't follow the maths, but would like to play with the missions enabled but as fixed as possible, what values should we put where for Epic/Marathon speeds?

Cheers :)

The normal value is 8 for normal. I would go for 7 for epic (muliplied by 1.5 that is 10) and 4 or 5 for marathon (multiplied by 3 that is 12 or 15).

The amount of food destroyed by the epic mission would be 55, which is 1.52 times the amount of the normal mission which is 36. That is a fairly good scaling number.

The amount of food destroyed by the strength 12 marathon mission would be 78, which is 2.17 times the amount of the normal mission. The amount of food destroyed by the strength 15 marathons mission would be 120 which is 3.33 times the amount of the normal mission.

Note that the severity of the marathon and epic mission is slightly increased compared to the normal speed mission because population dies at the same rate at the slower speeds.

(Disclaimer: the amount of food destroyed is a theoretical number used for comparison. If the city doesn't have that amount of food in storage, then it of course can't lose that amount of food and loses population instead.)

You can only set one value in the xml file and it is multiplied by 1.5 for epic speed and 3 for marathon speed. So you'll have to reset it before you play the game so that the right value is used for the gamespeed that you're going to use. I guess that if you change the value halfway through a game, that the value ingame will be adjusted for any mission that will be performed in the future.
 
Back
Top Bottom