2017년 3월 29일 수요일

[Gamasutra] Design 101: Design Goals

by Dan Felder on 04/13/15 12:16:00 pm

Image result for lecture hall

The following blog post, unless otherwise noted, was written by a member of Gamasutra’s community.

The thoughts and opinions expressed are those of the writer and not Gamasutra or its parent company.


Welcome!


안녕하세요, 게임 기획 101 강의에 참석한 것을 환영합니다. 게임 업계에 종사하는 많은 사람들이 그러하듯, 저 역시도 게임 기획과 관련한 많은 질문을 받곤 한답니다. 어떨 때는 친구들에게서, 또 어떨 때는 친구의 자녀들로부터, 심지어는 이전 선생님들의 새로운 학생들로부터 질문을 받기도 하죠. 최근 이렇게 같은 질문을 계속해서 받고 같은 답을 반복 할 바에는 차라리 제 시간을 아끼기 위해서라도 글을 연재하는 편이 낫겠다고 판단 했어요.

오늘 우리는 제가 생각하기에 게임기획에 있어서 가장 중요한 개념이라 생각되는 것에 관해 이야기 해보려 합니다. 놀랍게도, 그토록 중요함에도 불구하고 사실은 거의 다루어지지 않는 주제이기도 해요. 솔직한 제 생각은, 그렇기 때문에 게임개발 과정에서 수많은 소통 오류, 의견 충돌, 논쟁 등이 불필요하게 발생한다고 생각해요.

일단 질문부터 하나 던지면서 시작할게요.


질문 (The Question)

여러분은 지금 턴제 전쟁 게임을 만드는 팀의 기획팀장을 맡고 있습니다. 그리고, 유닛들간의 전투가 어떻게 이루어져야 할지 설계해야 할 차례이구요.

기획팀의 John이라는 친구는 주사위 던지기와 같은 랜덤 요소에 기반하여 전투의 승패에 상당한 기복이 발생할 수 있어야 한다고 주장합니다. 이를 통해, 비록 약한 유닛이라고 해도 훨씬 강력한 유닛을 무찌르고 살아남을 수 있는 가능성이 존재하도록 말이죠.

반면, Kate라는 또 다른 기획자는 강한 유닛이 언제나 상대적으로 약한 녀석들을 이길 수 있도록 전적으로 결정론적인 전투 시스템을 만들어야 한다고 주장합니다.

John의 주장은 자신의 방법을 통해 모든 전투가 보다 흥미진진해질 것이라 주장하고 있으며, Kate는 만약 강한 유닛을 갖고도 약한 유닛에게 지게 된다면 플레이어들은 좌절할 것이며, 실력과 상관없는 랜덤이 모든 것을 결정하는 게임이라 비난하게 될 것이라 주장합니다.

자, 여러분의 게임에 어떤 것이 더 나은 제안일까요?

  
답변이자 질문 (The Core Answer - That is also a Question)

이 질문에 답할 수 있으려면 무엇보다 우리는 스스로에게 이런 질문부터 해야 합니다.

"우리가 플레이어에게 제공하고 싶은 경험이 어떤 것인가?"
"우리 게임을 플레이하는 동안 사람들이 어떤 느낌을 받기를 원하는가?"

이 질문에 대한 답이 우리의 'Design Goal' 이 되는 것입니다.

이처럼 사전에 정의된 Design Goal이 없을 경우, John과 Kate의 제안 중에 무엇이 더 나은 제안인지 결정하는 것은 사실상 불가능해요. 마치 "물이 와인보다 더 좋은 것인가?"에 대한 결정을 하려는 것과 같은 것이죠. 우리가 의도하는 것은 과연 무엇인가요? 인상적인 데이트? 건강을 위한 식생활 조절? 우아한 파티를 위한 음료 선택? 물병에 담을 음료수 선택? 기획자로서 여러분의 목표는 과연 무엇이죠?

중요한 사실은, 모든 게임 메카닉은 뭔가의 게임에는 나름 알맞는 선택일 수 있다는 점 입니다. 절대적으로 좋거나 나쁜 것은 없죠. 모든 게임 메카닉은 플레이어들에게 서로 다른 경험을 제공합니다. 따라서, 올바른 질문은 다음과 같아야 합니다.

"당신의 Design Goal에 적합한 경험을 만들어내는 메카닉은 무엇인가요?"

게임 기획은 어찌보면 화학 같은 것이에요. 플레이어에게서 나타나기를 원하는 반응을 알아내고, 그런 반응을 일으키는 데 적절한 메카닉을 선택하는 것이죠. 그리고, 맞아요. 만약 여러분이 원하는 반응에 적합하지 않은 메카닉을 선택한다면 여러분의 눈 앞에서 '펑' 하고 터져버릴 수도 있지요.


Design Goals 적용하기 (Applying Design Goals)

John과 Kate의 제안 중에 어떤 것이 우리의 게임에 적절한 것인지 알아내기 위해 가상의 design goal을 임의로 정해 보도록 하겠습니다. 이 게임을 위한 우리의 design goal은 "플레이어가 스스로를 다혈질의 광전사처럼 느끼도록 만들 수 있는 빠른 진행의 정신없는 전쟁게임"이라고 가정할게요.

이러한 design goal을 만족시키기 위해 당신은 이미 게임 캐릭터의 모습을 잘 훈련된 군대가 아니라 바바리안과 전쟁광 바이킹들로 만들어 둔 상태이구요. 더불어, 당신은 플레이어들이 완벽한 플레이를 위해 뭔가 숫자 계산을 하느라 게임이 느슨해지는 상황에 빠지는 것을 원치 않으며, 게임을 하는 과정에서 플레이어들이 너무 많은 생각을 하도록 만들기보다는 본능에 따라 플레이 하며 그 흥분을 즐기게 되기를 원하고 있습니다.

명백히 John이 제안한 메카닉은 당신의 design goal에 적합하네요. 전투 결과를 예측하기 어렵기 때문에 그로부터 흥분, 긴장 그리고 스릴이 제공될 수 있기 때문이죠. 랜덤 요소를 갖는다는 것은 플레이어들이 미리 짜여진 플레이를 하기 어렵도록 만든다는 점에서 대단히 큰 역할을 하죠. 왜냐 하면, 공격을 하고 난 이후 어떤 일이 벌어질지 확인해야만 다음 선택을 결정할 수 있거든요. Kate의 제안과 같은 확정형 게임과는 상당히 큰 차이가 있죠.

반면, Kate의 메카닉은 이 게임에는 어울리지 않겠네요. Kate가 제안한 완전히 결정론적인 메카닉의 경우는 체스를 즐길 때 우리가 느끼는 전술적이며, 지적인 사고를 할 때 느끼는 경험에 더 적합하거든요. 이런 방식은 플레이어로 하여금 자신의 선택을 위해 보다 신중히 숙고하고, 매우 세심한 수학적 사고를 요구하게 될 것인데, 게임에 이와 같은 계산 과정이 개입할 경우 감정적인 충동을 상당히 줄여주는 경향이 있다는 것이 다수의 연구에서 진행된 실험이 증명하고 있거든요.

여러분도 다음에 혹시 화가 났을 때, 머리속으로 얼른 3자리 숫자 곱셈을 해 보세요. 아마 여러분의 감정 상태가 얼마나 빠르게 변하는지 발견하고 깜짝 놀라게 될 거예요.


