RPG 플레이 밸런스를 위한 리스크 분석 적용
아담 카펜터(Adam Carpenter) 가마수트라 등록일(2003. 06. 11)
http://www.gamasutra.com/view/feature/131252/applying_risk_analysis_to_.php
플레이어가 게임 잡지가 최근에 출시한 게임에 “밸런스가 잘 맞추어졌다”고 어느 정도나 평가하고 있는가? 또한 얼마나 오랫동안 게임을 하고 있다고 말할 수 있는가? 실시간 전략 게임(RTS)와 롤플레잉(RPG) 게임 장르에서, 첫번째 질문에 대한 대답은 거의 할 수 없다. MMORPG의 경우에, 두 번째 질문에 대한 대답은 그래야 함에도 불구하고 그렇게 많지는 않다. 좋은 게임 밸런스는 여러 면에서, 게임 디자인의 성배이다. 회사는 엄청난 시간과 자원을 게임 밸런스를 맞추기 위해서 투자하고, 그래서 그들은 너무 어렵지도 너무 쉽지도 않은 게임을 만들고자 한다. 이러한 노력은 기업의 자원을 유의미하게 이용할 수 있도록 하는데, 디자이너와 엔지니어가 부가적인 기능을 부여함으로써 밸런스 문제를 해결하고자 노력하게 된다. 대신에, 이들은 똑 같은 방정식이나 코드 라인을 분석하는데 귀중한 시간을 소비하게 되는데, 가령 어떤 캐릭터 클래스가 계속해서 다른 것보다 훨씬 퍼포먼스가 좋을 때 이렇게 된다.
밸런스가 맞추어지지 않은 게임은 또한 다른 방식으로 개발을 괴롭힌다. 밸런스가 맞지 않은 게임은 플레이어를 좌절시키고 부정적인 여론과 리뷰를 발생시킨다. 이 두 상황 모두 게임 판매나 월 결제에 부정적인 영향을 주는데, 이로 인해 퍼블리셔와 개발사의 현금 흐름을 나쁘게 하고, 기업이 가용할 자원과 자본을 제한시킨다. 이러한 자원이 없다면, 기능을 향상시키는 능력과 현존하는 게임의 특징을 제한하게 된다. 또한, 새로운 게임을 위한 가용한 자본이 줄어든다.
AAA 게임 타이틀을 개발하는 것은 수 백만 달러가 소요되고 비용은 계속해서 오른다. 평균적으로 타이틀 하나를 출시하는데 3백만 달러가 드는데, MMORPG 개발은 1,000만 달러를 쉽게 초과한다. 이것은 모두 개발 비용에 불과한 것이고 출시 이후의 경비는 포함되지 않는다. 디자이너와 엔지니어는 게임의 밸런스를 맞추고 버그를 제거하는 등의 개발 이후에도 일을 하게 된다. 일부 게임의 경우에, 출시 이후 비용은 상당할 수 있다. 이러한 출시 이후의 비용은 비효율적인 밸런스 때문인데, 이것은 최초의 디자인이나 알파, 베타 단계에서 발생된다. 다행스럽게도, 적절한 위험 분석 기술을 이용하며, 두 가지 면에서 도움을 받을 수 있다. 개발 시간을 절약할 수 있으며, 이론 인해 비용을 줄이고, 긍정적인 구두 마케팅으로 판매와 구독자를 증가시킬 수 있다.
확률과 리스크 분석 대부분의 기본적인 수준에서, RPG는 수많은 숫자와 방정식의 집합체이다. 이러한 전체의 게임은 스프레드 시트 프로그램에 의해
서만 개발될 수 있는데, Microsoft Excel과 Palisade의 @Risk와 같은 플러그 인이 그것이다. @Risk는 Microsoft Excel에 부가할 수 있는 상업용이다. 이 프로그램은 디자이너가 불확실한 것을 @Risk 기능에 적합한 가치로 바꿀 수 있게 해 준다. 이렇게 함으로
써, 전체 결과의 스펙트럼이 관찰될 수 있다. @Risk와 Microsoft Excel의 이용을 통해서 중요한 게임 시스템을 모델링하고 분석
할 수 있다.
물론, 하나의 스프레드시트와 통계 패키지로 만들어진 게임은 RPG가 플레이어에게 가져다 주는 의미, 콘텍스트 및 감정이 부족할 수 있다. 그러나, 이러한 게임은 플레이어가 온라인 게임 내에서 개입하고 발전해 나갈 수 있는 똑 같은 기본적인 시스템을 포함하고 있다. 전투 알고리즘에 대해 면밀히 살펴 본다면, 시스템은 어떤 상황에 대해서 좋은 결과를 결정하기 위해서 수 천번의 시뮬레이션을 실시하고 빠르게 모델링 하여 개발될 수 있다. 이러한 결과를 분석함으로써, 밸런스가 진정으로 잘 맞추어진 게임이 만들어질 수 있다.
리스트 분석 기술은 기업이 적용하고 있는 것을 상관하지 않고 이루어지는데, 바람직한 결과는 꽤 유사하다. 석유 회사가 미래의 고정 자산의 활용을 예견하려고 하듯이, 게임 회사도 주어진 게임 상황의 미래 결과를 예측하고자 노력한다. 석유 회사에서, 데이터 모델은 활용가능한 정보를 관리인에게 제공해 주어 그들이 비용/편익 결정을 할 수 있게 해 준다. 이와 비슷하게, 게임의 전투 모델은 디자이너가 적당한 밸런스가 달성 될 수 있도록 종족, 클래스 및 그룹을 조정할 필요가 있는지 아닌지를 보고 결과를 예측할 수 있도록 해 준다. 이 두 경우 모두, 리스크 분석 기술은 불확실성을 줄이고 도달할 수 있는 잠재적인 가치를 극대화 할 수 있게 해준다.
이 글이 RPG 게임 시스템에 주안점을 두고 있지만, 리스크 분석의 적용은 모든 장르의 게임 내에서 플레이 밸런스 게임에 적용될 수 있다. 실시간 전략 게임은 특히 우수한 후보자가 되는데, 테스트 되어야 할 전투 시나리오가 다양하기 때문이다. 리스트 분석 모델링은 상대적으로 플랫포머와 사이드 스크롤과 같이 상대적을 간단한 게임에는 적용하지 않는데, 이런 게임과의 플레이어 인터랙션이 일반적으로 가치있는 모델링을 포함하고 있지 않기 때문이다. 이런 게임은 디자이너가 간단하게 시행 착오를 거쳐서 밸런스를 잘 잡을 수 있다.
이 글의 시작
(편집자 주 : 이 부문은 저자의 요청에 의해 2003년 6월 16일에 수정되었음)
이 글의 처음은 Asheron's Call 2 (AC2)의 베타와 출시 단계를 관찰한 후에 시작되었다. 게임의 모조-클래스-기반 시스템과 관련된 기술을 리뷰잉하면서, 게임 시스템의 밸런스에 있어서의 불일치성이 관찰되었다. AC2의 프로그램 매니저인 Matthew Ford와 대면하면서, AC2의 개발자가 MMORPG 개발에 일반적인 수많은 분석 기술을 이용하여 게임 잴런스를 조정했다는 것을 알게 되었다. AC2 뿐만 아니라 Ford의 어떠한 다른 MMORPG도 이 글에 설명된 것과 같은 리스크 분석 방법을 사용하지 않았다. 나는 이 점이 매우 흥미로웠다; 이 분석 방법은 많은 소매 상품에서 발견되는 특수화, 클래스 및 영역 불균형의 정도를 설명하고 있다.
Ford와의 서신에서, 우리는 리스크 분석과 실질적인 MMORPG로의 적용을 위한 콘셉을 논의하였다. 우리는 또한 MMORPG 시스템을 테스트하고 모델링함으로써 얻을 수 있는 예측가능한 이익을 실험했다. Ford는 어떠한 MMORPG에라도 이 리스크 분석이 “전통적인 수학적 조절 방법에 귀중한 상대”라는데 동의했다. 그는 특히 게임 밸런스 가치에 관련되지않은 변화처럼 보이는 것에 의해 기대하지 않은 결과가 만들어 질 수 있다는 것에 가치를 부여했다. Ford는 또한 이 방법이 개발 후기의 게임 밸런스를 정제하는 것 뿐만 아니라, 게임 디자인 초기 단계에서 실험적인 게임 다이나믹스를 반복하는데 좋은 방법이 될 수 있다는 것에 동의했다.
의미있는 게임 시스템 RPG를 디자인 할 때, 수 많은 시스템이 개발되어지고 균형을 맞추어야 한다. 수 천번 게임 진행중에 언급되는 능력, 스킬, 스펠의 조그마한 차이가 실제로 게임에 적용되어 질 때 수용될 수 없는 결과가 초래된다. 일부의 시스템은 RPG에서 포함되어야 하는 밸런스를 필요로 한다 :
플레이어 캐릭터 종족 플레이어 캐릭터 클래스 플레이어 대 환경 충돌 (PvE) 플레이어 대 플레이어 충돌 (PvP) 플레이어 진보 및 스킬 향상 비율 스킬을 증가시키는데 필요한 비용과 시간 자원 제약
이 리스트는 성공적인 RPG에서 밸런스가 맞추어져야 하는 시스템의 일부이다. 일을 좀더 복잡하게 하는 경우라면, 게임 시스템이 항상 별개의 요소가 아니기 때문에, 게임 시스템이 부지불식간에 다른 것으로 불균형을 이루게 되도록 노력하게 될 수도 있다. 대부분의 시스템은 밀접한 관련성이 있고 플레이어 종족이나 계급과 같은 기본적인 단계에서 이루어지는 조정은 게임의 모든 면에 영향을 미칠 잠재적 가능성을 가지고 있다.
모델 개발 리스크-분석 기술을 게임 밸런싱에 적용하기 위해서, 기본-케이스 시나리오가 필요하다. 전투 시스템의 경우에, 기본 케이스는 이전에 결정된 레벨/클래스/종족 등의 전형적인 플레이어 캐릭터를 나타낸다. 평균 플레이어 캐릭터가 시뮬레이션 될 수 있도록 하기 위해 데이터를 수집하는데 주의가 필요하다. 밸런스가 게임을 플레이 할 수 있을 만한 단계 이전에 조절하려고 한다면, 디자이너는 개인적인 경험과 그들이 완성된 게임에서 정확하게 보고자 하는 것을 반영한 기본 케이스를 개발하기 위한 미래의 기대를 모두 이용해야만 한다.
인풋 파라미터의 조건 일단 베이스 케이스가 결정되면, 모든 상수, 변수 및 방정식이 시스템에 포함되어야 하며, 필요한 조건은 다음과 같다 :
상수. RPG에서, 상수는 모델에서 변하지 않는 가치를 나타낸다. 상수의 예는 캐릭터 레벨, NPC 타이머 및 최초 종족 통계가 될 것이다. 게임이 밸런스를 맞추고 있을 때 상수가 조절될 것이다. 그러나 어떠한 확률 분포도 이들에게는 적용되지 않을 것이다.
변수. 이것은 플레이어 간에 달라 질 수 있는 게임 내 가치를 말한다. 이것들은 스킬 포인트, 같은 NPC 몬스터의 복제 경우 및 크래프트 자질 분포의 할당을 포함한다. 변수는 확률 분포 기능을 이용하여 고려된다. 노멀, 로그 노멀, 카이 스퀘어 및 많은 다른 분포가 게임내에서 랜덤으로 요소가 나타나도록 하는데 이용될 수 있다.
방정식. 이것은 행위의 성공과 실패를 결정하고, 보호 스킬과 블로킹 퍼센트 간의 수학적 관계를 설정하거나 치거나 피해를 주는 우선적인 통계의 효과를 결정짓는 계산법이다.
모델을 디자인할 때, 주의사항이 있다 : 모델은 데이터 만큼이나 좋아야 한다. 부정확한 데이터나 방정식이 모델에서 대체될 때, 모델이 부정확하거나 관련성이 없을 것이라는 사실에 기인하여 결과가 도출된다. “쓰레기 투입구, 쓰레기 배출구”는 상투적인 격언이다. 그러므로 플레이어의 성향과 최소/최대 잠재성을 이해하는 것 만큼 게임 시스템에서 가용한 상태의 범위를 이해하는 것이 중요하다.
기본적인 플레이어 캐릭터와 기본적인 몬스터 사이의 성공적인 개발을 위한 모델링을 하고 있다면, 다음의 각 사항을 명심할
필요가 있다 :
모델 필수조건 : 우선적인 통계 헬스 토탈 마나 토탈 갑옷 형태 갑옷 수준
갑옷 흡수 무기 형태 무기 데미지 공격/방어 보너스 공격/방어 벌점 피사기/치기/막기/때리기 퍼센트
위의 것은 일부에 불과하다. 게임 내 시스템이 위와 같은 특징에 영향을 받거나 다른 요인에 의해 영향을 맏는 다면, 모델은 이러한 요소에 대해서 인풋을 필요로 하게 될 것이다. 간단한 게임은 의미있는 결과를 도출하는데 몇 가지의 인풋을 필요로 한다. 반대의 경우도 마찬가지이다. 복잡한 게임은 모델을 개발할 때 좀더 많은 노력과 조종을 필요로 한다.
좀더 정확한 모델을 만들기 위해서, 위의 필수요소의 대부분은 변수의 형태로 모델에 투입되어야 한다. 변수의 이용은 상수와 반대로, 관찰되어져야만 한다. 예를 들어, 만약 플레이어가 그들의 X, Y가치 사이의 우선적인 통계를 다양화 할 수 있다면, 모델은 이를 설명해야만 한다. 모델의 요인 변화 때문에 디자이너는 상수 평균 가치에 의해 제공된 결과를 제한할 수 없게 될 것이다.
모든 상수, 변수 및 방정식이 정비되고 스트레드시트에 인풋 값을 넣게 되면, 이제는 시뮬레이션을 실시할 때이다. 시행이 더 많이 될수록, 여러분이 갖게 될 분포는 좀더 균형이 맞을 것이다. 그러므로 여러분은 좀더 정확한 결과를 가지게 될 것이다. 그러나 예외적으로 복잡한 모델의 경우라면, 시뮬레이션 수행에 좀더 시간을 들여야 한다. 일반적으로, 5000회를 반복하는 것이 적당하다. 이것은 0.0002%의 효과를 보여주는데 그치는 정도이다. 만약 고려하지 못한 결과가 관찰된다면, 시뮬레이션 반복 회수는 결과 곡선을 부드럽게 만들기 위해서 증가되어야 한다.
디자인 객관성과 “만약 – 한다면” 시나리오 결과 비교 시뮬레이션이 완료되었다면, 결과가 분석되어야 한다. 리스크 분석 소프트웨어의 최고 장점 중의 하나는 특정한 결과를 위한 누적 확률 그래프를 볼 수 있다는 것이다. 누적 확률 그래프는 결과물 Y가 적어도 X퍼센트의 횟수로 일어날 것이라는 퍼센트를 보여준다. 기본 플레이어 캐릭터와 기본 NPC 몬스터 간의 전투의 경우에 있어서, 디자이너는 각 회당 히트 포인트 변화를 관찰할 수 있다. 그림 1은 샘플 누적 확률 분포를 보여준다.
각 회마다 죽을 가능성을 표로 나타낸 것은 디자이너가 회당 기준점으로 전투의 사망률을 관찰할 수 있도록 해 준다 (그림 2 참조). 자연스럽게, 가지고 있는 가치가 1이라고 할 때 죽을 확률을 빼면, 생존가능성이 도출된다 (예 : 1.0-0.4=0.4 또는 40%의 생존 가능성). (대부준의 게임 전투가 그러하듯이) 죽을 때 까지 싸운다면, 플레이어 캐릭터의 생존은 적이 먼저 죽어야 가능하다. PC 대 NPC 전투의 경우에, NPC 죽음의 가능성과 PC 죽음 가능성 1을 빼면, 승리 또는 실패를 볼 수 있다. 이러한 두 선이 교차하는 지점은 전투의 결과를 기대해도 좋을 지점이다. 만약, NPC 죽음과 플레이어 죽음의 가능성을 포함하고 있는 지점에서, 25라운드에서 60% 지점에서 선이 교차한다면, 플레이어 캐릭터는 승리할 가능성이 60%라는 것이다. 이 교차점은 전투 시뮬레이션의 바람직한 결과물로 비교될 수 있다. 바람직한 결과물은 아래와 같을 것이다 :
· 특수한 스킬이나 스타일을 사용하지 않고 같은 레벨의 몬스터를 물리칠 확률이 75% · 최적의 레벨 스킬과 능력치를 이용한 같은 레벨의 몬스터를 물리칠 확률 95% · 스킬이 최고치에 도달하기 이전에 평균 60시간의 시간이 필요함 · 최적의 스킬/스타일을 이용하여 다른 클래스를 물리칠 확률 40%
만약 바람직한 결과와 시뮬레이션 결과가 동일하다면, 시스템은 균형이 잘 잡혀있고 디자이너는 다음 시뮬레이션을 나아갈 수 있다. 만약 시뮬레이션 결과와 바람직한 결과물이 동일하지 않다면, 시스템의 일부에 수정을 가할 필요가 있다.
※ 자세한 내용은 첨부(PDF)화일을 참고하시기 바랍니다.
|