게임에서 레벨 디자인 (Level Design)과 캐릭터간의 밸런스는 게임의 흥미를 결정하는 매우 중요한 요소이며, 레벨 디자이너에 의해 결정 된다. 기존의 게임에서는 플레이어가 가장 큰 재미를 느낄 수 있는 캐릭터의 공격 패턴과 속성은 정적으로 정해졌으며 스크립트 형식으로 표현됐다. 이와 같이 정적으로 정해진 레벨에 따라 진행되면 플레이어가 쉽게 적응하게 되고, 플레이어의 학습능력에 따라 레벨 디자이너가 의도했던 밸런스가 깨질 수 있었다. 이런 문제점을 해결하기 위해 본 논문에서는 게임 도중에 플레이어의 대응 패턴을 GMM(Gaussian Mixture Model)으로 모델링하고 분석하여 레벨 디자이너가 의도했던 레벨과 재미를 느낄 수 있는 환경을 제공하는 방법을 제안한다. 제안한 방법을 실제 2D슈팅게임에 적용하여 플레이어의 패턴을 분석한 결과와 동적 레벨 디자인의 결과를 보인다.
게임에서 레벨 디자인 (Level Design)과 캐릭터간의 밸런스는 게임의 흥미를 결정하는 매우 중요한 요소이며, 레벨 디자이너에 의해 결정 된다. 기존의 게임에서는 플레이어가 가장 큰 재미를 느낄 수 있는 캐릭터의 공격 패턴과 속성은 정적으로 정해졌으며 스크립트 형식으로 표현됐다. 이와 같이 정적으로 정해진 레벨에 따라 진행되면 플레이어가 쉽게 적응하게 되고, 플레이어의 학습능력에 따라 레벨 디자이너가 의도했던 밸런스가 깨질 수 있었다. 이런 문제점을 해결하기 위해 본 논문에서는 게임 도중에 플레이어의 대응 패턴을 GMM(Gaussian Mixture Model)으로 모델링하고 분석하여 레벨 디자이너가 의도했던 레벨과 재미를 느낄 수 있는 환경을 제공하는 방법을 제안한다. 제안한 방법을 실제 2D슈팅게임에 적용하여 플레이어의 패턴을 분석한 결과와 동적 레벨 디자인의 결과를 보인다.
In computer games, the level design and balance of characters are the key features for developing interesting games. Level designers make decision to change the parameters and opponent behaviors in order to avoid the player getting extremely frustrated with the improper level. Generally, opponent be...
In computer games, the level design and balance of characters are the key features for developing interesting games. Level designers make decision to change the parameters and opponent behaviors in order to avoid the player getting extremely frustrated with the improper level. Generally, opponent behavior is defined by static script, this causes the games to have static difficulty level and static environment. Therefore, it is difficult to keep track of the user playing interest, because a player can easily adapt to changeless repetition. In this paper, we propose a dynamic scripting method that able to maintain the level designers' intention where user enjoys the game by adjusting the opponent behavior while playing the game. The player's countermeasure pattern for dynamic level design is modeled using a Gaussian Mixture Model (GMM). The proposed method is applied to a shooting game, and the experimental results maintain the degree of interest intended by the level designer.
In computer games, the level design and balance of characters are the key features for developing interesting games. Level designers make decision to change the parameters and opponent behaviors in order to avoid the player getting extremely frustrated with the improper level. Generally, opponent behavior is defined by static script, this causes the games to have static difficulty level and static environment. Therefore, it is difficult to keep track of the user playing interest, because a player can easily adapt to changeless repetition. In this paper, we propose a dynamic scripting method that able to maintain the level designers' intention where user enjoys the game by adjusting the opponent behavior while playing the game. The player's countermeasure pattern for dynamic level design is modeled using a Gaussian Mixture Model (GMM). The proposed method is applied to a shooting game, and the experimental results maintain the degree of interest intended by the level designer.
* AI 자동 식별 결과로 적합하지 않은 문장이 있을 수 있으니, 이용에 유의하시기 바랍니다.
문제 정의
본 논문에서는 이렇게 각각의 대응 패턴 도메인을 정하고 레벨 디자이너가 의도한 체감 난이도를 유지하기 위한 방법을 제시했다. 향후 발전 방향은 게임 내에서 발생하는 예외적인 상황들을고려한 대응 데이터 수집 방법과 더 정확한 GMM 간의 비교 및 적절한 패턴 추출에 대해 연구할 예정이다.
속성값은 시작위치 및 캐릭터 하나의 공격 패턴 루틴을 나타낸다. 본 논문에서는 이렇게 정의된 하나의 패턴에 대한 플레이어의 반응 데이터를 추출하게 된다. 위에서 정의된 적의 패턴에 플레이어가 어떤 움직임으로 대응 했는지를 나타낸다 [그림 4],
본 논문에서는 플레이어의 수행 패턴을 실시간으로 분석하여 레벨 디자이너의 의도한 방향으로 게임이 수행할 수있게 동적으로 스크립트를 생성 및 적용하는 방법을 제안한다. 제안된 동적 스크립트 기법은 레벨 디자이너의 의도대로 게임의 재미를 느낄 수 잇、는 방법으로 GMM (Gaussian Mixture Model) [10-12]을 사용하며, 실시간으로 플레이어의 게임수행 패턴을 분석 하고 레벨 디자이너의 의도대로 플레이어가 재미를 느끼며 미션을 수행하게 함으로써 플레이어의 긴장도를 유지시킨다.
위에 설명된 이론을 실제 개발된 게임1)에 적용했으며 [그림 8] 실험의 목적은 동적으로 조절된 난이도에 따라 반응한 플레이어의 대응 패턴이 레벨 디자이너가 의도했던 움직임 패턴과의 일치성을 높일 수 있음을 보이는 것이다. 사전에 레벨 디자이너가 가장 재미를 느끼게 흐]는 동작 패턴을 정의한뒤 이를 GMM으로 모델링 하고 게임 초반과 중반부에 사용될 적의 공격 패턴을 스크립트로 구성한다.
제안 방법
GMMe 데이터를 모델링 하는 방법의 일종으로 가우시안 분포를 이용하여 데이터를 모델링하는데 이때 2개 이상의 가우시안 분포를 사용하여 더욱 정확히 데이터를 모델링 하게 된다. 이렇게 데이터를 모델링 하는 이유는 데이터를 대표하는 파라미터 값으로 표현하여 비교, 분석을 쉽게 하기 위해서다.
GMM으로 표현된 데이터를 이용해서 동적으로 적의 공격 패턴을 선택하는 방식으로 두 가지 방법을 사용했다. 첫번째 방식은 레벨 디자이너가 정한 목적 분포도와 가장 근접한 분포도 [그림 6]를 보이는 적의 공격 패턴을 선택하는 방법 이다.
레벨 디자이너의 의도가 게임 플레이 도중에 유지 되도록 적의 공격 패턴에 대한 플레이어의 반응 및 무기 사용빈도를 분석하여 게임의 난이도를 실시간으로 조정함으로써 플레이어에게 재미있는 게임을 제공하고자 한다. 우선 2.
본 논문에서 설정한 플레이어의 대응 패턴 데이터는 슈팅 게임 내에서 움직임 위치 분포도와 무기 사용 빈도수로 설정하였다. 움직임 위치 분포도는 플레이어의 움직임의 활발함을 나타내고 무기 사용 빈도수는 적을 격파하는데 걸린 시간이나 난이도를 뜻하며 보유하고 있는 필살무기 수는 앞으로 나올 적들에 대한 긴장도를 뜻한다고 볼 수 있다.
패턴 중 어떤 요소를 사용할지 정해야 한다. 본 논문에서는 게임 플레이어의 위치(X, y 좌표 값)를 도메인으로 정했으며 이렇게 추출된 데이터를 GMM으로 모델링 한다. 이렇게 모델링 된 데이터와 레벨 디자이너가 의도했던 분포도의 차이를 비교해서 레벨 디자이너가 의도했던 게임 레벨이나 환경을 만들어줄 적의 공격 패턴을 동적으로 설정해서 2단계에 사용될 스크립트 내용을 정하게 된다.
본 논문에서는 위에서 말한 GMM을 2D 슈팅게임에 적용해 플레이어의 대응 패턴을 모델링했으며 대응 패턴을 분석해 레벨 디자이너가 원했던 레벨이나 재미를 느낄 수 있도록 동적으로 적의 공격 패턴을 조절한다.
본 실험에서는 적의 공격 패턴을7개로 정의 했으며 하나의 패턴은 적 비행기들의 출현 조합, 시작 위치, 동작들로 구성된다. 각각의 공격 패턴 지속 시간은 1분으로 정했으며 적의 공격 패턴(이를 정의한 스크립트) 하나당 2회 수행 되며 정적 스크립트를 사용하는 1단계에서 14개의 스크립트가 수행되며 14분 동안 지속된다.
이론/모형
g는 다변량 가우시안 분포 함수이다. GMM에 대한 최대우도 계수 (maximum likelihood parameter)를 결정하기 위해 EM (Expectation-Maximization) 알고리즘읠1列 사용하였다. EM 알고리즘은 주어진 계수들을 사용하여 평균 우도함수를 구하는 2번째 단계와 데이터들에 대한 최대 우도 함수를 구하는 3번째 단계로 구성되어 있으며, 우도 함수 값이 수렴할 때까지 다음과 같은 단계를 반복하는 알고리즘이다[그림 U.
이렇게 데이터를 모델링 하는 이유는 데이터를 대표하는 파라미터 값으로 표현하여 비교, 분석을 쉽게 하기 위해서다. 우리는 게임에서 발생하는 플레이어의 대응 데이터들을 모델링 해서 비교, 분석흐}는 것이 목적이므로 비교적 간단한 가우시안 분포를 이용하는 GMM를 사용했다.
제안된 동적 스크립트 기법은 레벨 디자이너의 의도대로 게임의 재미를 느낄 수 잇、는 방법으로 GMM (Gaussian Mixture Model) [10-12]을 사용하며, 실시간으로 플레이어의 게임수행 패턴을 분석 하고 레벨 디자이너의 의도대로 플레이어가 재미를 느끼며 미션을 수행하게 함으로써 플레이어의 긴장도를 유지시킨다. 제안된 기법을 실제 2D 게임에 적용해서 플레이어의 이동 패턴을 분석하여 적절한 적의 공격 패턴을 결정 하며, 무기 및 스킬 사용을 분석하여 난이도를 조정할 수 있음을 보인다.
성능/효과
두 번째 방식은 목적 패턴의 각 컴포넌트의 평균점을 기점으로 해서 추출된 분포도의 평균 값과 반대 방향으로 기준점을 정하고 그 평균과 근접하는 패턴을 선택하도록 했다 [그림 7], 즉, 최종 플레이어 대웅 패턴을 목적 패턴에 수렴하는 속도를 증가 시키기 위해 반대 방향으로 기준점을 설정하고 그 기준점과 일치도가 높은 대응 패턴을 보이는 적의 공격 패턴을 선택하는 방식이다. 알고리즘 2는 기준점을 새로 정한 후 알고리즘 1을 실행하는 방법으로 알고리즘 1를 이용해서 선택된 스크립트와 알고리즘 2를 이용해서 선택된 스크립트를 조합하면 목적 패턴과 유사한 스크립트만 선택했을 때 보다 후반부의 적의 공격 패턴을 다양하게 구성할 수 있으며 목적 패턴에 수렴 하는 속도를 증가시킬 수 있다.
제안된 동적 스크립트 기법은 레벨 디자이너의 의도대로 게임의 재미를 느낄 수 잇、는 방법으로 GMM (Gaussian Mixture Model) [10-12]을 사용하며, 실시간으로 플레이어의 게임수행 패턴을 분석 하고 레벨 디자이너의 의도대로 플레이어가 재미를 느끼며 미션을 수행하게 함으로써 플레이어의 긴장도를 유지시킨다. 제안된 기법을 실제 2D 게임에 적용해서 플레이어의 이동 패턴을 분석하여 적절한 적의 공격 패턴을 결정 하며, 무기 및 스킬 사용을 분석하여 난이도를 조정할 수 있음을 보인다.
후속연구
본 논문에서는 이렇게 각각의 대응 패턴 도메인을 정하고 레벨 디자이너가 의도한 체감 난이도를 유지하기 위한 방법을 제시했다. 향후 발전 방향은 게임 내에서 발생하는 예외적인 상황들을고려한 대응 데이터 수집 방법과 더 정확한 GMM 간의 비교 및 적절한 패턴 추출에 대해 연구할 예정이다.
※ AI-Helper는 부적절한 답변을 할 수 있습니다.