일자: (작성자 기입)
오늘 멘토링은 프로젝트의 근본적인 정체성을 다시 정의하고, 핵심 기능 구현에서 마주한 기술적 한계를 현실적인 구조로 풀어내는 데 집중한 시간이었다. 단순한 아이디어 점검이 아니라, "이 프로젝트를 왜 만드는가"에 대한 답을 다시 세우는 중요한 전환점이었다.
멘토링 초반에는 프로젝트가 추구해야 할 방향성에 대해 두 가지 선택지를 놓고 논의가 진행되었다.
기술적으로 어렵더라도 프로젝트의 정체성을 지키기 위해 ‘게임을 만드는 재미’, 즉 플랫폼 방향성을 최종 선택했다. 단순히 플레이하는 게임이 아니라, 게임을 설계하고 수정하는 경험 자체가 이 프로젝트의 핵심이라는 결론에 도달했다.
방향성을 확정한 직후, 가장 큰 기술적 위기가 드러났다.
초기 기획은 다음과 같았다.
TXT 입력 → 스토리 노드 자동 수직 생성 → 중간 노드 수정 시 하위 노드 실시간 변경
하지만 사용자가 노드를 수정할 때마다 아래 모든 노드를 실시간으로 재구성하는 것은 현실적으로 구현 난이도가 너무 높았다.
이는 곧 플랫폼 명분 자체가 무너질 수 있는 위기로 이어졌다.
멘토링을 통해 문제를 정면 돌파하기보다는, 단계를 나누는 전략을 채택했다.
이 방식으로 실시간 동기화 문제를 피하면서도, 사용자가 스토리에 개입하고 수정하는 플랫폼적 경험은 유지할 수 있게 되었다.
다음으로는 게임 실행 로직과 데이터 처리 위치에 대한 논의가 이어졌다.
긴 논의 끝에 데이터의 성격에 따라 책임을 분리하기로 결정했다.
불변 데이터:
가변 데이터:
이로써 게임의 뼈대는 고정하되, 플레이 상태는 유연하게 관리할 수 있는 구조가 완성되었다.
멘토링 마지막에는 전체 프로젝트 플로우를 명확하게 정리했다.
프론트엔드
AI 서버
AI 서버 → 프론트엔드
사용자 개입
중계 서버 → 백엔드 DB
AI 서버
이후 동일한 과정 반복
게임 시작
선택 발생
다음 노드 탐색
콘텐츠 생성
콘텐츠 출력
엔딩까지 반복
이번 멘토링은 단순히 기술 스택을 정하는 시간이 아니라, 프로젝트의 정체성과 현실 사이의 균형점을 찾는 과정이었다. 포기하지 말아야 할 가치와, 타협해야 할 구현 방식을 명확히 구분할 수 있었던 의미 있는 시간이었다.