BLIGHT Still Broken?

The AI is terrified of unhealth.
Furthermore, they also tend to trade a lot more with each other.

The result is that they tend to have more health resources and this, combined with the fact that the AI puts extreme priority on building health buildings makes the effects of the blight be much weaker on the AI.


Coincidentally, this is quite similar to my own playing style and I have newer been crippled by a blight, ever.

I didn't know that about the AI, and, in fact, I often find they do a poor job of protecting improvements in general and are more inclined to focus on building units rather than health buildings.

Anyway, even if they had the max (and I had plenty too), if Blight affected them the same way, their city of pop 10 would have minimum 50 unhealth. Now, I just don't see them having enough to cover THAT and show no starvation or unhealthy in the city as you can see in the screenshot. That makes it clear that they are not getting hit equally with Blight.

All I am saying is let's either say Blight affects the human player differently, or have it REALLY affect both human and AI players equally. It is not that way now.

The 3 per pop unhealthy you get with Blight might be a bit harsh (especially with the current unhealthiness of the mod), but I can live with that too - you just have to realize you are going down and will stay there awhile before recovering. However, the AI needs to get knocked down too IMO.
 
Just wanted to chime in and say I agree there is an issue with blight when looking at Human vs AI. If that is bad or not is a different discussion :)

Currently Blight hits me WAY harder than id does the AI... could it be because of a health bonus they get from difficultly level? If they are at "normal" then they get a larger bonus than humans do. If you are allied with an AI can you look at its Health vs Unhealth in its cities before and after blight hits? Start a custom game, started allied and do always at war to ensure there is no trading with anyone but you.
 
The blight can not check if the player effected is Human or AI.
Simply becouse the code contains no such check.
 
So the entire effect boils down to this: Random value between 0 and 14, plus population, minus health from buildings. That is IT. It is added to all non-Infernal cities.


The only possible way it could hit a player harder is if it fires multiple times, but I have seen nothing in the code (and believe me, I have looked) that would lend credence to that theory.

My own belief? Your cities are larger, and you focus less on Health buildings than the AI. This automatically causes your cities to be hit harder... And that is completely within the bounds of the system. Hell, it's even intended that way.

Blight must be hitting players more than once then. I have a screenshot with 68 blight in a 25 pop city, see this post.
Maximum possible blight accordings to the code should have been: 14 (random) + 25 (pop) - 2 (from buildings) = 37
That screenshot was from a 1.20 game, but afaik the blight code hasn't changed in 1.30, right?

And look at the third screenshot in the first post of this thread, 25 blight in a size 8 city, that should be impossible as well, maximum should be 14 + 8 = 22.
 
The blight can not check if the player effected is Human or AI.
Simply becouse the code contains no such check.

No one is questioning your interpretation and explanation of the code, Purple.

What is being questioned is what shows up in actual gameplay. Why is one civ affected by Blight while others are not?

Now, maybe it is true it has nothing to do with human player vs AI player. However, I have played many 1.23 games and now 7 1.30 games and I have never avoided being hammered by Blight. Contrast this with AI civs that are clearly totally unaffected by it.

Something is wrong somewhere, and if it isn't the code, what could it possibly be?

I think the fact that a number of RiFE players are reporting this Blight issue here should tell you it is worthy of further study and testing.

Again, not every game sees Blight - maybe only 10% of the games get it. So, this can easily be overlooked. However, if you get it, you will know there is something wrong. Just open the WB and look at what is happening to other civs in the game, or just watch what happens to the scores.

IMO it can be a game-breaker as you fall behind in production, research, Wonder building, GP pts, etc. Once you drop down to that pop of 1 as I always seem to do, you might as well have been hit with yet another Illian Stasis worldspell. Just like that %$#@! worldspell you can recover, but some things (like Wonders, certain heroes, etc.) are snapped up by unaffected civs while you wait for your pop to grow again.

I'd much rather deal with the Four Horsemen than have a Blight that affects me while not affecting other civs in the game.

Oh well, I hope others get a chance to have Blight in their games so we can see what they have to say. :)
 
Then please explain for me how a size 8 city can get 40 blight unhealth. Apparently I fail at math.

Meh. The issue is that it hits multiple times while the counter hovers around 30. I had blight hit at turn 229 and then again at turn 230.

... But I only got the flavor text about it once, after the second hit at 230. Maybe Blight hits at the end of your turn and then the beginning of the next? [Edit] Yes, I think that is definitely what happens. I destroyed the Elohim on turn 229, razing their final city, so the counter hit 30 during that turn. The damage to my units occurred after I had done a few other things (in this case, summoned some ice elementals), still on turn 229, but then hit again on turn 230, after which I got the popup flavortext about Blight.
the code for blight doesn't show AI or player... only how to calculate the blight...
But there might be there is a code somewhere assigning blight once more to player. Maybe, on argsList[1], the player's civ is counted 2times ? or 3times ?.

On this subject I think this post I'm quoting might have the anwser. Maybe the blight mechanics are applied to player when 30AC is reached (maybe argsList[1] is only the player as only him is playing")... and then at the end of turns, it is applied to all civs, players counted, as then, all civs are played by the computer and even the player (research, prod...Etc) (It may mean that in a turn player plays 2 times : playing turn then AI civs then players production. Then the player might be touched 2times by Blight.).
On the other hand it might be another wrong line of code somewhere else.

@PPQ : you are right, code do never lie and whats not codded cannot happen...
but on the other hand, if facts and theory differ, either the facts are wrong (and falsificated) or the theory forgot to take something into account.
 
Curiously it appears like the Blight is working properly sometimes:

