{
  "commit": "fbe5ba4e3e790ab07eddc5b57e0f45a02cbcd60e",
  "count": 1,
  "generated_at": "2026-10-24T00:06:47Z",
  "items": [
    {
      "id": "srb2",
      "profile": {
        "core_classification": "game_engine",
        "core_version": "2.2.15",
        "cores": [
          "srb2"
        ],
        "display_name": "Sonic Robo Blast 2",
        "emulator": "Sonic Robo Blast 2",
        "files": [
          {
            "bundled": true,
            "category": "game_data",
            "description": "Main game assets",
            "md5": "3182ce524acc2072ddaa81acf4b6a9aa",
            "name": "srb2.pk3",
            "path": "srb2/srb2.pk3",
            "required": true,
            "sha1": "f53394ceabded0a307330d81a4ae4db59e269ecb",
            "size": 50115266,
            "source_ref": "src/d_main.c:1196-1206, src/d_main.c:1482, src/config.h.in:46",
            "validation": [
              "md5"
            ]
          },
          {
            "bundled": true,
            "category": "game_data",
            "description": "Level data",
            "md5": "88ff4c300851ccdb0406698eadd89907",
            "name": "zones.pk3",
            "path": "srb2/zones.pk3",
            "required": true,
            "sha1": "de0e5d630c1f93472be22f981f68033107f059a2",
            "size": 18503511,
            "source_ref": "src/d_main.c:1215, src/d_main.c:1483, src/config.h.in:47",
            "validation": [
              "md5"
            ]
          },
          {
            "bundled": true,
            "category": "game_data",
            "description": "Playable character data",
            "md5": "5c5936b8a690e007c0939bd0785a41fb",
            "name": "characters.pk3",
            "path": "srb2/characters.pk3",
            "required": true,
            "sha1": "c070cd568f6579a94372e70f6c789fc479247d5c",
            "size": 2044315,
            "source_ref": "src/d_main.c:1218, src/d_main.c:1484, src/config.h.in:48",
            "validation": [
              "md5"
            ]
          },
          {
            "bundled": true,
            "category": "game_data",
            "description": "Music and sound effects",
            "md5": "b8763719b66716dbd5c0f9982269be69",
            "name": "music.pk3",
            "note": "Hashes are those of the 2.2.15 release archive. The engine does not check them.",
            "path": "srb2/music.pk3",
            "required": false,
            "sha1": "84095f245c724899f52d4912f2c01e0fc9d42dc0",
            "size": 99639560,
            "source_ref": "src/d_main.c:1224-1238, src/d_main.c:1488"
          }
        ],
        "notes": "Sonic fan game by Sonic Team Junior, built on a modified Doom Legacy\nengine. The pin is tag SRB2_release_2.2.15, the revision RetroPie builds\n(ports/srb2.sh, _version_srb2). The GitHub repository mirrors the\nproject's GitLab and carries the same tag commit.\n\nThe game assets are not in the source tree. They ship in the release\narchive SRB2-v2215-Full.zip, which RetroPie unpacks and installs next to\nthe binary. The hashes below are those of the files in that archive.\n\nIdentifyVersion() (src/d_main.c:1161-1240) finds the asset directory\nthrough I_LocateWad(), which tries SRB2WADDIR, the working directory,\nthe default install paths, $HOME/.srb2 and the search paths in that\norder (src/sdl/i_system.c:3044-3097), and chdirs there. The first\ndirectory holding srb2.pk3 wins. RetroPie launches the binary from its\ninstall directory. srb2/ below stands for that directory.\n\nsrb2.pk3, zones.pk3 and characters.pk3 are main files: W_InitFile with\nstartup set ends in I_Error when one is missing (src/w_wad.c:805-817).\nA build without DEVELOP then checks their MD5 against ASSET_HASH_*\n(src/config.h.in:46-48, src/d_main.c:1482-1484) and W_VerifyFileMD5\nstops on a mismatch (src/w_wad.c:2550-2590). The CMake option\nSRB2_CONFIG_DEV_BUILD, off by default, is what defines DEVELOP\n(src/CMakeLists.txt:149, 380-381). patch.pk3 is loaded only when\nUSE_PATCH_DTA is defined, which it is not in this release\n(src/doomdef.h:171).\n\nmusic.pk3 is not hashed. MUSICTEST adds it only when it holds music and\nsound lumps alone, rejects it with an error when it holds anything else,\nand skips it when it cannot be opened (src/d_main.c:1224-1238,\nsrc/w_wad.c:2810, 2840).\n",
        "profiled_date": "2026-10-20",
        "source": "https://github.com/STJr/SRB2",
        "source_commit": "639b58c6d718452ef343a0bc927d043bed9e40d6",
        "systems": [],
        "type": "standalone",
        "upstream": "https://git.do.srb2.org/STJr/SRB2",
        "verification": "existence"
      }
    }
  ],
  "kind": "emulators",
  "schema_version": 1
}
