FfH2 Bug Thread

I have not thought that you intend to block AI hurrying.
My assumption is that 360 gold for a granary is a bad deal. Just compare it with BTS where you get 50% instead of 20% food kept for 240 gold. I think the AI is better be told that this is a bad deal and that it should spend its gold elsewhere ;)

thanks for posting the code with the UP fixes for hurry population :goodjob:
 
Confirming that the show enemy moves is very glitchy for barbarians. Simultaneous attacks without the camera focusing.

This bug is extremely annoying I must say.

Another thing that has become quite annoying is the constant change of religion for some AI.
Edit: I don't know if it relevant or not, but for me it was Daviello that constantly changed religion, from AV to ROK back to AV, back to ROK every now and then.
 
Casting "Destroy Undead" damages/kills things anything within one tile. I would suggest that it should be treated, like maelstrom, as a declaration of war if it hits other civs units. I wiped out an entire Pyre Zombie army by just having open borders and a few mages.

On a side note, I have noticed the AI religion switching as well in a few of my games.
 
For those who might want to fix it themselves before the next patch, what should it be then, please?
And is this fix in the dll or python/xml?

XML fix. It will be different values depending on the leader. If you want to set it to something easy just change it to 5 for every leader.
 
Let's also change TechTradeKnownPercents, then!

And will Sephi's tags like

<bAltarVictory>1</bAltarVictory>
<bReligionVictory>1</bReligionVictory>
<iAIPatrolGroupMage>100</iAIPatrolGroupMage>
<iAIPatrolGroupSize>100</iAIPatrolGroupSize>
<iAIValueDefense>100</iAIValueDefense>
<iAIValueMage>100</iAIValueMage>
<iEconomyTechValue>130</iEconomyTechValue>
<iFavoriteEarlyMilTech>TECH_BRONZE_WORKING</iFavoriteEarlyMilTech>
<iFavoriteEarlyReligion>RELIGION_RUNES_OF_KILMORPH</iFavoriteEarlyReligion>
<iFavoriteEarlyTech1>TECH_SANITATION</iFavoriteEarlyTech1>
<iFavoriteEarlyTech2>TECH_ORDERS_FROM_HEAVEN</iFavoriteEarlyTech2>
<iFavoriteEarlyWonder>BUILDINGCLASS_FORM_OF_THE_TITAN</iFavoriteEarlyWonder>
<iFavoriteLateWonder>BUILDINGCLASS_TEMPLE_OF_TEMPORENCE</iFavoriteLateWonder>

be included? Since they are referenced in Python it doesn't make sense not to include them.

Also, what's going on with the absense of previous tags? Most leaders have everything from same religion change limits to attitude thresholds removed. For Sabathiel, for example, DemandTributeAttitudeThreshold goes right after iSameReligionAttitudeChange, which shouldn't be the case.

The thingy seems like one huge mess now :crazyeye:
 
CvUnitAI::AI_update() around line 551
Spoiler :
Code:
		case UNITAI_FEASTING:
			AI_feastingmove();
			[COLOR="Blue"]break;[/COLOR]
		case UNITAI_MANA_UPGRADE:
			AI_upgrademanaMove();
			break;
Blue marked "break" is missing.
And some redundancy break exists after return statement.

CvGameTextMgr::setImprovementHelp()
Spoiler :
Code:
	int iLast = -1;
	for (int iBonus = 0; iBonus < GC.getNumBonusInfos(); iBonus++)
	{
		int iRand = info.getImprovementBonusDiscoverRand(iBonus);
		if (iRand > 0)
		{
			szFirstBuffer.Format(L"%s%s", NEWLINE, gDLL->getText("TXT_KEY_IMPROVEMENT_CHANCE_DISCOVER"[COLOR="Blue"], iRand[/COLOR]).c_str());
			szTempBuffer.Format(L"%c", GC.getBonusInfo((BonusTypes) iBonus).getChar());
			setListHelp(szBuffer, szFirstBuffer, szTempBuffer, L", ", iRand != iLast);
			iLast = iRand;
		}
	}
Blue marked variable is missing. (Mine improvement has displayed funny chance of discovering new resource.)

CvPlot::doImprovement()
line 559
Code:
						if (isOwned() && ([COLOR="Blue"]100 +[/COLOR] GET_PLAYER(getOwnerINLINE()).getDiscoverRandModifier()) != 0)
I think blue marked addition is unnecessary.

I hope my sample codes help anything.
 

Attachments

Yeah I think when I merged Sephi's attributes I checked his leader file to see if he set values and missed that he had broken many of them out into modular files. I will check them out and see what needs to be updated.
 
CvUnitAI::AI_update() around line 551
Spoiler :
Code:
		case UNITAI_FEASTING:
			AI_feastingmove();
			[COLOR="Blue"]break;[/COLOR]
		case UNITAI_MANA_UPGRADE:
			AI_upgrademanaMove();
			break;
Blue marked "break" is missing.
And some redundancy break exists after return statement.

Good catch, fix added.

CvGameTextMgr::setImprovementHelp()
Spoiler :
Code:
	int iLast = -1;
	for (int iBonus = 0; iBonus < GC.getNumBonusInfos(); iBonus++)
	{
		int iRand = info.getImprovementBonusDiscoverRand(iBonus);
		if (iRand > 0)
		{
			szFirstBuffer.Format(L"%s%s", NEWLINE, gDLL->getText("TXT_KEY_IMPROVEMENT_CHANCE_DISCOVER"[COLOR="Blue"], iRand[/COLOR]).c_str());
			szTempBuffer.Format(L"%c", GC.getBonusInfo((BonusTypes) iBonus).getChar());
			setListHelp(szBuffer, szFirstBuffer, szTempBuffer, L", ", iRand != iLast);
			iLast = iRand;
		}
	}
