HarbourMasters/Lighthouse

GitHub: HarbourMasters/Lighthouse

Lighthouse 是一款基于 libultraship 框架开发的《Banjo-Kazooie》跨平台原生移植引擎,让经典 N64 游戏在现代系统上以原生方式运行。

Stars: 163 | Forks: 13

# Lighthouse Harbour Masters 制作的《Banjo Kazooie》移植版 主要开发者: * Malkierian 开发者: * JeodC * Caladius # 快速开始 Lighthouse 不包含任何受版权保护的资产。您需要提供一份受支持的游戏副本。 ### 1. 验证您的 ROM dump 支持以下列出的任何零售版本。您可以通过 https://www.romhacking.net/hash/ 上的 SHA-1 File Checksum Online 来验证您是否 dump 了一份受支持的游戏副本。 * `baserom.us.v10.z64`: `1fe1632098865f639e22c11b9a81ee8f29c75d7a` * `baserom.us.v11.z64`: `ded6ee166e740ad1bc810fd678a84b48e245ab80` * `baserom.jp.z64`: `90726d7e7cd5bf6cdfd38f45c9acbf4d45bd9fd8` * `baserom.pal.z64`: `bb359a75941df74bf7290212c89fbc6e2c5601fe` 如果您有多个区域版本的游戏,并希望将它们用作语言包,请参阅下文的 `# 语言包`。 ### 2. 验证您的 ROM 是否为 .z64 格式 您的 ROM 需要是 .z64 格式。如果它是 .n64 格式,请使用以下工具将其转换为 .z64:https://hack64.net/tools/swapper.php ### 3. 从 [Releases](https://github.com/HarbourMasters/Lighthouse/releases) 下载 Lighthouse ### 4. 从 ROM 生成 OTR 并开始游戏! #### Windows * 将压缩包中的所有文件解压到您选择的文件夹中。 * 运行 lighthouse.exe 并选择您兼容的 ROM。 #### Linux * 将压缩包中的所有文件解压到您选择的文件夹中。 * 执行 lighthouse.appimage。您可能需要通过终端执行 chmod +x 为该 appimage 赋予可执行权限。 #### MacOS * 将压缩包中的所有文件解压到您选择的文件夹中。 * 运行 lighthouse 并选择您兼容的 ROM。 # 配置 Lighthouse 自带一个包含许多标准控制器映射的文件,可以直接在大多数控制器上使用。如果 Lighthouse 无法识别您的控制器,或者无法正常工作,您可以在“设置”菜单中使用内置的映射器创建您自己的自定义映射。 ### 默认键盘配置 | N64 | A | B | Z | Start | 摇杆 | C 按键 | 方向键 | | - | - | - | - | - | - | - | - | | 键盘 | X | C | Z | Space | WASD | 方向键 | TFGH | ### 其他快捷键 | 按键 | 动作 | | - | - | | ESC | 切换菜单栏 | | Ctrl+R | 重置 | | F11 | 全屏 | | Tab | 切换备用资产 | ### 图形后端 目前支持三种渲染 API:DirectX11(Windows)、OpenGL(所有平台)和 Metal(macOS)。您可以在菜单栏的 `Settings` 菜单中更改要使用的 API,更改后需要重新启动。如果您遇到崩溃问题,可以在 `lighthouse.cfg.json` 文件中找到 `"Backend":{`... 这一行并将 `id` 值更改为 `2`,同时将 `Name` 设置为 `OpenGL`。在 Windows 上,默认使用 id 为 `1` 的 `DirectX 11`。在 macOS 上,默认使用 id 为 `3` 的 `Metal`。 # 语言包 Lighthouse 支持使用多个区域的 Banjo-Kazooie 作为语言包。生成您的基础 `bk.o2r` 文件并在 Lighthouse 启动后,打开 imgui 菜单。在 General -> Languages 下,您可以选择另一个 ROM 作为语言包进行提取。PAL 版本支持英语(英国)、法语和德语,而日文版增加了日语支持。语言包生成后,其包含的语言将被添加到下拉菜单中。 # Romhacks 许多 romhacks 可以从已打补丁的 ROM 中提取,并作为 mod 与 Lighthouse 一起使用。这可以在游戏中通过 Settings 部分的 Romhacks 菜单完成。如果某个 hack 未能得到完全支持,菜单在提取 mod 时会通知您。目前大多数受支持的 romhacks 尚未经过全面测试,因此可能仍存在一些问题。 _注意:使用 romhacks 时,仅支持 US v1.0,这是继承自 Banjo's Backpack 的限制。因此,建议您使用 **US v1.0** 作为基础 `bk.o2r` 文件。 # 自定义资产 自定义资产打包在 `.o2r` 或 `.otr` 文件中。要使用自定义资产,请将它们放在 `mods` 文件夹中。 如果您有兴趣创建和/或打包自己的自定义资产 `.o2r`/`.otr` 文件,请查看以下工具: * [**retro - OTR 和 O2R 生成器**](https://github.com/HarbourMasters64/retro) * [**fast64 - Blender 插件(请注意,目前不支持 BK64)**](https://github.com/HarbourMasters/fast64) # 开发 ### 构建 如果您想手动编译 Lighthouse,请查阅[构建说明](https://github.com/HarbourMasters/Lighthouse/blob/main/docs/BUILDING.md)。 # Playtesting 如果您想 playtest 持续集成的构建版本,可以在以下链接中找到它们。请注意,这些版本仅供 playtesting 使用,您很可能会遇到 bug 甚至崩溃。 * [Windows](https://nightly.link/HarbourMasters/Lighthouse/workflows/main/main/Lighthouse-windows.zip) * [macOS](https://nightly.link/HarbourMasters/Lighthouse/workflows/main/main/Lighthouse-mac.zip) * [Linux](https://nightly.link/HarbourMasters/Lighthouse/workflows/main/main/Lighthouse-linux.zip) Powered by libultraship # 特别感谢: * GiantJigglypuff3,感谢其广泛且持续的 Banjo Decomp 文档 * Fredomato、scorched11,感谢其在 rando 上的工作
标签:C++, N64模拟, UML, 云资产清单, 客户端加密, 开源重制, 数据擦除, 游戏引擎, 逆向工程