2011년 6월 9일

불완전한 인터랙티브 스토리텔링 방법들

GPG 보내기 인쇄하기 / PDF로 저장하기 인쇄하기 / PDF로 저장하기인쇄하기 / PDF로 저장하기

안녕하세요, 밝은해입니다.

드디어! 디자인과 플레이 번역소에 다른 번역자 분이 참여하셨습니다. 바로 건담을 우주로 날리고 싶은 덕후(…), ‘강덕후’님입니다. 오늘 글은 바로 강덕후님의 첫 번역입니다 :-)

자, 그럼, 오늘 소개해드릴 글은 크리스 크로포드가 기존 게임의 스토리텔링 방법을 파헤친 글입니다. 크로포드가 자가 출판한 저널 인터랙티브 엔터테인먼트 디자인(Interactive Entertainment Design) 7권에 실린 글로, 1994년경에 쓴 것으로 추정합니다.

크리스 크로포드는 ‘인터랙티브 스토리텔링’ 논의에 있어 대표적인 인물인데요. 크로포드가 ‘상호작용하는 이야기’ 개념을 처음 발안했다고 보긴 어렵지만, 그는 ‘인터랙티브 스토리텔링’이란 용어를 만들면서 90년대에 그 방법에 대한 논의를 주도했던 인물입니다. 2000년대 초에는 비슷한 길을 가는 사람들을 모아 프론티스테리온(Phrontisterion)이라는 모임을 열기도 했죠.

비록 그가 십여 년을 붙잡은 궁리의 산물인 스토리트론은 별다른 반응을 얻지 못 했지만, 그는 실패를 인정하고 최근 다시 작은 것부터 도전을 시작하고 있습니다.

오늘 이 글 자체는 낡은 관점으로 보이거나 별로 얻어갈 게 없다고 느껴질 수도 있습니다. 하지만 앞으로 디자인과 플레이에서는 크로포드가 상호작용하는 이야기를 추구하며 고민했던 흔적은 물론, 그 말고도 비슷한 목표를 추구하는 사람들의 노력과 성과를 계속 조명할 생각입니다. 하나하나 조각을 모아 큰 그림을 완성해보자구요 :)

그럼 즐기시길!

1994년 | 크리스 크로포드 | 원문보기 (영어)
번역: 강덕후

구조적인 관점에서 인터랙티브 엔터테인먼트 디자인을 다루어 보려 한다. 이야기의 구조를 보여주는 단순한 다이어그램으로 시작해보자.


이 다이어그램에서 개별 원은 하나의 사건이나 행동을 의미한다. 사이에 있는 화살표는 사건 간의 관계를 보여준다. 이야기란 이렇게 사건들의 단순한 연계라 할 수 있다. “옛날 옛날 쿨리치라는 귀족 청년이 살고 있었어요. 어느 날 그의 계모가 올웬이라는 아름다운 소녀의 마음을 빼앗아야 한다고 말했습니다. 하지만 그러기 위해서는 대왕의 도움을 얻어야 했죠. 그래서 쿨리치는 아더왕의 궁전으로....”

사건의 연계가 선형적이라는 것을 알 수 있다. 그래서 이런 구조를 스토리라인이라 말한다.

그럼 이제, 어떻게 이 구조를 상호작용하는 것으로 바꿀 수 있을까? 어떤 이들은 굳이 이런 의문을 가지지 않는다. 이런 사람들은 이야기 하나를 골라잡아 컴퓨터로 억지로 구겨 넣어서 무의미한 기술적 기교로 꾸며놓고는 상호작용한다고 소개한다. 이런 말도 안되는 것은 더 이상 설명할 필요도 없이 무시하도록 하겠다.

이전 글(Fundamentls of Interactivity)에서 이야기해본 것처럼 상호작용에는 몇 가지 단계나 구성요소가 필요하다. 하지만 여기서는 글의 목적에 맞게 상호작용에 있어 하나의 구성요소인 “사용자 입장에서의 선택 요소”에만  포커스를 맞춰 보겠다. 사용자는 어떤 결정을 내리고 선택을 하게 된다.  나는 이러한 선택이 없다면 상호작용도 없다고 생각한다. 사용자가 어떤 선택을 할 수 있는 상황이 아니라면 그것은 상호작용이 없는 평범한 이야기일 뿐이다. 선택은 아래 그림과 같은 작은 다이어그램으로 표현할 수 있다.


