Вот полная формула расчета роста инфляции из SDK
[codebox]int CvPlayer::calculateInflationRate() const
{
int iTurns = ((GC.getGameINLINE().getGameTurn() + GC.getGameINLINE().getElapsedGameTurns()) / 2);
iTurns += GC.getGameSpeedInfo(GC.getGameINLINE().getGameSpeedType()).getInflationOffset();
if (iTurns <= 0)
{
return 0;
}
int iInflationPerTurnTimes10000 = GC.getGameSpeedInfo(GC.getGameINLINE().getGameSpeedType()).getInflationPercent();
iInflationPerTurnTimes10000 *= GC.getHandicapInfo(getHandicapType()).getInflationPercent();
iInflationPerTurnTimes10000 /= 100;
int iModifier = m_iInflationModifier;
if (!isHuman() && !isBarbarian())
{
int iAIModifier = GC.getHandicapInfo(GC.getGameINLINE().getHandicapType()).getAIInflationPercent();
iAIModifier *= max(0, ((GC.getHandicapInfo(GC.getGameINLINE().getHandicapType()).getAIPerEraModifier() * getCurrentEra()) + 100));
iAIModifier /= 100;
iModifier += iAIModifier - 100;
}
iInflationPerTurnTimes10000 *= max(0, 100 + iModifier);
iInflationPerTurnTimes10000 /= 100;
// Keep up to second order terms in binomial series
int iRatePercent = (iTurns * iInflationPerTurnTimes10000) / 100;
iRatePercent += (iTurns * (iTurns - 1) * iInflationPerTurnTimes10000 * iInflationPerTurnTimes10000) / 2000000;
FAssert(iRatePercent >= 0);
return iRatePercent;
}[/codebox]
Из нее видно, что повлиять на итоговые цифры можно через CIV4GameSpeedInfos и CIV4HandicapInfo. В обоих файлах есть тег iInflationPercent, значения которого можно понизить до нужно уровня.
В CIV4GameSpeedInfos даже лучше, потому что там есть еще и iInflationOffset, в котором определяется ход, после которого начинает считаться инфляция. Например, на нормальной скорости инфляция начинается после 120 ходов.
[codebox] <GameSpeedInfo>
<Type>GAMESPEED_NORMAL</Type>
<Description>TXT_KEY_GAMESPEED_NORMAL</Description>
<Help>TXT_KEY_GAMESPEED_NORMAL_HELP</Help>
<iGrowthPercent>100</iGrowthPercent>
<iTrainPercent>100</iTrainPercent>
<iConstructPercent>100</iConstructPercent>
<iCreatePercent>100</iCreatePercent>
<iResearchPercent>100</iResearchPercent>
<iBuildPercent>100</iBuildPercent>
<iImprovementPercent>100</iImprovementPercent>
<iGreatPeoplePercent>100</iGreatPeoplePercent>
<iCulturePercent>100</iCulturePercent>
<iAnarchyPercent>100</iAnarchyPercent>
<iBarbPercent>100</iBarbPercent>
<iFeatureProductionPercent>100</iFeatureProductionPercent>
<iUnitDiscoverPercent>100</iUnitDiscoverPercent>
<iUnitHurryPercent>100</iUnitHurryPercent>
<iUnitTradePercent>100</iUnitTradePercent>
<iUnitGreatWorkPercent>100</iUnitGreatWorkPercent>
<iGoldenAgePercent>100</iGoldenAgePercent>
<iHurryPercent>100</iHurryPercent>
<iHurryConscriptAngerPercent>100</iHurryConscriptAngerPercent>
<iInflationPercent>45</iInflationPercent>
<iInflationOffset>-120</iInflationOffset>
<iVictoryDelayPercent>100</iVictoryDelayPercent>[/codebox]
Если увеличить это значение, инфляция будет начинаться в игре позже и, соответственно, оказывать на нее меньшее влияние. Если поставить значение больше стандартного числа ходов на данной скорости (допустим -400), то инфляции вообще не будет.
Ты же уже копался в CIV4GameSpeedInfos.xml, тебе и флаг в руки.
ну а как в самой игре с этим боротся? ведь опции - ОТМЕНИТЬ ПРИБЛЬ ( по типу как в europa universales ) нету.
Кирил, стоимость содержания корпорации теперь не зависит от инфляции.
http://igoreha89.livejournal.com/
мой штаб
"еще один ход и спать" - заклинание которое я повторяю каждую ночь :0)