• Announcements

    • Zerasion

      GDF 기본 공지 사항   2017년 11월 23일

      이전 (phpbb & Ruby를 쓰던) GDF에 올라왔던 공지사항들을 새 형식에 맞게 수정했습니다.   인벤과 GDF에 대하여 일단, 도메인 주소에서 보실 수 있듯, 이 포럼은 인벤 (inven.co.kr) 에서 제공하는 서버를 통해 돌아갑니다.
      그러나 회원 DB나 운영은 완전히 별개로 독립되어 있습니다. 
      즉 인벤 아이디로 GDF에 로긴하거나, GDF 아이디로 인벤에 로긴하는 등의 일은 불가능합니다. 
      아울러 운영진 또한 인벤직원이 아닙니다. 
      이는 즉 인벤과는 전혀 다른 운영정책을 취하고 있다는 의미입니다. 
      행여나 이 포럼에서 생긴 일에 대한 문의나 요청이 인벤측으로 가거나, 
      반대로 인벤에 대한 문의 또는 요청을 이쪽에 주셔도 저희로서는 어떻게 해드릴 수가 없습니다.
      혹시나 도메인 주소 때문에 오해하시는 분들이 있을까봐 부연합니다.   GDF의 취지 게임 개발자의 역할을 나누는 데는 여러 방법이 있지만, 최근 한국의 게임업계에서는 디자이너, 프로그래머, 아티스트 중심의 구분이 어느 정도 보편적으로 자리 잡았습니다. 하지만 실력 있는 프로그래머, 실력 있는 아티스트에 대한 평가 기준과 거기까지 도달하는 방법론이 비교적 뚜렷한 것과는 달리, 어떤 게임 디자이너가 유능한 디자이너이며 그렇게 되려면 어떤 노력을 해야 하는지에 대해서는 아직까지 수많은 이견이 있을 뿐입니다. 물론 팀의 성향과 개발 여건에 따라 게임 디자이너에게 요구되는 소양은 타 직군에 비해 다양할 수 있습니다. 재미있는 아이디어를 뽑아내는 창의력, 다른 파트와 유연하게 소통하는 커뮤니케이션 능력, 누구나 이해하기 쉬운 문서를 만들어 내는 능력 등은 때로 가장 중요하게 손꼽히기까지 합니다. 그러나 게임 디자이너가 자신의 전문 분야로 삼아야 할 것은 무엇보다 '게임 디자인 능력' 이라 할 수 있겠습니다. 재미있는 게임을 디자인 해내는 능력이야말로 기본이자 필수입니다. 그러나 정작 '어떻게 해야 게임 디자인을 잘 할 수 있는지' 공부하는 길은 그리 만만하지 않습니다. 애초에 '어떤 것이 잘한 게임 디자인인지' 판단하는 것부터도 어렵습니다. 물론 찾아보려 마음 먹는다면 생각보다 많은 정보 더미를 얻을 수야 있겠습니다만, 그것은 말 그대로 건초에서 바늘 찾기입니다. 인터넷만 뒤져본다고 얻을 수 있는 것도 아닙니다. 그 정보들은 누군가의 하드디스크에, 어딘가의 클라우드 서버에, 때로는 오직 인쇄된 문서로만 존재하니까요. 그리고 아마, 가장 중요한 정보들은 수많은 게임 디자이너들이 '내가 이 삽질을 다시 하나 봐라!' 하고 결심하는 그 순간의 뇌리에만 존재할 겁니다. 빠르게 변하는 현대 사회 중에도 최고의 속도를 자랑하는 이 업계에서는, 분명 많은 유저에게 재미를 주던 검증된 게임 매커니즘도 불과 몇 년 사이에 닳고 닳아 진부한 것이 되기 일쑤입니다. 또한 잘 만들어진 게임일수록 그 안의 모든 시스템이 유기적인 관계를 맺고 있어, 몇 개의 디자인 장치를 떼어내 다른 게임에 갖다 붙인다 해서 성공적인 결과가 나오지 않습니다. 결국 이 모든 일은 게임 디자이너들에게 끊임없이 공부할 것을 요구합니다. 무얼 공부해야 할지, 어떻게 공부해야 할지는 사실 막막한 상황에서 말입니다. Game Design Forum은 그런 상황에 대한 하나의 방법론으로 만들어졌습니다. 이 곳에서 게임 디자인에 대해 공부하고 싶은 내용을 함께 나눌 수 있으면 좋겠다고 생각합니다. 눈에 잘 띄지 않는 멋진 게임 디자인 자료들을 찾아내어 공유하고 싶습니다. 자기만의 디자인 노하우나 경험담이 있다면 서로 나누고 싶습니다. 딱히 정답을 찾아내진 못하더라도, 서로 대화를 나누고 토론하는 과정에서 배우는 뭔가가 있을 것입니다. 그런 일을 하기 위해 마련한 자리입니다. 그래서 이 곳은 무엇보다 "게임 디자인"에 대해 토론하고 대화하는 공간이 되었으면 합니다. 이와 비슷한 취지로 만들어졌던 많은 커뮤니티들이 결국 게임 디자인에 대한 이야기에서 게임 개발 전반, 산업 전반에 관한 이야기로 옮겨가는 것을 보았습니다. 물론 게임 디자인 역시 게임 개발의 일부인 이상 그런 화제들을 아예 배제할 수는 없을 겁니다. 그러나 일단 이 곳에서 활동하시는 여러분께서 "GDF는 게임 디자인에 관해 이야기 나누는 곳" 이라는 사실을 분명하게 인지해 주신다면 이 곳의 정체성이 흔들리는 일은 없지 않을까 합니다. 언제나 그 점 기억해 주시면 감사하겠습니다. 지켜주세요 – GDF 사용 규칙 이 포럼을 사용하기 위해 숙지하고, 지켜주셔야 할 규칙들입니다. 
      다소 딱딱하게 느껴질 수도 있지만, 가능한한 최소화하려 노력했는데도 이정도네요. 
      이 규칙들을 의도적으로 또는 과하게 어겼다고 판단되면 적절한 조치를 취할 수도 있습니다. 
      잘 지켜주시면 감사하겠습니다. 1. 게시판의 용도를 지켜주세요.
      각 카테고리에 대한 간략한 설명입니다. Purple Board
      Green/Blue 에서 관리자가 추천하는 게시물이 옮겨진 게시판입니다.
      비회원을 포함한 모두가 읽을 수 있으며, Purple Panel(관리자)만 글을 작성할 수 있습니다. 댓글을 작성할 수 없습니다. Blue Board
      관리자에 의해 승급된 Blue Panel들이 게시물을 작성할 수 있는 게시판입니다.
      비회원을 포함한 모두가 읽을 수 있으며, Blue Panel들만 글을 작성할 수 있습니다. Green Board
      회원 가입 후 인증이 완료된 Green Panel들이 게시물을 작성할 수 있는 게시판입니다.
      비회원을 포함한 모두가 읽을 수 있으며, Green Panel들만 글을 작성할 수 있습니다. Free Board
      잡담 게시판입니다.
      비회원을 포함한 모두가 읽을 수 있으며, 모든 Panel 글을 작성할 수 있습니다. To GDF  운영진에게 부탁하고 싶은 내용, 궁금한 점, 건의 사항 등을 여기에 적어주세요. 
      비회원을 포함한 모두가 읽을 수 있으며, 모든 회원이 글을 작성할 수 있습니다.
      게시판의 의도와 관계없는 게시물은 운영진에 의해 적당한 다른 게시판으로 옮겨지거나 삭제될 수 있습니다.   2. 게시판 예절을 지켜주세요.
      게시판 이용자간에 서로 지나치게 적대적인 태도는 피해주세요. 
      존댓말을 기본으로 하며, 서로 아는 사이라 해도 반말의 사용을 자제해 주세요. (잡담 게시판 예외)
      물론 외부의 글을 옮겨오는 등의 경우에 불가피하게 평어체로 작성된 글은 무방합니다.   3. '포럼처럼' 사용해주세요.
      이곳이 다른 게시판이 아니라 굳이 '포럼' 의 형태를 취하는 이유는, 포럼의 기능을 잘 활용하기 위해서입니다. 
      다음과 같은 내용들을 염두에 두시면 됩니다.
      하나의 이슈에 얽힌 이야기는 하나의 글타래로만 다룹니다. 
      새로운 글타래를 매번 새로 만드실 필요가 없습니다. 꼭 댓글 형태로 달아주세요. 
      댓글을 아주아주 길게 달 수도 있으니 부담없이 이용하시기 바랍니다.
      새 글타래를 만들기 전에 검색을 해보시는 것도 좋습니다.
      이 사항이 지켜지지 않을 경우 강제로 게시물이 이동/삭제될 수 있습니다. 유의하세요.
      너무 오래 전에 올라온 글이라 의견을 달아도 아무도 보지 못할 것 같은가요? 
      이 포럼은 가장 최근에 댓글이 달린 게시물을 자동으로 최상단에 올려줍니다.
      아주 오래 전 이슈를 다시 언급하는 경우에도 새 글타래를 만드실 필요가 없어요.