이를 프로그래밍에서 따온 용어로 “분기점”이라 부른다. 이야기 속에서 사용자는 자신이 결정을 내려야 하는 지점에 도달한다. 사용자에겐 여러 선택권이 있다. 이는 이야기가 여러 방향 중에서 어느 방향으로든 진행될 수 있다는 말이다. 사용자는 어떤 안을 택할지 고민하게 된다. 중요한 점은 사용자가 이야기의 진행방향에 영향을 미칠 의미 있는 선택이 적어도 하나보다는 많아야 한다.

자, 이 구조를 스토리라인에 넣으면 어떻게 될까? 가장 단순한 방법은 다음과 같이 스토리라인 구조에 우겨 넣는 것이다.


물론 이는 새로운 문제를 야기한다. 비어있는 점 아래는 어떻게 될까? 그럼 이 구조에 분기점을 더 넣어서 선택권을 주도록 해보자. 이렇게 하면 내가 “이야기 나무”(story tree)라 부르는 것이 만들어 진다.


이제는  확실히 구조라고 부를만한 것이 되었다. 지금 시점에서 물어보고 싶은 것은 이 구조가 몇 겹이 되어야 하냐는 것이다. 이런 피라미드형 구조에 얼마나 많은 층이 생겨야 하냐는 말이다. 지금 내가 그린 것은 4개의 층이지만, 실제 제품은 얼마나 있어야 할까?

이에 대한 대답은 이야기 나무의 한 부분에 표시를 해서 다시 보면 금새 알 수 있다.


표시한 부분은 처음 글을 시작할 때의 스토리라인과 똑같다. 말하자면, 이야기 나무는 스토리라인 제작기다. 이야기 나무를 따라 이어지는 하나의 경로는 전형적인 스토리라인을 만들어 내는 것이다. 그러므로 우리는 이야기에 대해 알고 있는 것을 적용하여 이야기 나무의 적절한 깊이를 어림할 수 있다. 예를 들어 영화 같은 것은 적어도 10가지 이상의 사건이나 행동이 있으며, 아무리 많아도 만 개보다는 적다. 내 생각에 영화는 수백 개 또는 수천 개 정도의 사건이나 액션이 있는 것 같다. 소설은 아마 더 많을 수도 있다.

그러면 보수적으로 생각해보자. 우리의 인터랙티브 스토리는 백 개 정도의 사건이나 액션만 있으면 된다고 생각해 보는 것이다. 다시 말하면 우리 이야기에 100겹이 있다는 것이다. 좀 더 나아가서 각 분기점에는 최소한인 두 가지 선택만 있다고 해보자. 이는 이야기 나무가 2의 100승 만큼의 점들을 가지게 된다는 것이다. 그게 얼마나 되냐고? 10의 30승 정도 된다. 이런 점들을 생산하는 직원이 백만 명 있고, 일 년 내내 쉬지도 않고 24시간 내내 한 명이 매 초마다 이 점들을 만들어 낸다고 했을 때, 30조 년이 걸린다.

이런. 이게 문제네.

되접기

이를 위한 해결책이 수 년 간 다양하게 개발되었다. 가장 먼저 개발된 25년 전의 해결책은 아래와 같은 구조를 가지고 있다.


나는 이것을 되접기(foldback)라고 부른다. 스토리라인이 다시 하나로 접히는 것이다. 예를  들어  A, B, C, D라고 이름 붙인 처음 4개의 점을 보자. 점 A는 엘로이즈가 바트에게 “난 당신 같은 겁쟁이는 싫어요”라 말하는 부분이다. 여기에서 이어져 점 B는 바트가 손을 덜덜 떨면서 엘로이즈에게 변명하는 부분이고, 동시에 점 C는 그녀를 비웃으며 “헛! 창고에서도 당신보다 나은 사람을 만날 수 있소”라 말하는 부분이다. 이제 점 D는 엘로이즈가 “바트~ 제발 그러지 말아요. 그 말 취소할게요”라 말하면 적당할 것이다. 바트의 어떤 행동에도 들어맞는 대답이기 때문이다. 이런 방법의 문제점은 어떤 의미의 상호작용도 존재하지 않는 것이다. 바트가 무슨 짓을 하든, 엘로이즈는 그를 다시 받아 주게 된다. 사실 이 다이어그램을 조금만 멀리서 보면 일반적인 스토리 라인과 전혀 다른 점이 없어 보인다. 그러면  이야기 나무인척 하는 스토리라인이라 해도 할 말이 없다. 이는  거짓 상호작용이다.

