게임 제작 노트 · 중학생용
AI랑 게임 만들기,
제대로 하는 법
AI에게 “게임 만들어 줘” 한 마디만 하면 끝일까요? 오른쪽 운석 피하기 게임으로 직접 확인해 봐요. 같은 AI가 만들어도, 준비를 어떻게 했느냐에 따라 결과가 완전히 달라져요.
게임이 실행되지 않고 있어요. WordPress가 이 페이지의 게임 코드를 지웠어요 (플러그인을 쓸 수 없는 WordPress.com 요금제나 관리자가 아닌 계정에서 생겨요). “standalone” 파일을 올려 <iframe>으로 넣는 방법을 써 주세요.
복붙 버전에는 버그가 3개 숨어 있어요. 운석에 맞아도 안 끝나고, 화면 밖으로 도망갈 수 있고, 점수가 이상하게 빨리 올라요.
시작하기 전에
AI랑 코딩하는 두 가지 방법
어른 개발자들 사이에서 요즘 많이 나오는 이야기예요. AI에게 대충 물어보고 나온 코드를 그대로 붙여 넣는 방식을 바이브 코딩이라고 불러요. “느낌(vibe)대로 코딩한다”는 뜻이죠. 처음엔 멋진 말이었는데, 지금은 “제대로 안 하고 있다”는 뜻으로 쓰일 정도예요. 그 대신 등장한 게 에이전틱 엔지니어링이에요. 같은 게임을 두 방식으로 만들어 볼게요.
대충 묻고, 복사해서, 붙여넣기
- 1AI에게 “운석 피하기 게임 만들어 줘”
- 2나온 코드를 복사해서 그대로 붙여넣기. 오, 돌아간다!
- 3다음 날 “점수 기능 추가해 줘”. 그런데 AI는 어제 대화를 기억 못 해요. 완전히 다른 방식으로 코드를 짜요.
- 4두 방식이 뒤섞여서 버그가 생겨요. 운석에 맞아도 게임이 안 끝나요.
- 5코드를 이해하고 붙인 게 아니라서, 왜 고장 났는지 아무도 몰라요.
결과: 일단 돌아가는 장난감. 고치기도, 키우기도 어려워요.
AI가 일할 환경부터 만들기
- 1게임 설계 노트를 먼저 써요. 화면 크기, 우주선 속도, 게임 규칙.
- 2AI는 매번 이 노트부터 읽고 작업해요. 어제 정한 규칙을 잊지 않아요.
- 3AI가 “완성!”이라고 하면, 자동 테스트가 진짜인지 검사해요.
- 4테스트에 떨어지면 AI가 결과를 보고 스스로 고쳐요.
- 5유용했던 명령과 도구는 보관함에 모아서 다음 게임에도 써요.
결과: 믿을 수 있고, 계속 키울 수 있는 진짜 게임.
바이브 코딩은 레시피 없이 혼자 즉석에서 요리하기예요. 에이전틱 엔지니어링은 주방장이 레시피 노트, 맛 검사 방법, 좋은 도구를 미리 준비해 두고, 보조 요리사(AI) 여러 명이 그 주방에서 일하게 하는 것이에요. 바이브 코딩은 누구나 만들 수 있게 해 주고, 에이전틱 엔지니어링은 훨씬 더 멀리, 더 튼튼하게 가게 해 줘요.
핵심
튼튼한 게임을 받치는 다섯 개의 기둥
에이전틱 엔지니어링은 다섯 가지 습관으로 이루어져 있어요. 하나씩 운석 피하기 게임으로 살펴볼게요. 괄호 속 영어는 어른들이 쓰는 진짜 이름이에요.
설계 노트: 많이 말고, 딱 필요한 만큼
AI는 대화가 끝나면 기억을 잃어요. 그래서 중요한 결정은 노트에 적어 두고 매번 읽게 해야 해요. 그런데 “그럼 전부 다 주면 되겠네?”는 틀린 생각이에요. 친구에게 학교 가는 길을 물었는데 동네 지도 전체를 주면 오히려 헷갈리잖아요. AI도 쓸데없는 정보가 많을수록 답이 들쭉날쭉해져요. 그래서 최신이고(Fresh), 짧게 줄인(Condensed) 정보만 줘요.
게임노트.md ← AI가 제일 먼저 읽는 곳 ├── 규칙.md 닿으면 게임 오버, 1초에 10점 ├── 화면과_조작.md 480×320, ← → 키 └── 결정한_이유/ ├── 001_화면크기.md └── 002_점수방식.md
첫 노트가 다른 노트를 가리키는 목차 역할을 해요. AI는 필요한 노트만 골라 읽어요.
“왜 그렇게 정했는지”도 꼭 적어요. 코드는 “어떻게”만 보여 주고, “왜”는 안 알려 주거든요.
머릿속에만 있는 규칙은, AI에게는 없는 규칙이에요.
자동 검사: AI가 “다 했어요!” 하면, 누가 확인하죠?
AI에게 “잘 만들었어?” 하고 물으면 거의 항상 “네!”라고 해요. 자기 숙제를 자기가 채점하는 것과 같아서 믿기 어렵죠. 그래서 채점은 AI 바깥에서 해요. 컴퓨터가 정해진 상황을 돌려 보고 결과를 확인하는 자동 테스트예요. 검사는 두 단계예요.
“이 상황에선 이렇게 돼야 해”
운석을 우주선 위에 딱 놓고 → 게임 오버가 되는지 확인. 우주선을 왼쪽 벽으로 계속 밀고 → 화면 안에 남아 있는지 확인.
“안 꺼졌다”만으로는 부족해
게임이 멈추지 않고 잘 돌아가도, 기록을 보면 1초에 60점씩 오르는 이상한 점수가 숨어 있을 수 있어요. 겉이 아니라 속까지 확인해요.
검사 실험실
지금 버전: 복붙 버전맨 위 게임과 연결되어 있어요. 검사를 돌려 보고, 떨어지면 AI에게 결과를 보여 주고 고치게 해 보세요.
- 대기1차 테스트
운석이 우주선에 닿으면 게임 오버가 된다 - 대기1차 테스트
우주선은 화면 밖으로 나갈 수 없다 - 대기2차 기록 검사
1초 동안 점수가 약 10점 오른다
“잘 돌아가는 것 같다”가 아니라 “돌아간다, 증명됨”까지.
도구 만들기: 강을 건네주지 말고, 다리를 놓자
AI가 일하다가 혼자 못 해서 멈추고 사람을 부르는 순간이 있어요. 이걸 마찰(friction)이라고 해요. 이때 “내가 금방 해 줄게” 하고 손으로 해 주면 오늘은 해결돼요. 하지만 다음 주에 또 똑같이 멈춰요. 그래서 대신 AI가 혼자 할 수 있는 도구를 만들어 줘요. 강 앞에서 업어 건네주는 대신, 다리를 한 번 놓는 거예요.
AI새 스테이지용 운석 이미지를 폴더에 직접 넣어 주세요.
나(또? 지난주에도 했는데…)
AI스테이지 설정 파일도 손으로 만들어 주세요.
/새-스테이지 3 → 스테이지 폴더 만들기 → 운석 이미지 복사하기 → 설정 파일 채우기 → 테스트까지 돌리기
이제 AI가 이 명령을 직접 써서 혼자 끝까지 해요. 컴퓨터에 글자로 명령하는 방식(CLI)이 AI에게 가장 편한 다리예요.
사람은 방향을 정하고, 반복되는 일은 도구가 하게.
코드 정리: 같은 일을 하는 방법은 하나만
게임 폴더에 우주선이동.js와 우주선이동_옛날.js가 둘 다 있다고 해 봐요. 어느 게 진짜인지 AI는 알 수 없어요. 그러면 틀린 쪽을 고를 확률이 50%예요. 이런 선택이 여러 번 쌓이면 결과가 엉망이 되고, 우리는 “AI는 왜 이렇게 들쭉날쭉해?”라고 말하게 돼요. 사실은 AI 탓이 아니라 정리 안 된 폴더 탓이에요.
게임/ ├── 우주선이동.js ├── 우주선이동_옛날.js ← 어느 게 진짜? ├── 적/운석.js ├── enemy_missile.js ← 이름 규칙도 제각각 └── 임시_테스트_진짜최종.js
게임/
├── 우주선/이동.js
└── 적/
├── 운석.js 모양이 다 똑같은 코드
├── 미사일.js
└── 새.js
모든 적은 똑같은 모양으로 만들어요. 그러면 AI가 운석 코드를 보고 미사일도 똑같이 만들 수 있어요. 조금 반복되더라도 일관성이 더 중요해요.
이제 코드는 사람이 읽는 것보다, AI가 읽고 실행하는 일이 더 많아요.
보관함: 한 번 만든 건 모두의 레고 블록으로
나 혼자만 아는 요령은 나만 쓸 수 있어요. 그런데 잘 만든 노트, 검사, 도구를 모둠 보관함에 모아 두면 모두가 써요. 블록이 늘어날수록 만들 수 있는 조합은 훨씬 더 빨리 늘어나요. 블록 10개로 만들 수 있는 짝이 45가지라면, 30개로는 435가지예요. 이게 복리처럼 쌓이는 힘이에요.
보관함/
├── 명령어/ /새-스테이지 /점수판-추가
├── 검사/ 충돌검사 벽검사 점수기록검사
├── 노트틀/ 게임노트_기본틀.md
└── 규칙/ 모둠_황금규칙.md
다음에 벽돌깨기를 만든다면? 충돌검사, 점수기록검사, 노트틀, 점수판 명령을 그대로 꺼내 써요. 새로 짜야 하는 건 공이 튕기는 부분 정도예요.
단, 폴더가 정리돼 있어야 블록이 잘 맞아요. 정리(IV) × 보관함(V)은 곱하기라서, 하나가 0이면 결과도 0이에요.
혼자 잘하는 것보다, 모두가 함께 점점 빨라지는 것.
다섯 기둥이 함께 일하는 모습
운석 피하기에 ‘미사일’ 추가하기, 월요일부터 금요일까지
다섯 기둥은 1층부터 차례로 쌓는 케이크가 아니에요. 그물처럼 엮여서 필요할 때 필요한 기둥이 일해요. 그래서 순서도 I, III, IV, II, V로 섞여 있어요.
- 월I 설계 노트
헷갈림 0번/새-적-추가명령으로 시작. AI가 게임노트와 규칙 노트부터 읽어요. - 화III 도구
찾기 도구로 운석 코드가 쓰이는 곳을 한 번에 정리해요.
1시간 → 10분 - 수IV 코드 정리
50% 헷갈림 → 0%적/미사일.js를 운석과 똑같은 모양으로 만들어요. - 목II 자동 검사
충돌·벽 테스트와 점수 기록 검사. 떨어지면 AI가 스스로 고쳐요.
사람 손 0번 - 금V 보관함
이번에 쓴 명령과 검사를 일반화해서 보관함에 넣어요.
다음 적 추가: 3일 → 1일
퀴즈 · 0 / 5
이럴 땐 어느 기둥을 고칠까?
AI가 실패했을 때 바로 손으로 고치고 싶어지죠. 그러면 같은 실패가 다음 주에 또 일어나요. 대신 “다섯 기둥 중 무엇을 더 준비해야 할까?”를 물어보세요.
오늘의 한 줄
AI가 실패하면, 준비물을 하나 더 만들 기회
좋은 개발자는 AI 대신 코드를 쳐 주는 사람이 아니라, AI가 잘 일할 수 있는 환경을 설계하는 사람이에요. 노트 한 줄, 검사 하나, 도구 하나가 쌓이면 여러분의 게임은 점점 더 빨리, 더 튼튼하게 자라요.