이 글을 팔로우하기  
팔로워 0
Zerasion

[아카이브] 'The Hit'에서의 동적서사

1 post in this topic

Voosco 님이 작성하셨던 포스팅의 아카이빙입니다.

---

 

Dynamic Narrative in 'The Hit'

** 이하의 내용에서 '자동생성된'은 procedural generation을 옮긴 단어입니다. 

http://www.gamedev.net/page/resources/_/creative/game-design/dynamic-narrative-in-the-hit-r3706

나는 20여년간 플레이어 주도적 동적서사 시스템을 꿈꿔왔으며, 최근 5년간은 운용 가능한 디장니을 만들기 위해 노력해왔다. 'The Hit'은 이를 처음으로 공개 출시하는 게임이다. 따라서 가능한한 많은 유저 피드백과 플레이어 매트릭스가 필요하고, 이를 위해 시작부터 흥미롭고 재미있는 게임으로 디자인하고 있다. 물론 이 게임은 동적서사 시스템의 뼈대 위에 구축된다. 일단 게임이 출시되면 보다 많은 동적 시스템과, 더 깊고 풍부한 서사 컨텐츠를 제공하기 위한 시스템을 추가할 것이다. 

track.php?a=3706&cb=46600a89473402ef2ed2

분명히 하고 넘어가야 할 사항이 있다 : 이 글을 읽는 누군가가 이 시스템에서 유용하게 쓰일만한 부분을 발견해낸다면 좋긴 하겠지만, 나는 동적서사 시스템을 기존의 FPS나 RPG에 이식하려고 만든 것은 아니다. 그보다는 동적서사 시스템을 중심으로 게임을 구축함으로써 'The Hit'에서 여러 디자인과 매커니즘이 줄기를 뻗어나간다면 좋겠다. 