그런데, 너무 당연한 말 아닌가요? (But isn’t this obvious?)

아마 그렇게 생각할 수도 있어요. 그렇지만, 문제는 사람들은 항상 대충 넘어간답니다. 아무리 잘 정리된 design goals이 있더라도 정의할 때만 잠시 고민하고 문서 어딘가에 적어둘 뿐 실제로는 이후의 개발과정에서 그다지 신경쓰지 않는다는 것이죠. 물론 저 역시도 예외는 아니에요.

얼마 전 저는 구체적인 design goal에 대한 언급은 배제한 상태에서 가위, 바위, 보 게임의 향상된 메카닉과 관련한 짧은 글을 썼던 적이 있었어요. 그 후 제 글에 남겨진 몇 개의 댓글을 읽고 나서야 제가 플레이어에게 제공하려 했던 경험이 어떤 종류의 것이었는지, 그리고 제 관점에서 어떤 이유로 가위, 바위, 보 메카닉을 그대로 사용하는 것이 부족한지를 설명하는 부분이 너무 모호했다는 것을 깨달은 것이죠.

또한, 플레이 경험에 영향을 미치는 수많은 서로 다른 요소들이 뒤섞여 뭐가 옳은 선택인지 구분하기가 어렵다는 것 입니다. 현재 저는 제가 진행하고 있는 게임의 핵심 메카닉 중 많은 부분을 새롭게 만들고 있는 중인데요. 고려해야 할 다양한 요소들 간의 trade-off 때문에 혼란을 겪는 중이죠.

예를 들어, 선택지 A를 택할 경우 게임의 세계관을 플레이 과정에서 자연스럽게 알려주고, 전략적인 깊이감을 제공하는 데 유리할 것이며, 선택지 B를 고른다면 서로 다른 세력들 간의 전쟁이 보다 장기간에 걸쳐 에픽하게 이루어질 수 있을 것이며, 선택지 C를 고른다면 플레이어가 세부적인 것들에는 덜 신경쓸 수 있도록 하는 대신 다른 요소들은 다소 부족할 것이 예상되는 것이었죠.

과연 저는 무엇을 선택해야 옳았던 걸까요?

... 이런 선택들을 두고 고민하던 중 제가 기억해 낸 것은 당초의 design goal 이었어요. 이번 게임을 위해 우리가 원했던 design goal은 빠른 속도로 진행되며, 폭발적이고, 본능에 충실해야 하며, 드라마틱한 전략적 경험을 게임당 15분 안에 경험할 수 있도록 하는 것이었죠.

이를 상기하고 다시 살펴보니 선택지 B는 사실상 우리의 design goal을 오히려 해치는 것이 되고, 선택지 A는 그닥 적절해 보이지 않으며, 선택지 C는 세부조작에 대한 부담 감소를 통해 게임의 턴 흐름을 빠르게 만들 수 있었죠.

물론, 결론은 C를 선택 했답니다.


최근의 예 (A Recent Example)

몇달 전 저는 전략 게임의 PvP용 맵을 테스트하는 중이었습니다. 당시, 저는 캠페인 미션 설계를 담당하고 있었기에 캠페인 모드는 이미 엄청 많이 플레이 해왔던 상태였지만, PvP 테스트는 처음이었어요. 그러나, PvP에 사용된 게임 메카닉 자체는 캠페인 모드랑 사실 거의 동일했죠.

PvP 맵을 처음 플레이 하고 느낀 것은... 한마디로 '노잼' 이었습니다.

"이거 어처구니 없을 정도로 지루하게 진행되는 걸"

저는 해당 미션을 설계한 기획자에게 다음과 같이 항의했습니다.

"첫 라운드 전체를 통틀어 우리가 한 것이라고는 그냥 유닛들을 서로 가까워지게 만든 것 뿐이 없다구. 이거 완전히 10분이란 시간을 그냥 허비한 것 같은 느낌인데?"

"어, 맞어" 그가 말했습니다. "그치만 이 게임 mode를 즐기는 플에이어들은 방금 니가 말한 것 처럼 첫 라운드 동안 조심스럽게 유닛을 위치시키고 전투 태세를 갖추는 것 자체를 즐긴다구."

"마치 체스와 같은 거야. 전술적인 수준에서 보자면 다가올 전투에 대한 전조인 셈이지. 그 과정에서 각자 최고의 교전을 치루기 위해 천천히 준비할 수 있도록 하는 거라고. 토너먼트 씬에서 여기가 가장 집중하는 순간이 될거야."

"오! 그렇다면 PvP는 일종의 Spike Mode 이고, 캠페인은 Timmy Mode와 같은 것이라는 거지?"

"바로 그거야!"

"그런 의도였다면, 존나 끝내주는 거네."

만약 독자 여러분들이 아직 Timmy, Johnny, 그리고 Spike라는 말을 들어본 적이 없다면, 이 용어는 Magic: the Gathering의 기획 방향을 유발하는 3가지 종류의 플레이어 유형을 가리키는 말 입니다. 각 명칭은 서로 다른 성향의 플레이어 또는 그 게임을 플레이 하는 이유가 서로 다른 사람을 의미하죠. 왜냐하면 사람들의 성향별로 서로 다른 종류의 경험을 즐기기 때문에, 각각을 위한 design goal들역시도 필요하게 된 것이거든요.

제 생각에 이미 여러분들은 이런 용어에 친숙할 것이라 예상하기 때문에 관련한 내용을 더 이상 다루지는 않겠습니다. 그렇지만 혹시라도 처음 듣는 분이라면 Mark Rosewater가 자세하게 설명해둔 글을 읽어보시기를 강력히 추천합니다. 다양한 장르의 게임 기획에 활용할 수 있는 환상적이며 유익한 정보들로 가득 차 있거든요.

역주: 저도 몰랐으므로, 위 링크의 설명을 간략히 정리하면 다음과 같습니다.
  • Timmy: 플레이 과정 자체를 중시하며, 이성적인 것 보다는 본능적이고 감성적인 부분을 즐기는 경향이 있다. 주로 나이가 어리거나, 플레이 경험이 적은 사람들에게서 나타나는 특징이다. 자신을 행복하게 만들거나, 끝내주는 순간을 만들어 내거나, 자신을 웃게 만들거나, 친구와 같이 얘기할 거리를 만드는 등 자신에게 감정적인 쾌감을 주는 것을 주로 선호한다. 이런 이유로, 승/패에 그다지 연연해 하지 않는다. 전적으로 게임을 하는 이유는 즐거운 시간을 보내기 위해서이기 때문이다.
  • Johnny: 뭔가 자신을 표현하는 수단으로서 게임을 즐긴다. 즉, 자신이 얼마나 창의적고 현명한지 세상에 알리기 위한 수단으로써 게임을 활용하는 것이다. 특히, 해당 게임을 얼마나 스스로의 입맛대로 조작할 수 있는지에 열중한다. 따라서, 이러한 유형의 플레이어에게 있어서 덱빌딩 과정은 해당 게임을 즐기는 한가지 측면인 것이 아니라 그 게임 자체가 된다.
  • Spike: 뭔가 증명하기위한 목적으로 게임을 플레이 한다. 주로, 자신이 얼만큼 뛰어날 수 있는가를 증명하는 것에 집중한다. 자신의 능력을 정의하고, 입증하기위한 일종의 정신적 도전과제로서 게임을 간주하는 것이다. 자신의 능력을 보여주기위한 수단으로서 게임을 활용하는 것이기 때문에 오직 승리로 부터만 즐거움을 찾는 경향이 있다.

