乱码分三种,成因与解法都不同。先分清楚坏掉的是文件名、游戏内文字,还是游戏本身在报错。
文件名乱码
- 成因
- 日文游戏与补丁的压缩包,文件名多为 Shift-JIS 编码;简体汉化补丁多为 GBK。在不对应的系统上解压,文件名会变成问号或方块。
- 为什么要处理
- 游戏的脚本文件以文件名互相引用,名称错误就读不到文件,表现出来就是补丁装了没反应。
- 怎么解
- 7-Zip 的解压对话框没有编码选项。改用 Bandizip 或 WinRAR,两者的解压窗口都有编码下拉菜单,选 Japanese (Shift-JIS) 或 Chinese Simplified (GBK) 即可。
游戏内乱码
- 成因
- 日文游戏读取文字时,默认系统的非 Unicode 编码是 Shift-JIS。中文系统会把同一串字节当成 GBK 解读,画面就是一堆错字。
- Locale Emulator
- 只针对单个程序伪装区域,不改动系统设置。安装后在游戏的 .exe 右键,选「Locale Emulator → Run in Japanese」。要固定用日文启动就选「Modify」建立快捷方式。
- 右键没有菜单
- 需要以管理员身份运行一次 LEInstaller。注册 shell extension 的行为敏感,部分杀毒会拦截。
系统区域设置
| 做法 | 生效范围 | 副作用 | 适合 |
|---|---|---|---|
| Locale Emulator | 单个程序 | 无,系统设置不动 | 偶尔玩日文游戏 |
| 改系统区域设置 | 全系统,需重启 | 其他非 Unicode 中文程序会变乱码 | 日文游戏是主要用途,或老游戏 LE 处理不了 |
常见问题
- 装了 Locale Emulator 但右键没有菜单?
- LEInstaller 没有以管理员身份运行,或运行后没有刷新 Explorer。以管理员身份重跑并点 Install,然后注销再登录,或用任务管理器重启资源管理器。
- 改成日文区域之后游戏还是乱码?
- 检查解压时文件名是否已经坏掉。文件名在解压阶段就写错的话,改区域救不回来,要删掉整个文件夹用正确编码重解。
- Steam 版的日文游戏也需要这样做吗?
- 多半不用。Steam 上架的版本通常已改为 Unicode。仍然乱码时先确认游戏的语言设置,路径是属性 → 通用 → 语言,再考虑 Locale Emulator。