Single Player bugs and crashes - After the 29th of March

Status
Not open for further replies.
A few points that came up in game for me: V29 vanilla.

-At some point after getting access to the 6 power siege engine it and the 3 power one lost the ability to attack defenses.

-The crime control promotions for town watchman do not stack effects in display... so watchmen have a stack of -crime city and -crime tile as its listed abilities.

-You need to flag units on automation to go first in turn order. I have no clue how unit turn order is calculated but automating a unit should force it to be inescapably ahead of all not automated units. Doing that should fix the issue with combat abruptly showing after the units have their turn passed. This is really causing me annoyances. Captured units in particular keep randomly granting me slavery or making me spent cash on zero xp military units. This is because I keep getting startled and randomly panic reflex clicking as the screen whips around.

-Automated boats seem to refuse to go through rival territories no matter how early making them fenced in by random borders.
 
In developing leaders After updating the SVN I can't see the description of the traits

Edit - nevermind, Looking at the latest SVN update it looks like this was fixed.
 
-At some point after getting access to the 6 power siege engine it and the 3 power one lost the ability to attack defenses.
Some confusion was discovered to be generated by a very thin and hardly perceptible negative defense number. We have had this report numerous times but it always turns out to be that the city you were wanting to bombard had a negative value. Note that cities of leaders with traits that give a negative defense value will not be any more bombardable beneath 0 as any other, just that until buildings or culture get that deficiency into the positive, it CAN throw off a player's perception that they are looking at a positive % defense that can't be bombed down. Blame often goes straight for the units when its just the fact that the city you're looking at is actually easier to attack than it is a normal tile with the same features otherwise.

-The crime control promotions for town watchman do not stack effects in display... so watchmen have a stack of -crime city and -crime tile as its listed abilities.
A known bug. A known complex issue as well.
@AIAndy: is there an ETA on resolution for this?

-You need to flag units on automation to go first in turn order. I have no clue how unit turn order is calculated but automating a unit should force it to be inescapably ahead of all not automated units. Doing that should fix the issue with combat abruptly showing after the units have their turn passed. This is really causing me annoyances. Captured units in particular keep randomly granting me slavery or making me spent cash on zero xp military units. This is because I keep getting startled and randomly panic reflex clicking as the screen whips around.
Not a bug but a preference driven feature.

-Automated boats seem to refuse to go through rival territories no matter how early making them fenced in by random borders.
This would be for Koshling to address.
 
It is not possible in Civ IV to have incense only show up in one city.

I would have to disagree with this statement. In fact, there is already one way to do it in plain old regular unmodded BtS: the bonuses produced by corporations are available only in the specific cities where the corporation exists. Like the aluminum produced by Aluminum Co., one per coal available in the city, adds one or more aluminum only to the cities it is in for the coal available in that city. So if you have access to 3 coal in that city (which may very well drop to 0 if some enemy cuts all the routes) you get 3 extra aluminum in that city. These extra bonuses are not available to trade, they only exist in each specific city if it has the corporation. But they do have an effect on anything that needs them, like if a unit needs aluminum to be built at all or a building gets a production bonus when you have it or if you have a corporation that consumes that bonus (like Creative Construction Corp. does with aluminum - the extra aluminum from A. Co. boosts the output of CCC when they are in the same city).

Hm. Now I think I need to report a bug with this functionality...

In CvCity::getNumBonuses the return value is this:
return getNumBonusesFromBase(eIndex, m_paiNumBonuses[eIndex]) + m_paiNumCorpProducedBonuses[eIndex];

but in that CvCity::getNumBonusesFromBase function that it just called the returned value is this:
return iBaseNum + m_paiNumCorpProducedBonuses[eIndex];

so m_paiNumCorpProducedBonuses[eIndex] is being added in twice, doubling the number that a corporation is supposed to be providing, unless getNumBonusesFromBase hits one of the two conditions hat make it return 0.