마무리 정리 (Wrapping Up)

우리 모두는 design goal과 관련하여 서로 다양하게 생각 합니다. 솔직히, 어찌보면 당연하고 명백한 것을 두고 이렇게 장황하게 이야기 한다는 것이 다소 쌩뚱맞게 느껴지기도 하네요. 그러나, 우리가 바쁘게 게임을 만들다 보면 정작 그 기준이 되어야 할 design goal은 슬쩍 묻히거나 간과되어 버리기 십상이랍니다.

일반적으로 게임을 개발 할 때 사람들은 design goal과 관련하여 그 것이 충분히 명확해질 때 까지 자신의 의사를 표출 하거나 합의를 도출하려 노력하지 않습니다. 아마도 결론 내리기 난감한 논쟁거리가 될 수도 있음을 알기에 피하고 싶은 것이거나 혹은 단순히 언급해야 한다는 사실을 잊었을 수도 있겠죠.

그래서 제가 사용하는 몇 가지 팁을 소개하겠습니다.

  • 가급적 이른 시점에 당신의 design goal을 최대한 구체적으로, 당신이 고민해야 할 것으로 생각되는 가능한 모든 것들에 대해 작성해 두세요. 만약 필요하다면 design goal을 정의하기위한 고민에 몇 일을 쓰더라도 상관 없습니다. 그 다음에는 관련된 모든 팀 사람들과 함께 이야기하고 동의를 얻도록 하세요. 향후 불필요한 논쟁에 쓰일 시간, 그리고 design goal과 관계 없이 잘못 만들어진 것들을 뒤늦게 바로잡기 위해 사용해야 할 수많은 시간들을 아껴줄 것을 생각하면 충분히 투자할 가치가 있는 시간이랍니다.
  • 정의된 design goal을 종이에 적어서 모든 사람들의 컴퓨터 옆에 붙여 두세요. 사실 이 방법은 제가 예전에 스토리 기획을 할 때, 플레이어에게 전달할 핵심 메시지를 적어서 컴퓨터에 붙여두라는 지시를 들었던 것에서 유래한 것입니다. 게임 개발이란 것은 그 일관성을 유지한다는 것이 대단히 어렵기 때문에, 그 충고가 제 경우에는 대단히 유익하게 활용되고 있네요.
  • 최종적으로 원하는 화학 반응을 이끌어 내려면 서로 다른 화학 물질들이 필요한 것과 마찬가지로 특정 게임 요소를 위한 design goal은 여러분의 게임 전체를 아우르는 것과 약간은 다른 방향을 가질 수도 있습니다. 개별 수준에서의 design goal은 아마도 전체 게임을 위한 design goal과 다소 상이할 수도 있다는 것이죠. 마치 레벨 디자인에 있어서 엄청난 호평을 받았던 Flower의 경우처럼 각 레벨들은 저마다 서로 다른 감성적인 톤을 가질 수 있을 것입니다. 그러나, 서로 상이해 보이는 그 모든 것들이 모여 결국 원하는 전체적인 경험을 구성할 수 있어야 하죠.
  • 특정 메카닉, 레벨 구성, 비쥬얼 연출 등 당신이 기획을 해 나가는 데 있어서 뭔가 결정하기 어려운 문제가 생길 때마다 잠시 하던 일을 멈추고 당초의 design goal이 무엇이었는지 떠올리도록 하세요. 당신 스스로에게, 그리고 함께 게임을 개발하고 있는 구성원 모두에게 상기시켜 주세요. 우리의 결정이 무엇을 달성하기 위해 내리려는 것인지 말이에요. 저는 이 방법을 통해 얼마나 고민스러웠던 문제들이 명쾌하게 해결되는지를 깨닫고는 수시로 놀란답니다.

제가 말하고자 하는 핵심은, 우리들 기획자의 역할은 플레이어들에게 제공하고 싶은 경험이 어떤 것인지 정의하고, 그러한 경험을 제공할 수 있는 기획적 선택을 내리는 것이라고 단순화 시킬 수 있을 듯 합니다.

다소 심오한 인용문을 하나 소개하며 이번 글을 마치도록 할게요.

"어느 항구로 향해야 할지 모른다면, 어떠한 바람도 순풍이 아니다"
- 세네카

흠... 적절했는지 모르겠네요.


Design 101: Archives


역: Iron Smith (원문 링크: 요기)
2017 / 3 / 29

2017년 3월 28일 화요일

[Gamasutra] Design 101: Balancing Games

by Dan Felder on 10/12/15 02:54:00 pm   Featured Blogs 

9 comments Share on Twitter Share on Facebook 

    RSS

The following blog post, unless otherwise noted, was written by a member of Gamasutra’s community.
The thoughts and opinions expressed are those of the writer and not Gamasutra or its parent company.


Welcome!



안녕하세요, '게임기획 101' 강의에 돌아온 걸 환영합니다. 지난 시간 우리는 '게임 기획에서 랜덤의 역할'이라는 주제를 갖고 이야기해 보았지요. 그 때 저는 현재 Faeria 라고 불리는 카드 게임을 개발 중에 있다고 언급한 적이 있었구요. 현재 Faeria는 굵직한 밸런싱 작업을 막 시작한 상태인데요, 마침 이번 강의 주제가 게임 밸런싱인 만큼 아주 적절한 타이밍인 듯 하네요. 살펴볼 것이 많은 주제이므로 바로 시작하도록 하겠습니다.


게임 밸런스 - 도대체 그게 뭐지?

이렇게 말하면 어쩌면 깜놀 하실 수도 있을 것 같은데요. 사실 게임업계 사람이라면 누구나 "게임 밸런싱"을 논하고 있지만, 실제로 그 실체에 대한 정의나 공감대가 형성된 것은 놀라울 정도로 거의 없답니다. 대신 각 게임의 포럼이나 게시물의 댓글에서 어떤 게임의 밸런싱이 잘 되었다/그렇지 않다를 두고 사람들간의 키배와 갑론을박만 끊임없이 이어질 뿐이죠.

언제나 그렇듯, 최고의 정의란 결국 가장 실용적인 것이라고 생각해요. 게임 밸런싱의 정의와 관련하여 제가 보았던 것들 중에 가장 실용적인 것은 우리가 가장 피하고 싶어하는 상황, 즉 "망가진 게임플레이(Broken Gameplay)"에 근거한 정의였어요.

우리는 집에 있는 프린터가 망가졌다는 사실을 알 수 있는 것과 마찬가지로 어떤 게임이 망가졌다는 것도 알 수 있답니다. 일반적으로 우리는 어떤 대상이 기대하는 대로 동작하지 않을 때, 그 것이 망가졌다고 말하죠. 만약 어떤 프린터가 외관은 파손되었지만 여전히 문서를 잘 출력하고 있다면, 이 프린터를 두고 손상이 있다고는 하겠지만 망가졌다고 얘기하지는 않죠. 다시말해, 납득 가능한 품질의 문서를 더이상 출력하지 못할 때 우리는 비로소 그 프린터가 '망가졌다' 라고 이야기 하게 될 것입니다.


