【免费下载链接】emerald-3ds
Native Pokémon Emerald port for Nintendo 3DS, featuring dual-screen gameplay, stereoscopic 3D, and a fully 3D world.
Emerald 3DS是一个将《宝可梦 绿宝石》(Pokémon Emerald)原生移植到 Nintendo 3DS的开源项目:游戏不经过任何模拟器,直接运行在 3DS 的 ARM11 上,上屏呈现完整游戏画面,下屏则是一套全新的双屏触控操作界面,并可开启体素(voxel)模式以全 3D 视角重新探索神奥之外的丰缘地区。
一、项目概览:这是什么?
| 项目信息 | 说明 |
|---|---|
| 项目定位 | Pokémon Emerald 的 3DS 原生移植(homebrew),非模拟器 |
| 核心框架 | libctru + Citro2D / Citro3D |
| 支持语言 | 英语、西班牙语、法语、意大利语(四种语言均从玩家自有卡带构建) |
| 数据来源 | 本地构建器从玩家自己的干净 ROM 生成数据包,仓库不含任何游戏内容 |
| 运行前提 | 已刷入定制固件(Luma3DS)的 3DS / 2DS,或 3DS 模拟器 |
💡 这个仓库不包含任何游戏 ROM 内容——它只有移植代码、构建工具和文档。游戏数据在构建时由你自己的卡带转储生成,这是项目的一大特色(详见特性 10)。
二、快速上手:如何获得可运行的游戏?
推荐方式:浏览器网页构建
官方提供网页版构建器,全程在浏览器中完成:选择你自己的支持版本 ROM → 本地生成数据包 → 下载游戏文件并放入 SD 卡。ROM 只在本地被读取,不会上传。
备选方式:桌面构建器
Windows:下载发布包中的 ZIP,运行
Emerald3DS-Builder.exe,选择 ROM 和 SD 卡后点击 Install,会生成:3ds/emerald3ds/Emerald3DS.3dsx 3ds/emerald3ds/Emerald3DS.smdh 3ds/emerald3ds/emerald3ds.pakLinux / macOS:用 Python 3.11+ 与 Pillow 从源码运行:
python -m emerald3ds_builder --payload /path/to/payload install --rom /path/to/rom.gba --sd /path/to/card
完整的安装、声音配置(需要SD:/3ds/dspfirm.cdc)与更新说明见 docs/INSTALLATION.md;构建器本身的文档在 builder/README.md。
三、10 大核心特性全景解读
1️⃣ 真正的原生 Homebrew,而非模拟
游戏代码以 pokeemerald 反编译工程为基础,在 3DS 的 ARM11 上原生命令执行:游戏保留自己的主循环(AgbMain)和 GBA 寄存器模型,移植层只补齐 GBA 硬件原本提供的一切(GPU 合成、NDSP 音频、触摸输入)。入口见 3ds_port/src/main_3ds.c 与 3ds_port/src/3ds_video.c,整体分层讲解见 docs/ARCHITECTURE.md。
2️⃣ 双屏一体:下屏触控菜单取代 START 键
下屏提供地图、队伍、背包、训练家卡片、图鉴、PokéNav、存档与设置,全部可触摸操作。需要游戏自身逻辑的动作(换宝可梦、用道具)会在上屏保持最后一帧的同时,后台驱动原版菜单完成。核心实现在 3ds_port/src/3ds_bottom_ui.c 和 3ds_port/src/3ds_bottom_screen.c。
3️⃣ 可选体素 3D 外世界
开启VOXEL 3D后,可用建筑、树木、路牌与地形起伏构成的 3D 世界替代平面地图,相机角度与缩放可调。0.4.0 版本中 Slateport 已建模完成(市场、博物馆、竞技场、船坞),110 号道路的自行车道做成了高架桥,Rusturf 隧道从岩壁中雕出,Rustboro 喷泉带动态水柱。地图完成度一览见 docs/VOXEL_STATUS.md,3D 渲染核心在 3ds_port/src/voxel/ctr_voxel.c,场景资产由 3ds_port/scripts/gen_voxel_buildings.py 等脚本生成。
4️⃣ 四语言完整支持:从你自己的卡带构建
英语(BPEE)、西班牙语(BPES)、法语(BPEF)、意大利语(BPEI)四种官方语言的文本、图形与制作名单全部取自玩家自己的卡带转储,而非内置翻译。各语言指南:docs/SPANISH.md、docs/FRENCH.md、docs/ITALIAN.md。
5️⃣ HD 战斗界面与 3D 战斗
战斗信息框和文本框按上屏全分辨率 400×240绘制,文本框带边距浮动;在体素世界中可开启 3D 战斗,文本框随电影黑边退场滑入,且深度在属性变化、混合背景与透明招式中保持稳定。
6️⃣ 昼夜光照 + 最高 120 倍速时钟
设置DAY / NIGHT → AUTO后,室外出现晨间、白天、黄昏与夜晚四种光照,夜晚呈柔和的月光蓝,体素世界的窗户与街灯会亮起暖光。CLOCK SPEED 可选 1X~120X(120X 时 12 分钟过一天),果实随加速时钟生长,每日事件与 GBA 存档格式保持不变。细节见 docs/DAY_NIGHT.md。
7️⃣ 跟随宝可梦(Follower Pokémon)
开启ENHANCEMENTS → FOLLOWER后,队伍首只宝可梦会以心金/魂银的野外精灵图样跟在你身后,进出传送点、冲浪、骑车时自动收进球,和它对话还会回应叫声与台词。构建器负责下载这些精灵资源,是构建中唯一需要网络的步骤(离线则跳过此功能)。相关实现见 builder/emerald3ds_builder/followers.py。
8️⃣ 本地联机(实验性)
2~4 台相同版本与语言的 3DS 可通过 Union Room 使用宝可梦中心的交换、对战,以及浆果搅拌机、迷你游戏与对战塔联机。官方标注为实验特性,尝试前请先备份存档。
9️⃣ 一整套可开关的游戏性增强
全部可选、默认关闭:物理/特殊分类分离、详细信息页显示 IV/EV、无限 TM、室内奔跑、驱逐剂提示、可见野生宝可梦(含按时段出现的草丛遭遇)、1.5 倍速档位等。56 个移植补丁整齐放在 patches/pokeemerald/,例如 patches/pokeemerald/0046-physical-special-split.patch、patches/pokeemerald/0014-visible-wild.patch。
🔟 一切由你自己的卡带本地构建
发布包与仓库均不含 ROM 内容:引擎锁定在 upstream.lock 指定的 pokeemerald 修订版,数据包emerald3ds.pak由构建器从玩家自己的干净转储在本地生成,不上传、不复制、不修改 ROM。数据管线原理见 docs/ASSET_PIPELINE.md。
四、仓库结构导航
| 模块 | 路径 | 作用 |
|---|---|---|
| 上游引擎锁定 | upstream.lock | 固定 pokeemerald 反编译工程的版本 |
| 移植补丁 | patches/pokeemerald/ | 移植对上游引擎的全部修改 |
| 3DS 后端 | 3ds_port/ | ARM11 后端、GPU 合成器、NDSP 音频、触控 UI 与体素外世界 |
| 构建器 | builder/emerald3ds_builder/ | 从玩家 ROM 本地生成数据包(含 web.py 网页构建) |
| 构建入口 | tools/bootstrap.py | 拉取上游 + 打补丁 + 编译 3DSX |
| 编译配置 | 3ds_port/Makefile | 3DSX 构建规则 |
开发者从源码构建只需一行:
python tools/bootstrap.py --make开发流程、测试与数据打包机制见 docs/DEVELOPMENT.md。
五、文档索引与版本历史
| 指南 | 内容 |
|---|---|
| docs/INSTALLATION.md | 安装、声音配置与更新 |
| docs/ARCHITECTURE.md | 引擎与 3DS 后端如何协同 |
| docs/ASSET_PIPELINE.md | 游戏数据如何为移植做准备 |
| docs/DAY_NIGHT.md | 昼夜、时钟与时段遭遇 |
| docs/VOXEL_STATUS.md | 逐地图的体素建模进度 |
| CHANGELOG.md | 各版本变更历史 |
六、写在最后
Emerald 3DS 用「原生执行 + 双屏触控 + 体素 3D」的组合,证明了 GBA 经典可以在 3DS 上脱离模拟器获得新生的玩法。如果你正在寻找宝可梦绿宝石 3DS 移植、3DS homebrew 双屏游戏或体素 3D 重制方向的开源参考,这个项目的分层架构(游戏层 / 移植补丁 / 3DS 后端 / 本地构建器)本身就是一份值得研读的范本。🎮
【免费下载链接】emerald-3ds
Native Pokémon Emerald port for Nintendo 3DS, featuring dual-screen gameplay, stereoscopic 3D, and a fully 3D world.
相关推荐
如何在3DS上原生运行GBA游戏:open_agb_firm完整指南
如何在3DS上原生运行GBA游戏:open_agb_firm完整指南 想要在3DS上获得原汁原味的GBA游戏体验吗?open_agb_firm项目让你能够利用3
嵌入式固件驱动开发游戏开发如何在3DS上原生运行GBA游戏:open_agb_firm完整指南
如何在3DS上原生运行GBA游戏:open_agb_firm完整指南 想要在3DS上获得原汁原味的GBA游戏体验吗?open_agb_firm项目让你能够利用3
嵌入式固件驱动开发游戏开发open_agb_firm:3DS上原生运行GBA游戏的终极解决方案
open_agb_firm:3DS上原生运行GBA游戏的终极解决方案 open_agb_firm 是一个创新的开源项目,专门为任天堂3DS设备提供原生运行Gam
嵌入式固件驱动开发游戏开发
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考