이하는 동적서사 시스템의 동작에 대한 개괄이다. 

레벨 0 : '보행자'와 '도시'

가장 단순한 층위에서, '도시'는 보행자들로 가득하다. 각각의 보행자들은 NPC스타일 [게임이 이해할 수 있는 수치를 통해 캐릭터의 생김새를 묘사하는 요소들]과 폐쇄 순환 경로 - 계속해서 걷는 길 - 을 가지고 있다. 보행자들은 매우 단순하며 프로세서 시간의 관점에서 매우 값싸다. 따라서 한 장면에서 수천명이 등장할 수 있다. 이들은 또한 네트워크를 통해 동기화되어 다른 플레이어들도 정확히 같은 거리에서 정확히 같은 보행자들을 볼 수 있다. 

'도시' 자체는 섹션 (대략 반 블럭정도 크기) 으로 구성되며 각각의 섹션은 지정된 보행자 갯수를 갖는다. 도시에 속한 각 섹션별 생성 규칙은 서로 다른 종류의 NPC (정장, 캐주얼 등등) 비율을 결정하며, 이에 따라 섹션별로 NPC들이 생성된다. 

아래 그림이 지금의 상태이다. 현재 나는 'The Hit'을 온전히 플레이 가능하며 잘 마무리된 초기 버전으로 만드는데 집중하고 있으며, 여기에서부터 레벨 1 시스템을 게임에 구축하기 시작할 것이다. 

ef7a5044df59e160.jpg

레벨 1 : NPC들과 '클라우드'