우리가 게임을 기획할 때에도 마찬가지 인데요. 우리가 원하는 게임의 정상 동작은 게임을 하는 동안 플레이어들이 긍정적인 경험을 하도록 만드는 것이 될 것입니다. 그런데, 만약 여러분의 게임이 그러한 경험을 더 이상 제공하지 못한다면? 여러분의 게임은 망가진 것이라 부를 수 있을 것입니다. 간단하죠.


망가진 게임 (Broken Games)
 
Image result for broken console
 

현재 제가 만들고 있는 게임인 Faeria에 다음과 같은 카드를 추가한다고 상상해 보기로 해요. 이해를 돕기위해 Faeria가 어떤 게임인지 간략히 설명하면, 마치 Magic: the Gathering과 같은 전략 카드게임이에요. 주요 자원은 "Faeria"라고 불리는 것이고 아무리 능력이 약한 카드라 하더라도 사용하려면 최소 1 faeria의 비용이 들어요.

자, 새로 추가하려는 카드는 다음과 같아요.
  • 카드명: All Too Easy
  • 가격: 0 faeria
  • 능력: 사용즉시 게임 이김

이 카드가 추가되면 게임플레이가 망가지게 될 거라는 점은 자명해요. 대부분의 전략 게임들처럼 Faeria의 재미는 상대 플레이어와의 상호 작용, 그리고 그 과정에서 발생하는 유의미한 선택들로부터 비롯되기 때문이죠. 그러나, 이 카드가 등장함으로 인해 그러한 요소들이 순식간에 모두 사라져 버리죠. 만약, 누군가 All Too Easy 카드를 뽑게 된다면, 그 순간부터 어떤 카드를 사용해야 할까를 고민하는 '흥미로운 선택'이란 것은 존재하지 않게 돼요. 왜냐면, 언제라도 이 카드는 '정답'이기 때문이죠. 전후 사정과 무관하게 그냥 뽑으면 이긴다니까요.

뿐만 아니라, All Too Easy라는 카드가 등장함으로 인해 덱을 구성하는 과정에서 즐기는 재미 역시도 망가져 버리게 돼요. Faeria는 여타의 카드 게임들 처럼 플레이어들이 자신만의 덱들을 구성할 수 있으며, 당연히 그 과정 역시도 전략적 퍼즐을 푸는 재미가 있기를 희망하거든요. 그러나, 이 카드가 게임에 추가됨으로 인해 덱 빌딩 역시 퇴색되어 버리는 것이죠. 일단, 누구라도 항상 모든 덱에 이 카드를 최우선으로 3장씩 포함시킬 것이기에(역: 아마도 동일 카드를 3장씩 덱에 넣을 수 있는 게임인듯?) 그 만큼 덱 빌딩 과정의 유의미한 선택의 가지수가 줄어들게 될 것이니까요.

결과적으로 이 게임에 남게되는 유일한 전략이란 것은 아마도 상대보다 최대한 많은 카드를 빨리 뽑기위한 것이 되겠죠. 왜냐하면, 그렇게 해야 "All Too Easy" 카드를 상대보다 먼저 뽑을 확률을 높일 수 있을 테니까요. 이처럼 한가지 확실한 정답이 존재 하도록 만들었기 때문에, 이 카드가 존재하기 전과 비교할 때 덱빌딩의 전반적인 재미는 대단히 줄어들게 되었네요.

다소 극단적이기는 했지만, 이 것이 바로 한 가지 카드 또는 전략이 너무 강력해질 경우 게임이 망가지게 되는 이유랍니다. 과도하게 강력한 카드나 전략이 발견될 경우 그 것을 사용하는 것이 정답 이므로 플레이어는 누구라도 그 카드나 전략을 이용하려 할 것이고 나머지 가능한 모든 선택지들은 버려질 것이거든요.

'의사결정'은 대부분의 경우 해당 게임을 구성하는 가장 핵심적인 요소이며, 특히 전략성에 기반한 게임들이라면 더더욱 중요합니다. 그렇기 때문에 정답으로 인지될 정도로 강력한 카드나 전략이 발견되지 않도록 하는 것 만큼이나 게임 상의 모든 카드들이 '동등한 파워 레벨'을 갖지 않도록 많드는 것 역시도 중요한 것이죠.

"잠깐... 뭐라고? 동등한 능력치를 갖지 않도록 해야 한다고?"


The Problem with Equality





다음 수식을 만족하는, 올바른 답을 선택하시오.

수식: 2x^2 + 4x - 4 = 0


A) x = −1 +/− √3
B) x = −1 +/− √3
C) x = −1 +/− √3
  1.  
문제 자체만 봤을 때는 뭔가 있어보인다고 생각했을 수도 있지만 주어진 선택지를 살펴보니 모두 동일하군요. 마치 무엇을 선택하건 상관없는 "만족하는 정답을 모두 고르시오" 류의 문제같아 보이네요.

얼핏 다른 문제로 보일 수도 있지만 이는 여러분이 게임내에 존재하는 모든 카드들과 전략들이 정확히 같은 파워를 갖도록 만들었을 때 생기는 결과와 같은 것입니다. 덱에 포함시킬 카드를 고르는 것은 선택이어야 합니다. 사용하려는 전략을 고르는 것 역시도 선택이어야 합니다. 그러나, 이러한 선택들이 사실상 모두 동일한 것이라면, 그 모든 선택들은 사실 아무런 의미가 없어지게 됩니다. 왜냐하면 무엇을 선택하건 결과 역시 동일할 것이기 때문이죠. 일반적으로 우리는 이러한 것을 두고 '노가다'라고 하지 '선택'이라고 부르지는 않죠?

만약 Chess에서 플레이어가 어떤 말을 어떻게 움직이건 그 결과가 게임에 미치는 영향이 모두 같다면 얼마나 지루할지 상상해 보세요. 가능한 것들 중 최선의 선택을 찾기 위한 노력은 존재할 수 없을 것입니다. 다시 말하지만, 모든 선택들이 게임에 미치는 영향이 모두 같기 때문입니다.

만약 Heathstone의 카드들이 영향력 관점에서 모두 정확히 동일하다면 덱 편집은 얼마나 지루해질까요? 여러분이 그동안 해왔던 모든 결정들은 즉시 무의미한 것이 될 것이고, 덱 편집은 즉시 코스트 계산에 의해 자동화될 수 있을 것입니다. 혹시 카드간의 시너지가 있어서 꼭 그렇지만은 않을 것이라 생각할지도 모르겠으나, 사실 그러한 시너지란 것 역시도 당근 이미 능력 평가에 반영되어 있을 것이기에 역시나 의미 없지요. 어떤 카드를 선택해도 결과가 달라지지 않는 게임에서, 도대체 선택이란 것 자체가 왜 필요할까요?

