一键导入
gb64-metadata-parser
Use this skill when writing scripts to ingest, parse, and sanitize legacy GameBase64 exports into clean JSON or SQLite for 64Box.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
Use this skill when writing scripts to ingest, parse, and sanitize legacy GameBase64 exports into clean JSON or SQLite for 64Box.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
Use this skill when implementing ROM scanning and CRC hashing logic for matching local files against the GameBase64 database.
Use this skill when implementing the 64Box desktop wrapper with Tauri and Rust, including secure IPC, local scanning, and external emulator launch flows.
Use this skill when implementing the WebAssembly C64 emulator bridge for web and iOS, including ROM loading, touch controls, and mobile-safe initialization.
| name | gb64-metadata-parser |
| description | Use this skill when writing scripts to ingest, parse, and sanitize legacy GameBase64 exports into clean JSON or SQLite for 64Box. |
| version | 1.0.0 |
| author | 64Box |
| tags | ["gb64","metadata","sqlite","parsing","data-ingestion"] |
The original GameBase64 database was built over decades using legacy tools such as MS Access. Apply these rules during ingestion:
?, (Unknown), (None), and sentinel year values like 9999 into null or NULL.English / German where appropriate.The GB64 database relies on a strict XX_Id foreign key naming convention. Games.csv is the central hub.
Games.csv)GA_Id: Integer primary key.Name: Game title.Filename / FileToRun: Path to the ROM file. Sanitize for cross-platform paths.ScrnshotFilename: Default screenshot path.SidFilename: SID music path.CRC: Used for auto-scanner matching.V_PalNTSC: Map to human-readable video standard values.V_TrueDriveEmu: Used for emulator launch flags.Classic: Normalize legacy truthy values into booleans.Resolve these foreign keys into nested objects for JSON, or preserve strict foreign keys in SQLite:
AR_Id -> Artists.csvCR_Id -> Crackers.csvDE_Id -> Developers.csvDI_Id -> Difficulty.csvGE_Id -> Genres.csvLA_Id -> Languages.csvLI_Id -> Licenses.csvYE_Id -> Years.csvMU_Id -> Musicians.csvPU_Id -> Publishers.csvPR_Id -> Programmers.csvRA_Id -> Rarities.csvPG_Id inside Genres.csv -> PGenres.csvExpose both parent and sub-genre for frontend filtering.
Extras.csv by GA_Id: nest as ordered arrays of box art, manuals, maps, and covers.Music.csv by GA_Id: nest as playable track arrays.ViewData.csv and ViewFilters.csv: convert into structured config the frontend can use for dynamic playlists.Name, CRC, GE_Id, PG_Id, and YE_Id.