그렇다고 되접기가 쓸모가 없다는 것은 아니다. 아래는 되접기를 약간 활용한 이야기 나무 모형이다.


이는 앞선 이야기 나무와 같은 수의 선택을 거친다. 이런 방법으로 사용자에게 충분한 선택권을 주면서도 디자이너가 작업을 덜 하도록 만들 수 있게 된다. 그렇다고 해도 되접기는 여전히 기하급수적 증가 문제에 어떠한 도움도 되지 못한다. 그럴듯하게 되접기를 넣었다고 하더라도 여전히 수 십억 명의 일꾼들이 수 십억 년 동안 작업을 해야 할 만큼 일이 남을 수 밖에 없다.

길 잃은 것들은 목을 쳐라

이는 또 다른 접근법이다.


나는 이것을 이야기 나무 디자인에서 “미아 처단” 접근법이라 칭한다. 디자이너는 사용자에게 많은 선택권을 제공하지만 그 대부분은 죽음이나 이야기의 끝으로 이어진다. 이러한 짜임새는 결국  실패로 끝나는 길을 덧붙여 놓은 선형적 스토리라인에 지나지 않는다. 핵심은 결국 선형이다. 많은 어드벤처 게임이나 퍼즐 스토리가 이 모형을 따른 것이다.

장애물 이야기

또 다른 접근법으로 “장애물” 방식을 들 수 있다.  플레이어는 선형적으로 연계된 이야기를 겪게 되지만 각각이 장애물로 떨어트려져 있다.


사용자는 이야기의 각 단계에서 벽을 향해 돌진하고, 다음 스테이지로 넘어가려면 반드시 퍼즐을 풀어야 한다. 이는 사용자가 퍼즐과 상호작용할 수 있다는 점에서 어느 정도 상호작용한다고 볼 수 있다. 하지만 당연히 이야기 자체와는 어떠한 상호작용도 없다. 이를 스키너 상자(역주 : 동물의 문제 해결 능력에 대한 실험에 쓰이는 상자 모양의 장치)식 상호작용이다. 사용자를 미로 속에 있는 쥐로 축소시켜서, 올바른 장치를 작동 시키면 상을 주고 실패하면 그에 따른 불이익을 받게 된다.

이 방식의 심각한 결함에도 불구하고 이 방법은 상업적인 성공을 거둔 수많은 게임에서 사용되었다. 가장 최근에 나온 예는 “7번째 손님”(The Seventh Guest)이다.

손으로 이은 이야기 나무

다음은 손으로 이은 이야기 나무이다. 이건 다이어그램으로 보여주기에는 너무 복잡하다. 디자이너는 각각의 점이 다른 모든 점으로 어떻게 이어지는지 커다란 다이어그램을 그려서 나타낸다. 디자이너가 전체 구조를 직접 그리고, 연결의 흐름을 만들어낸다. 이건 일견 좋은 방식 같아보인다. 무엇보다 일일이 세세하게 다듬기 때문이다. 하지만 이 디자인 방식의 문제는 디자이너가 작업에 투자하는 시간에 좌우된다는 점이다. 아무리 크게 만들어도 점의 수는 수백개를 넘지 못 한다. 게다가 이 방식은 또 다른 문제가 있다. 이 방식에서 만들어 진 스토리 점은 기초적인 불 방식 연결(역주 : 참과 거짓 또는 0과 1만의 선택을 가지는 단선적인 방식의 연결)로 짜여지게 된다. 다시 말해 이 구조 속의 경로는 사용자가 올바른 아이템을 쓰는가 아닌가, 마법 주문을 외는가 아닌가 등 이분법적인 단순한 판단에 따라 닫히거나 열린다. 더 정교한  알고리듬이나 확률 시스템(요즘 용어로 퍼지 논리(역주 : 애매한 상황에 대해 근사값을 구분지어 놓은 논리))은 이러한 방대한 작업에서는 실행하기가 너무 힘들다.