For that matter, it looks like there is something strange going on in getNumBonusesFromBase. The second "if" checks they player's "getBonusMintedPercent(eIndex)" and if it is > 0 it does not increase it by the specified percent, it just returns 0. On the other hand, this entire feature may not actually be in use - the tag for it is defined in theCIV4GameInfoSchema files, but it is never used (it is apparently for civics as they have code that would load these if there actually were any).
 
I would have to disagree with this statement. In fact, there is already one way to do it in plain old regular unmodded BtS: the bonuses produced by corporations are available only in the specific cities where the corporation exists. Like the aluminum produced by Aluminum Co., one per coal available in the city, adds one or more aluminum only to the cities it is in for the coal available in that city. So if you have access to 3 coal in that city (which may very well drop to 0 if some enemy cuts all the routes) you get 3 extra aluminum in that city. These extra bonuses are not available to trade, they only exist in each specific city if it has the corporation. But they do have an effect on anything that needs them, like if a unit needs aluminum to be built at all or a building gets a production bonus when you have it or if you have a corporation that consumes that bonus (like Creative Construction Corp. does with aluminum - the extra aluminum from A. Co. boosts the output of CCC when they are in the same city).

Hm. Now I think I need to report a bug with this functionality...

In CvCity::getNumBonuses the return value is this:
return getNumBonusesFromBase(eIndex, m_paiNumBonuses[eIndex]) + m_paiNumCorpProducedBonuses[eIndex];

but in that CvCity::getNumBonusesFromBase function that it just called the returned value is this:
return iBaseNum + m_paiNumCorpProducedBonuses[eIndex];

so m_paiNumCorpProducedBonuses[eIndex] is being added in twice, doubling the number that a corporation is supposed to be providing, unless getNumBonusesFromBase hits one of the two conditions hat make it return 0.

For that matter, it looks like there is something strange going on in getNumBonusesFromBase. The second "if" checks they player's "getBonusMintedPercent(eIndex)" and if it is > 0 it does not increase it by the specified percent, it just returns 0. On the other hand, this entire feature may not actually be in use - the tag for it is defined in theCIV4GameInfoSchema files, but it is never used (it is apparently for civics as they have code that would load these if there actually were any).

Ok, so you're saying that + m_paiNumCorpProducedBonuses[eIndex] should be removed from getNumBonusesFromBase right? I don't have any test scenarios I can run that would show what sort of effect this could have but it is obvious that getNumBonuses is doubling up at that point and that there'd be no point to even having the function getNumBonuses if m_paiNumCorpProducedBonuses[eIndex] were removed from it. Otherwise just refer to getNumBonusesFromBase. So I'd be willing to trust this is correct that we should simply remove m_paiNumCorpProducedBonuses[eIndex] from getNumBonusesFromBase.

Also... the minted issue. I have no idea who and when that went into the dll but I don't think its in use currently. I've wondered what the intention of it was in the first place and also have seen other areas that made me doubt its a completed project. I know there's other references to incomplete projects that aren't under further current development in the dll like Dark Ages too. I know that was something Afforess was looking into but I'm not sure about minting.

Now... all that said about the bugs there... it points out that it couldn't be too difficult to check for vicinity for a worked bonus to give that bonus directly to the city.

@AIAndy: what would be the reference to use for that call that could be added to CvCity::getNumBonuses that could add a non-enabled resource to the city that's working that tile in its vicinity with an improvement that would give that bonus to the nation if the bonus were 'enabled'?
 
Hi!
I'm playing a game that I started on V29. Now I have a repeatable CTD (tried 5 times). It happens when you end the turn.

Could you please have a look and make me a patch for this? I'd really like to continue this game :)
Thanks in advance!
 

Attachments

I'll take a look and see what I can figure out about it.

@ls612: I reviewed the functioning of your promotions. The forest line seems to be flawed in the xml somehow and was before my update as that was the line that was showing no effect in my wife and I's game which is not updated to my changes. My quick test game here proved that was still behaving as before so I suspect an xml oversight on that. The other promotions seem to be fine for the most part.
 
