R3EXS
RGSS3_Extract_Strings_Tool
一个用来提取和翻译 RGSS3 游戏引擎的字符串的工具
目录
- 简介
- 特点
- 功能列表
- 安装方法
- 使用方法
- 项目构建
- 项目文档
- 友情链接
简介
R3EXS 是一个基于 Ruby 语言,用来提取和翻译 RGSS3 游戏里字符串的 gem
特点
使用 Prism 实现了对 Ruby 脚本中的字符串和符号的精准提取
功能列表
- 解包 Game.rgss3a 文件
- 序列化 rvdata2 文件为 json 格式
- 反序列化 json 文件为 rvdata2 格式
- 提取所有的字符串
- 注入所有的字符串
安装方法
使用 RubyGems 安装
gem install R3EXS
直接下载 exe 可执行文件
点击下载 R3EXS.exe
Windows
环境提供 R3EXS-windows-Ocran
和 R3EXS-windows-Tebako
Linux (GLIBC>=2.31)
环境提供 R3EXS-linux-Tebako
在首次运行时会解压 Ruby 环境,所以首次运行会比较慢
使用方法
以下代码均假设在游戏根目录下运行,确保 ./Game.rgss3a
文件存在,或者已经解包到 ./Data
文件夹下
如果你喜欢疯狂输出的控制台或者觉得运行太快,请开启 --verbose
选项
解包 Game.rgss3a 文件
NAME
decrypt - 解码 Game.rgss3a 文件
SYNOPSIS
R3EXS [global options] decrypt [command options] <Game.rgss3a file path>
COMMAND OPTIONS
-o, --output_dir=DIRECTORY - *.rvdata2 文件的输出目录 (默认: ./)
示例代码
R3EXS decrypt ./Game.rgss3a
序列化 rvdata2 文件为 json 格式
NAME
rvdata2_json - 将 rvdata2 文件序列化为 json 格式
SYNOPSIS
R3EXS [global options] rvdata2_json [command options] <the *.rvdata2 dir>
COMMAND OPTIONS
-c, --[no-]complete - 开启完全序列化
-n, --[no-]with_notes - 开启注释序列化
-o, --output_dir=DIRECTORY - *.json 文件的输出目录 (默认: ./JSON)
-s, --[no-]with_scripts - 开启 Scripts 脚本序列化
示例代码
// 只序列化可翻译部分
R3EXS rvdata2_json ./Data
// 完全序列化
R3EXS rvdata2_json -c ./Data
反序列化 json 文件为 rvdata2 格式
NAME
json_rvdata2 - 将 json 文件反序列化为 rvdata2 文件
SYNOPSIS
R3EXS [global options] json_rvdata2 [command options] <the *.json dir>
COMMAND OPTIONS
-c, --[no-]complete - 开启完全反序列化
-o, --output_dir=DIRECTORY - 新的 *.rvdata2 文件的输出路径 (默认: ./Data_NEW)
-r, --original_dir=DIRECTORY - 原始的 *.rvdata2 文件路径 (默认: ./Data)
-s, --[no-]with_scripts - 开启 Scripts 脚本反序列化
示例代码
// 如果在 rvdata2_json 时没有开启 --complete 选项
// 则必须提供 --original_dir 或是当前目录下存在 ./Data 文件夹
R3EXS json_rvdata2 ./JSON
// 如果在 rvdata2_json 时开启 --complete 选项
// 则不需要提供 --original_dir 选项
R3EXS json_rvdata2 -c ./JSON
提取所有的字符串
NAME
ex_strings - 提取所有的字符串
SYNOPSIS
R3EXS [global options] ex_strings [command options] <the *.json dir>
COMMAND OPTIONS
-o, --output_dir=DIRECTORY - ManualTransFile.json 或 ManualTransFile_scripts.json 文件的输出目录 (默认: ./)
-p, --[no-]with_scripts_separate - 开启 Scripts 脚本单独提取到 ManualTransFile_scripts.json 文件
-s, --[no-]with_scripts - 开启 Scripts 脚本提取
-y, --[no-]with_symbol - 开启 Scripts 脚本中的 Symbol 提取
示例代码
// 不提取 Scripts 脚本
R3EXS ex_strings ./JSON
// 提取 Scripts 脚本
R3EXS ex_strings -s ./JSON
// 提取 Scripts 脚本并单独提取到 ManualTransFile_scripts.json 文件
R3EXS ex_strings -s -p ./JSON
注入所有的字符串
NAME
in_strings - 注入所有的字符串
SYNOPSIS
R3EXS [global options] in_strings [command options] <the *.json dir>
COMMAND OPTIONS
-m, --manualtransfile_path=FILE - ManualTransFile.json 文件路径 (默认: ./ManualTransFile.json)
-o, --output_dir=DIRECTORY - 新的 *.json 文件的输出目录 (默认: ./JSON_NEW)
-s, --[no-]with_scripts - 开启 Scripts 脚本注入
示例代码
// 不注入到 Scripts 脚本
R3EXS in_strings ./JSON
// 注入到 Scripts 脚本
R3EXS in_strings -s ./JSON
想要获取更多帮助,使用
R3EXS help
项目构建
如果想要构建项目并运行,首先克隆整个项目
git clone git@github.com:LuoTat/R3EXS.git
然后使用 bundle
安装依赖
bundle install
最后编译 C 扩展即可
rake compile
构建本地文档
yardoc
构建 R3EXS_Ocran.exe
可执行文件
rake ocran
查看所有 rake 任务
rake -T