Claude Code를 활용해 1994년 SNES 야구 게임을 30개 MLB 구단 확장판으로 개조하고 8KB 세이브 용량에 프랜차이즈 모드까지 구현함
I used Claude Code to expand a 1994 SNES baseball game to all 30 MLB clubs, then add a Franchise mode that fits in the cartridge's 8 KB save
핵심 요약
Claude Code를 활용해 94년도 SNES 야구 게임을 30개 구단 및 프랜차이즈 모드가 포함된 최신 버전으로 완벽하게 개조했습니다.
- 구단 확장 — 28개 팀을 30개로 늘리고 2026년 로스터와 구장 데이터를 구현함
- 프랜차이즈 모드 — 8KB 세이브 용량 내에서 선수 성장, 은퇴, 마이너리그 콜업 시스템을 구축함
- 자동화 테스트 — Claude Code가 에뮬레이터와 연동해 CPU 대전 및 시즌 시뮬레이션을 자동 검증함
- 웹 플레이 지원 — WebAssembly 기반 snes9x를 통해 브라우저에서 즉시 게임 플레이 가능
Ken Griffey Jr. Presents Major League Baseball (SNES, 1994)은 원래 28개 구단으로 출시됐었음. Claude Code (Opus 5.5)랑 나랑 약 2주 동안 이걸 'Griffey 30'이라는 무료 패치로 뜯어고쳤다:
- 애리조나랑 탬파베이 추가하고 2026년 로스터까지 반영해서 현재 30개 구단 전부 구현함. 스크립트가 위키피디아에서 로고 긁어오고 위키미디어 공용에서 구장 사진 가져와서 SNES 타일이랑 팔레트로 변환함. 손으로 그린 거 하나도 없음.
- 팀 스타일: 팀 선택 화면에서 Select 버튼 누르면 2026년 로스터, 오리지널 카트리지 로스터, 실제 1994년 로스터를 골라잡을 수 있음.
- 30개 구단 전부 시즌 모드 지원함. 현재 디비전 체제, 새로운 일정(매일 인터리그 경기 포함), 플레이오프, 순위표까지 싹 다 넣음.
- 프랜차이즈 모드 (2.0 버전, 이번 주 출시): 선수들 나이 먹고, 능력치 오르내리고, 베테랑 은퇴하고, 실제 마이너리그 유망주 300명 콜업됨. 게임이 우승 기록도 기억하고, 퀵 시뮬레이션 돌리면 한 시즌 5분 컷임. 이 모든 게 카트리지 기본 용량인 8KB 세이브 파일 안에 다 들어감.
- griffey30.com에서 브라우저로 바로 플레이 가능: 자기 ROM 파일 올리면 사이트에서 알아서 패치하고 WebAssembly 기반 snes9x로 돌려줌. 온라인 2인 플레이도 지원함.
Claude Code를 어떻게 썼냐면
디자인 결정하고 실제 에뮬레이터랑 내 MisTer FPGA 기기에서 테스트하는 건 내가 했음. 구현은 Claude Code가 거의 다 했다고 보면 됨: 리버스 엔지니어링, 65816 어셈블리(asar) 약 6,000줄, 그리고 파이썬, 자바스크립트, C, Lua 툴링 약 12,000줄 정도. 이게 가능했던 이유는 몇 가지가 있음:
- 일단 눈이 달려 있어야 했음. 초반에 Claude Code가 Lua 스크립트로 돌아가는 헤드리스 Mesen2 하네스를 짰음. ROM 부팅해서 특정 프레임에 버튼 누르고, 스크린샷 찍고, 브레이크포인트에서 CPU 레지스터 로그 남기고, 메모리 읽기 감시하고 VRAM 덤프 뜨는 식임. 실행 결과가 항상 똑같아서 버그가 나면 무조건 같은 프레임에서 재현됨. 빌드할 때마다 CPU vs CPU 게임 4판을 경기 후 신문 화면 나올 때까지 무조건 돌려야 함. 프랜차이즈 모드는 스크립트가 시즌을 계속 연달아 돌리게 했고.
- 추측이 아니라 증거 기반으로 리버스 엔지니어링함. 게임이 28개 구단만 있다고 가정하는 곳을 찾으려고, 두 번의 플레이 세션 동안 팀 관련 값과 비교하는 모든 명령어를 로그로 남겼음(후보 49개). 그 전부 브레이크포인트 걸고 팀 ID 슬롯 읽는 걸 다 지켜봤지. 그렇게 팀 ID를 쓰는 39군데를 찾아냄. 찾은 건 전부 docs/findings/ 폴더에 주소랑 같이 마크다운 파일로 정리함.


![[UPDATE] I asked GPT to get me a surprise gift. This is what it got me!](https://cf.preview.redd.it/update-i-asked-gpt-to-get-me-a-surprise-gift-this-is-what-v0-dhwsc46a33vh1.jpg?width=1080&crop=smart&auto=webp&s=a2912f1610facb363ec676f9b4dc24d91e96e696)