招募日翻英翻 QQ群 20550973
使用3ds_decrypt_v2
使用DotNet3dsToolkit146
根据名称分析可知位于Message文件夹
解包美版rom,将所有文件复制进Citra日版游戏的Mod位置,再挨个移除,确定系统文本位于Table,通过UltraEdit在目录(Table文件夹)中搜索-高级-使用编码-shift-JIS(通过对话文本编码可知),搜索游戏中出现的系统文本,可定位至文件。其中有3种格式的文本,分别为:
- 0000|ffff开头00结尾,2个字节一跳
- 先用4字节记录序号,再用0x20字节记录标题文本,0x80字节记录描述文本
- 0x30开始固定位存储开始指针,指向下方文本区域,0x00标记结束符
同上,可知位于Texture文件夹,编辑stex文件即可修改
这些字符居然被硬编码在可执行文件里了,还好知道它用的是shift-jis编码。通过(Yes=8278 8285 8293)(No=826d 828f)(はい=82CD 82A2)(いいえ=82a2 82a2 82a6)定位,更改为确定取消的映射编码。总共有5处
导出txt
3dsfont\bcfnt2charset CHIARO_14.bcfnt CHIARO_14.txt
txt文档包含信息有:字符列表与字符排列顺序
3dsfont\charset2xllt CHIARO_14.txt CHIARO_14.xllt
3dsfont\charset2xlor CHIARO_14.txt CHIARO_14.xlor
-
修改xllt中的unicode代码可增删字符,增添字符需要指定系统字体
-
修改xlor中的unicode代码可在导出图片时变更字符的排序
将3dsfont与FontConverter置于同一文件夹下,将bcfnt拷贝至此文件夹
@set str=%~nx1
@set a=%str:~0,-6%
3dsfont\bcfnt2charset %a%.bcfnt %a%.txt
3dsfont\charset2xlor %a%.txt FontConverter\xlor\%a%.xlor
3dsfont\charset2xllt %a%.txt FontConverter\xllt\%a%.xllt
Pause
新建bat文件,将bcfnt拖至此bat上
需注意3dsfont只能生成utf16编码的文件
geneChinese2Jis.py
统计出现的所有字符并拼接基本文本(假名英文字母符号)生成映射码表与真实码表
根据真实码表生成字体bmp,根据映射码表生成xllt与xlor
结合以上三者生成bcfnt
exportLang.py
translateByGoogle.py
translateByPygtrans.py
textTableGet.py
importLang.py
textTableImport.py
convertZh2Jis.py