大富翁4是大富翁系列的一款经典作品,其中有一个物价指数的设定,就是说当所有角色的总资产之和增加到一定程度时,这个物价指数会增加,带来的效应就是什么东西似乎都变贵了:过路费,罚金,奖金等都会翻倍,损失超过2000或5000时角色也不说对应的台词了(但股价、神明附身的奖金或罚金不变)。
对此一些玩家发掘了一种特殊的作死(?)玩法:在游戏的一定阶段以后,通过强控制措施达到既不使敌对玩家破产,又不使自己破产,而使物价指数不断上升。简称“刷物价指数”。这玩法很富挑战性,因为它显然比只是打败电脑难得多。
最初有些玩家发现物价指数达到了5000左右的某个数时,我方玩家的资产如果再增加会变成负数,而我方却未破产,物价指数也不再改变。也有人发现在5000左右并没有出现问题,而是在100000左右出现了同样的问题。我猜测这是两方玩家选择了不同的初始条件导致的。现代的科学理论和我的近期研究都表明,物价指数很可能是这样计算的:
物价指数=floor((所有玩家现资产总和)/(所有玩家初始资产总和))
也就是用现在的所有玩家资产总和除以所有玩家初始资产总和,结果再取整(这里究竟是不是取整我也不能确定,但很有可能是)。
大富翁4的开发团队可能没有想到真的会有玩家能有工夫和手段弄那么多钱(确实不故意刷的话资产能溢出几乎不可能),所以并没有给资产设置上限。现代的研究发现,系统很可能用了32位的存储空间(一个长整型数据)表示所有玩家总资产。1位能表示2种状态,32位就可以表示2^32位状态,也就是4294967296种。长整型数据的表示规则是:32位中的第一位表示这个整数的符号(0表示正数或0,1表示负数),32位共同表示这个整数的绝对值,并且对应的整数绝对值就是这32位的二进制值(如00000000 00000000 00000000 00000010表示2,00000000 00000000 00000000 00000111表示7)。
所以这样的空间和表示规则能表示的最大正整数是01111111 11111111 11111111 11111111(2进制),转换成10进制是2147483647。所以资产在不变成负数的前提下最多是2147483647.。而资产变成负数的原因也容易解释:在原有的资产加上一个数之后超过了2147483647,也就是二进制数据超过了01111111 11111111 11111111 11111111,假设变成了10000000 00000000 00000000 00000000,这样根据上述的表示规则它就表示-2147483648。
既然所有玩家总资产上限是2147483647,那么如果选择2人模式且每人的初始资产都是200000的话,物价指数最大是5368(或5369,如果按照四舍五入计算);如果选择2人模式且每人的初始资产都是10000的话,物价指数最大是107374。这就解释了上面有的5000有的100000的问题。
我近期也玩了一局刷物价指数。楼下说过程。
对此一些玩家发掘了一种特殊的作死(?)玩法:在游戏的一定阶段以后,通过强控制措施达到既不使敌对玩家破产,又不使自己破产,而使物价指数不断上升。简称“刷物价指数”。这玩法很富挑战性,因为它显然比只是打败电脑难得多。
最初有些玩家发现物价指数达到了5000左右的某个数时,我方玩家的资产如果再增加会变成负数,而我方却未破产,物价指数也不再改变。也有人发现在5000左右并没有出现问题,而是在100000左右出现了同样的问题。我猜测这是两方玩家选择了不同的初始条件导致的。现代的科学理论和我的近期研究都表明,物价指数很可能是这样计算的:
物价指数=floor((所有玩家现资产总和)/(所有玩家初始资产总和))
也就是用现在的所有玩家资产总和除以所有玩家初始资产总和,结果再取整(这里究竟是不是取整我也不能确定,但很有可能是)。
大富翁4的开发团队可能没有想到真的会有玩家能有工夫和手段弄那么多钱(确实不故意刷的话资产能溢出几乎不可能),所以并没有给资产设置上限。现代的研究发现,系统很可能用了32位的存储空间(一个长整型数据)表示所有玩家总资产。1位能表示2种状态,32位就可以表示2^32位状态,也就是4294967296种。长整型数据的表示规则是:32位中的第一位表示这个整数的符号(0表示正数或0,1表示负数),32位共同表示这个整数的绝对值,并且对应的整数绝对值就是这32位的二进制值(如00000000 00000000 00000000 00000010表示2,00000000 00000000 00000000 00000111表示7)。
所以这样的空间和表示规则能表示的最大正整数是01111111 11111111 11111111 11111111(2进制),转换成10进制是2147483647。所以资产在不变成负数的前提下最多是2147483647.。而资产变成负数的原因也容易解释:在原有的资产加上一个数之后超过了2147483647,也就是二进制数据超过了01111111 11111111 11111111 11111111,假设变成了10000000 00000000 00000000 00000000,这样根据上述的表示规则它就表示-2147483648。
既然所有玩家总资产上限是2147483647,那么如果选择2人模式且每人的初始资产都是200000的话,物价指数最大是5368(或5369,如果按照四舍五入计算);如果选择2人模式且每人的初始资产都是10000的话,物价指数最大是107374。这就解释了上面有的5000有的100000的问题。
我近期也玩了一局刷物价指数。楼下说过程。