Perseus:Azur Lane脚本补丁工具完全指南
2026-04-01 09:14:08作者:咎竹峻Karen
一、项目价值解析:为何选择Perseus?
在移动游戏 mod 开发领域,内存偏移量依赖一直是开发者面临的主要挑战——游戏版本更新往往导致原有补丁失效。Perseus 作为一款专注于 Azur Lane 的脚本补丁工具,通过无偏移量依赖技术,实现了对游戏脚本的动态修改,尤其在皮肤解锁、功能扩展等场景中表现出色。
💡 核心优势:
- 版本无关性:无需因游戏更新重新计算内存偏移
- 轻量级集成:通过 JNI 接口与 Unity 游戏引擎无缝对接
- 配置灵活:支持通过 INI 文件自定义功能开关
二、技术架构解析:Perseus如何工作?
2.1 核心技术栈
- C++:底层补丁逻辑实现语言,提供高效内存操作能力
- JNI (Java Native Interface):实现 Java 与 C++ 代码的跨语言调用,是 Android 平台原生开发的桥梁
- Android NDK:将 C++ 代码编译为 Android 可执行的.so库文件
- And64InlineHook:Android 平台的内联钩子库,用于在运行时修改目标函数
- Obfuscate:字符串混淆工具,通过加密敏感字符串提高逆向难度
2.2 工作原理
Perseus 采用三层架构设计:
- 接口层:通过 JNI 暴露 Java 调用接口
- 核心层:C++ 实现的补丁引擎,包含钩子管理和内存操作模块
- 配置层:INI 文件解析模块,支持运行时功能配置
⚠️ 技术风险提示:内联钩子技术可能触发部分游戏的反作弊机制,请仅在个人设备上使用。
三、实践指南:从零开始使用Perseus
3.1 开发环境准备
必备工具:
- Android Studio Hedgehog (2023.1.1) 或更高版本
- Android NDK 25.1.8937393 或兼容版本
- OpenJDK 17
- Git 2.34+
3.2 项目获取与构建
-
克隆代码仓库
git clone https://gitcode.com/gh_mirrors/pers/Perseus✅ 预期结果:本地生成 Perseus 项目文件夹,包含完整源码结构
-
配置 NDK 路径
- 打开 Android Studio → File → Project Structure → SDK Location
- 确认 "Android NDK location" 已正确设置
- 如未配置,点击 "Download" 自动安装兼容版本
-
编译原生库
cd Perseus ./gradlew :app:externalNativeBuildDebug✅ 预期结果:在
app/build/intermediates/cmake/debug/obj目录下生成各架构的 libPerseus.so 文件
3.3 集成到 Unity 项目
-
导入原生库
- 将编译生成的
libPerseus.so文件复制到 Unity 项目的Assets/Plugins/Android/目录 - 确保包含 arm64-v8a、armeabi-v7a 和 x86 三个架构版本
- 将编译生成的
-
修改 UnityPlayerActivity
// 在 UnityPlayerActivity 类中添加 static { // 加载 Perseus 原生库 System.loadLibrary("Perseus"); } // 声明 JNI 接口 private static native void initialize(Context context); @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); // 初始化 Perseus 引擎 initialize(this); } -
创建配置文件 在设备存储根目录创建
Perseus.ini:[Features] # 启用皮肤解锁功能 UnlockAllSkins=true # 启用调试日志 DebugMode=false
3.4 测试与验证
-
部署应用
- 连接 Android 设备并启用 USB 调试
- 在 Android Studio 中点击 "Run" 按钮部署应用
-
验证功能
- 启动游戏后检查皮肤列表是否完整显示
- 查看 logcat 输出确认 Perseus 初始化信息:
I/Perseus: Engine initialized successfully I/Perseus: Configuration loaded from /sdcard/Perseus.ini
四、常见问题与解决方案
Q1: 应用启动后崩溃,提示 "libPerseus.so not found"
A:检查以下几点:
- 确保所有架构的 .so 文件都已正确放置
- 确认
System.loadLibrary("Perseus")调用位置正确 - 检查 AndroidManifest.xml 中是否声明了必要权限
Q2: 皮肤解锁功能不生效
A:可能原因及解决:
- INI 文件路径错误 - 确保文件位于
/sdcard/Perseus.ini - 配置项名称错误 - 检查是否使用了正确的键名 "UnlockAllSkins"
- 游戏版本不兼容 - 查看项目 README 获取支持的游戏版本信息
Q3: 编译时提示 NDK 版本不兼容
A:在 app/build.gradle 中指定兼容的 NDK 版本:
android {
defaultConfig {
externalNativeBuild {
cmake {
arguments "-DANDROID_NDK_VERSION=25.1.8937393"
}
}
}
}
五、扩展阅读
- 高级配置:通过修改 INI 文件可实现更多定制化功能,完整配置项说明参见项目中的
prompt_template.md - 源码解析:核心补丁逻辑位于项目根目录的 C++ 源文件中
- 社区支持:遇到问题可参考项目 LICENSE.md 中的联系方式获取帮助
💡 最佳实践:建议定期同步项目更新,以获取最新的兼容性修复和功能增强。在进行重大修改前,建议备份原始游戏文件和配置。
登录后查看全文
热门项目推荐
相关项目推荐
atomcodeClaude Code 的开源替代方案。连接任意大模型,编辑代码,运行命令,自动验证 — 全自动执行。用 Rust 构建,极致性能。 | An open-source alternative to Claude Code. Connect any LLM, edit code, run commands, and verify changes — autonomously. Built in Rust for speed. Get StartedRust0373
openPangu-2.0-Flash昇腾原生的openPangu-2.0-Flash语言模型Python00
GLM-5.2智谱开源 GLM-5.2,这是针对长文本任务的最新旗舰模型。相较于前代产品 GLM-5.1,它在长文本任务处理能力上实现了显著飞跃,并且首次在稳定的 100 万 token 上下文中提供这一能力。Jinja00
MiniMax-M3MiniMax-M3 是一款具备 100 万上下文窗口的原生多模态模型,拥有约 4280 亿参数和约 230 亿激活参数。Python00
awesome-LLM-resources🧑🚀 全世界最好的LLM资料总结(语音视频生成、Agent、辅助编程、数据处理、模型训练、模型推理、o1 模型、MCP、小语言模型、视觉语言模型) | Summary of the world's best LLM resources.05
banana-slides一个基于nano banana pro🍌的原生AI PPT生成应用,迈向真正的"Vibe PPT"; 支持上传任意模板图片;上传任意素材&智能解析;一句话/大纲/页面描述自动生成PPT;口头修改指定区域、一键导出 - An AI-native PPT generator based on nano banana pro🍌Python03
热门内容推荐
项目优选
收起
deepin linux kernel
C
32
16
暂无描述
Markdown
813
5.34 K
Ascend Extension for PyTorch
Python
777
1.04 K
本项目是CANN提供的transformer类大模型算子库,实现网络在NPU上加速计算。
C++
924
2.17 K
本项目是CANN提供的神经网络类计算算子库,实现网络在NPU上加速计算。
C++
748
1.48 K
openEuler内核是openEuler操作系统的核心,既是系统性能与稳定性的基石,也是连接处理器、设备与服务的桥梁。
C
480
489
Claude Code 的开源替代方案。连接任意大模型,编辑代码,运行命令,自动验证 — 全自动执行。用 Rust 构建,极致性能。 | An open-source alternative to Claude Code. Connect any LLM, edit code, run commands, and verify changes — autonomously. Built in Rust for speed.
Get Started
Rust
2.78 K
373
本仓库是 Flutter SDK 与 Flutter Engine 的 OpenHarmony 适配版本,由 CPF-Flutter 团队维护。开发者可使用熟悉的 Flutter 技术栈开发 OpenHarmony 应用,3.35.7 及以后的适配版本可基于本仓库源码构建支持 OpenHarmony 的 Flutter Engine。
Dart
1.08 K
281
本仓将收集和展示高质量的仓颉示例代码,欢迎大家投稿,让全世界看到您的妙趣设计,也让更多人通过您的编码理解和喜爱仓颉语言。
C
469
5.95 K
本项目是CANN提供的数学类基础计算算子库,实现网络在NPU上加速计算。
C++
1.16 K
1.18 K