JAVA实战训练营Day1. ——“让戴夫一夜暴富”
目录
一、Day1.的目标
二、任务所涉及的知识点(参考资料)
1.计算机基础进制转换(二进制BIN、八进制OCT、十进制DEC、十六进制HEX)
三、实现任务的工具
1.《植物大战僵尸》游戏文件
2.Hex Editor Neo
3.一个帅气的我(原来我是工具人啊QAQ)
四、开始实战
1.解锁关卡
2.金币数量达到1024$(太少了,我们的目标是一夜暴富)
3.解锁[迷你游戏]和[生存模式]
五、总结
前言
《植物大战僵尸》 是一款极富策略性的游戏,玩家可以针对不同僵尸的弱点来合理地种植植物,来保护戴夫的脑子不被僵尸吃掉。
我们在这里要帮助疯狂的戴夫实现“一夜暴富”的梦想(我不行,但我能让你行),并且跳过部分关卡快速击败僵王博士(擒贼先擒王,我孔明善使奇兵)。
一、Day1.的目标
修改游戏《植物大战僵尸》,完成以下目标:
1.解锁到制定关卡5-1
2.金币数量达到1024$
3.解锁[迷你游戏]和[生存模式]
二、任务所涉及的知识点(参考资料)
1.计算机基础进制转换(二进制BIN、八进制OCT、十进制DEC、十六进制HEX)
Tips:
给大家分享一个好东西:win系统自带计算器的程序员模式,用过的都说好(手动滑稽)。
嘻嘻,能用电脑我们就不要动脑。(这可不是偷懒哦,这叫物尽其用OVO)
三、实现任务的工具
1.《植物大战僵尸》游戏文件
2.Hex Editor Neo
3.一个帅气的我(原来我是工具人啊QAQ)
四、开始实战
1.解锁关卡
首先我们通过百度得知《植物大战僵尸》的用户数据保存位置(度娘是个好东西)。
可知,文件目录地址为:C:ProgramDataPopCap GamesPlantsVsZombiesuserdata
我们直接在我的电脑里打开这个地址。
将用来存储用户关卡和金币道具等数据的user1.dat文件在Hex Editor Neo中打开。
此时仅注册用户信息,未开始游戏,不难发现只有绿标处的数据是01(首部除外)。
我们试着将《植物大战僵尸》往后打几关,再来观察一下数据。
第一关通关后,再次打开user1.dat,发现原先绿标处01变成02,我们不妨大胆猜测一下这就是用来存储关卡信息的数据位置。
我们接着再打几关,观察数据变化,经过我的充分实验(试图掩盖贪玩的事实),证明这个假设是成立的:当游戏关卡为1-1时,其数值为01,当游戏关卡为2-1时,其数值为0b,以此类推皆成立。发现,该位置数字为16进制,且符合关卡变动规律,故假设成立。
(爱情和做学问都是这样,大胆假设,小心求证)
游戏中每10小关为一个大关,所以要将关卡修改到指定关卡5-1对应的十进制数据为41,将其转为十六进制为29,在Hex Editor Neo中更改数据后重新进入游戏会发现关卡跳到了第5-1,并且解锁了[图签]和[商店]。
至此任务1完成
我们待会暴富后直接打僵王博士,最终关卡5-10对应的十进制数据为50,将其转换为十六进制数据为32,在Hex Editor Neo中更改数据后重新进入游戏会发现关卡跳到了第5-10,并且解锁了[禅意花园]。
2.金币数量达到1024$(太少了,我们的目标是一夜暴富)
好了,解锁了[商店],我们去shopping吧!
哦吼,没钱(小丑竟是我自己)。
从之前我修改关卡保留下来的数据,我发现获得金币时08位置(绿标)的数据发生了变化。
同理,我们大胆猜测这个位置就是储存金币数据的位置,通过多次尝试修改这个位置的数据得证08 09 0a 这几个位置的数据就是金币数据的位置,目标金额为1024$即10240个金币,1024D=400H,我们在Hex Editor Neo中更改数据后重新进入游戏。
至此任务2完成
1024$太少了,我们知道十六进制器最大值为FF,我们给它满上。
实现财务自由,可以不理性消费了。
洗劫一空, OK,我们现在直接去把僵王博士解决掉。
僵王博士OS:
3.解锁[迷你游戏]和[生存模式]
这个嘛,遇事不决先百度(其实我用维基百科多一点)。
我们先把关卡改到3-2,对应数据21D=16H,再开始游戏。
回退到主菜单。
同理解锁[解密游戏]需要通关4-6,因为我们前面打过了5-10所以[生存模式]也是解锁了。
至此任务3完成
五、总结
这个任务总体难度不大,关键在于善于发现数据的变化。需要我们可以熟练掌握进制转化,面对问题要大胆猜测,小心求证。
(完结撒花)
文章知识点与官方知识档案匹配,可进一步学习相关知识Java技能树首页概览93566 人正在系统学习中
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!