【原创】明日方舟 修改教学 (HOOK)
本帖最后由 NewsJai 于 2019-8-12 21:46 编辑https://img.taplb.com/md5/2e/a1/2ea1a63c45fe294d36e29e348d441ea3?TapTapIcon
【语 言】- 中文
【软体名称】- 明日方舟
【版本资讯】- v0.7.31
【更新日期】- 2019-07-08
【使用权限】- 免费,已修改,全程需连网
【系统支持】- 支持Android 4.0.3 以上版本 <不能100%保证所有手机装置设备都可以完美运行游戏>http://chuantu.biz/t6/136/1510357807x1039116168.jpg
【前言】我怕我再不發帖會被清理而且看一下能不能混個精華~.~所以就發個帖希望各位高抬貴手多多指教
【修改内容】2倍功擊力
3倍防禦力
【准备工具】
7-zip : http://www.7-zip.org/Android-Hooking-Template-master : https://github.com/joeyjurjens/Android-Hooking-Template解压缩工具 : https://pan.baidu.com/s/1bqGe9yf下载安装JAVA JDK : http://www.oracle.com/technetwor ... nloads-2133151.htmlAndroid NDK : https://developer.android.com/ndk/downloads/older_releasesVisual Studio : https://visualstudio.microsoft.com/zh-hant/?rr=https%3A%2F%2Fwww.google.com%2FIl2CppDumper : https://github.com/Perfare/Il2CppDumper/releases
【注意事項】1.設定compile.bat您的Android NDKndk-build 在哪裡就設定在那裡2.修改Android-Hooking-Template-master\Smali Files\libLoader$1圖中 const-string/jumbo v0, "NewsJai""NewsJai"為新成的.so,可隨意更改
【修改教学】
1.解压缩后开启明日方舟
2.打開\lib\armeabi-v7a
libil2cpp.so 是重點libil2cpp.so ,相關的遊戲修改教學論壇上很多大家可以去了解一下3.打開\assets\bin\Data\Managed\Metadata
4.把global-metadata及libil2cpp提取到\Il2CppDumper
5.使用Il2CppDumper得出dump.cs
6.打開dump.cs
7.搜索 public abstract class Entity : BObject, IHotfixable public public float get_atk相信大家已經看到很多有用的函數但不建議大家改太誇張8.修改get_atk這樣修改可逹致秒殺但敵方亦有相同效果9.解決辨法搜索public class BObject : VisualObject, IReusableObjectpublic SideType get_side此處是代表敵人,那我們要調用此處的數以便分別友方及敵人10.修改打開Hook\Android-Hooking-Template-master\jni\hook.cpp修改hook.cpp 如下:
11.解釋int(*orig_get_side)(void* _this);
int hook_get_side(void* _this)
{
return orig_get_side(_this);
}
hook get_side 作用是為了讓hook.cpp能夠識別以進行下一步修改float(*orig_get_atk)(void *_this);
float hook_get_atk(void *_this)
{
int newsjai = orig_get_side(_this);
if (newsjai == 1)
{
return 2 * orig_get_atk(_this);
}
return orig_get_atk(_this) / 3;
}
hook get_atk 進行修改
int newsjai = orig_get_side(_this);
if (newsjai == 1)此處是調用get_side以便分別友方及敵人
{
return 2 * orig_get_atk(_this);
}
return orig_get_atk(_this) / 3;
}第一個return是友方第二個return是敵人13.生成libhook.so运行/b]compile.bat
14.MSHookFunction }
MSHookFunction((void *)getRealOffset(0x1A30C10), (void *)&hook_get_side, (void **)&orig_get_side);
MSHookFunction((void *)getRealOffset(0x18FFF24), (void *)&hook_get_atk, (void **)&orig_get_atk);
}1A30C10及18FFF24為get_side及get_atk偏移量如改版則需修改此處
15.注入libhook.so生成後的libhook.so位於Android-Hooking-Template-master\libs\armeabi-v7a把libhook.so放於com.hypergryph.arknights-20190802144905\lib\armeabi-v7a
提取Android-Hooking-Template-master\Smali Files把Smali Files放於com.hypergryph.arknights-20190802144905\smali\com並改名為loadLib
打開com.hypergryph.arknights-20190802144905\smali\com\unity3d\player\UnityPlayerActivity搜索.method protected onCreate(Landroid/os/Bundle;)V 加入invoke-static {}, Lcom/loadLib/libLoader;->loadLib()Vinvoke-static 為調用com/loadLib/libLoader
16.必须签名后才能运行否则请使用已ROOT的手机
明日方舟官网:https://ak.hypergryph.com/index
大佬好 之前拆包过大佬发的0728版本 受益良多 由于不太会hook只能修改so来实现简单的修改
不过我在修改0731版时 意外发现了安卓层有一些检测代码 不过好像检测并不会使修改后的包崩溃 只是上报信息 可能是作为封号依据吧
希望能出个64位的框架 我运行compile.bat闪退 好深奥,只能支持一下 哇 很厉害 虽然我不玩
另外七夕节快乐! 哎,脑子一片浆糊,看不懂啊 学习了,谢谢 学习到了,谢谢 这个厉害,能说说原理就更好了 我玩明日方舟。。但是完全看不懂这是在干嘛。。。 终于学会怎么修改明日方舟了! 留名关注