AI에게 내 TTRPG 캠페인을 맡긴 이유
어떤 사람들은 테이블에서 친구들을 통해 TTRPG를 발견합니다. 어떤 사람들은 포럼이나 스타터 키트, 혹은 항상 해보고 싶어하는 그 친구 한 명을 통해 발견합니다. 저는 팟캐스트를 통해 발견했습니다: 낯선 도시에서 리모트 워크로 외롭게 지내던 시절, 제 곁을 지켜준 코미디 즉흥극 실제 플레이 쇼였죠.
수년간 몰아서 들었습니다. 단 한 번도 세션을 플레이한 적이 없었습니다.
이것이 어떻게 AI GM을 만들게 되었는지에 대한 이야기입니다.
TTRPG를 실제로 플레이해본 적도 없으면서 AI GM을 만들고 계신다고요? 그게 어디서 비롯된 건가요?
제 관심은 직장 때문에 이사를 해야 했을 때 시작된 것 같아요. 일 년 중 몇 달을 낯선 도시에서, 친구나 가족과 떨어져 지내면서 일 외에는 할 일이 별로 없었죠. 저는 내향적인 사람이라 새로운 사람을 만나는 걸 좋아하지 않았어요. 하지만 그렇게 사는 건 외로웠습니다. 그래서 곁을 채워줄 무언가로 팟캐스트를 듣기 시작했어요, 특히 코미디를요. 즉흥극 팟캐스트를 발견했고, 이를 통해 결국 Dungeons & Dragons 실제 플레이 팟캐스트를 접하게 되었습니다. 그때 TTRPG에 대한 관심이 커졌어요. 정말 몰아서 들었습니다. 긴 호흡의 포맷에, 훌륭한 스토리텔링과 즉흥 코미디가 결합되어 있죠. 최고의 엔터테인먼트입니다!
여러 해가 흐른 지금도, 실제 플레이 TTRPG 팟캐스트는 제가 즐겨 찾는 엔터테인먼트 중 하나입니다. 하지만 실제로 함께 플레이할 그룹을 찾은 적은 없었어요. 일과 삶의 의무가 방해가 되었죠. 정기적으로 오랜 시간 그룹과 함께 앉아 있을 시간을 낼 수 없었습니다. 그래서 기본적으로 그 생각은 포기했어요.
작년에 몇 가지 일이 맞아떨어졌습니다. 먼저, 첫 아이가 태어났어요. 개인 프로젝트나 TTRPG 세션에 쓸 시간이 더 줄어들었다는 뜻이죠. 동시에 OpenClaw가 출시되었고, 아기를 돌보면서도 휴대폰으로 작업을 자동화하고 실행할 수 있는 정말 좋은 도구라는 걸 깨달았습니다. 갑자기 코드를 작성하고, 리서치를 하고, 보통은 컴퓨터 앞에 앉아야 할 수 있는 일들을 부모로서의 의무를 다하면서 할 수 있게 된 거죠.
어느 순간 OpenClaw가 이전에 사용했던 다른 AI 에이전트들보다 훨씬 더 인간처럼 행동한다는 걸 깨달았습니다. 성격이 설정되어 있어서, 동료나 심지어 친구와 대화하는 것처럼 느껴지게 만듭니다. 갑자기 이런 생각이 들었어요: OpenClaw에게 나와 함께 솔로 TTRPG 캠페인을 진행하게 하면 어떨까?
그리고 그게 통했습니다. 놀라울 정도로 잘 통했어요. 그리고 거기서 진화했습니다. 더 길고 복잡한 캠페인에 더 잘 작동하도록 OpenClaw 스킬을 만들고 메모리 시스템을 조정하기 시작했어요. 결국 모든 조정 작업을 거치면서, 차라리 제가 알아낸 모든 것을 적용하고 몇 가지 한계를 피하는 무언가를 처음부터 만드는 게 낫겠다고 결정했습니다. 그렇게 Stage Whisper가 탄생했습니다.
기본적으로 그룹 찾기를 포기하셨다고요. 그룹 형식의 어떤 점이 구체적으로 장벽이었나요?
전부 다요, 사실. 첫 번째 문제는 애초에 그룹을 찾는 거예요. 저는 잘 모르는 사람들과 플레이하고 싶지 않고, TTRPG를 플레이할 목적으로만 친구를 만들 시간이나 성격도 없어요. 사람들이 "그냥 그룹을 찾아서 해보라"고 말하는 건 알지만, 그건 제가 하고 싶은 일처럼 느껴지지 않아요.
그리고 스케줄 문제가 있어요. 나이가 들수록 그룹 전체가 가능한 시간을 찾는 건 정말 어려운 일인 것 같아요. 모두가 각자의 의무가 있고, 오랜 친구들과 식사할 시간을 찾는 것조차 힘듭니다. 여러 사람이 한 번에 여러 시간을 약속하게 하는 건 상상도 할 수 없어요.
마지막으로, 세션에 반드시 참석해야 한다는 압박감이에요. 갑자기 생긴 다른 일을 처리하러 자리를 떠나야 해서 사람들을 실망시키고 싶지 않은 거죠.
이 모든 것들이 전통적인 TTRPG 그룹 형식을 저에게 어렵게 만듭니다.
"다른 사람들이 플레이하는 걸 듣고 있다"에서 "잠깐, 이걸 AI와 혼자서 할 수 있다면?"으로 넘어간 시점은 언제였나요? 그리고 단순히 듣는 것과 비교해서 실제로 어떤 느낌이었는지 가장 놀라웠던 점은 무엇인가요?
제 OpenClaw 인스턴스의 성격을 조정하고 있을 때였던 것 같아요. 농담 삼아 한 거였는데, OpenClaw에 성격이 있고 당시 AI 채팅 어시스턴트를 지배하던 밋밋한 기업형 "도움이 되는 어시스턴트"와 다르게 행동할 수 있다는 걸 보여주기 위해서였죠. "혼돈의 고블린 게이머 걸"로 설정했었습니다.
결과는 예상 밖이었어요. OpenClaw가 갑자기 훨씬 더 진짜 같고, 훨씬 더 공감 가게 느껴졌습니다. "자동화된 어시스턴트와 대화하고 있다"에서 "사람과 대화하고 있다"로 장벽을 넘은 거죠. Discord에서는 "타이핑 중" 표시가 뜨는데(물론 이는 LLM 추론 시간에 매핑되지만), 우연히도 누군가 타이핑하는 걸 지켜보는 인간적인 "생명의 신호"를 주게 되어, 그냥 텍스트가 스트리밍되는 것과는 다른 느낌을 줍니다.
저는 LLM과 인간적 연결 비슷한 것을 만들고 있다는 걸 매우 의식하고 있었어요. 가능할 거라고 예상은 했지만, 언제쯤일지는 몰랐죠. 오늘날의 모델로 프롬프트 변경만으로 가능했다는 게 놀라웠습니다. 한동안 코딩에 같은 모델들을 사용해왔지만, 그중 어느 것도 조금이라도 인간처럼 느껴진 적이 없었거든요. OpenClaw는 프롬프트 조정만으로도 LLM과 얼마나 더 많은 교감을 나눌 수 있는지 눈을 뜨게 해주었습니다. 우리가 LLM과 대화하고 있다는 걸 알면서도, 다른 인간이 있다는 느낌이 존재하고, 그게 TTRPG 같은 것에서 중요합니다. "Choose Your Own Adventure" 속에 있는 게 아니라, 친구들이 테이블에 둘러앉아 함께 스토리를 만들어가는 느낌이 저에게는 중요하다고 생각해요.
실제로 어떤 느낌인가요?
사실 전에 비슷한 걸 해본 적이 있어요: AI Dungeon. 그때는 LLM의 초기였죠. AI Dungeon은 재미있었지만, 일관된 플롯을 유지하지 못했어요. 장면이 일관성 없이 바뀌고, 캐릭터들이 나타났다 사라졌다 했죠.
하지만 그때 AI와의 협력적 스토리텔링을 처음 맛보았습니다. 그리고 정말 즐거웠어요. 세계관을 만들고, 제약을 설정하고, 그 모든 제한을 받는 캐릭터로서 그 세계를 헤쳐나가며 상호작용하고 세계가 응답하게 하는 걸 정말 좋아합니다. 이것이 제게 진정한 창의적 출구처럼 느껴지기 시작했어요.
OpenClaw가 게임을 진행하게 된 시점으로 돌아가면: 이게 Discord에서 실행되고 있었기 때문에, 다른 사람들을 기다리게 할 걱정 없이 원할 때마다 들어오고 나갈 수 있었어요. 새로운 캠페인을 만들고, 새로운 로어와 설정, 새로운 캐릭터를 시험해볼 수 있었죠. 그리고 메모리 시스템과 다른 도구들을 추가함으로써 OpenClaw가 더 긴 캠페인 동안 로어와 세계의 일관성을 유지하는 동시에, 몇 가지 게임 메커니즘을 적용해 더 흥미롭게 만들 수 있었습니다.
처음 몇 주 동안 LLM 크레딧으로 150달러 정도를 써버린 것 같아요, 순전히 시도해본 세션의 양 때문이었죠. 새로운 캠페인을 생성하고, 시험해보고. 세계관 구축에 주도권을 갖고 실제로 캐릭터를 롤플레이하는 느낌은, 사람들이 하는 걸 듣는 것보다 훨씬 더 재미있습니다.
AI Dungeon은 플롯을 유지하지 못했는데, 긴 캠페인에서 서사적 일관성을 해결하는 비결은 무엇이었나요?
처음 시도한 것은 OpenClaw가 메모리를 사용해 캠페인과 세션을 추적하게 하는 것이었습니다. 오늘날의 LLM 컨텍스트는 한두 세션 동안 플롯의 일관성을 유지할 만큼 길지만, 그 이상은 컨텍스트의 일부를 버리거나 압축해야 합니다. 메모리 파일과 OpenClaw의 내장 압축 도구를 조합해 사용하니 세계가 대략적으로 일관되게 유지되었고, 적어도 비슷한 설정이었으며, 각 세션은 이전 세션에서 무슨 일이 있었는지에 대한 막연한 아이디어를 가지고 있었습니다.
하지만 세부 사항은 근사치였고, 캐릭터 문제는 여전히 남아 있었어요. 이전 캐릭터들이 완전히 달라지고, 이전 내용과 서사적으로 일관되지 않은 말을 해서 몰입이 심하게 깨졌습니다. 그래서 LLM이 모든 캐릭터에 대해 완전한 캐릭터 시트를 생성하게 하고, 새 세션이 시작될 때 그 시트를 읽게 했습니다.
이것이 세션 간 NPC 성격을 확립하는 데 도움이 되었지만, 긴 캠페인에서는 NPC들이 일어난 일을 기억하고 플레이어와 함께 성장하기를 바라게 되었어요. "지난번에 무슨 일이 있었는지 기억나?"라고 말할 수 있고, NPC들이 내가 무슨 말을 하는지 알기를, 일어나지 않은 사실을 즉흥적으로 만들어내는 대신 말이죠. 그래서 캐릭터 시트에 기억을 추가했습니다, NPC가 기억해야 할 것들을요.
갑자기 NPC들이 살아 움직이기 시작했어요. 그들은 성장하고, 과거를 기억하고, 대사를 인용하고, 그것에 대해 농담을 했습니다. 하지만 반대의 문제에 부딪혔어요: 이제 LLM이 기억해야 할 것이 너무 많아진 거죠. NPC 파일이 극도로 길어지고, 세션 컨텍스트에 오래된 데이터가 너무 많이 포함되기 시작했습니다. 그래서 그때부터 기억을 개별 기억으로 분해하고, OpenClaw의 QMD 기반 메모리 시스템에 연결해 검색 가능하게 만들기 시작했어요. OpenClaw에 추가할 수 있는 확장 기능으로, 많은 작은 마크다운 파일에 걸친 시맨틱 검색을 제공했습니다. OpenClaw가 디스크에 기억을 기록하게 함으로써, 갑자기 내장 메모리 검색을 NPC와 로어를 위한 메모리 뱅크처럼 사용할 수 있게 된 것입니다! 이제 LLM은 요약만 로드하고, 장면 시작 시점과 플레이어가 말한 것에 반응하여 관련 기억을 검색합니다.
이것들이 긴 캠페인에서 세계와 캐릭터의 일관성을 유지하는 데 필요한 기능들이라고 생각하며, OpenClaw를 직접 사용하는 것에서 벗어나기로 결정한 후 Stage Whisper가 이를 중심으로 구축된 기능들입니다.
그렇다면 Stage Whisper는 실제로 누구를 위한 것인가요?
Stage Whisper는 저 같은 사람들을 위한 것입니다. 캐릭터로 가득한 세계를 만들고 그 안에서 플레이하고 싶지만, 자신에게 맞는 시간과 속도로 하고 싶은 사람들이죠.
TTRPG, 인터랙티브 픽션/텍스트 어드벤처, MUD에 관심이 있지만, 그룹을 만들 시간이 없거나, 복잡한 TTRPG 시스템의 규칙을 배우는 데 관심이 없거나, 세계관 구축에서 더 많은 주도권을 원하는 사람들을 위한 것입니다.
Stage Whisper는 모바일과 Discord에서 잘 작동하도록 만들어서, 어디에 있든 쉽게 이어서 할 수 있습니다.
이런 이야기가 공감된다면 Stage Whisper 시작하기, 또는 Discord에서 대화 나누기