{
  "added_at": "2026-10-17",
  "additional_evidence_urls": [
    "https://github.com/open-goal/jak-project/blob/32c3cf73970f885c0a588623208232db72a74a58/CMakeLists.txt",
    "https://github.com/open-goal/jak-project/blob/32c3cf73970f885c0a588623208232db72a74a58/LICENSE",
    "https://github.com/open-goal/jak-project/blob/32c3cf73970f885c0a588623208232db72a74a58/docs/setup/system/linux.md",
    "https://github.com/open-goal/jak-project/blob/32c3cf73970f885c0a588623208232db72a74a58/docs/setup/system/macos.md"
  ],
  "category": "reconstruction-cases",
  "description_en": "Reconstructs readable GOAL code from the original Jak binaries and compiles it with a new GOAL compiler for modern PCs. Its workflow combines a specialized decompiler, manually supplied type information, asset extraction and an interactive development runtime.",
  "description_zh": "从 Jak 原二进制重建可读的 GOAL 代码，再用新编写的 GOAL 编译器为现代 PC 编译。流程结合专用反编译器、人工补充的类型信息、素材提取和交互式开发运行时。",
  "entry_url": "https://awesomerea.org/resources/opengoal-jak-case/",
  "entry_url_zh": "https://awesomerea.org/zh/resources/opengoal-jak-case/",
  "evidence_url": "https://github.com/open-goal/jak-project/blob/32c3cf73970f885c0a588623208232db72a74a58/README.md",
  "group": "cases",
  "id": "opengoal-jak-case",
  "json_url": "https://awesomerea.org/resources/opengoal-jak-case/record.json",
  "kind": "case-study",
  "markdown_url": "https://awesomerea.org/resources/opengoal-jak-case/index.md",
  "markdown_url_zh": "https://awesomerea.org/zh/resources/opengoal-jak-case/index.md",
  "name": "OpenGOAL: recovering GOAL code and rebuilding the Jak games",
  "name_zh": "OpenGOAL：恢复 GOAL 代码并重建 Jak 系列游戏",
  "reconstruction_method": "decompilation",
  "record_type": "resource",
  "relationship": "independent-reconstruction",
  "requirement_facets": [
    "prerequisites",
    "scope",
    "prerequisites",
    "prerequisites",
    "license"
  ],
  "requirements": [
    "Requires the user’s original PS2 game copy and extracted assets. The README covers retail PAL, NTSC and NTSC-J editions, including Greatest Hits, and excludes later PS3/PS4/PS5 releases.",
    "The pinned README reports Jak 1 as complete, Jak 2 as beta with remaining issues, and substantial work still needed for Jak 3.",
    "The supported runtime is x86-64 on Windows, Linux and macOS. The macOS guide requires Rosetta 2 on Apple Silicon and lists macOS Sequoia; native ARM64 builds are experimental and unsupported. No mobile release is planned.",
    "Development uses C++20, CMake, NASM and platform libraries, then the project’s asset-extraction and GOAL compilation steps. The documented task commands need the corresponding task runner; runtime code editing is a development feature.",
    "ISC license for project work; original game assets and third-party components retain their own rights."
  ],
  "requirements_zh": [
    "需要用户自备原版 PS2 游戏及提取出的素材。README 涵盖 PAL、NTSC、NTSC-J 零售版和 Greatest Hits 版，不涵盖后来的 PS3/PS4/PS5 版本。",
    "固定版本 README 将 Jak 1 列为完成、Jak 2 列为仍有问题的测试版，并称 Jak 3 尚有大量工作。",
    "受支持的运行时为 Windows、Linux 和 macOS 上的 x86-64 版本。macOS 指南要求 Apple Silicon 使用 Rosetta 2，并列出 macOS Sequoia；原生 ARM64 构建仍属实验性且不受支持。项目没有移动版计划。",
    "开发需要 C++20、CMake、NASM 和平台库，再执行项目的素材提取与 GOAL 编译流程。文档中的 task 命令需要相应任务运行器；运行时代码编辑属于开发功能。",
    "项目自身工作采用 ISC 许可；原游戏素材和第三方组件保留各自权利。"
  ],
  "targets": [
    "game"
  ],
  "url": "https://github.com/open-goal/jak-project",
  "verification": "source-reviewed",
  "verified_at": "2026-10-17"
}