플레이어가 보행자와 인터랙션을 하면 (기본요소로는 그들에게 말걸기, 사진찍기, 또는 일정한 시간동안 따라가기) 일련의 자동생성된 정보가 보행자에게 추가되어 보행자는 NPC가 된다. NPC는 이름과 직업, 그리고 둘 또는 그 이상의 목적지 (보통은 집이나 직장. 종종 차를 가지고 있어서 한 지점에서 다른 지점으로 운전을 할 수도 있음) 를 갖는다. 앞서 부여되었던 단순한 폐쇄 순환경로는 시작점과 끝지점을 갖게되며, 이를 통해 이 NPC를 따르는 사람들이 NPC가 좀더 현실적으로 행동하는 것을 보게된다. 

NPC를 만드는데 필요한 데이터는 클라우드에서 가져온다. 클라우드는 영속적이며 지속적으로 바뀌는 정보의 모음이며, 게임플레이의 모든 측면을 다룬다. 클라우드는 근본적으로 사전 생성된 정보의 비축분이며, 따라서 필요할 때 언제든 적용될 수 있다. 게임플레이 내내 상당한 시간동안 클라우드는 새로운 정보 모음을 만들어내며, 여기에는 NPC데이터는 물론 자동생성되는 포스터, 이정표, 간판, 그래피티, 벽화 등등이 있다. 

만약 NPC데이터가 사용되지 않으면 (플레이어가 NPC와 대화를 시작했지만 그들의 이름을 묻지는 않거나 어디 사는지 어디서 일하는지 등을 알려고 하지 않는 경우) 이 정보는 완전히 폐기되거나 클라우드로 돌아간다. 그리고 NPC는 다시 보행자로 돌아간다. 이를 통해 도시에 존재하는 모든 보행자의 데이터를 저장할 필요가 없어지며, 여기에 필요한 메모리를 훨씬 더 유용한 다른 곳에 사용할 수 있게 된다. 

이 지점이 GDC에서 켄 레빈 (Ken Levine)이 묘사한 시스템을 내가 다소 애매하다고 보는 부분이다. 플레이어의 경험이 충분히 리얼하다면, 게임월드 내의 모든 요소들을 시뮬레이션 할 필요는 없다. 더 많은 신호, 더 적은 노이즈. 창발적 컨텐츠의 왕으로 군림하는 드워프 포트리스조차도 사실상 시뮬레이션을 통해 서사를 만들어내지는 않는다. 그저 충분한 '노이즈'를 만들어 내되, 플레이어가 그 속에서 신호를 만들어낼 수 있을만큼 구체적인 노이즈를 제공할 뿐이다. 그러나 대부분의 플레이어들은 그 모든 노이즈들을 걸러내어 흥미로운 서사를 만들 정도로 인내심이 깊지는 않다. 

보행자들은 도시를 지나가는 사람들의 흐름을 프로그램으로 애니메이션하는 것에 불과하다. 그러나 그 애니메이션이 충분히 설득력 있다면, NPC를 가까이 살펴봤을 때 그럴싸해보인다면, 그리고 이 둘 사이의 전환이 너무 노골적이지만 않다면, 플레이어에게는 그 세계 전체가 시뮬레이션 되는 것으로 보일 것이다. 

5bc53661214a939b.jpg

레벨 2 : 캐릭터들과 감독

NPC는 아직 캐릭터라고 보기는 어렵다. 캐릭터는 둘 중 한 가지 방법으로 만들어 질 수 있다 : 우선 플레이어가 NPC 근처에서 충분한 시간을 보낸 경우. NPC는 클라우드에 캐릭터 데이터를 요청한다. 다른 한 가지 방법은 '감독'을 통해서이다. 레프트 4 데드 시리즈의 감독 AI와 유사한 목적으로, 감독은 플레이어를 계속해서 지켜보다가 플레이 중에 다양한 서사 분기에 대한 결정을 내릴 수 있다. 클라우드로부터 실시간으로 데이터를 끌어와서, NPC에게 붙인다. 

캐릭터들은 '특징'을 갖는데, 여기에는 배제 규칙이 적용되어 있어서 서로 상충하는 특징이 같은 캐릭터에 할당되지 않는다. '특징'들은 모듈화되어 있으며, 보통, 희귀, 유니크로 나뉜다. 대부분의 유니크 특징들은 스토리 (아래에서 추가 설명)를 포함한다. 

