本来想让大家帮忙测试一下,结果由于还是因为1000级,大家都没那个劲,我知道每个人都在等这个,希望尽快公布出来,不过我现在公布出来,还有些问题留给大家继续研究吧,不管怎么说,目前我研究到的地步还没有经过任何完全测试,不适合那些想直接改来就可以应用的朋友, 所以如果有遇到问题可以提出来,但请不要骂人.
关于350级上限我先直接先修改方法:
1.用UE打开GS,查找(十六进制方式) "837d08017c09817d085e01"替换为"837d08017c09817d08e803"
2.查找"81f95e0100"替换为"81f9e80300"
3.查找"3d5e010000"替换为"3de8030000"
4.查找"817df05e01"替换为"817df0e803"
5.查找"6bd20a8b45f0"替换为"6bd2018b45f0"
6.查找"83c1090faf4dec0faf4dec69c9e803"替换为"83c1090faf4dec0faf4dec69c90200"
上述第1-4步主要是改350级限制相关的为1000级限制.
第5、6步将原来的经验计算公式:
level<=255:
exp=(level+9)*level*level*10
level>255
exp=[(level-255)+9]*(level-255)*(level-255)*1000+(level+9)*level*level*10
改为:
level<=255:
exp=(level+9)*level*level*1
level>255
exp=[(level-255)+9]*(level-255)*(level-255)*2+(level+9)*level*level*1
为什么呢? 因为按开始的计算公式,当升级1000级时需要的经验为:
exp=(1000+9)*(1000-255)*(1000-255)*1000+(1000+9)*1000*1000*10=1009*745*745*1000+1009*1000*1000*10=560020225000+10090000000=570110225000
而GS中经验计算是一个DWORD类型的数据,(从1级到最终等级所需的经验值在GS启动时就放到一个maxlevel*4的一个缓冲区中),可表达最大值为4294967295(无符号)或2147483647(有符号).远远小于1000级所需的经验值,所以将经验计算公式改了.
6月17日添加
第6步还可以改为:
查找:817df0ff0000007e338b4dec83c1090faf4dec0faf4dec69c9e8030000
替换为:817df0200300007e338b4dec83c1090faf4dec0faf4dec69c96e000000
这样公式就替换为:
level<=800:
exp=(level+9)*level*level*1
level>800
exp=[(level-800)+9]*(level-800)*(level-800)*110+(level+9)*level*level*1
这样的结果应该是800级升级相对快点,之后相对慢点了.(未经完全测试)
这样会带来后面升级会比原来快很多的问题,所以请大家不要正式修改来使用,我这更注重公布方法.
但是MG应该采用的不是这种方法,有兴趣的朋友可以进"阳光奇迹"亲身体会研究一下:)
除了第6个都改
如果要改为400级 把上面的e803 都替换为9001
如果要改为450级 把上面的e803 都替换为C201
如果要改为500级 把上面的e803 都替换为F401
下面是四个olldbg的图片,看得懂的朋友参考一下.
希望我的这点推敲能给朋友们引引路,再次声明,在没有一个正式的结果出来,请大家只做试验之用.
已知及待解决的问题:
1.经验计算公式改变了,所造成的问题大家应该想得到.
2.本人未真正练级到1000级(最大到了489),所以最后能不能行还是未知数.这个有待继续测试了.
3.这只是方法之一,应该还可以通过其它途径进行修改.