AI 스토리 게임에서 결말이 흔들리지 않는 구조

업데이트 · 이소끝 편집팀 검수

결말이 흔들리지 않으려면 엔딩 판정은 정해진 규칙(코드)이 하고, AI는 그 결과를 대사로 연기하기만 해야 합니다.

지금 바로 해보기

AI가 결말까지 정하면 생기는 문제

AI 대화로 진행하는 스토리 게임에서 흔히 생기는 문제는 세 가지입니다.

문제실제로 보이는 모습
숫자가 흔들림호감도가 올랐다고 말해 놓고 다음 턴에 처음 상태처럼 대함
조건이 흔들림증거를 다 모았는데도 재판에서 이기지 못하거나, 증거 없이 이김
말로 규칙을 바꿈"나는 사실 왕이야"라고 쓰면 정말 왕이 되어 버림

세 가지 모두 원인이 같습니다. 이야기의 규칙(수치, 단서, 시간, 엔딩)을 AI가 문장 속에서 기억하고 계산하게 했기 때문입니다. AI는 문장을 잘 쓰지만, 수십 턴 동안 같은 규칙을 정확히 지키는 일에는 약합니다.

판정은 코드, 연기는 AI

이소끝은 일을 둘로 나눴습니다.

AI가 쓴 문장 안에 숫자가 나와도 게임 상태에는 반영하지 않습니다. 상태 창도 AI가 쓴 글이 아니라 코드가 가진 값을 그대로 보여 줍니다. 그래서 문장이 조금 달라져도 이야기의 뼈대는 바뀌지 않습니다.

한 턴은 이렇게 처리됩니다

  1. 플레이어가 선택지를 고르거나 직접 말을 씁니다.
  2. 직접 쓴 말이면 AI가 그 말이 이 장면의 어떤 행동인지 고릅니다. 애매하면 "이 뜻으로 받아들일까요?"라고 되묻고, 이 확인은 턴을 쓰지 않습니다.
  3. 코드가 그 행동에 정해진 효과를 적용합니다. 예: 신뢰 +5, 단서 하나 획득, 하루 경과.
  4. AI가 바뀐 상태와 그 이유만 받아서 장면을 연기합니다. 앞으로 나올 정답이나 엔딩 조건은 받지 않습니다.
  5. 이 모든 결과를 한 번에 저장합니다. 같은 요청이 두 번 와도 한 번만 반영됩니다.

질문만 했는데 시간이 지나가지 않는 이유

캐릭터에게 질문하거나 잡담하는 것은 '대화'로, 행동을 정하는 것은 '진행 턴'으로 따로 셉니다. 궁금한 것을 물어봤다고 해서 재판 날짜가 하루 당겨지지 않습니다. 플레이어가 마음 놓고 캐릭터와 이야기할 수 있게 하려는 장치입니다.

다시 쓰기와 되돌리기는 다릅니다

버튼바뀌는 것그대로인 것
다른 문장으로대사와 지문수치, 단서, 턴
한 턴 되돌리기수치, 단서, 턴, 문장 전부없음 (이전 턴으로)

문장이 마음에 안 들 때는 결과를 지킨 채 다시 쓰고, 선택 자체를 후회할 때는 되돌립니다.

이 구조로 만든 작품

처형 30일 전, 악녀가 되었다는 30일 동안 모은 증거로 법정에서 반박하는 이야기라서, 어떤 증거를 가졌는지가 정확해야 합니다. 오늘도 세계가 멸망했습니다는 같은 하루가 반복되는 동안 무엇이 바뀌었는지를 코드가 셉니다. 두 작품 모두 엔딩은 정해진 조건으로 갈리고, 그 장면을 어떤 말투로 보여 줄지는 AI가 맡습니다.

자주 묻는 질문

AI가 엔딩을 정하면 왜 안 되나요?

AI는 같은 입력에도 매번 조금씩 다른 답을 냅니다. 엔딩 조건까지 AI가 정하면 단서를 다 모아도 엔딩이 안 나오거나, 말 한마디로 결말이 바뀌는 일이 생깁니다.

그러면 AI는 무엇을 하나요?

두 가지만 합니다. 플레이어가 직접 쓴 말이 어떤 행동인지 고르는 일, 그리고 정해진 결과를 캐릭터의 대사와 지문으로 쓰는 일입니다.

문장만 다시 받을 수 있나요?

이소끝에서는 '다른 문장으로'를 누르면 결과는 그대로 두고 문장만 새로 씁니다. 상태까지 되돌리고 싶으면 '한 턴 되돌리기'를 씁니다.

같이 보면 좋은 글

읽었으면 한 판 해볼까요?

질문과 답 전체 보기