I started a game as Sheaim specifically for the sake of the Blight, and when I got the Blight for the first time it appeared to be working the way it should, my size 10 capital got ~11 Unhealth from Blight, somewhat low but easily possible if I got lucky with the random number.
Sadly my Rosier was killed by a Svart Ranger on the same turn so I reloaded the last autosave. The AC increase must have been caused by an event the AI got size this time the Armageddon Counter dropped under 20 rather then go over 30 and I didn't get the Blight.
Quite a few turns later the AC once again rose above 30, I'm not sure what was the cause but chances are that it was my doing. This time I got +35 Unhealth from Blight in my size 12 city despite the theoretical maximum being 26. Screenshot attached.

It appears there really is something strange going on with the Blight...
 

Attachments

  • Civ4ScreenShot0015.JPG
    Civ4ScreenShot0015.JPG
    194.1 KB · Views: 76
that would be coherent with my reasonning :
when the AI pushes the AC at 30, the blight works correctly,
When the player pushes it to 30, it is counted double/triple for the player.
 
One more question on this:

Why assign a RANDOM number for the Blight? Why not have a FIXED number so you know what to expect?

Now, it only adds to the confusion IMO.

Also, not a code reader, does the random number differ with each civ? If so, that might be a reason why I get hammered (bad luck with the number) and an AI civ is largely unaffected.

However, if everyone is assigned the same random number for the Blight, then something isn't working right.
 
It looks to me like each CITY gets its own number. Which is far too many chances for random numbers for the player-crippling to be coincidence. Now I usually don't get blight unless I have the option checked for double changes to the counter, but thetwo times I remember getting blight in 1.3, the first time (Ophelia, Bannor) it hit me hard, but not too hard. Most of my cities lost a few points of population, but it was nothing game-breaking. The second time (Esirce, Grigori) it completely crippled my economy bringing ALL my cities to 1 pop.
 
I too have newer seen a crippling blight.
The worst thing that ever happened to me was the loss of about 50% of my population.
 
When I had blight hammered on me (vanilla FFH) I didn't suffer too much : all big cities went to half pop.
But I was never the one that pushed the AC past 30.
I'll try it nex time I play ....
 
One more question on this:

Why assign a RANDOM number for the Blight? Why not have a FIXED number so you know what to expect?

Now, it only adds to the confusion IMO.

Because predictable catastrophes would be incredibly boring?
 
Problem solved. Blight would occur twice but only if caused by a human. The problem was this:

Blight occur for the human. Game launches a popup.
Blight occur for the NEXT player. Why? Because the human hasn't chosen an option yet we haven't set the eventtrigger as having occurred yet. AI can choose immediately and we get effects.
Player click continue on the event. Now the event occur, but for reasons I'd rather not go into (would have to explain a bunch of code) only for the human this time.

In a MP game it could even occur twice for all human players. Once the first time, once when they click continue.


The solution is to set the eventtrigger as having fired when the launch the popup instead of when the player pick an option in the popup. Should be in the next patch.
 
I was about to suggest a way to prove blight was firing multiple times. But it seems that the answer has been found. Is there a reason that the event didn't simply fire once and loop all players? That seems the best and most accurate way to do the event.
 
Problem solved. Blight would occur twice but only if caused by a human. The problem was this:

Blight occur for the human. Game launches a popup.
Blight occur for the NEXT player. Why? Because the human hasn't chosen an option yet we haven't set the eventtrigger as having occurred yet. AI can choose immediately and we get effects.
Player click continue on the event. Now the event occur, but for reasons I'd rather not go into (would have to explain a bunch of code) only for the human this time.

In a MP game it could even occur twice for all human players. Once the first time, once when they click continue.


The solution is to set the eventtrigger as having fired when the launch the popup instead of when the player pick an option in the popup. Should be in the next patch.

It's great news if the problem has been identified and Blight will be fixed in the next patch!:goodjob:

I am wondering a little about the "who triggers Blight" thing. It makes sense I was getting hammered because, honestly, I am usually the culprit who razes the city or whatever to take it to 30. However, what would have happened if the Barbarians triggered Blight? For example, a barb unit razes a city and it hits 30. No double Blight for anyone?

I really don't recall seeing any AI civ who may have triggered Blight getting hit twice, but, then again, I never studied that.

Again, thanks snarko for finding this!
 
I think the barbarians are considered as just an AI faction, so it would be as if any AI player set it off.
 
I was about to suggest a way to prove blight was firing multiple times. But it seems that the answer has been found. Is there a reason that the event didn't simply fire once and loop all players? That seems the best and most accurate way to do the event.

I'll make no comment on if it should do that or not but it would not have solved the bug. It would simply have affected all players twice.



If it was triggered by an AI civ it would only occur once (even barbs). It only occurred twice when a human triggered it. There was a delay between triggering it (launching the popup) and setting it as having triggered (human clicking continue in said popup). In between it would occur for the AI, or even other humans.
Since the AI chose an option immediately it was not a problem for them. After it was set as having happened it would not happen again, being a global event.
 
Problem solved. Blight would occur twice but only if caused by a human. The problem was this:

Blight occur for the human. Game launches a popup.
Blight occur for the NEXT player. Why? Because the human hasn't chosen an option yet we haven't set the eventtrigger as having occurred yet. AI can choose immediately and we get effects.
Player click continue on the event. Now the event occur, but for reasons I'd rather not go into (would have to explain a bunch of code) only for the human this time.

In a MP game it could even occur twice for all human players. Once the first time, once when they click continue.


The solution is to set the eventtrigger as having fired when the launch the popup instead of when the player pick an option in the popup. Should be in the next patch.
I luv you :crazyeye: way to go snarko !
So I was wrong... but not by much !!!! :D
 
Back
Top Bottom