Blue marked variable is missing. (Mine improvement has displayed funny chance of discovering new resource.)

Fix checked in.


CvPlot::doImprovement()
line 559
Code:
						if (isOwned() && ([COLOR="Blue"]100 +[/COLOR] GET_PLAYER(getOwnerINLINE()).getDiscoverRandModifier()) != 0)
I think blue marked addition is unnecessary.

I hope my sample codes help anything.

It is necessary to prevent a divide by 0 error if the players discover rand happens to be -100 (I dont think thats possible in FfH since we only boost the number, but who knows what modmodders will try).
 
FfH 2041d play now! cast Into the Mist
and my stylish Sidar settler worker and warrior have turned into their classic Civ4 appearances. Thats not an 'invisibility' but rather 'otherworldly visage' spell ;)
 
FfH 2041d Veil of Night spell description
'[/LINK]' in text - watch those brackets!
Ale pedia - same misspelling
 
You are using an older version of the main FfH2 installer. Uninstall FfH2 (delete the folder), redownload the installer (FallFromHeaven2041d.exe), reinstall the mod, and then reinstall the patch. This will correct your problem.

Thank you kind sir, thanks Kael, problem solved! :)
 
FfH 2041d play now! cast Into the Mist
and my stylish Sidar settler worker and warrior have turned into their classic Civ4 appearances. Thats not an 'invisibility' but rather 'otherworldly visage' spell ;)

This is intentional. The change in appearance makes it easier to tell which of your units are invisible and which are not. Without that change you would have to consult the promotions list, for each unit. This could take an inconvenient amount of time, especially for units with many promotions.
 
Yeah I think when I merged Sephi's attributes I checked his leader file to see if he set values and missed that he had broken many of them out into modular files. I will check them out and see what needs to be updated.

Does this mean that you don't need the various FFH2 standard LeaderHeadInfos from "\WildMana\Assets\Modules\NormalModules\FFHPLUS\Civs" (I don't know why it is putting a space in one of the words in the path :crazyeye:) to be integrated into one XML file? In other words, is the fix you're going to do in the next short time to be to add the relevant files for the different standard FFH2 leaders from that above directory structure to a new modular place (ie. different files for different Civs) in the standard FFH2 file/folder heirarchy?

Best regards,
Steven.
 
Does this mean that you don't need the various FFH2 standard LeaderHeadInfos from "\WildMana\Assets\Modules\NormalModules\FFHPLUS\Civs" (I don't know why it is putting a space in one of the words in the path :crazyeye:) to be integrated into one XML file? In other words, is the fix you're going to do in the next short time to be to add the relevant files for the different standard FFH2 leaders from that above directory structure to a new modular place (ie. different files for different Civs) in the standard FFH2 file/folder heirarchy?

Best regards,
Steven.

Yes, I dont use modular files in FfH2.
 
The rate of Barbarians spawning seems to have drastically decreased with patch 0.41l. I'm not a programmer, so I don't know why, but could it be related to your change getting rid of barbarians' increasing in strength?

Here are my game details: Huge map, Tectonics, Lakes (30% water). 19 starting civs -- a lot, I know, but on a huge map with only 30% water, there's plenty of room for barbs to spawn.

Game settings are Raging Barbs, Wildlands, End of Winter, All Unique Features, Living World, and Blessings of Amathaon.

Playing as the Clan, waited until around Turn 100 to cast For the Horde, and gained a grand total of 6(!) units. With all that uninhabited land and Raging Barbs, there should be a lot more, I would think.

I went into Worldbuilder to look and confirmed that while there are plenty of animals all over, there are very few barbs.
 
Patch l shouldnt have impacted barbs spawns. Of your settings 19 civs lowers barbs by a lot as does Wildlands (wildlands increases the time animals stay in the game which means barbs start later, especially on a map with a lot of civs that means the map could be pretty full by the time they show up).
 
Thanks for your quick reply, Kael.

19 civs is a lot, yes, but I'm on a Huge map with only 30% water, so there's a lot of empty land.

I've gotten a lot of barbs in the past with the same settings, but maybe they spawned later in the game because of all the animals spawned by Wildlands, you're probably right. I'll have to play on and see what happens with barb spawning later in the game (I'm still in the early 100s).

Thanks.
 
How many barbarians you get with For the Horde is random. There could have been 6 (orcish) barbarians, and you got all 6, or there could have been 600 and you got unlucky. You'll get a more accurate total by opening worldbuilder and counting.
 
I did take a look in Worldbuilder earlier, but didn't individually count how many orc/lizardman barbs there were. There seemed to be only a few, and I know that's horribly vague.

The point I was trying to make wasn't so much about For the Horde as it was about the relatively few barb units there were, even with the Raging Barbs setting on.

Kael's undoubtedly right that the Wildlands setting is affecting/delaying barbs from spawning in large numbers. I'll play on (probably tomorrow at this point) and see what happens with the barbs. Might reload from the turn before I cast For the Horde and wait to cast the spell when it might be worthwhile.
 
Back
Top Bottom