특징의 예시 : 귀가 어두움, 남부 액센트, 종교적, 비사교적, 열광적, 미친듯한 질투심, 친척이 특별한 캐릭터임, 죽음에 대한 열망, 연쇄 살인자 ... 

추상적 시스템을 만드는데 있어서 작지만 중요한 부분은, 이 시스템을 시각적으로 표현할 수 있는 방법을 찾아야 한다는 점이다. 이 부분이 잘 되어야만 유저들인 컨텐츠를 빠르게 만들고 공유할 수 있다. 내 목표들 중 하나는 'The Hit'의 시스템을 스토리 디자이너에게 열린 형태로 만들어, 스토리 디자이너가 특징들을 캐릭터에게 쉽게 부여하거나 이 캐릭터를 위한 배경설정을 쉽게 이해할 수 있도록 만드는 것이다. 이는 마치 차크라 시스템, 또는 카발라 시스템처럼 보이게 될 것이다. 

디자이너는 캐릭터의 전체 또는 부분을 만들 수 있다. 이 경우 모듈 시스템은 디자이너가 빠르게 새로운 캐릭터를 생성할 수 있도록 도울 것이다. 'The Hit'의 경우에, 나는 당분간 언어를 통한 대화 시스템을 사용할 계획이 없다. 이를 통해 프로토타이핑과 테스트를 훨씬 빠르고 저렴하게 할 수 있다. 

a4d837b2a3d4b1b9.jpg

스토리 게임

감독은 근본적으로 플레이어들과 함께 게임을 플레이하되 몇 가지 규칙에 의해 동작한다. 감독은 가장 최신의  실마리 사건(plot-beats. 다른 사건에 연관된 사건)가 언제 일어났는지를 기억한다. 그리고 해당 이벤트가 정기적으로 일어나도록 보장하며, 간간히 독립적인 사건들과 함께 발생하게 한다. 감독은 또한 플레이어가 메이저 및 마이너 스토리 라인에서 얼마나 멀리 있는지를 확인한다. 이 부분은 좀 복잡하다. 아마도 이를 가장 잘 설명하는 방법은 카드게임의 비유를 사용하는 것일 듯 싶다. 

스토리는 별개의 사건들로 구성된다. 또한 독립적인 사건들이나 사건들의 연쇄, 스토리 라인으로 존재할 수 있다. 연쇄사건이나 스토리라인의 길이는 무제한이며, 어떤 스토리는 더 큰 스토리라인의 내부에 자리잡을 수도 있다. 

각 사건들은 해당 사건이 발생하기 전에 충족되어야 하는 조건들의 모음인 발생 조건을 가지고 있다. 조건은 친분 (또는 특징), 오브젝트, 아니면 정보일 수 있고, 플레이어의 손에 든 카드라고 생각하면 된다. 감독은 사건들의 목록을 지속적으로 분류하여 바람직한 순서로 유지한다. 플레이어가 재밌는 사건의 발생을 카드 딱 하나가 부족해서 놓치게되면, 감독은 아마도 해당 카드를 더 작은 사건이라는 형태로 '강제로' 플레이어의 손에 밀어넣는다. 

이벤트1의 예시 (서부극 장르) : 플레이어는 가족 농장에 숨어있는 자코비 갱단을 추적해왔다. 은신과 전략을 통해 플레이어는 갱단을 하나씩 죽여나간다. 그러다가 18살짜리 래리 자코비만 남자, 래리는 싸우는 대신 총을 바닥에 던지면서 어떤 정보를 줄테니 풀어달라고 요구한다. 이 이벤트는 어떤 캐릭터 (반드시 래리 자신일 필요는 없다), 또는 어떤 아이템이나 정보를 플레이어에게 전달하기 위해 강제된 것일 수 있다. 플레이어가 래리 자코비를 살려주든 아니든, 이 사건은 이어지는 또 다른 흥미롭고 놀라운 스토리 실마리를 제공할 것이다. 

