如何用自有ROM构建多语言Emerald 3DS:西班牙语、法语与意大利语版本构建教程

发布时间:2026/11/4 11:51:42
如何用自有ROM构建多语言Emerald 3DS:西班牙语、法语与意大利语版本构建教程 【免费下载链接】emerald-3dsNative Pokémon Emerald port for Nintendo 3DS, featuring dual-screen gameplay, stereoscopic 3D, and a fully 3D world.项目地址https://gitcode.com/gh_mirrors/em/emerald-3ds点击查看免费下载Emerald 3DS 是《宝可梦 红宝石/绿宝石》系列的任天堂 3DS 原生移植版支持双屏操作与体感 3D 世界。它的最大特点之一是多语言构建游戏使用你自有卡带 ROM的语言来编译官方支持英语、西班牙语BPES、法语BPEF和意大利语BPEI。本教程带你从源码出发用一条命令构建西/法/意三语的 3DSX 游戏并讲解构建流程、语言校验机制与安装要点。 四种语言全部来自你的 ROMEmerald 3DS 不分发任何游戏内容文本、图形、字幕都提取自你本地的一份干净、未修改的 ROM dump。构建器通过 SHA-1 指纹识别卡带语言语言卡带游戏代码干净 ROM 的 SHA-1英语Pokémon Emerald (USA, Europe)BPEEf3ae088181bf583e55daf962a92bb46f4f1d07b7西班牙语Pokémon Esmeralda (Spain)BPESfe1558a3dcb0360ab558969e09b690888b846dd9法语Pokémon Émeraude (France)BPEFca666651374d89ca439007bed54d839eb7bd14d0意大利语Pokémon Versione Smeraldo (Italy)BPEI1692db322400c3141c5de2db38469913ceb1f4d4⚠️ 德语、日语卡带以及 ROM hack 均不支持。ROM 只被读入内存不会被复制、上传或修改。指纹定义见 rom.py。️ 构建环境准备在开始之前请确认你的开发机满足 docs/DEVELOPMENT.md 列出的要求devkitPro 工具链devkitARM、libctru、citro2d、citro3d、3dstools含picasso着色器汇编器。例如pacman -S --needed libctru citro2d citro3d 3dstools原生 C/C 编译器用于反编译工具与主机端测试Windows 下使用 MSYS2 MinGW64 的 gcc/g。Python 3.11 与 Pillow本地化脚本与构建器都依赖它。git拉取锁定版本的引擎源码。 获取源码仓库本身只包含移植代码、补丁与构建工具不包含引擎本体。运行 tools/bootstrap.py 会自动完成三件事读取 upstream.lock浅克隆锁定 commit 的 pret/pokeemerald 到build/upstream按顺序应用 patches/pokeemerald/ 下的全部移植补丁将3ds_port/、builder/、tools/放置进构建树使 Makefile 的相对路径可用。git clone https://gitcode.com/gh_mirrors/em/emerald-3ds cd emerald-3ds python tools/bootstrap.py⚡ 一条命令构建西/法/意版本这是本教程的核心。bootstrap 提供三个本地化参数分别对应三种语言见 bootstrap.py 头部说明# 西班牙语BPES python tools/bootstrap.py --make --spanish-rom /path/to/Pokemon Esmeralda.gba -j8 # 法语BPEF python tools/bootstrap.py --make --french-rom /path/to/Pokemon Emeraude.gba -j8 # 意大利语BPEI python tools/bootstrap.py --make --italian-rom /path/to/Versione Smeraldo.gba -j8构建成功后3DSX 会输出到build/upstream/3ds_port/emerald3ds.3dsx三个语言构建会依次执行对应的本地化脚本参数本地化脚本语言清单manifest--spanish-romlocalize_spanish.pyspanish.json.gz--french-romlocalize_french.pyfrench.json.gz--italian-romlocalize_italian.pyitalian.json.gz语言专项补丁除本地化脚本外每种语言还有专属引擎补丁均位于PORT_BRIDGE之下例如 patches/pokeemerald/ 中的西班牙语0035-spanish-native-pokedex-units.patch、0036-spanish-berry-tag-layout.patch法语0041-french-ending-tilemap.patch、0045-french-native-row-dimensions.patch、0047-french-pokedex-number-format.patch意大利语0049-italian-layout.patch、0050-italian-ending-tilemap.patch这些补丁处理语言相关的排版细节法语九列键盘与法文字母表序、意大利语加宽的招式属性表与LA FINE结尾画面、西/意语原生单位米/千克等具体差异说明见 docs/SPANISH.md、docs/FRENCH.md、docs/ITALIAN.md。 构建过程到底做了什么以西班牙语为例--spanish-rom构建的完整链路是校验 ROMlocalize_spanish.py先核对 ROM 的 SHA-1以及清单中每个源文件的 SHA-256 指纹确认无误才会写入任何文件提取文本与图形从你的 ROM 替换名称、对话、菜单、词汇表、吟游诗人歌曲、训练家台词、地图文本与盲文残页文本等西班牙语共提取 104 项图形资源并重建 55 页字幕与 Trainer Hill 楼层编译 3DSX在build/upstream/内完成全部编译。清单文件tools/locales/只记录代码位置、ROM 内偏移、符号名与地址不含任何游戏文本或数据。若移植代码改动过清单覆盖的源文件本地化会中止并提示Source differs from the pinned patched tree。 引擎级语言锁定引擎会校验自身的编译语言西语构建的 3DSX 只接受由 BPES 生成的数据包英/法/意同理。语言混用会在启动时被直接拒绝这是防止西语引擎 英语文本之类错配的关键设计。⚠️ 切换语言会重置构建树反复切换语言例如先跑--spanish-rom再跑--french-rom时bootstrap 会清空已编译对象与已本地化资源并重建整棵树避免复用另一种语言的缓存数据。所以一次会话只构建一种语言即可切换前请做好心理准备等待一次完整编译。 安装到 3DS 并运行把构建产物放入 SD 卡或先用测试卡验证避免覆盖现有安装目录结构如下3ds/emerald3ds/Emerald3DS.3dsx # 构建产物西班牙语构建即为西语版 3ds/emerald3ds/Emerald3DS.smdh # 标题密钥 3ds/emerald3ds/emerald3ds.pak # 数据包由 builder 生成来自源码树的 3DSX 已将数据嵌入 RomFS可直接用 Homebrew Launcher 运行。若要走引擎 数据包的正式发行形态可用 builder 从 ROM 生成emerald3ds.pakpython -m emerald3ds_builder --payload /path/to/payload install --rom /path/to/esmeralda.gba --sd /path/to/sdcardbuilder 会自动识别 ROM 语言并选择对应构建变体Emerald3DS-es.3dsx/Emerald3DS-fr.3dsx/Emerald3DS-it.3dsx均会被保存为Emerald3DS.3dsx更多命令见 builder/README.md。别忘了声音音频需要SD:/3ds/dspfirm.cdc注意是在3ds/目录根部而不是3ds/emerald3ds/内该文件不包含在发行包中缺失时游戏可以运行但没有声音。存档保存在SD:/3ds/emerald3ds/emerald3ds.sav更新安装不会覆盖它详细安装与更新流程见 docs/INSTALLATION.md。❓ 常见问题速查问题原因与解决构建报错ROM 不被识别dump 不干净或不是支持的四个版本之一用 SHA-1 对照上表核对本地化中止Source differs from the pinned patched tree移植补丁改动过清单覆盖的文件需更新清单中的位置与指纹启动时提示数据包不兼容3DSX 与 pak 的语言/版本不匹配用同一语言的构建重新生成切换语言后编译极慢属正常现象语言切换会重置整棵构建树并全量重编译运行无声检查SD:/3ds/dspfirm.cdc是否存在且位置正确 小结环境devkitPro 主机 C 编译器 Python 3.11python tools/bootstrap.py准备构建树构建--spanish-rom/--french-rom/--italian-rom一条命令完成校验、本地化与编译产物build/upstream/3ds_port/emerald3ds.3dsx放入SD:/3ds/emerald3ds/即可运行深入阅读docs/SPANISH.md、docs/FRENCH.md、docs/ITALIAN.md、docs/DEVELOPMENT.md、docs/ASSET_PIPELINE.md。祝你用母语重走丰缘享受双屏与立体 3D 带来的全新冒险赞分享【免费下载链接】emerald-3dsNative Pokémon Emerald port for Nintendo 3DS, featuring dual-screen gameplay, stereoscopic 3D, and a fully 3D world.项目地址https://gitcode.com/gh_mirrors/em/emerald-3ds点击查看免费下载相关推荐Anime4K如何在5分钟内为你的动漫视频开启4K超清体验Anime4K如何在5分钟内为你的动漫视频开启4K超清体验 还在为观看低分辨率动漫时的模糊画面而烦恼吗Anime4K是一套革命性的实时动漫视频画质提升系统图像处理深度学习多语言报税系统终极指南如何用Direct File构建英语和西班牙语国际化解决方案多语言报税系统终极指南如何用Direct File构建英语和西班牙语国际化解决方案 Direct File是一个功能强大的开源报税系统支持英语和西班牙语双语政务服务企业应用后端前端认证鉴权NLP-progress 西班牙语文本摘要MLSUM 多语言摘要数据集与西班牙语 SOTA 结果追踪NLP progress 西班牙语文本摘要MLSUM 多语言摘要数据集与西班牙语 SOTA 结果追踪 本文基于 NLP progress 仓库中的 spani知识库文档NLP上一篇Agentic Awesome Skills 视觉指南AAS Core 工作流与技能分发全景图解下一篇无人机数据窃取全攻略Damn Vulnerable Drone上7种外泄攻击实战飞行日志/FTP/相机/任务文件创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

关于本文作者

来自尧图内容编辑团队

尧图内容编辑团队 内容团队

尧图内容编辑团队

本文由尧图网络内容编辑团队执笔。团队由资深项目经理、前端工程师与设计师组成,所有内容均来自亲手交付的真实项目,先讲清问题、再给出可落地的解法。尧图深耕北京网站建设十年,服务过京华建材集团、智造科技等各行业客户,把一线经验沉淀为可复用的行业观察。

  • 十年建站经验,覆盖建材、制造、服务、文创等
  • 项目经理把关选题与事实准确性
  • 工程师与设计师联合撰写专业细节
  • 统一编辑规范,保证文风与排版一致
  • 每月复盘转化数据,迭代选题方向

延伸阅读

相关资讯与近期热门内容

深度阅读推荐

建站决策前值得细读的三篇

网站改版的5个关键决策
2024-08-12

网站改版的5个关键决策

什么时候该改版、改到什么程度、如何避免流量掉光,京华建材集团改版复盘给出答案。

获取专属建站方案

看完文章,把您的行业与预算告诉我们,免费获取一份量身定制的官网建设方案与报价。

立即免费咨询