{
  "added_at": "2026-10-18",
  "additional_evidence_urls": [
    "https://github.com/HarbourMasters/Ghostship/blob/40eef13823a954a466574dc78e73187a17a2dd42/docs/building.md",
    "https://github.com/HarbourMasters/Ghostship/blob/40eef13823a954a466574dc78e73187a17a2dd42/CMakeLists.txt",
    "https://github.com/HarbourMasters/Ghostship/blob/40eef13823a954a466574dc78e73187a17a2dd42/.gitmodules",
    "https://github.com/HarbourMasters/Ghostship/blob/40eef13823a954a466574dc78e73187a17a2dd42/LICENSE.md",
    "https://github.com/HarbourMasters/Ghostship/tree/40eef13823a954a466574dc78e73187a17a2dd42/src",
    "https://github.com/HarbourMasters/Ghostship/tree/40eef13823a954a466574dc78e73187a17a2dd42/.github/workflows",
    "https://github.com/HarbourMasters/Ghostship/releases/tag/3.0.0"
  ],
  "category": "reconstruction-cases",
  "description_en": "Builds Super Mario 64 as a native PC, Switch and Android program by compiling decompilation-style game source against the libultraship platform library. A bundled extractor converts the user’s US or Japanese ROM into an O2R archive at first launch or build time. The project ships modern renderers, configuration menus and mod-archive loading, not a matching ROM.",
  "description_zh": "将反编译风格的游戏源码编译到 libultraship 平台库上，把 Super Mario 64 构建为原生 PC、Switch 和 Android 程序。附带的提取工具会在首次启动或构建时，把使用者自备的美版或日版 ROM 转换为 O2R 存档。项目提供现代渲染器、配置菜单和模组存档加载，而不是生成一致的 ROM。",
  "entry_url": "https://awesomerea.org/resources/ghostship-sm64-port-case/",
  "entry_url_zh": "https://awesomerea.org/zh/resources/ghostship-sm64-port-case/",
  "evidence_url": "https://github.com/HarbourMasters/Ghostship/blob/40eef13823a954a466574dc78e73187a17a2dd42/README.md",
  "group": "cases",
  "id": "ghostship-sm64-port-case",
  "json_url": "https://awesomerea.org/resources/ghostship-sm64-port-case/record.json",
  "kind": "case-study",
  "markdown_url": "https://awesomerea.org/resources/ghostship-sm64-port-case/index.md",
  "markdown_url_zh": "https://awesomerea.org/zh/resources/ghostship-sm64-port-case/index.md",
  "name": "Ghostship: a libultraship native port of Super Mario 64",
  "name_zh": "Ghostship：基于 libultraship 的 Super Mario 64 原生移植",
  "reconstruction_method": "port",
  "record_type": "resource",
  "relationship": "independent-reconstruction",
  "requirement_facets": [
    "attribution",
    "prerequisites",
    "prerequisites",
    "testing",
    "license"
  ],
  "requirements": [
    "The reviewed develop branch declares version 3.0.0, matching the latest “Alfa” release. Its src tree keeps the audio, engine, game, goddard and menu layout of the n64decomp/sm64 reconstruction, with port code under src/port.",
    "Supply your own Super Mario 64 ROM in .z64 byte order: the README accepts only the US and Japanese releases and lists their SHA-1 values. PC releases convert it to sm64.o2r; the Switch build reuses an O2R generated on PC, and the Android app checks the ROM hash and converts it on the device. No game data is bundled.",
    "Source builds use CMake with the libultraship and Torch submodules: Visual Studio 2022 with the v143 toolset, Python 3 and CMake on Windows, or GCC/Clang, Ninja, SDL2, libzip and the listed libraries on Linux. Renderers are DirectX 11, OpenGL, Metal and Vulkan where drivers allow. The building guide still names sf64.o2r and 2s2h.elf from other Harbour Masters ports.",
    "GitHub Actions workflows build Windows, macOS, Linux, Switch and web packages. The README calls CI builds playtest-only and warns of bugs and crashes. No matching, regression or original-hardware comparison result is published.",
    "The root LICENSE.md is MIT (2026, Lywx) for the project’s own code. Submodules keep their own terms, and Nintendo’s code-derived content and ROM assets are not licensed by it; the README says it does not condone piracy."
  ],
  "requirements_zh": [
    "所审阅的 develop 分支声明版本为 3.0.0，与最新的“Alfa”发行版一致。其 src 目录保留了 n64decomp/sm64 重建项目的 audio、engine、game、goddard 和 menu 结构，移植代码位于 src/port。",
    "需自备 .z64 字节序的 Super Mario 64 ROM：README 只接受美版和日版，并列出两者的 SHA-1 值。PC 发行版会把 ROM 转换为 sm64.o2r；Switch 版复用在 PC 上生成的 O2R，Android 应用则先核对 ROM 哈希，再在设备上完成转换。项目不附带任何游戏数据。",
    "源码构建使用 CMake 及 libultraship、Torch 子模块：Windows 需 Visual Studio 2022（v143 工具集）、Python 3 和 CMake，Linux 需 GCC／Clang、Ninja、SDL2、libzip 及列出的其他库。渲染器包括 DirectX 11、OpenGL、Metal，以及驱动支持时的 Vulkan。构建指南仍写着其他 Harbour Masters 移植项目的 sf64.o2r 和 2s2h.elf。",
    "GitHub Actions 工作流构建 Windows、macOS、Linux、Switch 和网页版本。README 称 CI 构建仅供试玩，并提醒可能出现错误和崩溃。项目没有公布一致性、回归或与原硬件对比的结果。",
    "根目录 LICENSE.md 以 MIT（2026，Lywx）授权项目自有代码。子模块各有条款；源自任天堂代码的内容和 ROM 素材不受该许可覆盖，README 表示不支持盗版。"
  ],
  "targets": [
    "game"
  ],
  "url": "https://github.com/HarbourMasters/Ghostship",
  "verification": "source-reviewed",
  "verified_at": "2026-10-18"
}
