주인공은 왜 플레이어의 뜻을 따르는가: 선택에 캐릭터 동기 부여하기
인터랙티브 영상 게임의 선택지는 플레이어가 하고 싶은 일만 나타내서는 안 된다. 캐릭터가 현재 처한 상황에서 할 법한 행동이어야 한다. 캐릭터의 동기는 상호작용을 제한하는 것이 아니라 선택에 납득할 수 있는 경계를 세운다. 한 사람도 망설이거나, 거짓말하거나, 위험을 감수하거나, 입장을 바꿀 수 있다. 하지만 모든 변화에는 욕망, 두려움, 정보 또는 관계에 기반한 이유가 필요하다.

들어가며
인터랙티브 영상 게임의 선택지는 플레이어가 하고 싶은 일만 나타내서는 안 된다. 캐릭터가 현재 처한 상황에서 할 법한 행동이어야 한다. 캐릭터의 동기는 상호작용을 제한하는 것이 아니라 선택에 납득할 수 있는 경계를 세운다. 한 사람도 망설이거나, 거짓말하거나, 위험을 감수하거나, 입장을 바꿀 수 있다. 하지만 모든 변화에는 욕망, 두려움, 정보 또는 관계에 기반한 이유가 필요하다.
주인공이 방금 전까지 누구도 해치지 않겠다고 거부하다가, 다음 순간 플레이어가 버튼을 눌렀다는 이유만으로 직접 사람을 죽인다면 플레이어는 조작 권한을 얻지만 캐릭터에 대한 이해를 잃는다. 해결책은 주인공을 개성 없는 빈 껍데기로 쓰는 것이 아니다. 먼저 안정적인 핵심을 정의한 뒤, 플레이어가 밀어붙일 수 있는 경계를 설계해야 한다.
네 가지 항목으로 캐릭터의 행동 범위 정하기
첫째는 욕망이다. 캐릭터가 적극적으로 얻고 싶은 것이 무엇인지 정한다. 린즈샤는 자신이 사고 징후를 또다시 놓치지 않았다는 것을 증명하고 싶고, 일자리도 지키고 싶다.
둘째는 두려움이다. 그녀가 무엇을 잃는 것을 가장 두려워하는지 정한다. 동료의 생명이나 직업적 신뢰일 수도 있고, 자신이 과거에 문제 은폐에 가담했다는 사실을 알게 되는 것일 수도 있다.
셋째는 넘지 않을 선이다. 정상적인 상태에서 절대 하지 않을 일이 무엇인지 정한다. 예를 들어 무고한 사람을 직접 해치거나, 검증 없이 사용자의 개인정보를 공개하지 않는 것이다.
넷째는 바뀔 수 있는 경계다. 어떤 조건에서 기존 행동 방식을 벗어나는지 정한다. 증거의 완전성, 남은 시간, 협력자와의 관계, 이전의 실패는 모두 이 경계를 바꿀 수 있다.
네 가지 항목은 노드와 상태에서 읽어 활용할 수 있어야 한다. 그저 “겉은 차갑지만 속은 따뜻하고, 강인하며 선량하다”라고 쓰는 것만으로는 구체적인 선택을 설명할 수 없다.
선택지는 같은 동기에서 나온 서로 다른 전략이어야 한다
의미 있는 분기를 만들기 위해 캐릭터에게 서로 반대되는 인격을 부여할 필요는 없다. 동료를 보호하기 위해 린즈샤는 즉시 경찰에 신고할 수도 있고, 회사가 증거를 파기하지 못하도록 먼저 복사할 수도 있으며, 시스템을 더 잘 아는 천모에게 접근 권한을 넘길 수도 있다. 세 행동 모두 보호하려는 욕망에 부합하지만 위험에 대한 판단은 다르다.
이렇게 하면 플레이어는 노드마다 주인공이 누구인지 새로 정하는 대신 전략과 가치의 우선순위를 표현한다. 캐릭터는 알아볼 수 있는 일관성을 유지하면서도 플레이어는 자신만의 경로를 남길 수 있다.
캐릭터의 변화가 “촉발—저항—행동”을 거치게 하기
중대한 경계 넘기는 선택지 하나로 순식간에 이루어져서는 안 된다. 먼저 촉발 사건이 발생하고, 캐릭터가 저항을 표현한 뒤, 충분한 상태 조건이 뒷받침될 때 행동을 열어야 한다.
예를 들어 린즈샤는 처음에 서버실에 불법으로 들어가기를 거부한다. 플레이어가 사고 녹음 파일을 발견하는 것이 촉발이고, 그녀가 위법 행위와 실직을 걱정하는 것이 저항이다. 남은 시간이 부족하고 천모의 신뢰가 조건을 충족할 때에야 문을 부수는 선택지가 나타난다. 플레이어가 문을 부수기로 선택하더라도 캐릭터가 왜 여기까지 왔는지 이해할 수 있다.
조건이 부족할 때 모든 과격한 선택지를 조용히 삭제하지 말자. 캐릭터의 거부를 보여 주거나, 대안을 제시하거나, 대사로 현재의 경계를 설명할 수 있다. 이것 자체도 캐릭터의 피드백이다.
캐릭터—상태—선택지 표 만들기
| 캐릭터 상태 | 촉발 조건 | 사용 가능한 선택지 | 사용할 수 없는 이유 | 이후 변화 |
|---|---|---|---|---|
| 신중한 당직 담당자 | 증거 부족 | 검증하기, 도움 요청하기 | 규정을 어기고 싶지 않음 | 신뢰할 수 있는 증거 확보 |
| 적극적인 조사자 | 예언이 현실이 됨 | 복사하기, 더 캐묻기 | 여전히 사람을 해치기를 거부함 | 회사의 경계심 상승 |
| 긴급 구조자 | 시간 부족 | 문 부수기, 전원 차단하기 | 통상적인 절차를 포기함 | 직업과 안전에 미치는 결과 |
작가는 이 표로 대사를 판단하고, 프로그래머는 조건을 제어하며, 배우는 같은 대사가 왜 다르게 표현되는지 이해한다.
플레이어가 선택하지 않는 것도 캐릭터의 행동이다
침묵, 시간 초과, 선택 화면 이탈도 모두 정의해야 한다. 제한 시간이 있는 선택에서 아무 조작도 하지 않았다고 해서 시스템이 늘 최악의 행동으로 해석해서는 안 된다. 캐릭터는 평소의 습관대로 행동하거나, 얼어붙어 움직이지 못하거나, 협력자에게 주도권을 넘길 수 있다.
기본 행동은 개발자에게 편리한 경로가 아니라 캐릭터의 현재 상태에 맞아야 한다. 신중한 상태에서 시간이 초과되면 문을 잠근 채 유지할 수 있고, 긴급한 상태에서 시간이 초과되면 린즈샤가 스스로 사람을 구할 수 있다. 이렇게 하면 플레이어가 없어도 캐릭터가 성립한다.
반례로 선택지가 캐릭터를 분열시키는지 확인하기
선택지를 하나씩 소리 내어 읽고 세 가지 질문을 던진다. 캐릭터는 왜 지금 이것을 떠올리는가? 플레이어는 앞서 이를 뒷받침하는 정보를 얻었는가? 선택 후 캐릭터는 자신이 이 일을 했다고 인정하는가?
그다음 인접한 노드를 확인한다. 플레이어가 방금 천모를 믿겠다고 공개적으로 약속했는데, 다음 공통 영상에서는 조건 없이 그를 의심한다면 분기의 합류가 캐릭터 상태를 지워 버린 것이다. 조건부 대사 한 줄이나 서로 다른 반응 장면을 추가하거나, 공통 구간을 다시 써서 여러 상태에 대응하게 할 수 있다.
캐릭터 아크를 설계할 때도 변수의 수를 절제해야 한다. “용기, 선량함, 이성, 충동, 충성심” 같은 형용사마다 별도의 수치를 만들지 말자. 거짓말한 적이 있는지, 증거를 공개했는지, 동료를 포기했는지처럼 이후 노드에서 읽어 활용할 사실을 우선 기록한다. 추상적인 성격 점수보다 구체적인 행동이 납득할 수 있는 피드백을 쓰기 쉽다.
주요 캐릭터마다 “절대 등장하지 않을 선택지”를 하나씩 써 보는 것도 도움이 된다. 팀이 캐릭터의 경계를 인정하게 하고, 수정 과정에서 분기 수를 늘리려고 넣은 캐릭터에 맞지 않는 행동을 빠르게 찾아낼 수 있다. 이야기에 정말로 그 경계를 넘는 일이 필요하다면 먼저 충분한 촉발 사건과 대가를 마련해야 한다.
배우나 성우가 제작에 참여하기 전에 상태표를 바탕으로 각 노드의 목표, 숨은 의도, 앞서 일어난 변화를 자신의 말로 설명하게 하자. 한 장면의 대사만을 근거로 연기하면 서로 다른 촬영일 사이에 캐릭터의 연속성을 잃기 쉽다.
캐릭터의 경계를 완성한 뒤에는 곧바로 대사를 늘리지 말자. 다음 단계에서는 먼저 정보 격차 매트릭스를 만들어 각 캐릭터가 무엇을 알고 무엇을 숨기는지, 그리고 플레이어가 왜 모순을 발견할 수 있는지 확인한다.