물론 여러분이 만드는 게임이 전략적 선택에 집중하는 장르에 속하지 않는다면 모든 것들이 완벽하게 동일한 힘을 갖도록 밸런싱하는 것이 이치에 맞을 수도 있습니다. 예를 들어, 대전격투게임의 경우라면 캐릭터 선택이 객관적으로 누가 강하고 약한가를 알아내기 위한 문제라기 보다는 대부분 개인별 선호에 따라 나뉘는 호불호의 문제에 가깝기 때문이죠(물론, 그럼에도 불구하고 누가 더 강한 캐릭터인지 알아내려는 플레이어들의 노력이 없는 것은 아닙니다). 대전격투 장르의 경우 실제 게임 플레이는 대전중에 발생하는 각 플레이어의 순발력과 심리전을 겨루는 것에서 비롯됩니다.

그러나, 이 경우에도 각 캐릭터가 사용하는 모든 기술들이 캐릭터간의 거리, 상대 캐릭터가 누구인지 여부에 상관없이 모두 동일한 효력을 발휘한다면, 역시나 그 순간 해당 게임을 플레이 할 의미는 사라질 것입니다. 플레이어가 내리는 모든 선택들이 결과적으로 같은 것이기 때문이죠.


The Balancing Point


All Too Easy 카드의 예는 특정 카드들 또는 전략들이 나머지 모든 것들에 비해 과도하게 강력해질 경우 발생할 수 있는 상황에 대한 극단적인 예시였으며, 의미없는 수학 문제의 경우는 모든 카드들 또는 전략들이 그 영향력 측면에서 유저가 판단하기에 사실상 그놈이 그놈이라고 느낄 때 발생할 수 있는 문제를 살펴본 것입니다.

만약 우리가 이 두가지 상황의 적절한 중간점을 찾아낼 수 있다면?

그렇죠. "밸런스 되었다" 라고 말할 수 있겠네요.

전략게임만이 제공하는 강력한 플레이 경험은 서로 다른 플레이 스타일을 수용할 수 있는 다수의 유의미한 전략적 선택지들이 제공될 때에 비로소 발현됩니다. 어떤 전략들이 여타의 전략들에 비해 우세할 수 있겠지만, 그 역시도 나름의 약점을 갖고있기 때문에 또 다른 전략들에 의해 공략될 수 있어야 한다는 것이죠. 그래야만 하드코어 플레이어들이 기존의 알려진 전략적 상성 관계를 깨뜨리기 위해 계속해서 연구하고 노력하는 동안 나머지 대부분의 플레이어들은 이미 알려진 전략들을 활용하여 계속해서 게임을 즐길 수 있게 될 테니까요.

그런 게임을 만드는데 도움이 될만한 방법을 몇가지 소개하도록 하겠습니다.



Balancing Tricks


이상적으로 완벽하게 밸런스된 게임은 이론일 뿐 기본적으로 달성 불가한 문제에 해당합니다. 다만 그 어렵다는 밸런싱 작업을 보다 쉽게할 수 있도록 돕기위해 몇가지 강력한 도구들을 여러분에게 소개하려 합니다.

The Power Curve



게임을 밸런싱하려 할 때 가장 먼저 해야할 일은 자원 투자대비 획득할 능력치를 계산하는 간단한, 그렇지만 해당 게임의 근간이 되는 공식들을 만드는 것입니다. 여기서 말하는 자원들이란 만들려는 게임 장르에 따라서 다르겠지요. Mana, 미네랄, 시간 등이 그에 해당할 것입니다.

만약 여러분이 League of Legends를 플레이 하는 중에 죽어서 부활을 기다리는 중이라면, 그 시간만큼 추가적인 게임 자원획득 또는 승리를 위해 적을 압박할 기회를 잃게 될 것입니다.

만약 여러분의 게임이 JRPG류이며 mana 시스템을 갖고 있다면, 1 mana에 대한 대가로 상대에게 얼만큼의 피해를 줄 수 있어야 할 지 알아야 합니다. 물론 스킬의 쿨다운이 게임에 미치는 영향이 크다면 단순 데미지가 아니라 DPS를 살펴보는 것이 보다 좋은 방법이 되겠죠. 사실 DPS는 다양한 자원 시스템이 결합된 게임에서 전반적인 영향력을 평가하는 방법으로도 좋은 선택이 될 수 있습니다.

일단 해당 공식을 통해 파워커브가 결정되고 나면, 향후 게임 밸런싱 작업을 위한 견고한 기반이 마련된 것입니다. 이제 여러분이 의도하고 있는 적절한 플레이 타임이 있다면, 그 시간축 상에서 과연 파워커브는 어떤 형태로 변해야 할지 알아내야 합니다. 만약 여러분이 만들고 있는 게임의 플레이타임이 20분 이상 지속되기를 원한다면, 그 시간동안 플레이어가 획득하게 되는 자원의 양이 게임을 끝낼 수 있을 만큼 모일 수 있는지 확인해야 합니다. 이 과정이 완료되면 향후 등장할 모든 수치 작업의 근간으로 활용하세요.

만약, 적절한 플레이 타임을 사전에 결정하기 곤란한 경우라면, 일단은 다루기 쉬운 숫자들로 정하는 것도 좋은 방법 입니다. 예를 들어, 1 mana는 1 damage에 해당한다고 정의해 둔다면 이후 밸런싱 과정에서 다루어야 할 많은 산수들이 한결 빠르고 단순해 질 수 있습니다. 너무 걱정하지는 말세요. 실제 빌드가 나오고 첫 테스트 플레이를 마치면 보다 많은 실제 정보를 바탕으로 이들 수치를 바로잡을 기회를 가질 수 있으니까요.

파워 커브는 다양한 게임내 능력 또는 카드의 가격을 정하는데 있어 매우 확실한 가이드라인으로 동작합니다. 그러나, 우리 앞에는 여전히 알아내야 할 수많은 미지의 정보들이 있습니다. 다양한 아이템들, 카드들, 스킬들 등등 각각이 실제 게임상에서 어떻게 동작하게 될지 예측할 수 있어야 하거든요.

게임은 그 자체로도 이미 충분히 복잡한 것이지만, 다양한 게임내 요소들이 서로 상호작용하는 과정에서 그들간의 상대적 가치를 평가하는 것은 더더욱 어려운 일입니다. 그렇지만 다행스럽게도, 어떤 과학자 분이 우리를 위해 미리 고안해 둔 방법이 있으니 함께 살펴보죠.


The Fermi Solution




시카고에는 몇명의 피아노 조율사가 살고 있을까요? 인터넷 검색이나 타인의 도움 없이 단지 연필과 종이만 사용해서 알아낼 수 있을까요? 음... 물론 계산기 사용 정도는 허용할 수 있고요.

어쩌면 여러분들 중 누군가는 이 질문이 그 유명한 "Fermi Problem"이란 사실을 알아차렸을 것입니다. Enrico Fermi는 극히 적은량의 정보만 가지고 대단히 정확한 해답을 도출해내는 능력으로 유명했던 뛰어난 물리학자의 이름입니다.

종종 Fermi Solution이라 불리우는 그의 문제 해결방법에 따라 이 독특한 문제를 계산해 보면 실제 시카고에 있는 피아노 조율사의 숫자를 50명 이내의 오차로 알아낼 수 있답니다.

