也不知道为什么,我写个人物属性的mod,就发现人物属性计算有bug,后来加上了读书效率,就发现读书效率计算有bug,后来加上了建筑收入,就发现建筑收入也有bug,一定是我运气太差吧。
1.练功房无效
TaiwuDomain.GetReadingSpeedBonus
if (SkillGroup.FromItemSubType(book.GetItemSubType()) == 0)里是技艺书,计算了建筑的加成,else里是功法书,计算建筑加成的代码去哪了?
2.门派正逆练加成不正确
taiwuDomain.GetReadingSpeedBonus
众所周知,总纲只有类型没有正逆练,第一到第五页才有正逆练
direction是正逆练,curReadingPage是当前页数,这里仅当curReadingPage为0时才把正逆练传进去了,其它时候传的是-1
就是说,实际只有总纲会获得正逆加成(而且是根据总纲类型判断),其它书页都不会获得加成
3.安定和文化相关的建筑收入不正确
BuildingDomain.CalcSoldItemValue/CalcResourceGoodSValue
众所周知,建筑收入有文化(Culture)和安定(Safety)相关,有正相关和负相关,最多取十个城镇的数值计算加成
首先看上面,也就是安定相关建筑,排序这里毫无判断,无论是正相关还是负相关的建筑都取的是安定最高的十个城镇
然后看下面,文化相关建筑,排序仍然是使用Safety,也就是仍然取安定最高的十个城镇
再然后,文化相关建筑,居然是用(安定最高的十个城镇的)文化和安定需求作比较,请不会写代码的玩家,用直觉猜一猜拿GetCulture和RequireSafety做比较是不是bug
1.练功房无效
TaiwuDomain.GetReadingSpeedBonus
if (SkillGroup.FromItemSubType(book.GetItemSubType()) == 0)里是技艺书,计算了建筑的加成,else里是功法书,计算建筑加成的代码去哪了?
2.门派正逆练加成不正确
taiwuDomain.GetReadingSpeedBonus
众所周知,总纲只有类型没有正逆练,第一到第五页才有正逆练
direction是正逆练,curReadingPage是当前页数,这里仅当curReadingPage为0时才把正逆练传进去了,其它时候传的是-1
就是说,实际只有总纲会获得正逆加成(而且是根据总纲类型判断),其它书页都不会获得加成
3.安定和文化相关的建筑收入不正确
BuildingDomain.CalcSoldItemValue/CalcResourceGoodSValue
众所周知,建筑收入有文化(Culture)和安定(Safety)相关,有正相关和负相关,最多取十个城镇的数值计算加成
首先看上面,也就是安定相关建筑,排序这里毫无判断,无论是正相关还是负相关的建筑都取的是安定最高的十个城镇
然后看下面,文化相关建筑,排序仍然是使用Safety,也就是仍然取安定最高的十个城镇
再然后,文化相关建筑,居然是用(安定最高的十个城镇的)文化和安定需求作比较,请不会写代码的玩家,用直觉猜一猜拿GetCulture和RequireSafety做比较是不是bug