위 방식들의 조합

다음으로 위에서 설명한 구조들의 다양한 요소를 결합한 조합이 있다. 생각지도 못한 조합법들이 그간 시도되었다. 그 중 하나는 관리할 수 있을 만큼 더 작은 이야기 나무들을 만들고 그것들을 엮어나가는 방식으로 이야기 나무가 거대해지는 문제를 해결하려 한 시도다. 작은 이야기 나무 간의 연결은 단순하고 선형적이다.

이는 그래픽 어드벤처에서 많이 쓰이는 방법이다. 각각의 작은 이야기 나무는 개별 하위목표를 성립시키는 데 쓰인다. 예를 들어 첫 번째 이야기 나무는 애꾸눈 해적을 꼬드겨서 오렌지 열쇠를 얻을지 결정하는 데 쓰일 수 있다. 오렌지 열쇠가 있으면 보라색 드래곤이 기다리는 비밀의 방으로 들어갈 수 있다. 열쇠를 빼앗는데 성공했다면 새로운 이야기 나무로 들어서게 되는 것이다.

이 시스템은 각각의 작은 나무가 단순히 성공이냐 실패냐 하는 결과만 제시하기 때문에 실패했다. 그렇게 되면 작은 이야기 나무를 “사용자가 주어진 임무에 성공했는가”를 물어보는 이야기 점으로 바꾸어 볼 수 있다. 앞서 장애물 이야기가 작동하는 방식과 완전히 같은 것 아닌가?

무성함의 당위성

지금 시점에서 이야기 나무에 있어 중요한 점을 설명하는 게 당연하겠다. 좋은 이야기 나무는 풍성해야 한다. 부실하고 고르지 못한 이야기 나무는 그다지 상호작용하지 않는다. 왜 그럴까? 두 가지 답변을 해줄 수 있다.
하나는 사용자의 선택 면에서 생각하는 것이다. 사용자는 선택을 하고 싶어 한다. 선택은 우리의 자유의지를 나타낸다. 선택은 개성의 표명이다. 따라서 좋은 디자인은 사용자에게 각각의 분기점에서 뻗어져 나오는 다양한 선택의 순간을 제공한다. 더욱이, 되접기는 선택에 의미를 빼앗기 때문에 지나치게 집어넣어서는 안 된다. 우리가 진정 사용자의 요구를 채워줄 때 풍부한 이야기 나무가 나온다.

또 하나의 대답은 상호작용을 개별 존재의 행위로 생각하라는 것이다. 사용자가 우리의 이야기 나무로 들어왔을 때 그들은 상호작용 속에 제시되는 도전에 자신만의 개인적인 해결책으로 대응하고 싶어한다. 이는 인간 존재의 근본적인 속성이다. 무언가를 시도할 때, 우리는 앞서 간 사람들을 흉내내기보다 자기 고유의 해법을 찾으려 한다. 어떤 요리사가 요리책에 있는 요리법을 하나도 바꾸지 않고 따라하려 하겠는가? 나의 아내는 사진을 배우고 있다. 아내가 좋은 사진을 얻고 싶다면, 멋진 사진이 많은 잡지를 사면 스스로 찍는 것보다 훨씬 멋진 사진을 구할 수 있을 것이다. 돈도 적게 들고!! 그렇지만 아내는 자기 카메라로 사진을 찍고 싶어한다. 자기식대로 빛과 프레임을 조절하고 싶어하는 것이다. 이것은 자기 표현의 방식이며 세상을 향해 자신의 개성을 표출하는 것이기도 하다.

그러니 사람들이 자신의 개성을 나타내고 싶어한다는 것은 명백하다. 그럼 우리의 인터랙티브 엔터테인먼트 사용자들에게 무엇을 해주어야 할까? 그들을 틀에 구겨넣어서 우리가 만든 스토리라인을 따라오라고 요구할까? 사용자의 선택권을 좁혀서 어떤 선택은 올바르고 어떤 것은 잘못되었다고 말해줄까? 우리가 사용자에게 몇 가지 선택 밖에 주지 못 하는 것은 우리가 너무 게을러 사용자가 얼마나 다양한지 깨닫지 못 하기 때문이다.

