리팩토링과 i18n을 마치고 한 발 물러서서 생각했다. 이 마을에 사람들이 왜 머무를까?
답이 명확하지 않았다.
현재 상태
기술적으로는 많이 왔다. 24시간 동안 24커밋, 모듈화, i18n 639키, Firebase 기억 동기화, LLM 프롬프트 강화. 그런데 정작 플레이해보면:
입장 → 유진이 "안녕하세요" → 걸어다님 → NPC와 대화 → ...뭘 하지?
**"다음에 뭘 하지?"**가 없다.
진짜 문제 3가지
1. 첫 30초에 "와" 순간이 없다
방문자 대부분은 포트폴리오를 보러 온 사람이다. 30초 안에 못 잡으면 떠난다.
지금은 마을이 조용하다. NPC가 천천히 다가와서 "안녕하세요"라고 한다. 분수가 있고 건물이 있다. 그래서?
필요한 건 들어온 순간 이미 살아있는 세상이다. NPC들이 대화하고 있고, 누군가 웃고 있고, 빵집에서 연기가 나고, 뭔가 일어나고 있어야 한다.
2. 대화의 밀도가 낮다
LLM 한 턴에 25초 대기. 5분 대화해도 실제 주고받은 건 56마디.
대화가 재미있으려면 예상 못한 반응이 있어야 한다. 유머, 비밀, 떡밥, 이 NPC만의 말버릇. 지금은 "네, 좋아요" 수준의 일반적인 응답이 대부분이다.
NPC 개성이 프롬프트에만 존재하고 행동으로 체감되지 않는다.
3. "다시 올 이유"가 약하다
기억 시스템을 만들었다. NPC가 과거 대화를 기억하고, 관계가 쌓이고, Firebase에 영속화된다. 기술적으로는 잘 동작한다.
그런데 이걸 체감하려면 3~5회 방문이 필요하다. 첫 방문에서 "다시 와야겠다"는 동기를 심어야 하는데, 그게 없다.
두 가지 방향
A. 게임성 강화 — "할 것을 준다"
- 마을의 미스터리: "이 마을에는 비밀이 있다" → 단서 수집 → 발견
- 컬렉션: 숨겨진 장소, NPC별 특별 대사, 시간대별 이벤트
- NPC 고유 미니 이벤트: 빵집에서 빵 만들기, 도서관 퀴즈
문제: 콘텐츠 소모형. 한번 다 하면 끝. 그리고 "게임"을 만드는 게 목표가 아니다.
B. 분위기 강화 — "있고 싶게 만든다"
- BGM + 환경음: 새소리, 분수 소리, 카페의 잔잔한 음악
- 날씨/시간의 극적인 비주얼: 비 오는 밤, 석양, 아침 안개
- NPC 일상이 보이게: 빵집에서 연기, 카페에서 커피 향
- "그냥 켜놓고 싶은" 공간 (lo-fi 라디오 느낌)
내가 생각하는 답
이 프로젝트의 정체성:
"어떤 개발자의 홈페이지에 들어갔더니, 작은 마을이 살아 숨쉬고 있었다."
핵심은 **"살아 숨쉬고 있었다"**다. 게임이 아니라 공간이다.
사람들이 lo-fi 라디오를 틀어놓는 이유는 뭔가를 하려고가 아니다. 거기 있는 것 자체가 좋으니까.
그래서 B가 맞다고 본다. 체류시간을 늘리려면 "할 것"을 주는 게 아니라 "있고 싶게" 만들어야 한다.
다음 단계: 효과 대비 높은 순서
1. 소리 (BGM + 환경음)
소리가 있으면 체류시간이 극적으로 늘어난다. 시각만으로는 "구경"이지만, 소리가 더해지면 "체험"이 된다.
- 장소별 환경음 (공원: 새소리, 카페: 잔잔한 재즈, 분수: 물소리)
- 시간대별 BGM (낮: 밝은 어쿠스틱, 밤: 조용한 피아노)
- NPC 대화 시 작은 효과음
2. 첫 30초 연출
지금은 플레이어가 입장해야 세상이 시작된다. 그게 아니라, 이미 돌아가고 있는 세상에 플레이어가 끼어드는 느낌이어야 한다.
- 입장 시 카메라가 마을을 한 바퀴 훑어주는 인트로
- NPC들이 이미 대화하고 있는 장면
- 유진이 "어, 누가 왔네?" 하는 자연스러운 반응
3. NPC 개성 극대화
한 NPC당 "이 사람 특이하다" 하는 포인트 하나:
- 빵집 소영: 모든 걸 빵에 비유한다 ("인생은 크루아상 같은 거야, 겹겹이 쌓여야 맛있어")
- 도서관 재현: 대화 중간에 책 인용을 한다
- 체육관 동혁: 인사가 항상 "오늘 운동했어?" 로 시작한다
- 경찰 준혁: 모든 걸 의심한다 ("그거... 진짜야?")
프롬프트에만 쓰는 게 아니라, 첫 대화에서 바로 체감되어야 한다.
핵심 질문
이 마을에 소리가 있고, NPC가 진짜 살아있는 것처럼 보이면, 사람들은 5분 더 머물까?
나는 그렇다고 생각한다. 게임을 만들 필요 없다. 분위기를 만들면 된다.