이러한 방법이 동작하는 이유를 설명하기위해 일단 '집단지성' 이라 부르는 것부터 살펴보기로 하죠. 만약, 당신이 지역 농수산물 박람회에 방문하여 임의로 선택한 100명의 사람들에게 돼지 한마리의 무게가 얼마나 나갈지 물어보는 상황을 가정해 봅시다. 일반적으로 한 명의 전문가에게 물어보는 것 보다 100명의 예상치로부터 평균을 계산하는 것이 훨씬 정확한 값을 얻게 됩답니다. 다수의 연구 결과들 역시도 이러한 원리를 실제로 뒷받침 하고 있는데, 다량의 근사 추정값들의 평균으로부터 매우 정확한 값을 얻어낼 수 있다는 것이죠. 다만 Fermi가 사용한 방법은 다수의 사람으로부터 얻어낸 추정치가 아니라 혼자서 여러번의 추정을 한다는 것에 차이가 있겠네요.

시카고에 있는 피아노 조율사의 숫자를 한 방에 추정하는 것은 매우 어려운 일입니다. 한다고 해도 사실상 대충 찍는 것에 가까울 것이기에 아마도 실제 수치와는 대단히 큰 오차를 갖게 될 것이 뻔하겠죠.

수용가능한 근사치를 발견하기 위해 우리가 해야 할 일은 한방에 찍는 것이 아니라 연속적인 추정을 만들어 내는 것이랍니다. 말하 자면...
  1. 시카고에 거주하는 전체 인구수는 몇명일까?
  2. 각 가구당 평균적인 가족의 수는 몇명일까? (이로부터 가구수를 추정할 수 있다)
  3. 전체 가구들 중 피아노를 소유할 정도의 경제력이 있는 가구 비율은 어떻게 될까?
  4. 충분한 경제력이 있다고 하더라도 실제로 피아노를 소유한 가구 비율은 어떻게 될까?
  5. 피아노 소유자들은 대략 어느 간격으로 피아노 조율을 맡기게 될까?
  6. 등등...
(역: 자세한 추론 및 계산 과정은 요기 참조)

이 방법이 동작하는 있는 이유는 일관성있게 한쪽 방향으로만 잘못 추정하지 않는 한(역: 즉, 일관성있게 모두 큰 값으로만 추정한다던가 혹은 작은 값으로만 추정한다던가) 아마도 실제보다 더 크거나, 작게 추정하는 수치들이 섞이게 됩니다. 이를테면 피아노를 소유한 가구수의 경우는 실제보다 2배 많게 추정할 수 있을 것이며, 마찬가지로 각 가구당 피아노 튜닝 주기의 경우는 실제보다 1/2 수준으로 적게 추정할 수도 있다는 것이죠. 이 처럼 각각의 추정 오차를 서로 상쇄해 버릴 수 있기에 결과적으로는 상당히 정확한 값을 산출해 낼 수 있다 라는 것이죠.

게임 밸런싱에서 Fermi Solution을 제대로 활용할 수 있는 능력을 갖는 것은 매우 중요하답니다. 다음에 소개할 Quick Pointing이 제 역할을 할 수 있는 근간을 제공하기 때문이죠.

Quick Pointing



 


Quick Point 은 기획자가 빠르게 게임 구성 요소들에 대한 평가를 할 수 있는 방법의 하나인데, 예를 들어, MOBA 류에 등장하는 전체 아이템 목록, 카드 게임의 경우에는 전체 카드 목록들을 살펴 보며 자신의 플레이 경험에 비추어 각각에 대해 1 ~ 5점 사이로 점수를 부여해 보는 것이죠.

각각의 사람들이 부여하는 스코어는 서로 대단히 다를 것이며, 실제와는 거리가 있는 값들이 부여될 수도 있을 것입니다. 그러나, 앞선 단락의 지역 농수산물 박람회의 예에서도 살펴봤듯, 다수의 사람이 부여한 스코어를 종합했기 때문에 특정 개인의 추청에만 의존할 때에 비해 그 오류 가능성은 상당히 줄어들죠. 이를 통해 카드와 같은 각 개별 항목에 대한 평가를 비롯하여, 다양한 전략들 혹은 종족들 간의 대략적인 밸런스 등을 신속하게 파악할 수 있답니다.

뿐만 아니라 팀원들간의 중요한 의견불일치 문제도 이 방식을 통해 빠르게 찾아낼 수 있어요. 만약 어떤 기획자가 특정 마법에 대해 다른 기획자들에 비해 1.5 이상의 높은 점수를 주었다면, 이정도의 인식 차이를 발생하게 만든 요인에 대해 서로 이야기를 나눌 기회를 가질 수 있죠.

뿐만 아니라 Quick Pointing은 점수별(=가격별) 카드 배치에 대한 계획을 수립하는 것에도 도움을 줄 수 있습니다. 앞서 예로 들었던 선택지가 같은 수학 문제를 살펴볼 때 이야기 했 듯, 우리는 모든 카드들이 동일한 능력을 갖는 것을 원하지 않기 때문에, 만약 Quick Pointing을 통해 점수를 취합해 보니 모든 카드들이 3점 부근에 몰려있다면 문제가 있는 것이거든요. 중요한 점은 Quick Pointing결과를 보고 그 분포를 파악하는 것이 목적이 아니라 사전에 각 점수 대역 별로 몇장씩의 카드를 배치시킬 것인지 사전에 기획적 의도에 따라 계획해 두었어야 하며, 그것을 확인하기 위한 용도로 사용해야 한다는 것이에요.

아쉽게도 점수대 별로 몇장씩 카드를 할당하는 것이 좋을지에 대한 정답은 없답니다. 그러나, 일반적으로 봤을 때 bell curve(역: 정규분포 그래프)의 형태로 점수별 카드를 배치하는 것이 괜찮은 출발점이라 볼 수 있겠네요.

이제 플레이 테스트를 통해 뭔가 밸런스적으로 대단히 틀어져 있다면 신속히 눈치챌 수 있을 거예요. 한가지 분명히 해야 할 점은 4점 ~ 5점의 스코어를 획득하는 카드들이 여러분의 게임에서 가장 큰 재미와 매력적인 녀석들의 전시장이 되어야 한다는 것이며, 1점 ~ 2점에 속하는 다소 밋밋한 녀석들은 경우는 대충 쌩까도 괜찮아요.

그런데, Quick Pointing이 만능은 아니랍니다. 실제로는 할 수 있는 것이 거의 없지요. 그치만 제 글도 아직 끝난 것이 아니므로 계속 진행 해 보죠.




Dark Magic



대부분의 초보 기획자들은 카드에 부여된 능력의 종류와 상관없이 그에 합당한 코스트 계산을 가능하게 하는 마법의 밸런싱 공식이 존재한다고 믿는다는 것 입니다. 일단은 이런 믿음을 저버리지 않기 위해 실제로 게임 제작 시 숙련된 기획자들이 진행하는 밸런싱 방법을 흑마법이라는 이름으로 부르도록 하겠습니다.

방금 언급한 대로, 카드들이 지니게 되는 능력들 중 어떤 것들은 단순 데미지 계산과 비교했을 때 그 가치를 정확히 평가하는 것이 대단히 어려운데요. Faeria에 등장하는 카드를 예로 들어 설명해 보도록 하겠습니다.
  • 이름: Fire Bolt
  • 가격: 6 faeria
  • 능력: 대상에게 7의 데미지를 입힌다.

  • 이름: Lazy Flame
  • 가격: ? faeria
  • 능력: 대상을 선택하면 다음 턴 시작 시 그 대상에게 7의 데미지를 입힌다.

