HarbourMasters/Starship

GitHub: HarbourMasters/Starship

将经典 N64 游戏「星际火狐64」通过反编译技术原生移植到 PC 及多平台的完整开源工程。

Stars: 1937 | Forks: 126

# Starship 主要开发者: * [SonicDcer](https://www.github.com/sonicdcer) * [Lywx](https://www.github.com/kiritodv) ## Discord 官方 Discord: 在阅读完本 `README` 后,如果你遇到任何问题,请随时在 Starship Support 文本频道中寻求帮助。请注意,我们绝不纵容盗版行为。 # 快速开始 Starship 不包含任何受版权保护的资产。你需要提供一份受支持的游戏副本。 ### 1. 验证你的 ROM 转储 受支持的 ROM 版本为 US 1.0 和 US 1.1 Rev A。你可以使用 的在线 SHA-1 文件校验工具来验证你是否转储了受支持的游戏副本。 * US 1.0 ROM 的 SHA-1 哈希值为 D8B1088520F7C5F81433292A9258C1184AFA1457。 * US 1.1 ROM 的 SHA-1 哈希值为 09F0D105F476B00EFA5303A3EBC42E60A7753B7A。 当与 US ROM 结合使用时,Starship 还支持使用 EU (Lylat) 和 JP (Japanese) 的语音语言替换。 注意:不支持使用 JP 和 EU 版本的游戏来创建基础资产 O2R,必须使用 US ROM 才能创建;并且你一次只能使用一种语音语言替换(EU 或 JP)。 ### 2. 验证你的 ROM 是否为 .z64 格式 你的 ROM 必须是 .z64 格式。如果是 .n64 格式,请使用以下工具将其转换为 .z64: ### 2. 从 [Releases](https://github.com/HarbourMasters/Starship/releases) 下载 Starship ### 3. 从 ROM 生成 OTR 并开始游戏! #### Windows * 将 zip 压缩包中的所有文件解压到你选择的文件夹中。 * 运行 starship.exe 并选择你的 US 1.0 或 US 1.1 ROM。 #### Linux * 将 zip 压缩包中的所有文件解压到你选择的文件夹中。 * 执行 starship.appimage。你可能需要通过终端运行 `chmod +x` 为该 appimage 赋予执行权限。 #### MacOS * 将 zip 压缩包中的所有文件解压到你选择的文件夹中。 * 运行 starship 并选择你的 US 1.0 或 US 1.1 ROM。 #### Nintendo Switch * 运行任意一个 PC 版本以生成 `sf64.o2r` 文件。在 PC 上启动游戏后,你可以在 `starship.exe` 或 `starship.appimage` 所在的同一目录中找到这些文件。 * 将这些文件复制到你的 SD 卡中。 # 配置 ### 默认键盘配置 | N64 | A | B | Z | Start | Analog stick | C buttons | D-Pad | | - | - | - | - | - | - | - | - | | Keyboard | X | C | Z | Space | WASD | Arrow keys | TFGH | ### 其他快捷键 | Keys | Action | | - | - | | F1 | Toggle menubar | | F4 | Reset | | F11 | Fullscreen | | Tab | Toggle Alternate assets | ### 图形后端 目前支持三种渲染 API:DirectX11 (Windows)、OpenGL (所有平台) 和 Metal (macOS)。你可以在菜单栏的 `Settings` 菜单中更改要使用的 API,更改后需要重新启动。如果你遇到崩溃问题,可以在 `starship.cfg.json` 文件中找到 `"Backend":{`... 并将 `id` 值更改为 `3`,将 `Name` 设置为 `OpenGL` 来更改 API。Windows 上默认使用 ID 为 `2` 的 `DirectX 11`。macOS 上默认使用 ID 为 `4` 的 `Metal`。 # 自定义资产 自定义资产被打包在 `.o2r` 或 `.otr` 文件中。要使用自定义资产,请将它们放置在 `mods` 文件夹中。 如果你有兴趣创建和/或打包自己的自定义资产 `.o2r`/`.otr` 文件,请查看以下工具: * [**retro - OTR 和 O2R 生成器**](https://github.com/HarbourMasters64/retro) * [**fast64 - Blender 插件(请注意,目前不支持 SF64)**](https://github.com/HarbourMasters/fast64) # 开发 ### 构建 如果你想手动编译 Starship,请参阅[构建说明](https://github.com/HarbourMasters/Starship/blob/main/docs/BUILDING.md)。 ### 试玩测试 如果你想试玩测试持续集成构建版本,可以在以下链接找到它们。请注意,这些版本仅用于试玩测试,你很可能会遇到错误甚至崩溃。 * [Windows](https://nightly.link/HarbourMasters/Starship/workflows/main/main/starship-windows.zip) * [macOS](https://nightly.link/HarbourMasters/Starship/workflows/main/main/Starship-mac.zip) * [Linux](https://nightly.link/HarbourMasters/Starship/workflows/main/main/Starship-linux.zip) * [Switch](https://nightly.link/HarbourMasters/Starship/workflows/main/main/Starship-switch.zip) Powered by libultraship # 特别感谢: * [ZeldaRET](https://github.com/zeldaret):为我传授了 N64 反编译的基础知识。 * [Decompals](https://github.com/decompals):在游戏最初的反汇编和反编译过程中提供了帮助。 * [HM64 Team](https://github.com/harbourMasters):创建了 Libultraship 并协助解决了各种问题。 * [DarioSamo](https://github.com/DarioSamo):为渲染器提供了重要的修复,并提供了有关游戏图形系统内部工作原理的信息。 * [garrettjoecox](https://github.com/garrettjoecox):为此移植版贡献了插值修复。 * [inspectredc](https://github.com/inspectredc):对 [SF64 反编译项目](https://github.com/sonicdcer/sf64)做出了贡献。 * [Lywx](https://github.com/KiritoDv):作为主要负责人合作开发此移植版,并创建了 [Torch](https://github.com/HarbourMasters/Torch) 资产提取系统。 * [m4xw](https://github.com/m4xw):协助解决了此移植版中的音频问题。 * [Malkierian](https://github.com/Malkierian):为此移植版贡献了重要的修复。 * [petrie911](https://github.com/petrie911):作为主要负责人对 [SF64 反编译项目](https://github.com/sonicdcer/sf64)做出了贡献。 * [Ryan-Myers](https://github.com/Ryan-Myers):对 [SF64 反编译项目](https://github.com/sonicdcer/sf64)做出了贡献。 * [Thar0](https://github.com/Thar0):贡献了改进的 Starfield,该组件可插值至任意帧率。 * [TheBoy181](https://github.com/TheBoy181):通过各种宽屏增强功能(如关卡地板、扩展的 Starfield 等)为本项目做出了贡献。 * [Wiseguy](https://github.com/Mr-Wiseguy):提供了有关 N64 平台内部工作原理的重要信息,并协助了反编译过程。
标签:C/C++, MacOS, N64模拟, Nintendo Switch, O2R, OTR, ROM Hacking, SF64 PC移植版, Ship of Harkinian, Star Fox 64, Starship, UML, URL提取, 事务性I/O, 任天堂64, 反编译, 客户端加密, 开源游戏, 星际火狐64, 民间移植, 游戏引擎重制, 游戏移植, 游戏逆向工程, 经典游戏复刻