7akeem0/007-firstlight-toolkit

GitHub: 7akeem0/007-firstlight-toolkit

一套用于修改 Glacier 引擎游戏 007 First Light 的 Python 工具集,提供从文本提取、字体安装到完整翻译注入的一站式本地化解决方案。

Stars: 10 | Forks: 2

# 007 First Light — Toolkit # 007 First Light 本地化工具包 本项目源于 2026 年的阿拉伯语本地化工作——这是该游戏的首次完整翻译。这些工具经过了通用化处理,可以服务于任何语言,而不仅仅是阿拉伯语。 ## 🇸🇦 阿拉伯语 ### 这个 Toolkit 是什么? 一套用于修改游戏 007 First Light(Glacier 引擎,RPKG v2 格式)的 Python 工具集。它可以: - 📖 **提取所有文本**(UI + 对话 + 发言者名称),导出为可编辑的 JSON。 - 🔤 **安装任何字体**(TTF)到游戏中,同时保持 engine 稳定。 - 💉 **通过一条命令注入完整的翻译**(UI + 对话 + 名称 + 字体)。 - 🔄 **通过一条命令还原所有内容**。 ### 前置条件 - Windows(也可在 Linux 上运行) - [Python 3.10+](https://www.python.org/downloads/) - 已安装的 007 First Light(Steam / GOG / Epic / Xbox / 任何自定义文件夹——自动检测,支持任何版本) ### 快速安装 ``` git clone https://github.com/7akeem0/007-firstlight-toolkit.git cd 007-firstlight-toolkit pip install -r requirements.txt ``` ### 三大主要用例 #### 1. 完整本地化游戏(阿拉伯语示例) ``` # 从游戏中提取所有文本 python tools/extract_text.py --game-dir "D:/SteamLibrary/steamapps/common/007 First Light" --out my_translation/ # 翻译 my_translation/ui.json, dialogue.json, speakers.json 中的值 # 从 Google 下载 Noto Kufi Arabic 字体并将其放入 examples/arabic/fonts/ # 使用单个命令安装所有内容 python tools/install_translation.py --config examples/arabic/translation_config.json ``` #### 2. 仅安装字体(无翻译) 如果你只想更改字符的外观: ``` python tools/install_font.py --config examples/arabic/font_config.json ``` #### 3. 浏览游戏文件 ``` # chunk0 中的所有资源列表 python tools/list_resources.py "D:/.../Runtime/chunk0.rpkg" # 仅字体 (GFXF) python tools/list_resources.py chunk0.rpkg --type GFXF # 提取特定字体 python tools/extract_font.py chunk0.rpkg 01DD9580958CDC9B my_font.GFXF ``` ### 恢复 ``` python tools/install_translation.py --restore # 或者 python tools/install_font.py --restore ``` ### 支持的语言 | 语言 | reshaping/bidi | 备注 | |---|:---:|---| | 阿拉伯语 | ✅ 自动 | 使用 Arabic Presentation Forms-B | | 波斯语 | ✅ 自动 | 添加 چ پ ژ گ | | 乌尔都语 | ✅ 自动 | 需要 Noto Nastaliq Urdu | | 土耳其语/法语/西班牙语等 | ❌ 不适用 | 带变音符号的拉丁字母 | | 俄语/保加利亚语等 | ❌ 不适用 | 西里尔字母 | ### 架构 ``` 007-firstlight-toolkit/ ├── glacier/ # المكتبة الأساسية (modular) │ ├── rpkg.py # قراءة/كتابة RPKG + XTEA + XOR │ ├── locr.py # نصوص الواجهة │ ├── dlge.py # نصوص الحوار + أسماء المتحدّثين │ ├── gfxf.py # بناء الخطوط │ ├── shaping.py # reshaping للعربي والفارسي │ └── steam.py # اكتشاف مسار اللعبة ├── tools/ # سكربتات CLI │ ├── list_resources.py # استعراض الموارد │ ├── extract_text.py # استخراج كل النصوص │ ├── extract_font.py # استخراج خط │ ├── install_font.py # تركيب خط (all-in-one) │ └── install_translation.py # تركيب ترجمة كاملة (all-in-one) ├── examples/ │ └── arabic/ # مثال عربي كامل وجاهز ├── docs/ │ ├── RPKG_FORMAT.md # توثيق صيغة الـ chunks │ ├── FONT_INJECTION.md # شرح حقن الخط │ └── TRANSLATION_WORKFLOW.md # سير عمل الترجمة └── README.md ``` ## 🇬🇧 English ### 这个 Toolkit 是什么? 一套用于修改 007 First Light(Glacier 引擎,RPKG v2)的 Python 工具集。它可以: - 📖 **提取所有文本**(UI + 对话 + 发言者名称),导出为可编辑的 JSON。 - 🔤 **安装任何字体**(TTF)到游戏中,同时保持 engine 稳定。 - 💉 **通过一条命令注入完整的翻译**(UI + 对话 + 名称 + 字体)。 - 🔄 **通过一条命令还原所有内容**。 ### 前置条件 - Windows(也可在 Linux 上运行) - [Python 3.10+](https://www.python.org/downloads/) - 已安装的 007 First Light(Steam / GOG / Epic / Xbox / 任何自定义文件夹——自动检测,且与版本无关:支持任何游戏版本) ### 快速安装 ``` git clone https://github.com/7akeem0/007-firstlight-toolkit.git cd 007-firstlight-toolkit pip install -r requirements.txt ``` ### 主要用例 #### 1. 完整翻译游戏(阿拉伯语示例) ``` # 从游戏中提取所有文本 python tools/extract_text.py --game-dir "D:/.../007 First Light" --out my_translation/ # 翻译 my_translation/ui.json, dialogue.json, speakers.json 中的值 # 从 Google Fonts 下载 Noto Kufi Arabic → 将其放入 examples/arabic/fonts/ # 使用单个命令安装所有内容 python tools/install_translation.py --config examples/arabic/translation_config.json ``` #### 2. 仅安装字体(无翻译) ``` python tools/install_font.py --config examples/arabic/font_config.json ``` #### 3. 浏览游戏文件 ``` python tools/list_resources.py chunk0.rpkg python tools/list_resources.py chunk0.rpkg --type GFXF python tools/extract_font.py chunk0.rpkg 01DD9580958CDC9B my_font.GFXF ``` ### 恢复 ``` python tools/install_translation.py --restore # 或 python tools/install_font.py --restore ``` ### 支持的语言 | 语言 | reshaping/bidi | 备注 | |---|:---:|---| | 阿拉伯语 | ✅ 自动 | 使用 Arabic Presentation Forms-B | | 波斯语 | ✅ 自动 | 添加 چ پ ژ گ | | 乌尔都语 | ✅ 自动 | 需要 Noto Nastaliq Urdu | | 土耳其语/法语/西班牙语等 | ❌ 不适用 | 带变音符号的拉丁字母 | | 俄语/保加利亚语等 | ❌ 不适用 | 西里尔字母 | ### 架构 `glacier/` 是一个纯净的 Python 包——你可以将其作为库使用。`tools/` 是封装了该库的 CLI 脚本。请查阅 `docs/` 获取深入的技术文档。 ### 致谢 - **游戏翻译与引擎逆向工程 (2026):** Hesham ([@7akeem0](https://github.com/7akeem0)) - **Toolkit(本仓库):** MIT — 随意使用。 ### 免责声明 本工具包不包含也不分发任何游戏资产。你必须拥有合法的 007 First Light 副本。该工具包不修改游戏可执行文件,仅修改数据归档,并包含恢复命令。
标签:Glacier引擎, Homebrew安装, Python, 文本提取, 无后门, 游戏Mod, 游戏本地化, 资源注入, 逆向工具