두 카드만 두고 비교했을 때, 명백히 Lazy Flame 쪽이 열등한 능력이라 할 수 있습니다. 왜냐하면, 피해를 입히기 위해 한 턴을 기다리는 것 보다는 지금 당장 데미지를 줄 수 있는 편이 더 좋기 때문입니다. 그런데 여기서 문제는 "한 턴을 지연시키는 것 보다 지금 당장 데미지를 가할 수 있는 것이 과연 얼마나 더 큰 가치를 가져야 하는가?" 입니다.

해답은 흑마법에 있답니다. 일단 우리 스스로에게 다음과 같은 질문을 던져보기로 하죠.

"이 카드에 얼마의 가격을 책정하면 말도 안되게 '너무 비싼' 가격이라 생각하지?"

이 경우는 6 faeria가 될텐데, 그 이유는 즉시 7 데미지를 가할 수 있는 Fire Bolt 카드의 가격이 6 faeria이기 때문입니다. 만약 Fire Bolt의 가격인 6 faeria가 합당한 가격이라고 여겨진다면, 그보다 못한 능력에 대해 같은 가격이 할당된다면 누구라도 명백히 비싸다고 느낄 수 밖에 없기 때문이죠.

이제 다음으로 해야 할 질문은 당연히...

"Lazy Flame의 가격으로 얼마라면 말도 안되게 너~~무 싼 가격이 될 것인가?"

명백히 2 faeria는 너무 낮은 가격이라고 말할 수 있습니다. 왜냐하면, 비록 한 턴을 기다려야 하지만 대부분의 경우 상대적으로 높은 가격의 상대 카드를 해치울 수 있을 것이기 때문이죠. 따라서 필자라면, 기꺼이 1턴의 딜레이를 감수하고, 2 faeria라는 저렴한 가격에 대부분의 상대 유닛을 제거할 수 있는 Lazy Flame 카드를 사용하려 할 것입니다.

이제 다음 단계는, 우리 스스로에게 만약 5 fearia는 너무 비싼 것일까? 더불어 3 faeria라면 너무 낮은 가격일까? 를 묻는 것입니다. 이 질문을 반복하는 과정에서 우리는 스스로 너무 비싸다고 말하기에는 애매한 상단 가격과 너무 싸다고 말하기에 난감한 하단의 가격대를 발견할 수 있게 될 것입니다. 이제 그 사이의 적당한 중간값을 해당 카드의 능력에 대한 가격으로 선택할 수 있을 것이구요.

잠깐, 여기서 끝이 아니라 해당 카드를 의도적으로 약간의 OP로 만드는 과정이 필요합니다.

뭐? 의도적으로 약간의 OP로 만든다고? 도대체 왜?
이유는 다음에 소개할 Triple Tapping 기법의 첫 단계이기 때문이죠.




Triple Tapping



아마 여러분들은 절대로 한방에 제대로된 게임 밸런싱을 완료하지 못할 것입니다. 절대로 여러분을 무시해서가 아니고요. 단지 우리가 함께 고려해야 할 변수들이 너무너무 많기 때문이랍니다. 반복해서 플레이 테스트를 진행 해야 하고, 그 과정에서 예상보다 너무 강한 것들 혹은 너무 약한 것들을 찾아내야 하죠. 이로인한 수정이 반영되는 과정에서 전체적인 게임 환경이 너무나 쉽게 변해버리곤 합니다.

한가지 분명히 하고 가죠. 기획자로서 우리의 목표는 한방에 제대로된 게임 밸런싱을 완료하는 것이 절대 아니랍니다. 그보다는 오히려 그 곳에 도달하기 위한 반복을 어떻게 하면 최소화할 수 있을까? 가 우리의 목표가 되어야 하는 것이죠.

이제 Triple Tapping에 대해 알아보기로 하겠습니다. 예들 들어 볼텐데요, 어떤 카드에 60 mana의 가격을 책정했는데, 테스트 결과 심각하게 OP였던 것으로 확인된 상황을 가정해 보겠습니다. 이제 우리는 이 카드가 기획 당시 예상했던 것보다 너무 강하다는 것을 알게 되었네요. 당연히 이런 상황에 대한 직관적인 우리의 선택은 적절한 수준으로 nerf하는 것이 될 것입니다. 예를 들어, 아마도 "음... 이 카드는 가격을 80 mana 수준으로 높여야 적당하겠는걸" 이라고 생각하겠죠.

결론부터 말하자면, 가격을 80 mana로 바꾸고 테스트를 진행하지 마세요.


만약 그렇게 할 경우 아마도 장담컨데 여전히 OP상태일 가능성이 대단히 높기 때문이랍니다. 실제로 그런 상황(여전히 OP)이 발생할 경우 우리는 기존에 비해 얻은 정보가 사실 전혀 없는 것과 마찬가지예요. 다시 처음 테스트 결과 시점으로 돌아가 보죠. 우리가 알고 있던 사실은 해당 카드의 가격은 "60 mana 보다는 커야한다"는 것이었죠? 두 번째 테스트 이후 우리가 알고 있는 것은 무엇이 달라졌을까요? 60 mana 보다는 커야 한다는 것이 단지 '80 mana 보다 커야한다'는 것으로 바뀌었을 뿐이네요. 이런 접근으로는 이론적으로 볼 때 무한 반복 테스트만 하게 될 뿐이랍니다. (역: 위에서 필자가 했던 말을 명심하자. 우리는 정답을 빡 발견하는 것 보다는 적당한 값을 찾기 위한 반복 테스트 과정을 최소화 하기 위한 것이 목표이기 때문이다. 따라서, 각 테스트에서 얻은 것이 적거나 없다면 목표에 부합하지 않는 삽질을 하고 있는 것이다).

이 경우 대략 적당해 보인다고 여겨지는 것보다 의도적으로 큰 가격을 할당하는 것이 훨씬 현명하답니다. 만약 해당 카드의 적정가격이 80 mana 수준이라 생각이 들었다면, 80 mana를 책정하는 대신 대략 100 mana정도의 의도적으로 비싼 가격을 할당해서 테스트 하자는 것이죠.

그 후 플레이 테스트를 돌렸을 때, 만약 가격 대비 능력이 떨어진다 판단된다면 이제 비로소 우리는 추가 정보를 획득한 것이 되겠네요. 왜냐하면, 이 카드는 60 mana 에서는 OP가 되지만 100 mana 에서는 똥이라는 사실을 알았기 때문이죠. 드디어, 우리는 해당 카드의 적당한 가격을 찾기 위한 가격의 범위를 알게 되었습니다! 노파심에 덧붙이자면, 사실 100 mana 에서도 여전히 OP라고 느껴질 가능성이 있겠죠. 그러나 80 을 할당했던 경우에 비해 우리는 여전히 빠른 탐색을 하고 있기 때문에 밑질 것은 없겠죠?

