diff --git a/fifa17-recon/docs/CARD_SYSTEM.md b/fifa17-recon/docs/CARD_SYSTEM.md index 13f456d..4a415c6 100644 --- a/fifa17-recon/docs/CARD_SYSTEM.md +++ b/fifa17-recon/docs/CARD_SYSTEM.md @@ -2,6 +2,31 @@ Status as of 2026-08-01. All clean-room (our own binaries + running client only). +## ★ SOLVED: real player cards render offline + +A full 88-rated real squad (Ronaldo/Messi/Suárez/Ramos/Kroos/…) renders 100% +offline. The definition FETCH turned out to be unnecessary — FIFA has all player +identity data locally in `dbdata.dll`. **The CLUB-SEARCH / ADD-PLAYER flow is the +trigger:** when FIFA displays club-search results (`GET /club?year=..&type=player& +count=..`, served by our `/club` route), it resolves each item's assetId against +its own local DB (real name/photo/club/nation) and merges the rating/attributes +our `/club` item carries, then caches a real record in the CardsDb store +(`obj+0x160c0`). No `idList` fetch, no leaked data. + +**Working recipe:** +- `utas_server` on `FUT_SQUAD_STEP=s3v0` → `/club` serves the full XI (real asset + IDs + our attributes). +- In FUT: Squads editor → Add Player / player-name **search** → results render as + real cards → **add them to slots** → full real squad. +- Distinction: the squad-EMBED path (`GET /squad/0` itemData) does NOT resolve + (generic); only the CLUB-SEARCH/ADD path resolves. So: serve-club + search/add. + +Cosmetic-only nit: card short-name label shows a default "BAS" (real full names +are in the record + Player Details panel) — likely the FUT commonName/knownAs +field; low priority. + +Everything below is the reverse-engineering that led here. + ## Where we are Offline FIFA 17 Ultimate Team runs end-to-end on our backend: