Great general has zero effect.

I don't have your own save. I only have the one you posted at the top of this thread which has the game option turned off.

No, I posted it on the Bugs and Crashes thread, and I just gave you a link to it.

I just tried a new experiment, this time with Commanders enabled, and it works. So I know it's not a general error, like something that got messed up when I installed.
 
No, I posted it on the Bugs and Crashes thread, and I just gave you a link to it.

I just tried a new experiment, this time with Commanders enabled, and it works. So I know it's not a general error, like something that got messed up when I installed.

Ok, looking now..will edit in what I find shortly...

Edit: it seems to be working as intended for me (though I am running latest SVN, so it's **possible** it's been fixed since V25, though I am not aware of any such fix). Here is what I did so you can check if you see the same behavior as me from the same save:

1) Centered the screen on the Great Commander in the southern part of Africa (Hannibal)
2) Went into world builder and added a barbarian stone maceman immediately south-east of the GC
3) Exited worldbuilder
4) Attacked the stone maceman with one of the atlatls in the GC's stack

I walked through the entire combat processing in eh debugger and verified that the extra 50% was being used from the GC (it was). After the battle I opened the combat log from the logs icon (near top left of screen). It shows these lines at the start fo the combat in question, which are the significant ones:
Combat odds: 99.4%
(Plot defense: +15%)
(Extra Combat: -65%) <-- 50% of this is due to the GC, the other 15% from other effects

Note - the GC also got an xp point as he should have.

The only things I can think of are:

1) Something I am unaware of has been fixed since V25 (unlikely in this area)

2) The failure to use the GC (and therefore also for it to not get xp) only occurs embedded within a more complex context of a full turn's worth of activity.

(2) might occur if some sequence of events causes other units to make use of the GC, draining its command points, without giving it xp (somehow) so that by the time the actual attack which should use it occurs, it is out of command points. Such a bug is certainly possible, but to track such a hypothetical bug down what I'll need is a save (this one is fine in principal) and a specific recipe, from that save which generates an incorrect non-use of the GC for you.

I suggest you try the above recipe precisely, as your result in that will at least allow us to rule in or out possibility (1). If (as I suspect) it does work correctly for you too (in that simple recipe), then I'm afraid it'll be down to you to find a more complex recipe or situation that can be distilled down to save game + specific recipe to allow it to be reproduced.

Sorry I don't have anything more definitive to report
 
Tried it. It works for some reason, but the general still didn't get any XP.
 
1) Something I am unaware of has been fixed since V25 (unlikely in this area)
There was a messed up reference in the code that I caught when re-working the Onslaught tag that may have accounted for the difference.
 
From an older version:
Code:
void CvUnit::changeZoneOfControlCount(int iChange)			
{
	m_iZoneOfControlCount += iChange;
	FAssert(getOnslaughtCount() >= 0);
}
changed to:
Code:
void CvUnit::changeZoneOfControlCount(int iChange)			
{
	m_iZoneOfControlCount += iChange;
	FAssert(getZoneOfControlCount() >= 0);
}
Of course... now that I understand FAsserts a little better, I'm not seeing how that would've had any effect on an older game as noted above.
 
From an older version:
Code:
void CvUnit::changeZoneOfControlCount(int iChange)			
{
	m_iZoneOfControlCount += iChange;
	FAssert(getOnslaughtCount() >= 0);
}
changed to:
Code:
void CvUnit::changeZoneOfControlCount(int iChange)			
{
	m_iZoneOfControlCount += iChange;
	FAssert(getZoneOfControlCount() >= 0);
}
Of course... now that I understand FAsserts a little better, I'm not seeing how that would've had any effect on an older game as noted above.
FAssert is a precompiler define that is replaced by nothing unless you are compiling a debug version.
 
Back
Top Bottom