70a64e3709
Freeze the running offline FUT backend into version control as fifa17-recon/docker/fifa17-python/ - declarative and rebuildable from a fresh checkout: * OPENFUT_BIND / OPENFUT_ADVERTISE client/server split in the responders (lsx, blaze, roster, utas, pow) + entrypoint.sh; OPENFUT_ADVERTISE is required for remote mode (compose and entrypoint fail without it) * docker-compose.yml reproducing the frozen baseline container exactly (env, ports incl. the 8085->8080 POW-content remap, /state bind, restart) * .env.example / .env for site config - the LAN IP is never hardcoded in source * tools/ + data/ staged from openfut-fut-backend:python-baseline-2026-08-10, verified byte-identical to the running container at freeze time * client_arm.sh (the 105 client-side arming counterpart) * Dockerfile bakes /app/SHA256SUMS.txt so any image is self-identifying * docs/BASELINE-python-2026-08-10.md: frozen image/container/hash record, restore instructions and rebuild-equivalence procedure Secrets (redir key/cert, .env) and runtime state (docker/state) stay gitignored. The live container is untouched pending the .105 launcher audit.
1 line
1.7 KiB
JSON
1 line
1.7 KiB
JSON
{"table":"temp_teamplayerlinks","source":"FIFA17.exe resident database (tools/db_dump.py)","rowcount":0,"rowsize_bytes":16,"rows_emitted":0,"rowblock":"0x4254bf68","rowblock_bytes":673,"descriptor":"0x4277c7d8","schema":[{"name":"leaguegoals","bit":0,"width":8,"kind":"int","min":0,"max":200,"storage":"int"},{"name":"isamongtopscorers","bit":8,"width":1,"kind":"int","min":0,"max":1,"storage":"int"},{"name":"yellows","bit":9,"width":6,"kind":"int","min":0,"max":40,"storage":"int"},{"name":"isamongtopscorersinteam","bit":15,"width":1,"kind":"int","min":0,"max":1,"storage":"int"},{"name":"jerseynumber","bit":16,"width":7,"kind":"int","min":1,"max":99,"storage":"int"},{"name":"position","bit":23,"width":6,"kind":"int","min":0,"max":33,"storage":"int"},{"name":"artificialkey","bit":29,"width":19,"kind":"int","min":0,"max":300000,"storage":"int"},{"name":"teamid","bit":48,"width":18,"kind":"int","min":1,"max":200000,"storage":"int"},{"name":"leaguegoalsprevmatch","bit":66,"width":4,"kind":"int","min":0,"max":10,"storage":"int"},{"name":"injury","bit":70,"width":6,"kind":"int","min":0,"max":35,"storage":"int"},{"name":"leagueappearances","bit":76,"width":6,"kind":"int","min":0,"max":50,"storage":"int"},{"name":"prevform","bit":82,"width":3,"kind":"int","min":0,"max":5,"storage":"int"},{"name":"istopscorer","bit":85,"width":1,"kind":"int","min":0,"max":1,"storage":"int"},{"name":"leaguegoalsprevthreematches","bit":86,"width":5,"kind":"int","min":0,"max":25,"storage":"int"},{"name":"playerid","bit":91,"width":19,"kind":"int","min":0,"max":300000,"storage":"int"},{"name":"form","bit":110,"width":3,"kind":"int","min":0,"max":5,"storage":"int"},{"name":"reds","bit":113,"width":5,"kind":"int","min":0,"max":20,"storage":"int"}],"rows":[]} |