@Faustmouse:
This one is a bit confusing:
Code:
bool CvInitCore::getOption(GameOptionTypes eIndex) const
{
	FASSERT_BOUNDS(0, NUM_GAMEOPTION_TYPES, eIndex, "CvInitCore::getOption");
	FAssertMsg(m_abOptions != NULL, "Access to unconstructed game option array");
	if ( m_abOptions != NULL && checkBounds(eIndex, 0, NUM_GAMEOPTION_TYPES) )
	{
		return m_abOptions[eIndex];
	}
	else
	{
		return false;
	}
}
The index is coming up as 9995106 yet this is somehow passing the value of true.

Still I don't know for sure that that's the problem. It seems as if things have gotten stuck in an infinite loop on evaluating a unit for the ability to promote before all that took place. That in and of itself is a bit odd and I'm wondering if it has something to do with an AI evaluation routine since that's what the profiler suggests we're in the middle of:
Code:
Player 3 (Maya Tribe) evaluating buildings for tech Chariotry
	Building Circus Maximus new mechanism value: 1460
Rebuilding canConstruct cache for City Izamal
	Building Hippodrome new mechanism value: 605
	Building Culture (Hittite) new mechanism value: 2175
	Building Chariot Workshop new mechanism value: 581
Apparent memory leak (size 24) detected in CvPlayerAI::AI_techBuildingValue (from CvCityAI::AI_buildingValueThresholdOriginal:0)
Apparent memory leak (size 24) detected in CvPlayerAI::AI_techBuildingValue (from CvCityAI::AI_buildingValueThresholdOriginal:1)
Apparent memory leak (size 24) detected in CvPlayerAI::AI_techBuildingValue (from CvCityAI::AI_buildingValueThresholdOriginal:2)
Apparent memory leak (size 24) detected in CvPlayerAI::AI_techBuildingValue (from CvCityAI::AI_buildingValueThresholdOriginal:3)
	Building value: 4821
Player 3 (Maya Tribe) raw value for tech Chariotry is 8966
First-chance exception at 0x7c345cd2 in Civ4BeyondSword.exe: 0xC00000FD: Stack overflow.
Unhandled exception at 0x773015de in Civ4BeyondSword.exe: 0xC00000FD: Stack overflow.
First-chance exception at 0x772f016e in Civ4BeyondSword.exe: 0x00000000: The operation completed successfully.
Unhandled exception at 0x773015de in Civ4BeyondSword.exe: 0x00000000: The operation completed successfully.
I'm not going to say its impossible for something going wrong in the isPromotionReady evaluation... could have something to do with a mistake in the CvPlayerAI routines recently included in the team projects or maybe something isn't being done correctly there... I was on a limb trying to understand what was supposed to be put in there and making some guesswork. That's an area that definitely awaits looking over by Koshling when he can.

Unfortunately, until then, this evaluation does not lead me to an absolute answer as to where to repair things beyond this analysis. So a fix for this may be pending for a bit.
 
Actually... I think the problem may be in the promotion evaluation AI. Don't know what's happening there but I've seen this kind of crash before now that I think about it... It will take me some further time to evaluate the problem but perhaps tomorrow if others haven't gotten it taken care of I may be able to.
 
Actually... I think the problem may be in the promotion evaluation AI. Don't know what's happening there but I've seen this kind of crash before now that I think about it... It will take me some further time to evaluate the problem but perhaps tomorrow if others haven't gotten it taken care of I may be able to.

Thanks TB, it would be awesome if it get fixed!
So, if it's a problem for promotion evaluation, would it be possible to do a quickfix if I use the WB to reduce my autopromote hunters XP (I think it should be one of them) to 0 so they can't be promoted at all?
 
If I had it my way shrimp, lobster and shell fish (clams) would all be revealed very early but not available for trade until refrigeration, since that is more realistic.

I was thinking about this because you have brought it up before. What f we had an auto-build building that prohibited seafood resources in every city. Then we have a 2nd auto-build building that replaces that building but requires any of the resources to be in the city vicinity? That way only cities with a seafood resource can have access to seafood resources.

