小白学习对游戏动手,共同成长
近期闲来无事,想说整整游戏来玩玩,但是现在的游戏,且不说氪金废肝,就连拿个小奖励都没看广告,没来玩游戏就为了快乐打发时间,这些体验直接让我寄了。所以开始想说动动手脚,快乐起来,新手上路,开始对这款游戏进行研究。新手上路,有错麻烦指出~看过不少别人写的操作过程,感觉都是基于本身经验丰富的情况下写的,小白看完也许能看懂这一个,但是很难举一反三,所以作为新手,我想换一个思路,通过对比来学习。什么意思呢?就是同一款游戏,找一个普通版的,再找一个已经被大佬处理过的,通过对比来找出大佬究竟做了啥实现的。下面是最近挺火的一款游戏,我们对比一下看看吧。
我们就对这款猎鹿人动手吧。首先拿到普通版和别人做好的破解版,反编译出来看看大佬究竟搞了啥不一样的。通过对比发现在assets多了一个东东。
总不能无缘无故多出来吧,想当然的把后缀改成zip看看里面是啥,打开点进去发现一个文件有如下代码:
<?xml version='1.0' encoding='utf-8' standalone='yes' ?>
<map>
<int name="isFirstLevelSelection" value="1" />
<string name="unity.player_sessionid">2834920455615351754</string>
<string name="unity.cloud_userid">9ad72acb552f2ed35ad61e3993f64f3a</string>
<int name="PlayerCash" value="999999999" />
<int name="FirstTimeWeaponScreenOpen" value="1" />
<int name="isAdsPlay" value="0" />
<int name="modeSelectionIndicator" value="1" />
<int name="ScreenWidth" value="1309" />
<string name="unity.player_session_count">2</string>
<int name="Screenmanager%20Resolution%20Width" value="1309" />
<int name="IsTutorial" value="1" />
<int name="nextTolevelIndicator" value="1" />
<int name="SpecialModeSelction" value="0" />
<int name="ScreenHeight" value="589" />
<int name="TrialOfHunter%203" value="1" />
<int name="GameLaunched" value="1" />
<int name="Screenmanager%20Fullscreen%20mode" value="-1" />
<int name="Screenmanager%20Resolution%20Height" value="589" />
<int name="MainMenueTutorial" value="1" />
<int name="TrialOfHunter%202" value="1" />
<int name="__UNITY_PLAYERPREFS_VERSION__" value="1" />
<int name="EnemiesKilled" value="4" />
<int name="tutorialMessage-Gameplay" value="1" />
</map>
不难发现有一个键值对的数字很突出,没错就是PlayerCash,这应该就是金币数量了,通过修改这里就实现了大量金币,会不会太简单了,我接着对这个数字进行修改,果然游戏内也是对应的。说明是有效的。
但是!!!原版的游戏里并没有这个文件,这是多出来的,那我要怎么基于原包,实现大佬这样的效果啊?仔细看了两个包的差距,还存在不一样的地方,上面这个文件相当于一个存档,把这个存档注入游戏,在游戏运行的时候调取,就实现了。读取存档就需要注入一些代码了,本着负责人的态度,我先把这些代码研究清楚再分享出来,毕竟知其然不知其所以然还是达不到学习的目的,有大佬懂的也可以指点一下哦,待会见。附上这款游戏供大家学习。
lyqaibbmm 发表于 2022-4-26 23:27
刚试了下挺牛的然后我想问的是 就是把这个文本放到其他的游戏中,也是可以这样吗
每个游戏的存档应该是有差别的,但是应该不少游戏都可以使用存档注入的方法,但是存档怎么搞还有待研究。 刚试了下挺牛的然后我想问的是 就是把这个文本放到其他的游戏中,也是可以这样吗 感谢分享。。。下载一个试试 存档注入,葫芦侠有这方面的教程 感谢分享。 感谢分享,楼主 wqs0987 发表于 2022-4-26 17:01
感谢分享。。。下载一个试试
共同学习~ mokola 发表于 2022-4-27 00:06
存档注入,葫芦侠有这方面的教程
我马上去看看!感觉是个比较通用的方法。 感谢分享,楼主