JosEPh_II
TBS WarLord
40 sec for the AI isn't long. Unless you are doing a video Let's Play that is. 
Are you feeling better?
JosEPh

Are you feeling better?
JosEPh

I hope all your childhood vaccinations are up to date. Considering your line of work.
JosEPh
Boy its been a long time... here is episode 25
Episode 25: http://youtu.be/7Nz2ol_lakY
I may have just wiped out the Scandinavians but I am no where near done yet! Some of my cities are still yearning to rejoin the Maori Civilization so what should I do? Destroy the last two Maori cites so that my people no longer complain about wanting to join that puny civilization.
Always try to go for complete wipe-outs if possible. Especially with REV on.
Ha, it isn't always that easy. My game is at about the same point his is (I just got Christianity), and I currently, on Immortal, have 4 rivals bordering me with 20 cities a piece (I have 21), and another couple farther away that have 25. It could be a really competitive game, thanks to all of your AI improvements. The only thing that is lacking is that the tactical AI almost never sends an invasion at me when I'm at war, and when it does it lingers on damaging terrain (I thought I'd fixed that).
Ha, it isn't always that easy. My game is at about the same point his is (I just got Christianity), and I currently, on Immortal, have 4 rivals bordering me with 20 cities a piece (I have 21), and another couple farther away that have 25. It could be a really competitive game, thanks to all of your AI improvements. The only thing that is lacking is that the tactical AI almost never sends an invasion at me when I'm at war, and when it does it lingers on damaging terrain (I thought I'd fixed that).
I ran across a section of code in CvUnit that will force units that are beyond 50% damage to stay put on a damaging terrain if they are also surrounded by damaging terrain. This could be one reason for that lingering - I have put some notes there so after my next update, scan through the changes in CvUnit to find this section.
if (!isHuman())
{
if (plot()->getTerrainTurnDamage() <= 0)
{
if (getDamage() > 50)
{
if (pPlot->getTerrainTurnDamage() > 0)
{
return false;
}
}
}
}
The fact that its NOT AI is what's probably giving you trouble. It's set up like a game rule that only applies to AI units.
Under 'bool CvUnit::canMoveInto(const CvPlot* pPlot, bool bAttack, bool bDeclareWar, bool bIgnoreLoad, bool bIgnoreTileLimit, bool bIgnoreLocation, bool bIgnoreAttack) const'
you have:
Could that be causing you just a bit of trouble?Code:if (!isHuman()) { if (plot()->getTerrainTurnDamage() <= 0) { if (getDamage() > 50) { if (pPlot->getTerrainTurnDamage() > 0) { return false; } } } }
Tell you what... I'll just comment that whole bit out because I know its not right.
Then again, on second glance here, looking at it a bit more closely, it's supposed to make it only checks against this IF the plot its on is not damaging itself. Huh... maybe has little to do with it then.
It doesn't explain ls612's case, but well spotted - this code absolutely should NOT be here - I think it's an original sticky-plaster for the terrain damage issue that has long since been superseded.
That particular code doesn't actually do anything. The first if is passed only if the terrain damage value is <=0. The second, inside the first, only if it is > 0. It can not both be <= 0 and > 0 therefore it will never do the "return false". The entire block of code is just a waste of time, especially since it must be checked every time a unit moves which happens a lot.
No... plot()