Then at refrigeration both buildings go obsolete and trade routes work as normal. What do you think?
 
I was thinking about this because you have brought it up before. What f we had an auto-build building that prohibited seafood resources in every city. Then we have a 2nd auto-build building that replaces that building but requires any of the resources to be in the city vicinity? That way only cities with a seafood resource can have access to seafood resources.

Then at refrigeration both buildings go obsolete and trade routes work as normal. What do you think?

This belongs in the ideas thread, but it is a good one.:)
 
Updated SVN today

I am unable to build Culture (Swazi) in my city of Jerusalem. I have Iron Working researched and Lead Ore with mine and route built near city. I have Native culture african built in other cities.

I am unable to build Culture (Syrian) in my city of Najran. I have Fermentation researched and Olives with orchard and route built near city. I have Native culture middle eastern as i am playing Turks.

Both of those are not yet built by anybody. And when i turn off show buildable only buildings in city window they are showing as non-buildable but no red text explaining why.

Savegame attached.

Any news on cultures issue? After i updated SVN 5295/5299 i am unable to build ANY culture.

Anyone else having this problem or are there any new options i could have missed?
 
What if we had an auto-build building that prohibited seafood resources in every city. Then we have a 2nd auto-build building that replaces that building but requires any of the resources to be in the city vicinity? That way only cities with a seafood resource can have access to seafood resources.

Then at refrigeration both buildings go obsolete and trade routes work as normal.

Yeah sounds good but the dried fish resource should be available (not buildable though) in inland cities (no fresh water), too.
And normal fish should be available for river/lake (fresh water) cities as well.
 
I could be wrong but I don't think you need a fridge if you live in an igloo...
 
Thanks TB, it would be awesome if it get fixed!
So, if it's a problem for promotion evaluation, would it be possible to do a quickfix if I use the WB to reduce my autopromote hunters XP (I think it should be one of them) to 0 so they can't be promoted at all?

Ah... autopromote. It's YOUR units getting caught in this loop huh? hmm... interesting. I might try simply turning OFF the autopromote option and see if you can get past the round. The problem may well be lurking in there.

I think my previous diagnosis is probably fairly flawed considering that we were able to play a few rounds of our game and if this was a recent update issue (are you up to date on the svn or is this still stock v29?) and it was what I suspected it might be then we'd have encountered the same problem most likely.

But if its a bug in the autopromote mechanism itself... that would explain why we're not being overwhelmed with bug reports on this issue. I don't think many players appreciate feeling out of control on anything, particularly promotions.
 
I could be wrong but I don't think you need a fridge if you live in an igloo...

You would if you wanted to trade the fish some distance though. Perhaps you could get away with trading to the next city over if the environment was cold enough but at that point we'd be nitpicking.
 
Ah... autopromote. It's YOUR units getting caught in this loop huh? hmm... interesting. I might try simply turning OFF the autopromote option and see if you can get past the round. The problem may well be lurking in there.

I think my previous diagnosis is probably fairly flawed considering that we were able to play a few rounds of our game and if this was a recent update issue (are you up to date on the svn or is this still stock v29?) and it was what I suspected it might be then we'd have encountered the same problem most likely.

But if its a bug in the autopromote mechanism itself... that would explain why we're not being overwhelmed with bug reports on this issue. I don't think many players appreciate feeling out of control on anything, particularly promotions.

I have 5 Hunters on Autopromote because they are somewhere in Africa and I am in America. I don't care what promos they get, they can kill everything now, and I don't want toswitch the Viewports whenever they are able to promote. I try turning it off. BUT they were on autopromote for a long time now (and surely get some promos) I'll tell you tomorrow if it works. Many thanks so far :)

Edit: But... The crash occours at the end of the AI turn. So just before I'd start my next turn. Is this the time my Units get their autopromotes?

And you COULD use a refridgerator in an Igloo. My vater use an old fridge in the winter so the food won't freeze ;)
 
Status
Not open for further replies.
Back
Top Bottom