만약 사용자가 정말로 만족스럽게 상호작용하는 경험을 할 수 있게 하려면, 사용자 개개인이 이야기를 겪으면서 자기 개성을 나타낼 수 있게 해주어야 한다. 이야기 나무를 따라 수 십억 개의 경로가 있어서 각 사용자가 자신만의 길을 찾고 자신만의 결론에 도달할 수 있어야지, 몇 가지 길만이 옳다고 선언하는 건 옳지 못 하다. 대부분 사용자가 자신만의 길을 따르며 만족스러운 결론으로 이르는 길을 찾을 수 있어야 한다. 사용자가 항상 승리하거나 만족스런 결론에 다다라야 한다는 건 아니다. 다만 그 결과가 디자이너가 바라는 편협한 기대를 바탕으로 해선 안 된다는 것이다. 그러므로 우리는 수 십억 개의 경로가 있는 울창하고 풍성한 이야기 나무를 만듦이 바람직하다. 이것만이 사용자가 이야기 나무에서 개인화된 경로를 찾을 수 있게 보장하는 유일한 방법이다.

이제 다시 핵심으로 돌아오면, 한 가지 더 자주 쓰이는 구조가 있다. 하위게임(미니게임)을 이야기점 사이에 끼워 쓰는 것이다. 디자이너는 그 자체로 흥미롭고 즐거우면서도 의무적이지는 않은 작은 게임을 만들어 넣는다. 그리고 이 작은 게임을 작은 이야기 나무로 통합한다. 이는 장애물식 접근법을 단순히 업그레이드 한 버전에 지나지 않지만, 플레이어가 디자이너가 짜 놓은 퍼즐만 해결해야 하는 것이 아니라 다른 무언가를 하게 된다는 점에서 좀 더 관대한 방식이다.
이런 구조의 이상적인 예는 “윙 커맨더”(Wing Commander)에서 볼 수 있다. 이 게임은 이야기가 부실하고 다 쏘아 죽이는 게임이다. 두 가지 요소 모두 자체적으로는 실패했지만, 이 둘을 조합한 결과는 엄청난 히트 게임이 되었다. 하지만 이런 아이디어는 “윙 커맨더”만 시도한 것은 아니다. 1983년 즈음으로 돌아가면 몇 가지 하위게임으로 이루어진 “아콘”(Archon)이라는 게임도 있었다. (역주: “아콘”은 일렉트로닉 아츠가 출시한 전략 게임이다. 게임의 전체 구성은 체스와 유사한 형태의 턴제 전략 게임인데 개별 말 간의 싸움은 실시간 전투로 결과가 결정된다.)

뭐가 또 남았을까? 아마 지금까지 쓰인 모든 디자인을 깎아내린 것 같다. 예상되었던 일이다. 결국 지금 인터랙티브 엔터테인먼트 디자인은 깊은 구덩이에 빠진 상태고, 이는 곧 수 조 년간 시간을 쏟지 않고 충분히 무성한 이야기 나무를 만들 수 있는 방법을 찾기에는 아직 우리가 너무 부족함을 유추할 수 있는 부분이다.

쉽지는 않지만 이를 위한 해결책이 있다. 나는 그 해법을 개발하느라 지난 2년 반을 보냈다. 이 해법은 문제에 대해 근본적으로 다른 접근법을 요구한다. 실제로 가능하며 지금 작동하는 프로그램도 있다. 상호작용하는 이야기를 만들면서도 위에 설명한 어떤 문제에도 걸리지 않는다. 정말 말해주고 싶기는 하지만 그 전에 이 기술을 상업화시킬 수 있게 자금을 조달해야 하기 때문에 아직은 안된다. 그때까지 이 문제를 미결로 남겨두고 싶다.

함께 보면 좋은 글들

크리스 크로포드, “자유의지와 결정론과 인터랙티브 스토리텔링

그렉 코스티키안, “게임, 스토리텔링, 그리고 실 끊기

댓글 없음:

댓글 쓰기