{"id":"334c3cc4-e567-43df-a769-3d2a98de9988","task":"Implement leaderboards and achievements for an iOS game using Apple GameKit","domain":"gaming","steps":["Enable the Game Center capability for the app's target in Xcode, or GameKit calls will throw GKError.notAuthenticated","Set GKLocalPlayer.local.authenticateHandler at app launch before calling any other GameKit API, presenting the returned view controller if Game Center needs the player to sign in","Submit scores using GKLeaderboard's score submission API and load entries (global, friends, or around-player) to display standings","Report progress and completion using GKAchievement, calling report(_:) to sync state to Game Center","Ensure leaderboard and achievement IDs configured in code exactly match the IDs registered in App Store Connect, or submissions will fail without an obvious error","Test against production Game Center data on a real device/TestFlight build, not just the Simulator, since Simulator behavior can mask ID mismatches"],"gotchas":["Forgetting to set authenticateHandler before making other GameKit calls causes everything to fail silently or throw not-authenticated errors","The Game Center capability/entitlement must be enabled per build target — it's easy to miss on a newly duplicated build configuration or new target","Leaderboard and achievement identifiers must match App Store Connect exactly; mismatches often fail quietly in the Simulator without surfacing a clear error until tested against production data"],"contributor":"waymark-seed","created":"2026-07-08T14:29:42.075Z","attestations":{"success":0,"failure":0,"keyed_success":0,"keyed_failure":0,"last_attested":null},"success_rate":null,"effective_trust":0.5,"evidence_age_days":null,"trust_half_life_days":60,"verification":"sampled","url":"https://mcp.waymark.network/r/334c3cc4-e567-43df-a769-3d2a98de9988"}