Using Claude to Extract Data from a 1997 Football Manager Game

Ben Nuttall reverse-engineered FIFA Soccer Manager 97 (FSM97) using Claude as a data extraction assistant. Pointing Claude at the Wine-installed game directory, the AI located SM97.DAT and parsed player names, stats, club assignments, stadiums, and manager data — all mapped to real-world football entities. The goal was reproducibility: the entire pipeline now lives as Python scripts on GitHub.
Key Details
- Source file:
SM97.DATcontains all game data including player full names (e.g., "David Beckham" vs. in-game "D. Beckham"), stadium names, club nicknames, and even managers never shown in game. - Initial query: Claude answered simple questions (biggest stadium, highest-rated player) by reading the binary file directly.
- CSV export: Claude generated CSV files for all data; column names for player stats were unknown, so Nuttall launched the game to map them (e.g., using David Seaman's stats as a calibration reference).
- Site generation: After fixing a few hallucinated data points, Claude built an interlinked HTML site at fsm.bennuttall.com showing players, clubs, stadiums, and trivia.
- Data corrections: Abbreviated team names like "Sheffield W" were expanded to "Sheffield Wednesday". Stadium typos (e.g., "Bramall Lane Ground") were fixed without altering gameplay data.
- Easter eggs discovered: Olympic champion Daley Thompson appears as a player at Mansfield Town. Player-manager relationships detected (e.g., player also listed as manager for same club).
- Shared stadiums: Clubs like Crystal Palace and Wimbledon both use Selhurst Park; the data now tracks this.
- Top stats pages: Generated lists of top-rated players, best players by age group, top player-managers, and stadiums by capacity. Notably, the "EA All Stars" club contains fictional highly-rated players.
Reproducibility
All Python code to extract data and build the website is open source on GitHub. Others can run the same pipeline without needing Claude or any AI tool by using the published CSVs and scripts.
📖 Read the full source: HN AI Agents
👀 See Also

SWE-CI: New Benchmark Tests AI Agents on Long-Term Code Maintenance via CI
SWE-CI is a repository-level benchmark that evaluates LLM-powered agents on maintaining codebases through continuous integration cycles, shifting focus from static bug fixing to long-term maintainability across 100 real-world tasks.

cldctrl: Terminal Dashboard for Managing Claude Code Sessions
cldctrl is an npm package that provides a terminal dashboard for launching and managing Claude Code sessions across projects. It reads existing ~/.claude data, auto-discovers projects, and shows token usage with rate limit bars.

Head-to-head code review experiment compares three AI tools on same codebase
A video experiment tests Codex, Claude Code, and Claude Code with Sextant on identical code review tasks, with Codex verifying findings and judging which report is more valuable. The focus is on how workflow and structure affect what AI notices and prioritizes.

CrabMeat v0.1.0: A Security-First Agent Gateway That Doesn't Trust the LLM with the Security Boundary
CrabMeat v0.1.0 is a WebSocket gateway for agentic LLM workloads that enforces security at the architectural level: capability ID indirection, effect classes, IRONCLAD_CONTEXT pinned instructions, tamper-evident audit chain, streaming output leak filter, and no YOLO mode.