{
 "generated_at": "2026-10-17T04:31:41.278Z",
 "project": {
  "id": "sonicbattle",
  "name": "Sonic Battle decompilation",
  "url": "https://decompendium.com/projects/sonicbattle/",
  "api_url": "https://decompendium.com/api/v1/projects/sonicbattle.json",
  "repo": "https://github.com/cypressru/SonicBattleDecomp",
  "game": {
   "id": "sonic-battle",
   "name": "Sonic Battle",
   "platform": "gba",
   "url": "https://decompendium.com/games/sonic-battle/"
  },
  "description": "Matching decompilation of Sonic Battle.",
  "note": null,
  "owners": [
   "cypressru"
  ],
  "status": "active",
  "show_in_index": true,
  "ai_policy": "unspecified",
  "confirmed": false,
  "links": {},
  "listed_at": "2026-10-16",
  "last_commit_at": "2026-09-16T21:37:32Z",
  "last_activity": "2026-09-16T21:37:32Z",
  "quiet": false,
  "targets": [
   {
    "id": "bsbe78",
    "label": "BSBE78 (USA)",
    "region": "us",
    "version": null,
    "hash": {
     "algo": "sha1",
     "value": "8cf4fbbe73f6b1907ab9997caab4c4e7d9708937"
    },
    "progress_kind": "objdiff",
    "state": "current",
    "checked_at": "2026-10-17T04:31:04.014Z",
    "last_error": null,
    "latest": {
     "commit": "23091f6190afc1a39f08f14a3e70d2a1b47fd762",
     "commit_at": "2026-09-16T21:37:32Z",
     "taken_at": "2026-10-16T13:12:25.899Z",
     "code": {
      "matched": 0,
      "total": 271018,
      "percent": 0
     },
     "linked": {
      "matched": 0,
      "total": 271018,
      "percent": 0
     },
     "functions": {
      "matched": 0,
      "total": 1300,
      "percent": 0
     },
     "data": {
      "matched": 0,
      "total": 16506198,
      "percent": 0
     },
     "fuzzy_percent": 57.795,
     "categories": [
      {
       "id": "game",
       "name": "Game",
       "code": {
        "matched": 0,
        "total": 253318,
        "percent": 0
       },
       "linked": {
        "matched": 0,
        "total": 253318,
        "percent": 0
       },
       "functions": {
        "matched": 0,
        "total": 1116,
        "percent": 0
       },
       "data": {
        "matched": 0,
        "total": 48908,
        "percent": 0
       },
       "fuzzy_percent": 56.142
      },
      {
       "id": "sdk",
       "name": "SDK",
       "code": {
        "matched": 0,
        "total": 15462,
        "percent": 0
       },
       "linked": {
        "matched": 0,
        "total": 15462,
        "percent": 0
       },
       "functions": {
        "matched": 0,
        "total": 157,
        "percent": 0
       },
       "data": {
        "matched": 0,
        "total": 846,
        "percent": 0
       },
       "fuzzy_percent": 80.571
      },
      {
       "id": "runtime",
       "name": "Runtime",
       "code": {
        "matched": 0,
        "total": 1958,
        "percent": 0
       },
       "linked": {
        "matched": 0,
        "total": 1958,
        "percent": 0
       },
       "functions": {
        "matched": 0,
        "total": 24,
        "percent": 0
       },
       "data": {
        "matched": 0,
        "total": 266,
        "percent": 0
       },
       "fuzzy_percent": 100
      },
      {
       "id": "assets",
       "name": "Data and assets",
       "code": {
        "matched": 0,
        "total": 0,
        "percent": null
       },
       "linked": {
        "matched": 0,
        "total": 0,
        "percent": null
       },
       "functions": {
        "matched": 0,
        "total": 0,
        "percent": null
       },
       "data": {
        "matched": 0,
        "total": 6664622,
        "percent": 0
       },
       "fuzzy_percent": null
      },
      {
       "id": "rodata",
       "name": "Read-only data",
       "code": {
        "matched": 0,
        "total": 0,
        "percent": null
       },
       "linked": {
        "matched": 0,
        "total": 0,
        "percent": null
       },
       "functions": {
        "matched": 0,
        "total": 0,
        "percent": null
       },
       "data": {
        "matched": 0,
        "total": 8658924,
        "percent": 0
       },
       "fuzzy_percent": null
      },
      {
       "id": "payload",
       "name": "Embedded payload",
       "code": {
        "matched": 0,
        "total": 280,
        "percent": 0
       },
       "linked": {
        "matched": 0,
        "total": 280,
        "percent": 0
       },
       "functions": {
        "matched": 0,
        "total": 3,
        "percent": 0
       },
       "data": {
        "matched": 0,
        "total": 1132632,
        "percent": 0
       },
       "fuzzy_percent": 0
      }
     ]
    },
    "history_url": "https://decompendium.com/api/v1/history/sonicbattle/bsbe78.json",
    "badges": {
     "code": "https://decompendium.com/badges/sonicbattle/bsbe78/code.svg",
     "linked": "https://decompendium.com/badges/sonicbattle/bsbe78/linked.svg",
     "functions": "https://decompendium.com/badges/sonicbattle/bsbe78/functions.svg"
    }
   }
  ]
 }
}