이벤트 2의 예시 (환타지 장르) : 플레이어는 마법 아이템을 가지고 있으며, 강력한 특별 캐릭터와 친한 사이이다. 플레이어는 자신이 가진 마법 아이템이 엄청나게 위험하며, 한 강력하고도 악한 특별 캐릭터가 이를 쫓고 있다는 사실을 알게 된다. 플레이어와 친한 특별 캐릭터는 이 아이템을 파괴할 수 있는 곳으로 가져가야하며, 이를 위해 플레이어를 도울 동료들을 모아야 한다고 결정한다. 이는 웅장한 스토리라인의 시작이거나, 단순히 많은 캐릭터들을 한꺼번에 소개하는 기회일 수도 있다. 

이 시스템의 장점은 많다 : 개발이 빠르며, 유연성과 게임의 다양성을 지켜주고, 디자이너로 하여금 모든 것을 처음부터 디자인하는 대신 자신들이 원하는대로 사건들을 만들거나 대체할 수 있게 해준다. 

여기서 한 가지 내가 강조하고 싶은 것은, 사건은 가능한한 플레이어를 향해야 한다는 점이다. 감독은 플레이어 주변에 계속해서 사건을 설정해놓는다. 그러나 감독이 사건을 무조건적으로 강제하지 않는 한, 플레이어들은 여전히 사건의 발생조건들을 놓치고 지나갈 수 있다. 이런 일이 벌어지는 것을 막기 위해, 감독은 플레이어 주변에 동시에 여러 사건들을 배치하고 그 숫자를 늘려나가며, 이를 통해 플레이어가 아무런 사건도 겪지 않은 시간이 늘어날수록 실마리 사건이 발동될 가능성이 높아지게 해야한다. 일단 플레이어가 어떤 사건을 발동시키면, 주변에 배치되었던 다른 사건의 조건들은 다시 필요해질 때까지 모두 제거되어야 한다. 일시적 사건들만 남기고. 우리는 플레이어들이 여러 스토리들이 겹쳐서 혼란스러워하길 바라지 않는다. 다시 말하자면, 이는 동적서사가 기존 RPG의 퀘스트 시스템에 비해 강점을 갖는 부분이다. 동적서사는 디자이너들이 스토리의 전개속도를 조절할 수 있게 해주며, 따라서 플레이어들이 한 장소에 가기전에 그 장소에서 수행할 수 있는 모든 미션들을 쌓아놨다가 한꺼번에 완료하여 경험치를 왕창 얻는 일을 방지할 수 있다. 

멀티플레이는 'The Hit'의 시작부터 구축되어있다. 따라서 기존 서사적 게임들에 비해 적은 문제를 일으킬 것이다. 왜냐면 캐릭터와 사건들을 게임마다 새로이 생성되며, 따라서 디자이너들은 각 플레이어들의 게임마다 서로 다른 상태로 같은 캐릭터들이 존재하는 문제를 마주하지 않을 것이기 때문이다. 또한 플레이어들이 서로 온라인으로 연결되어 있는 동안 그들 사이에 캐릭터가 공유될 수 있지만, 각 플레이어가 세션에서 퇴장함과 동시에 해당 캐릭터들은 사라진다. 멀티플레이어가 게임플레이에 있어 보일 가장 주된 효과는 감독이 더 많은 카드를 가지고 있다는 점이다. 이를 통해 스토리를 개선하고 사건들을 만들어낼 기회를 더 많이 가질 수 있다. 

결론

서두에서 말했듯, 지금 당장 내가 집중하고 있는 작업은 'The Hit'를 재미있고 몰입적인 경험을 가지도록 만들어 올해말에 내놓고, 그 이후에는 유저 편집툴을 출시하는 것이다. 모든 일이 계획대로 진행된다면, 첫번째 동적서사 컨텐츠는 2015년이 끝나기 전에 시장에 나타날 것이다. 

http://www.TheHitGame.co.uk

'The Hit' 킥스타터 페이지


---------------------------- 

노 맨즈 스카이 관련 기사를 보며 '이거 다 싱글이니까 되는거지 ...' 싶은 생각을 좀 했었는데, 그래서 멀티플레이에 관련된 내용을 찾다보니 이런게 있더군요. 일단 게임이 아직 나오질 않았으니 얼마나 유용한 내용인지는 저도 잘 모르겠지만서도, 기본 얼개 정도는 흥미롭게 볼만한 부분이 있지 싶어서 퍼와봅니다.

0

Share this post


Link to post
Share on other sites
이 글을 팔로우하기  
팔로워 0