필자는 이 방법을 Tripple Tapping이란 이름으로 부르는데, 그런 이름을 붙인 이유는 적당한 목표 수치를 찾기 위해 3개의 숫자(최하단, 최상단, 그리고 중간 값)를 이용하기 때문이죠. 이 방법을 이용하면 우리는 어떤 카드의 밸런스를 위해 반복해야 하는 수정과 테스트 횟수를 생각보다 빠르게 줄여나갈 수 있답니다.
(역: 알고리즘을 공부한 사람이면 알겠지만 일종의 Quick Sort 알고리즘과 비슷한 접근으로 느껴짐. 참고로 Quick Sort의 time complexity는 O (n log n).)

그러고 보니, 이전 단락 끝부분에서 적당한 가격이 추정된 이후라 하더라도 의도적으로 다소 OP화 시킬 필요가 있다고 했는데 깜박하고 있었네요. 왜 그랬을까요? 그 이유는 플레이 테스트 시에 정상이라(예상되는) 수치 보다는 다소 OP 상태로 만들어 두어야 테스트 목적을 달성하기가 더욱 용이하기 때문이랍니다.

예를 들어, 이처럼 의도적인 OP로 만들었음에도 해당 카드를 사람들이 사용하지 않거나, 사용 했을 때 별로 재미있다고 느끼지 못한다면, OP가 아닌 정상으로 밸런싱 되었을 때는 더더욱 밋밋하거나 쓸모 없는 녀석이 될 것이 자명하기 때문이죠. 뿐만 아니라, 이처럼 의도적인 능력치 boost를 해 두면 테스트가 진행되는 동안 사람들이 해당 카드를 선호하여 자주 사용할 가능성이 높아지기 때문에 결과적으로 우리는 해당 카드에 대해 보다 많은 의견과 정보를 획득할 수 있게 되거든요.

생각해 보세요. 만약 우리가 적당하다고 할당했던 가격이 혹시라도 실제 능력보다 비쌌다면 테스트가 진행되는 동안 사람들은 해당 카드를 거의 사용하지 않을 것이므로, 우리의 테스트는 그 목적을 달성하기 어렵기 때문에 괜히 시간만 낭비한 꼴이 되겠죠.



Safeguards



여러분이 밸런싱에 있어 대단히 능숙할지라도, 게임이 출시된 이후 수많은 유저들이 보여주는 집단지성의 위력은 언제나 상상을 초월한답니다. 만약 여러분이 자신의 게임이 어떠한 경우에도 완전히 망가져버리는 경우는 피할 수 있기를 보장받고 싶다면, 게임이 제어권 밖으로 완전히 벗어나 손 쓸 수 없게 되어버리는 상황을 방지하기 위한 일종의 '안전장치(safeguard)'를 게임에 포함시켜 두어야 합니다.

예전에 제가 기획했던 카드 게임 중 하나의 경우를 예로 드렴, 카드에 지정된 가격이란 것 자체가 없었는데요. 덱에서 카드를 뽑는 대신에 플레이어들은 매 턴 새로운 카드들에 대해 경매를 진행해야 했어요. 한마디로, 각 카드의 적당한 가격을 매기는 것은 플레이어들의 역할이었던 것이죠. 이로 인해 어떤 카드가 결과적으로 내가 예상했던 것 보다 훨씬 강력했던 것으로 드러났다고 해도 플레이어들 자체가 기획적 실수에 대한 '안전장치'로서 동작하도록 설계했던 것이죠. 왜냐하면 사전에 정해진 가격이 없기에 단지 플레이어들은 해당 카드의 능력에 합당한 가격을 부르면 되는 것이니까요.

Wizards of the Cost 게임 같은 경우는 최종적인 게임의 경쟁환경이 의도한대로 정상동작할지 여부를 예측하는 것은 사실상 어려울 것이라는 사실을 처음부터 인정하고 만들어진 게임입니다. 그럼에도 그들이 설계해둔 '안전장치'로 인해 해당 게임을 즐기는 전세계 프로게이머들 커뮤니티가 합심하여 게임이 갖는 전략적 헛점을 찾으려 했으나 거의 발견되지 않았죠.

이 것이 가능했던 이유는 해당 게임의 토너먼트 환경 자체가 서로 간에 먹고 먹히는 환경이 될 수 밖에 없도록 설계되었기 때문이랍니다. 만약 특정 전략의 우세함으로 인해 다수 유저들에게 과도한 인기를 얻게 되면, 플레이어들은 그러한 인기 전략을 공략할 수 있는 다른 전략으로 전환하는 것이 구조적으로 가능하도록 만들어졌거든요.

또 다른 예로, Guilty Gear의 경우는 모든 캐릭터들이 광범위한 방어 옵션들을 가질 수 있도록 하는 방법으로 서로 다른 능력을 지닌 다양한 캐릭터들을 아우르는 대전 게임을 만들어 냈습니다. 즉, 상대가 어떤 예상치 못한 미친짓을 하건 자신의 캐릭터가 바보가 되는 경우는 거의 발생하지 않는 것을 보장했던 것이죠. 이로 인해 사전에 기획자가 예측하지 못한 조합 또는 전술을 누군가 발견하고 사용하는 경우에도, 플레이어들은 여전히 그에 대응할 수 있는 수단들 역시 보유할 수 있도록 '안전장치'를 마련해 두었던 것이죠.

Poker의 경우는 앞서 들었던 예들과는 조금 다른 방법으로 게임을 보호하고 있습니다. 사실 포커 게임 중 사람들의 손에 주어지는 패는 절대로 밸런스가 맞을 수가 없죠. 함께 게임을 하고 있는 참여자들 중 누군가는 항상 최고의 패를 갖게 될 테니까요. 그러나, 상대 패를 모른다는 '불확실성' 요소가 베팅 시스템과 결합하여 타인의 승리를 훔치거나, 자신이 패배하는 횟수를 줄이는 것이 가능해진 것이죠. 이론적인 관점에서 볼 때, 엄청난 뻥카는 사실 어떠한 패도 물리칠 수 있답니다. 포커의 뻥카와 베팅 시스템으로 인해 플레이어들은 영원히 밸런스가 맞지 않는 게임을 하면서도 언제나 적절히 상대에 대응할 수 있는 방법을 가질 수 있게 된 것이죠.

이와 같은 안전장치들을 마련해 두면, 기획자가 실제 서비스 개시 이후 사전에 예상하지 못했던 문제가 발생하더라도 유저들은 스스로 그러한 상황에 대응하고 적응할 수 있는 도구를 가질 수 있게 됩니다. 기획자 여러분들은 자신의 게임에 필요한 '안전장치'를 고안하기 위해 항상 노력하셔야 한다는 점을 잊지 마세요.


Wrapping Up

밸런싱이란 대단히 광대한 내용을 아우르는 주제이며, 모든 게임 개발자들에게 항상 진행형인 도전과제라고 할 수 있습니다. 필자가 개인적으로 좋아하는 GDC발표 중에 Design in Detail:Changing the Time Between Shots for the Sniper Rifle from 0.5 to 0.7 Seconds for Halo 3 가 있는데요. 대략 한시간 분량정도이며, 만약 밸런싱과 관련하여 좀 더 깊이 알고 싶다면 그 시작점으로 대단히 좋은 강의가 될 것으로 생각합니다.


담에 또 보자구요~

Dan Felder




역: Iron Smith (원문 링크: 요기)
2017 / 3 / 28