对于超过10城的大国,科技研发有惩罚,人类玩家每城多花费10%,AI多6%。
对于小于5城的小国且不是凯尔特文明,科技研发有奖励,由当前时代和城市数目决定奖励。
折扣率 = 100 - (5 - 城市数目) * 大于0的时代系数
时代系数从启蒙时代才大于0, 启蒙工业信息未来分别为3,6,9,12。
-------------------------------------------------------------
新诞生文明科技花费修正(同样,不包括凯尔特人)
如果当前回合数<文明诞生回合数+回合修正系数, 则折扣率为
[100-(文明诞生回合数+回合修正系数)+当前回合数]/100
回合修正系数 = 当前时代数 * 5
- //Rhye - start penalty for large / giga empires
- int iNumCities = GET_PLAYER((PlayerTypes)getID()).getNumCities();
- int iMultiplier = 6;
- if (GET_PLAYER((PlayerTypes)getID()).isHuman())
- iMultiplier = 10;
- if (iNumCities > 10)
- {
- iCost *= 100 + iMultiplier*(iNumCities-10);
- iCost /= 100;
- }
- //Rhye - end
复制代码- //Rhye - start
- //discount for small empires
- if (getID() < NUM_MAJOR_PLAYERS) {
- if (iNumCities < 5)
- {
- iMultiplier = 3*(int)GET_PLAYER((PlayerTypes)getID()).getCurrentEra() - 6; //x-x-x-3-6-9-12
- if (iMultiplier > 0) {
- iCost *= 100 - iMultiplier*(5-iNumCities); //52-64-76-88 if future;
- iCost /= 100;
- }
- }
- //discount for new born civs
- int iTurnModifier = 5*(int)GET_PLAYER((PlayerTypes)getID()).getCurrentEra(); //0-5-10-15-20-25-30
- if (GC.getGameINLINE().getGameTurn() <= startingTurn[getID()] + iTurnModifier) {
-
- iCost *= 100 - ((startingTurn[getID()] + iTurnModifier) - GC.getGameINLINE().getGameTurn());
- iCost /= 100;
- }
- }
- //Rhye - end
复制代码
[ 本帖最后由 Khyron 于 2008-7-31 14:37 编辑 ] |