Now Loading ...
-
"02와 똑같다", 그리고 감성 맞추기 세 차례
“02와 똑같다”, 그리고 감성 맞추기 세 차례
지난 편 끝에서 구역 탐험형을 골랐다. 이번 편은 그걸 만들어 본 이야기, 그리고 그다음에 그림으로 감성을 맞춰 보려던 이야기다.
프로토타입 03
이번엔 순서를 지켰다. 판정 규칙을 먼저 적고, 조작은 직접 액션으로 골랐다. 자기가 만든 것도 억지로 좋게도 나쁘게도 보지 말고 중립적인 비평가의 눈으로 다시 보는 단계를 늘 두자고 요청해서, 만들기 전과 만든 뒤에 비평가 점검을 적게 했다.
던전 하나에 구역 셋과 보스 방. 구역마다 적의 성질이 다르다. 맞을 때 피해를 깎는 단단한 적, 멀리서 쏘고 물러나는 적. 떨어진 장비는 그 자리에서 주워 바로 바꿔 낀다. 판 사이에는 장비를 고르고, 분해하고, 옵션을 뽑고, 강화한다.
화면 없이 판을 도는 봇으로 먼저 돌려 봤더니, 첫 판 봇이 1구역에서 20초를 못 버텼다. 수치를 고쳤다.
프로토타입 03, 1구역 8초째. 가만히 서 있으면 이렇게 된다(체력 12). 처음엔 봇도 여기서 20초를 못 버텼다.
“02와 똑같다”
처음 몇 번은 예전에 띄워 둔 서버에서 프로토타입 02를 열고 “달라진 게 없다”고 했다. 주소를 바로잡아 03을 열었다. 그리고 해 본 뒤의 말.
“똑같은데 그냥 원래랑 비교했을 때 자동으로 공격 나가던데 내가 수동으로 해야 하는 거 차이 정도잖아”
“나는 이런 감성을 원하는 게 아니라니까? 자꾸 프로토타입을 만들어야 한다는 강박에 이러는 거면 그러지 않아도 돼. 퀄리티가 너무 구려”
“프로토타입은 꼭 실제 플레이가 아니어도 돼. 컨셉 아트라든지 다른 방식으로라도 상관이 없어”
Claude가 만든 뒤에 적은 비평가 점검은 03을 흔한 장르와만 비교했다. 작은 디아블로 같다는 식이었다. 바로 직전에 내가 기각한 02와는 비교하지 않았다. 그래서 돌아간 질문이 “뭐가 작은 디아블로냐”였다.
틀린 이유는 둘이었다. 03은 02와 같은 그림과 코드에 구조만 바꾼 것이라, 해 보는 사람 눈에는 02와 같은 게임이었다. 그리고 둘 다 모눈종이 위의 원과 사각형이라, 내가 원한 감성이 맞는지는 처음부터 물을 수가 없었다. 그 뒤로 비평가 점검에는 “직전과 같은 점”을 반드시 적고, 새 프로토타입은 만들기 전에 “왜 이 질문을 이 형태(플레이, 그림, 글)로 묻는가”를 적게 했다.
감성 맞추기
그래서 플레이 대신 그림으로 가기로 했다. 내가 끌렸던 옛 게임 화면 여섯 장을 건넸다(다른 회사 게임 화면이라 여기에는 싣지 않는다). Claude는 그림을 읽고 감성을 글로 정리했다. 내 답은 “말로만 알려 주는 건 의미가 없다, 싱크가 맞아야 한다”였다.
그래서 맞혀 보기로 했다. 공개된 스팀 상점 스크린샷을 모아, 내가 보기 전에 Claude가 그림마다 끌림인지 별로인지 먼저 걸고 커밋한다. 그다음 내가 클릭으로 답한다. 맞힌 비율이 80%를 넘고, 늘 같은 답만 찍어도 나오는 비율(기준선)보다 15%p 이상 높으면 “싱크가 맞다”.
세 차례 했다.
1차, 2차는 기준선보다도 낮았다. 2차에서 하나 건진 것은, Claude가 싫어할 거라고 본 쪽(무거운 3D, 대전 연출, 적 떼만 있는 빈 바닥)이 열 장 중 아홉 장 맞았다는 것이다. 싫은 건 잘 맞히고, 좋은 건 못 맞혔다. 맛집 추천은 못 해도 피해야 할 집은 아는 친구가 된 셈이다.
3차에는 그림마다 이유를 하나 이상 고르게 했다. 앞의 두 차례는 끌림과 별로만 모아서, 왜 그런지 알 길이 없었기 때문이다.
이유를 모으자 한 번 만에 보이는 게 생겼다. 끌림의 큰 이유는 “할 게 보임”, 화면에 파밍할 것과 장비와 카드가 보이는 것이었다. Claude는 21장 중 어디에도 이 이유를 걸지 않았다. 별로의 첫째 이유는 어둡거나 무거운 게 아니라 “너무 단순, 밋밋함”이었다.
3차의 적중률은 71%로 기준선을 넘었다. 다만 지난 차례의 답을 그대로 따라 했으면 더 잘 맞혔을 것이다. 싱크가 맞았다는 판정은 끝내 한 번도 나오지 않았고, 나는 “3차까지 했으면 할 만큼 한 것 같다”며 거기서 멈췄다.
현재 상황
세 차례에서 남은 기준은 이렇다.
끌리는 것: 할 게 보이는 화면, 공들인 그림체와 캐릭터, 손맛 있는 전투
끌리지 않는 것: 밋밋함, 정신없음, 메뉴가 화면을 차지하는 것
다음은 이 기준과 지금까지의 결정을 대 보고, 컨셉 아트로 “이거다, 아니다”를 가리는 것이다. 이번엔 원과 사각형 말고 그림으로.
여기까지가 10월 말부터 11월 9일까지의 이야기다. 메타포 세 개로 시작해서, 프로토타입 셋, 시뮬레이션 세 번, 감성 맞추기 세 차례를 거쳤지만, 아직 무슨 게임인지 한 줄로 말하지 못하는 상태다. 이 일지는 여기서부터 이야깃거리가 모일 때마다 이어 간다.
-
추천만 골랐더니 뱀파이어 서바이버가 되었다
추천만 골랐더니 뱀파이어 서바이버가 되었다
이번 편은 반성문에 가깝다.
하루에 정한 것들
1편에서 로드맵을 뒤집은 날, 틀과 판 밖 경제를 질문 하나씩 정했다. 방식은 이랬다. Claude가 선택지를 내고 그중 하나에 “추천”을 붙인다. 나는 고른다.
그날 판 밖 경제 단계에서 고른 답은 하나도 빠짐없이 추천안이었다.
하나하나에는 이유가 붙어 있었다. 타깃이 둘(서바이버류를 즐기는 사람, 옛 한국 온라인 게임을 기억하는 사람)이니 판 안은 서바이버류 기준으로 맞추자. 판에서 주운 카드는 몇 장만 가져가고 나머지는 강화 재료로 바꾸자. 강화는 숫자보다 카드의 성격을 바꾸게 하자. 들어 보면 다 그럴듯했다.
같은 날 설계 점검은 “이 게임만의 차별점이 없다”, “맵 감성이 드러날 자리가 없다”를 이미 짚어 두었다. 둘 다 “나중에, 나란히 본다”는 칸으로 들어갔다. 그리고 그 위에 경제를 쌓고, 시뮬레이션을 돌리고, 프로토타입을 만들었다.
프로토타입 02
판 밖 루프를 시험하는 프로토타입이었다. 한쪽 칸에는 보관함, 강화, 옵션 뽑기가 있고, 다른 칸에는 없다. 계획은 사흘 넘게 칸마다 아홉 판 이상 해 보고 판정하는 것이었다.
판정은 첫 플레이에서 끝났다. 해 보고 남긴 말은 이랬다.
“내가 원한 건 이런 게임은 아니다. 그냥 평범한 뱀파이어 서바이버 같은 게임이다. 아류작도 너무 많다”
판 밖 루프는 “굉장히 지루하다”
“별다른 차별점도 못 느끼겠다”
프로토타입 02. 1편의 프로토타입 01 화면과 나란히 놓고 다른 그림 찾기를 해 보면, 난이도가 꽤 높다.
그리고 한 줄을 더 남겼다. “추천대로만 골랐는데 양산형으로 만들어지고 있었다.”
무엇이 잘못됐나
다시 대 보니, 원하는 것과 크게 부딪친 결정이 셋이었다. 판 안을 서바이버류로 둔 것, 판에서 얻는 것이 대부분 재료가 되는 것, 강화의 수치를 작게 둔 것. 셋 다 그날 고른 추천안이다. 위 그림의 빨간 칸이 그것이다.
원인은 하네스가 보지 않던 부분에 있었다. 하네스는 규칙끼리 맞는지는 꼼꼼히 봤지만, 방향이 처음 끌렸던 것과 맞는지, 남과 다른지는 보지 않았다. 추천을 낼 때도 그 안이 처음 끌렸던 지점에서 얼마나 멀어지는지는 적지 않았다. 추천을 낸 쪽도, 고른 쪽도, 그날은 방향을 묻지 않았다.
핵심 경험 기준 네 가지
그래서 원하는 것을 내 말로 적었다. 네 가지다.
강해진 체감: 아이템을 올리면서 강해졌다는 것이, 혼자 하는 플레이에서도 시원시원하게 느껴져야 한다
득템의 재미: 직관적이어야 한다. 늘 재료만 파밍하는 건 재미가 없다
생각하며 하는 플레이: “이 상황에선 이 아이템이면 돌파하겠다”, “이건 아쉽다, 옵션을 다시 뽑을까, 장비를 바꿀까” 하고 머리를 굴리는 게임
보이는 변화: 같은 사각형 맵만 돌아다니면 강해졌는지도 느껴지지 않는다
이제 모든 결정과 추천은 이 네 가지에 대 본다. 세션을 시작하면 훅이 이 네 줄을 먼저 띄우고, 선택지를 낼 때는 안마다 네 기준에 맞는 점과 부딪치는 점을 적는다. 미뤄 둔 방향 문제가 있으면 그 위에 쌓기 전에 먼저 묻는다.
그리고 다시
이 기준으로 판 안의 형태를 다시 골랐다. 후보는 둘이었다. 던전 하나를 구역마다 지나며 장비를 줍는 구역 탐험형, 그리고 스테이지를 골라 준비하고 도전하는 공략 스테이지형. Claude는 구역 탐험형을 추천했다.
나는 그걸 골랐다. 또 추천안이었다. 이번에는 네 기준에 대 본 표가 붙어 있었다는 점이 달랐다.
그 결과는 다음 편에.
-
실수를 문장 말고 장치로 막기
실수를 문장 말고 장치로 막기
지난 편에서 Claude의 실수가 넷 나왔다. 사람끼리라면 “다음엔 조심하자” 한마디로 넘어갔을 것이다. 그런데 새 세션의 Claude는 지난 세션의 다짐을 모른다. 다짐을 적어 둔 문서도, 읽지 않으면 없는 것과 같다.
그래서 다짐 대신 장치를 두기로 했다.
짚지 않아도 알아서 발전하는 하네스
요청은 한 줄이었다. 내가 짚지 않아도 알아서 발전하는 하네스를 만들어 달라.
그렇게 생긴 것들이다.
레포 검사(tools/check.mjs): 문서와 코드가 서로 맞는지, 바꾼 코드에 테스트가 따라왔는지, 모든 테스트가 도는지 본다
훅: 세션을 시작하면 지난번 멈춘 곳과 아직 못 막은 실수를 띄워 주고, 커밋하기 전에 검사를 돌려 실패하면 커밋을 막는다
스킬: 세션 마무리 회고, 시뮬레이션 수정, 결정 기록의 순서표
교훈 기록부: 실수마다 한 줄. 무슨 일이 있었고, 왜 났고, 무엇으로 막았는지
핵심은 장치에 강도가 있다는 것이다. 기계가 판단할 수 있으면 자동 검사, 정해진 순간에 끼어들어야 하면 훅, 사람의 판단이 필요하면 스킬. 문장은 어느 것도 안 될 때만 쓴다. 문장이 가장 약하기 때문이다.
검사를 하나 더할 때마다 일부러 그 실수를 다시 심어 보고, 검사가 정말 잡는지 확인한 뒤 되돌렸다. 여기까지는 또 모범적이었다.
장치를 만들다가 장치를 부쉈다
하네스를 만드는 도중에 사고가 났다. 정규식을 고치려고 sed -i를 썼는데, 바꾼 것이 정규식만이 아니었다. 파일 안의 /가 몽땅 바뀌면서 레포 검사 스크립트와 세션 시작 훅이 통째로 망가졌다. 둘 다 막 만든 새 파일이라 git으로 되돌릴 것도 없었다.
그래서 장치를 하나 더 만들었다. 검사가 모든 스크립트를 문법부터 읽어 보게 했다. 그리고 문장도 하나 적었다. “파일은 셸 치환이 아니라 편집 도구로 고친다.”
같은 날, 그 문장이 적힌 채로 sed -i가 또 쓰였다. 이번엔 결과가 맞긴 했다. 하지만 문장이 실수를 하루도 막지 못한 건 분명했다. 결국 셸 명령을 실행하기 직전에 끼어드는 훅을 달아서, sed -i와 perl -pi로 파일을 고치려 하면 아예 막게 했다. 문장에서 훅으로, 한 칸 올린 것이다.
훅이 너무 성실했다
커밋하기 전에 검사를 돌리는 훅은 커밋 명령에만 반응해야 했다. 설정에 그런 조건도 적었다. 그런데 실제로는 모든 셸 명령마다 검사가 돌았다. 테스트를 아직 고치는 중이라 검사가 실패하는 상태였으니, ls 하나도 막혔다.
훅을 만든 세션에서는 설정이 아직 읽히지 않아 아무 일도 없었고, 설정이 읽힌 뒤에야 드러났다. 고친 방법은 단순하다. 설정의 조건을 믿지 않고, 검사가 받은 명령이 커밋인지 스스로 보고 아니면 바로 통과시킨다.
미래에서 온 기록 170곳
세션을 마치며 회고하다가 이상한 것을 찾았다. PC 시계도 커밋 시각도 11월 9일인데, 문서에는 그날 한 일이 “11월 10일”로 적혀 있었다. 31개 파일, 170곳. 날짜를 시계에서 읽지 않고, 앞선 기록의 날짜를 이어 적은 탓이었다.
그 뒤로 세션을 시작하면 훅이 이 PC 시계로 오늘 날짜를 띄운다. 그리고 이번 커밋에서 새로 더한 줄에 오늘보다 하루에서 사흘 뒤 날짜가 있으면 검사가 막는다. 이미 적힌 170곳은 얽힌 데가 너무 많아 그대로 두고, 바로잡는 줄을 하나 남겼다.
비슷한 일은 더 있었다. “작업은 여기까지 할거야”라고 세션을 끝냈는데, 세션을 끝내는 말을 알아듣는 훅이 그 말을 놓쳤다. 이건 잡아야 할 말 10개와 잡으면 안 되는 말 7개를 예문으로 두고, 검사가 그 예문으로 훅을 시험하게 했다.
21줄
교훈 기록부는 지금 21줄이다. 생긴 날을 세어 보면 이렇다.
11월 9일 하루에 18줄. 그날 일은 2편부터 5편까지에 고루 나온다. 21줄 중 2줄은 아직 장치를 만들지 못해 “열림”으로 남아 있다.
그리고 이 일지를 시작한 날에도 줄은 늘었다. 처음 레포를 만든 맥으로 돌아와 최신 내용을 받아 보니, 검사가 테스트를 돌리지 못해 커밋이 막혔다. 이 맥의 Node 26에서는 node --test tests/처럼 폴더를 넘기는 방식이 실패했다. 테스트를 인자 없이 돌리게 고쳤다. 하네스를 한 PC에서만 시험해 본 대가였다.
다만 이 하네스가 막는 것은 “규칙끼리 어긋나는 실수”까지였다. 방향이 틀린 것은 막지 못했다. 다음 편이 그 이야기다.
-
114분 돌린 시뮬레이션의 결론: 보류
114분 돌린 시뮬레이션의 결론: 보류
지난 편의 교훈은 “무엇을 판정할지 정하기 전에 만든 프로토타입은 답을 주지 못한다”였다. 그래서 이번에는 판정 규칙부터 적었다. 규칙을 먼저 적고, 커밋하고, 그다음에 돌린다. 여기까지는 아주 모범적이었다.
판정 규칙부터 적었다
지난 편에서 통째로 비어 있던 판 밖 경제를 질문 하나씩 채웠다. 카드는 어디서 얻는지, 강화 재료는 어디서 생기고 어디에 쓰이는지, 판에는 무엇을 들고 들어가는지. 채운 답은 모두 가설로 두고, 수치 시뮬레이션으로 확인하기로 했다.
시뮬레이션이 답할 것은 정해 두었다. 재화가 모자라거나 넘치지 않는가, 어떤 행동 하나가 늘 정답이 되어 다른 행동을 지우지 않는가, 성장이 중간에 멈추지 않는가. 답하지 않을 것도 적었다. 재미. 시뮬레이션을 통과해도 재미있다는 뜻은 아니다.
처음 계산은 이랬다. 바꿔 볼 값 10개를 3개씩만 잡아도 조합이 약 6만 개, 여기에 가상 플레이어 500명, 한 명당 300판, 플레이어 성격 5가지를 곱하면 약 440억 판. 그냥 내가 직접 하는 게 빠르겠다 싶었지만, 그건 그것대로 몇 생이 걸린다. 범위를 체험판으로 줄이고, 성격은 셋, 한 명당 최대 100판으로 깎았다.
판정은 세 가지 중 하나로 낸다. 모든 기준을 함께 만족하는 설정이 있으면 확정, 어떤 설정에서도 안 되면 버림, 그 사이면 보류. 판정 규칙 문서는 지금 446줄이다.
1차: 65분, 그리고 “잠깐”
151개 설정을 65분 동안 돌렸다. 결론은 확정 없음, 가설 둘 버림, 나머지 셋 보류.
버림이 둘이나 나왔으니 바로 받아들여야 할까. 받아들이기 전에 확인해 봤더니 Claude의 실수가 둘 나왔다.
옵션 재료는 가설대로라면 보스와 높은 난이도에서만 나온다. 그런데 모델은 프로토타입에서 임시로 쓰던 규칙(“어느 판이든 끝까지 버티면 1개”)을 그대로 가져와 있었다. 버림 판정 하나는 가설이 아니라 그 임시 규칙을 잰 것이었다
다른 기준 하나는 “판에 들고 갈 카드 묶음을 늘 똑같이 고르게 되는가”를 물었다. 그런데 체험판에는 적의 성질이 하나뿐이다. 성질이 하나면 같은 묶음을 고르는 게 당연하다. 애초에 가를 수 없는 질문이었다
그래서 버림 둘은 무효. 고쳐서 다시 돌렸다.
2차: 114분, 다섯 모두 보류
이번엔 136개 설정에 114분. 결론은 다섯 가설 모두 보류였다. 가장 가까웠던 설정은 기준 하나만 0.806이 나와 떨어졌다. 통과 기준은 0.8 이하였다. 0.006 차이다.
그리고 다시 “잠깐”.
“카드 한 장의 운이 강화보다 판을 더 좌우하는가”를 재는 기준은, 비교용 가상 플레이어 대부분이 100판 안에 다음 난이도를 넘지 못해서 사실상 “100판”이라는 상한을 재고 있었다
“성장이 중간에 끊기는가”를 재는 기준은 규칙끼리 서로를 막고 있었다. 한쪽 규칙은 난이도를 “15판쯤에 처음 깨도록” 맞추라고 하고, 다른 쪽은 “10판 안에” 깨야 통과라고 했다. 15판에 맞추면서 10판 안에 끝내라. 시험지가 먼저 틀려 있었다
다만 이번에는 시뮬레이션이 제 몫을 한 대목도 있었다. 적의 성질 하나가 너무 쉽게 풀려서, 성장을 막는 것이 성질이 아니라 그냥 수치였다. 그리고 체험판에서 옵션 뽑기를 할 기회가 1번뿐이었다. “체험판에 옵션 뽑기를 넣는다”는 결정과 “옵션 재료는 보스와 높은 난이도에서만 나온다”는 결정이 체험판 안에서 맞부딪친 것이다. 문서끼리만 대 봐서는 드러나지 않던 것을 시뮬레이션이 찾아냈다.
3차: 115개 중 70개에서 멈춤
또 고쳤다. 이번에는 오래 걸린다는 말을 듣고 설정들을 CPU 코어 11개로 나눠 돌렸다. 앞부분은 6분 만에 끝났다. 뒷부분 115개 중 70개쯤 돌았을 때, 진행 상황을 물어보다 결국 멈췄다. 너무 느리고, 이 방식으로 계속하는 건 현실적으로 무리였다.
나중에 보니 멈추는 게 맞았다. 3차는 맨 처음 기본값 하나로 돌려 본 단계에서 이미 결론을 뒤집을 조건이 보였다. 전체를 끝까지 돌릴 필요가 없었다. 중간까지의 결과도 그 조건 그대로였다.
남은 것
배운 것은 이렇다. “규칙대로 끝까지 돌린다”를 “이걸 돌리면 결정이 바뀌는가”보다 앞에 두면 시간이 녹는다. 지금은 탐색이 단계마다 남은 시간을 찍고, 30분이 넘을 것 같으면 돌리기 전에 먼저 묻게 해 두었다. 기본값 하나로 먼저 보고, 그걸로 결론이 보이면 거기서 멈춘다.
그리고 하나 더. 규칙을 먼저 적었다고 규칙이 맞는 건 아니었다. 두 번의 탐색에서 나온 실수 넷은 모두 “규칙과 모델과 기준을 서로 맞춰 보지 않은” 데서 나왔다.
이 시뮬레이션은 지금 멈춰 있다. 그 뒤에 프로토타입을 직접 해 본 내가 방향 자체를 다시 보기로 했기 때문이다. 그 이야기는 조금 뒤에 하고, 다음 편은 이런 실수들을 문장이 아니라 장치로 막아 보려던 이야기다. 장치를 만들다가도 실수는 났다.
-
프로토타입부터 만들었다가 빈틈 16개
프로토타입부터 만들었다가 빈틈 16개
게임을 하나 만들어 보기로 했다. 혼자서, 주 5시간 남짓으로. 기획부터 코드까지 AI(Claude)와 같이 하고 있고, 이 글은 그 과정을 적는 개발 일지의 첫 편이다. 첫 편부터 자랑할 거리는 별로 없다. 대신 삽질은 넉넉하다.
메타포 세 개
출발점은 예전에 좋아했던 온라인 게임 세 개였다. 서바이벌 프로젝트(서프), 트릭스터, 요구르팅. 셋 다 서비스가 끝난 뒤에도 프리서버가 생길 만큼 다시 찾는 사람이 있었던 게임이다.
다만 셋을 따라 하려는 건 아니다. 끌렸던 것만 뽑아서 섞기로 했다.
서프: 부위별 장비 카드를 모으고, 강화하고, 부가옵션을 뽑는 재미
트릭스터: 지금 봐도 예쁜 아기자기한 그림과 맵
요구르팅: 프라이팬 같은 일상 소품이 무기가 되는 엉뚱함
그리고 원칙을 몇 개 세웠다. 짐작으로 논리를 펴지 않는다, 한 번에 확정하지 않는다, 사실과 제안을 섞지 않는다. 이 원칙들은 앞으로 나를 여러 번 구해 주고, 그만큼 여러 번 귀찮게 한다.
첫 제안은 Netty 서버였다
기획 첫날 받은 첫 제안은 이랬다. 방을 만들어 여럿이 들어가는 멀티 아레나에 채굴을 얹고, 클라이언트는 TypeScript(Phaser), 서버는 Java(Netty)로.
이 블로그 개발 카테고리에는 Netty 글이 두 편 있다. 그런데도 버렸다. 세 게임을 겉핥기로만 이해한 채 나온 안이었고, 내가 쓰던 스택을 굳이 따를 이유도 없었다. Netty 글 두 편이 게임 서버로 데뷔할 기회는 그렇게 날아갔다.
손이 먼저 나갔다
레포를 만든 날, 바로 프로토타입부터 만들었다. 질문은 하나였다. “장비 카드 한 장을 바꿨을 때, 자동 공격형과 직접 액션형 중 어느 쪽에서 더 크게 느껴지는가.” 두 형태를 번갈아 4분씩 버티고, 판이 끝날 때마다 1~5점을 매기는 물건이었다.
프로토타입 01. 모눈종이 위의 파란 원이 나, 빨간 원이 적이다. 손에 든 것은 프라이팬 +2.
계획대로라면 이제 해 보고 점수만 붙이면 조작 형태가 정해질 차례였다.
냉정하게 봐 달라고 했더니
다음 날, 코드를 더 쓰기 전에 설계에 허점이 없는지부터 냉정하게, 빈틈없이 점검해 달라고 했다.
빈틈이 16개 나왔다.
치명적인 것만 두 개였다.
이 게임의 핵심 재미는 판 밖에서 카드를 강화하고 옵션을 뽑는 데 있는데, 그 판 밖의 경제가 통째로 비어 있었다. 카드가 어디서 오는지, 강화 재료는 어디서 생기고 어디에 쓰이는지, 아무것도 정해지지 않았다
끝이 있는 게임인지 끝없이 하는 게임인지도 정하지 않았다. 강화의 상한도, 콘텐츠 분량도, 값도 이 답에 달려 있는데, 로드맵에는 그 칸조차 없었다
그리고 방금 만든 프로토타입. 자동 공격형과 직접 액션형은 조작만 다른 게 아니었다. 한 번에 나오는 적의 수가 250 대 12, 카드가 떨어질 확률이 2.5% 대 10%, 회피가 있고 없고까지 같이 달랐다. 점수 차이가 나와도 그게 조작 때문인지 적 때문인지 가를 수가 없다. 매기는 사람도 만든 사람 한 명뿐이었다. 결론은 “이 프로토타입의 점수로는 조작 형태를 정할 수 없다”였다.
하나 더 있었다. 그 무렵 세운 첫 가설은 “강화한 카드는 한 장만 들고 판에 들어간다”였고, 장점으로 “다 키운 장비가 게임을 시시하게 만드는 문제가 그 한 칸에만 갇힌다”를 들었다. 그런데 같은 가설의 다른 규칙을 따라가 보니, 판 안에서 줍는 카드도 강화된 채로 나왔다. 끝까지 키우면 모든 칸이 최고 강화였다. 갇혀 있던 건 강화가 아니라 우리 생각이었다.
공정하게 적어 두자면, 점검한 쪽도 Claude였고 점검받은 설계를 같이 쓴 쪽도 상당 부분 Claude였다. 셀프 감사였다. 그래도 덕분에 숨어 있던 것들이 꽤 나왔다.
순서를 뒤집었다
로드맵을 다시 짰다. 맨 앞에 있던 조작 형태가 네 번째로 내려가고, 그 앞에 틀이 들어왔다. 누구를 위한 게임인지, 어디에 먼저 내는지, 끝이 있는지, 무엇으로 판정할지.
그날 틀부터 질문을 하나씩 답했다. 스팀에 먼저 내고, 첫 출시는 무료 체험판으로 하고, 본편은 끝이 있되 끝낸 뒤에도 끝없이 오르는 도전을 둔다.
배운 것은 한 줄이다. 무엇을 판정할지 정하기 전에 만든 프로토타입은 답을 주지 못한다.
물론 이걸 배웠다고 다음 프로토타입이 잘된 건 아니다. 그 이야기는 몇 편 뒤에 한다. 다음 편은 시뮬레이션 이야기다. 미리 말하자면, 결론은 “보류”다.
Touch background to close