mirror of
https://github.com/ARMSX2/ARMSX2.git
synced 2026-08-24 16:50:16 -07:00
resources: add the canonical mobile GameDB overlay
Introduce bin/resources-overlay/armsx2_overrides.yaml as the single source of truth for mobile-tier GameDB deltas, replacing the three independently-drifting copies (Android's committed GameIndex.yaml + its 124-line runtime overrides, and iOS's GameIndex[override].yaml). It is deliberately kept OUT of bin/resources/ so the desktop GLOB_RECURSE copy never picks it up; it is layered only on the tiler-GPU tiers. Generated by diffing the Android GameIndex (field-merged with the former runtime armsx2_overrides.yaml, the most-exercised mobile config) against the now-canonical bin/resources/GameIndex.yaml, and carrying only the behavioral fields that actually change emulation (gsHWFixes, clamp/round modes, gameFixes, speedHacks, patches, memcardFilters). Game names/region/compat are intentionally NOT carried so mobile inherits current upstream metadata rather than stale mobile copies. The GameDatabase override loader already applies this file from EmuFolders::Resources on every platform (initDatabase, is_override=true) and silently no-ops when it is absent, so nothing but the build's copy step gates whether a given tier gets it. Verified: loading bin + this overlay reproduces every one of Android's current behavioral GameDB fields with zero losses and zero value changes. The only differences from today's Android behavior are 37 additions across 36 serials (accurateAlphaTest, Silent Hill / Flushed Away / GT4 fixes, etc.) that Android's copy was simply stale on and now inherits from the upstream-tracked base — the overlay mechanism cannot express a field-removal, and inheriting the newer upstream value is the correct outcome for all of them.
This commit is contained in: