2026년 7월 12일에 방향을 정하고 8월 21일에 프로덕션에 올렸습니다. 그 사이 40일 동안 실제로 무슨 일이 있었는지, 남아 있는 기록 그대로 적습니다.
솔직하게 먼저 적습니다. 이 게임을 처음 떠올린 날은 남아 있지 않습니다. 가장 이른 기록은 7월 12일인데, 그때는 이미 게임이 돌아가고 있었습니다. 그러니 이 글은 "구상한 날"이 아니라 "방향을 정한 날"부터 시작합니다.
여기서 하나 배웠습니다. 기록은 시작할 때 가장 안 남습니다. 재미있어서 만들 때는 아무도 일지를 안 씁니다. 그러다 출시가 가까워지면 문서가 쏟아집니다. 지금 이 글을 쓰면서 제일 아쉬운 게 그 앞부분입니다.
"많은 사람이 오래 즐기게" 하는 것을 최우선으로 두고, 광고 수익화는 완전히 나중 일로 미룬다고 정했습니다. 나중에 이 결정이 계속 기준이 됩니다.
2048 계열이지만 타일에서 숫자를 지우고 캐릭터로 바꿨습니다. 2부터 8192까지 13단계입니다.
작은 알 → 중간 알 → 커진 알 → 금 간 알 → 갓 깬 병아리 → 병아리 → 큰 병아리 → 청소년 닭 → 암탉 → 수탉 → 황금 닭 → 봉황 → 용
캐릭터는 인라인 SVG로 그렸습니다. 색이 흐리다는 피드백을 받아 진한 앰버·주황 계열로 조정한 이력이 남아 있습니다.
"개선점을 알려줘"라고 하면 칭찬이 돌아오니, 주장마다 출처를 대라는 조건을 걸고 코드를 읽혀 점검 문서를 만들었습니다. 세 가지가 나왔습니다.
① script.js의 "상위 몇 %"는 진짜 순위가 아니라 만들어낸 숫자였습니다.
서버가 없으니 알 수가 없는데 있는 것처럼 보여주고 있었습니다.
② index.html의 user-scalable=no가 화면 확대를 막고 있었습니다 — WCAG 위반입니다.
③ 저장이 localStorage 전용이라 기기를 바꾸면 기록이 전부 사라집니다.
가장 큰 문제 세 개가 전부 "기능 부족"이 아니라 온보딩·데이터·플랫폼 통합이었습니다. 이미 만들어둔 것(엔드리스, 콤보, 출석, 데일리 챌린지, 공유 카드, 상점, 효과음)은 "추가하지 말 것" 목록으로 따로 정리됐습니다.
체크리스트 첫 줄이 당시 상태를 정확히 남겨 뒀습니다. "순수 웹, 게임 로직·UI·사운드·튜토리얼·설정·업적·백업 완료. 남은 건 앱 포장 + 실 SDK 연동 + 스토어 계정/심사."
항목마다 🟢 코드로 가능 / 🔴 본인만 가능을 표시해 뒀습니다. 서명, 결제, 계정, 제출은 전부 🔴입니다. 여기서부터가 진짜 일이었습니다.
capacitor.config.json이 생겼습니다. appId는 com.numgen.app.
appId는 출시 후 변경이 불가능해서 여기서 확정해야 했습니다.
앱 이름을 이렇게 정했습니다 — 「넘버젠: 알에서 용까지 진화 퍼즐」. 설명에도 "전설의 용까지!"를 넣었습니다.
광고와 결제가 들어가는 순간 필수가 됩니다. 문서 자체에 시행일이 박혀 있어 이 날짜만큼은 파일 시각이 아니라 확정된 값입니다.
3분 뒤 store-listing-en.md가 만들어졌습니다. 처음부터 국내만 볼 생각은 아니었습니다.
에뮬레이터가 아니라 실제 폰으로 찍었습니다. 그래서 상태바에 통신사와 배터리가 그대로 찍혀 있습니다. (이 사이트의 넘버젠 카드 이미지도 그때 찍은 것을 잘라 쓰고 있습니다.)
다크·라이트 배경 이미지, 히어로 키아트, 히어로용 피처 그래픽이 차례로 들어왔습니다. 기능은 그대로인데 보이는 것만 2주 가까이 손봤습니다.
상품 4개입니다 — 코인 100·300·700, 그리고 광고 제거. Google Play 결제를 쓰고 카드 정보는 저장하지 않습니다.
서버 영수증 검증은 넣지 않았습니다. 서버가 없으니까요. 기기에서 바로 지급하는 방식이라 네트워크 오류로 지급이 누락될 수 있습니다. 이건 지금도 그대로이고, 약관과 지원 페이지에 그렇게 적어 뒀습니다.
기록이 가장 조밀한 날입니다. 열 시간 안에 측정·광고·빌드가 전부 끝났습니다.
google-services.json이 들어왔습니다. 프로젝트는 numgen-game.
게임 시작·종료, 진화 기록, 보상형 광고 결과, 상점·설정, 출석·업적·튜토리얼. 7월 13일 감사에서 "어디서 나가는지 알 수 없다"고 지적받은 부분에 대한 답입니다.
USE_TEST_ADS = false. 실제 AdMob 배너·보상형 광고 단위 ID가 들어갔고,
유럽 등의 이용자를 위한 UMP 동의 처리도 함께 붙었습니다.
10분 뒤 스토어에 올릴 파일이 나왔습니다.
같은 날 기준으로 넘버젠은 Google Play 프로덕션에 출시된 상태였습니다. 버전 1.0.1(versionCode 7)이 게시 완료였고, 1.0.2(versionCode 8) AAB가 대기 중이었습니다.
8월 21일 기준 최근 7일 수치입니다.
| 항목 | 넘버젠 |
|---|---|
| Play 월간 활성 기기 | 3 |
| 광고 요청 | 0 |
| 광고 수익 | US$0.00 |
| Play 평점 | 아직 데이터 없음 |
활성 기기가 3대인데 광고 요청이 0이라는 게 눈에 걸립니다. 사람이 없어서 0인 것과 코드가 안 불려서 0인 것은 다른 문제인데, 후자에 가깝습니다. 확인이 다음 과제로 남았습니다.
7월 12일에 "수익화는 나중"이라고 정했던 게 결과적으로 맞았습니다. 지금 단계에서 광고 수익은 수익이 아니라 계기판입니다.
7월 14일의 「알에서 용까지 진화 퍼즐」에서 바꿨습니다.
용은 실제로 있습니다. 13단계의 마지막, 8192입니다. 다만 2048 계열에서 8192는 대부분의 플레이어가 평생 보지 못하는 값입니다. 스토어 이름이 게임에서 흔히 보게 될 것을 말하는 게 맞다고 판단했습니다.
게임 안에서 픽셀로직·Star Assault를 소개하는 코드가 들어갔습니다. 게임 하나로 사람을 모으는 것보다, 온 사람이 다른 게임으로 넘어가게 하는 게 지금 규모에서는 더 현실적이라고 봤습니다.
날짜를 늘어놓고 보니 분포가 뚜렷합니다.
즉 "게임을 만드는 일"과 "게임을 파는 일"은 거의 겹치지 않았고, 후자가 기록의 대부분을 차지합니다. 처음 만들 때는 이 비율을 전혀 예상하지 못했습니다.
그리고 7월 13일에 지적받은 세 가지 중 가장 큰 것은 아직 못 고쳤습니다. 기기를 바꾸면 기록이 사라지는 문제입니다. 서버가 필요한 일이라 미뤄져 있고, 대신 그 사실을 숨기지 않고 적어 두는 것으로 버티고 있습니다.
넘버젠은 브라우저에서 바로 해보실 수 있고, Google Play에도 있습니다. 같은 코드입니다.