게이머들을 밖으로 나가게 만드는 타워 디펜스 게임 'Go Touch Grass'를 만들었습니다
I built "Go Touch Grass", a tower defense game that's supposed to make gamers go outside
핵심 요약
Claude Code를 활용해 실제 걸음 수를 게임 내 자원으로 변환하는 타워 디펜스 게임을 개발했습니다.
- 게임 메커니즘 — 실제 걸음 수를 수집하여 기지를 건설하고 'Couch Army'를 방어함
- 개발 도구 — Claude Code를 사용하여 74번의 세션 동안 점진적으로 개발함
- 기술적 특징 — 모든 콘텐츠를 설정 파일로 분리하고 헤드리스 테스트 엔진을 도입함
- 개인정보 보호 — GPS 없이 기기 내 걸음 센서만 사용하며 광고나 데이터 추적 없음
Go Touch Grass는 안드로이드용 방치형 RPG인데, 컨셉이 딱 하나임. 게이머들 밖으로 좀 나가게 만들려고 만든 거라, 게임 내에서 뭘 얻으려면 무조건 실제로 걸어야 함. 걸음 수가 전리품(나무/돌/희귀 재료)이나 경험치, 스킬 포인트로 바뀌고, 이걸로 아이소메트릭 기지를 꾸민 다음에 "소파 군단(좀비 게이머, 잠수 유령, 보스인 소파 왕 등등)"이 쳐들어오는 실시간 타워 디펜스를 막아내는 방식임. 지금 74번째 세션까지 진행했고, 라이브 중임.
여기 글 올린 이유는 이게 사실상 Claude Code로 세션마다 싹 다 만든 거라서임. 이렇게 긴 프로젝트를 에이전트랑 같이 굴리면서 효과 봤던 팁 몇 개 공유함:
- 모든 게임 콘텐츠(전리품 테이블, 적, 타워, 스킬)는 전부 설정 파일에 박아뒀음. 엔진 코드에 하드코딩 안 해서, 새 세션 시작할 때 로직 건드릴 필요 없이 콘텐츠만 추가하면 됨.
- BUILD-STATUS.md 파일을 만들어서 세션 끝날 때마다 업데이트함. 덕분에 새로 세션을 시작하거나 다른 모델을 써도, 이전 상황을 일일이 설명할 필요 없이 바로 이어서 작업 가능함.
- 레이드 엔진은 순수하게 헤드리스 테스트가 가능하게 짰고, 배포 전에 무조건 스모크 테스트 스크립트가 초록불 들어와야 함.
Claude Code 덕분에 잡은 골 때리는 버그들도 있었음: 보폭이랑 걸음 속도 비례해서 계산하는 거(그냥 걸음 수로만 하면 실제 거리보다 30~40%씩 적게 잡히더라), 그리고 앱 다시 켤 때 폰에 저장된 걸음 기록이랑 동기화하면서 중복 카운트 안 되게 하는 거 같은 거.
개발하면서 끝까지 지킨 원칙이 하나 있는데, 걷는 속도가 드롭 확률에는 영향을 줘도 접근성에는 절대 영향 안 주게 하는 거임. 광고 없고, 위치 추적도 없음(앱에 GPS 코드 자체가 아예 없음, 그냥 걸음 센서만 씀). 스킬 포인트는 절대 현질 불가.
지금 구글 플레이에 올라와 있음(일단 안드로이드만): Google Play Store Link
워크플로우나 게임 관련해서 궁금한 거 있으면 다 물어봐. 아래 영상은 74세션 동안 설정 파일 기반으로 빌드한 결과물이 어떤지 탭별로 빠르게 훑어본 거임:
- Base: 전체 화면 아이소메트릭 기지. 타일 누르면 건설 메뉴(텐트/우물/대장간/망루/무기고/연구소)나 방어 메뉴(화살/대포/슬로우 타워, 벽) 뜸.
- Run: 실제 걸음 수 측정기. 백그라운드에서 돌아가고 GPS 안 씀.
- Skills: 3개 트리(약탈자/채집가/건설자), 포인트는 오직 걷기로만 획득.
- Raid: 소파 군단 상대로 하는 무한 타워 디펜스 웨이브. 연습 모드나 랭크 모드(웨이브 컴포저) 있음.
- Profile: 플레이어 카드, 태그, 빌드 요약, 일일 퀘스트.
- League: 다른 실제 워커들이랑 경쟁하는 주간 리더보드.



