zombidle吧 关注:260贴子:2,168
  • 16回复贴,共1
事先声明,修改会直接破坏游戏体验 还想好好玩的就别看了


IP属地:美国1楼2017-12-18 16:11回复
    基础:
    游戏里所有的数值都是用ActionScripit3里的Number类型存储
    https://help.adobe.com/en_US/ActionScript/3.0_ProgrammingAS3/WS5b3ccc516d4fbf351e63e3d118a9b90204-7f88.html#WS5b3ccc516d4fbf351e63e3d118a9b90204-7f7f
    从上面的文档可以看到Number是64位的,对应的就是CE里的双精度符点,因为双精度符点也是64位的。


    IP属地:美国2楼2017-12-18 16:15
    回复
      首先,解释一下为什么单存用CE修改钻石之类的数据会导致游戏崩溃。
      用钻石举例,游戏的反作弊系统是这样的:当游戏第一次从服务器读取钻石数量(假如本来有99个),它会同时在1-10000中生成一个随机数,比如123,然后把随机数和钻石相加123+99 = 222。最后游戏内存里会同时存99,123和222三个数。
      如果用正常的修改流程,CE能够很快找到钻石的地址,假如你通过CE把钻石改成了999个,这时,游戏发现随机数123和999相加不再等于222,它就知道你作了内存修改。想要正常的修改,必须把原来钻石和随机数之和同时修改,在这个例子里就是1122


      IP属地:美国3楼2017-12-18 16:22
      回复
        那么如何绕过这个反作弊?
        一种办法就是修改游戏的代码,这个看CE的教程就学会了。推荐使用闪客精灵直接反编译这个游戏的FLASH版本,然后改起来就更简单了。我目前只实现了每次得到道具数量乘以100这一个功能就基本无敌了。需要注意的是FLASH版本必须在游戏加载的时候修改,进入游戏再修改是无效的。
        还有一种办法是同时修改 钻石 和 钻石+随机数 两个内存,钻石+随机数的内存是钻石内存地址-0X10。注意必须先暂停游戏的所有进程再修改,否则无效。


        IP属地:美国4楼2017-12-18 16:29
        回复(3)
          楼主,steam版的也能修改吗


          IP属地:天津5楼2017-12-19 11:01
          回复
            虽然不太明白你的方法,但为了玩好它,很认同楼主刻苦钻研的精神!


            IP属地:北京6楼2017-12-21 20:24
            回复
              大佬。来个图文教程 教我们毁游戏吧。 小白完全不懂该怎么搞啊。


              IP属地:黑龙江7楼2017-12-31 20:48
              回复
                大佬。来个图文教程 教我们毁游戏吧。 小白完全不懂该怎么搞啊。


                IP属地:广东9楼2018-03-03 08:56
                回复
                  lz,私信你了,看下


                  IP属地:法国来自iPhone客户端10楼2018-03-11 22:02
                  回复
                    没看懂啊老哥,图文有没


                    11楼2018-05-14 11:15
                    回复
                      -0X10相当于十进制的十位数减1 不过16进制是ABCDEF代表的10到15自己想想就能明白了


                      12楼2018-07-22 13:24
                      收起回复
                        大佬 网站挂了 能给一个吗


                        IP属地:山东13楼2020-10-23 17:11
                        回复