RTS의 절차 적 수준을 공정하게 유지하려면 어떻게해야합니까?


10

RTS 레벨 디자인에서 대칭과 일관성이 중요하다는 것을 알았지 만 게으르고 절차 적으로 생성 된 레벨을 수행하려고합니다.

절차 적으로 RTS 레벨을 생성 할 때 공정한 경기장을 만들려면 어떻게해야합니까?


4
나이가 들어감에 따라 점차 묻히고 있지만 Age of Empires 게임에서 무작위 맵 생성 스크립트가 어떻게 작동했는지에 대한 정보를 찾는 것이 좋습니다. 이것들은 플레이어가 편집 할 수있는 텍스트 파일로, 다양한 유형의 충돌지도를 생성하는 방법을 설명합니다. 나는 그들이 특정 지형 / 소품의 패치와 클러스터를 내려 놓고 자원과 같은 것들을 공평하게 배치하여 플레이어가 서로 접근 할 수 있도록 지형을 통과하는 길을 개척하는 방법을 가지고 있었다는 것을 기억합니다. 그들의 요리법이 어떻게 작동하는지 배우면 나만의 아이디어를 얻을 수 있습니다.
DMGregory

2
RTS가 단일 인인지 멀티 플레이어인지 언급하지 않습니다. 독신 인 경우 플레이어의 기술에 맞게 AI 동작을 변경하여 일부 레벨 밸런싱을 수행 할 수 있습니다. 다시 말해 AI는 플레이어보다 더 많은 리소스에 액세스 할 수 있지만 플레이어는 얼마나 공격적으로 공격을 수행하거나 리소스를 악용하는지에 따라 해당 리소스를 얼마나 적극적으로 사용하는지 조정합니다.
Mark Ripley

1
Mark가 말한 것에 더하기 위해, 어떤 종류 의 균형을 찾고 있습니까? 지도를 사용하여 무엇을 달성하고 있습니까?
Nicol Bolas

답변:


26

개인적으로, 저는 레벨 디자인의 대칭성이 지루하다고 생각합니다. 필자가 공정한 레벨에 필요한 경우라고 생각하지는 않습니다. 대칭은 문자 그대로 어떤 방식으로 각 플레이어에 대해 미러링되는 수준으로 인해 모든 사람이 동일한 리소스와 동일한 병목 현상에 액세스 할 수 있도록하는 방법입니다. 중요한 부분은 동일한 장점과 단점에 접근하는 것입니다. 대칭 자체는 그리 많지 않습니다.

또한 모든 측면이 동등한 힘을 가지며 동등한 기회를 갖도록 게임 균형이 지루하다고 생각합니다. 당신은 분명히 그 요소들의 불균형을 원치 않지만, 양쪽에 약간 다른 기회와 장애물을 제공하는 흥미로운 놀이 역 동성을 만들 수 있다고 생각합니다.

이것이 질문에 대한 실제 답을 구상하는 것으로 생각하는 일종의 디자인 컨텍스트입니다.


대칭이 실제로 중요한 경우 절차 적으로 레벨 청크를 생성 한 다음 해당 레벨을 두 축에 걸쳐 미러링 할 수 있습니다. 생성하는 청크는 기본적으로 레벨의 1/4이며 각 사분면이 동일하도록 미러합니다. 예를 들어, 무작위로 자원이 분산 된 절차 적 높이 맵 :

여기에 이미지 설명을 입력하십시오

그러나 위에서 말했듯이, 그것은 둔해 보입니다. 보다 흥미로운 접근 방식은 전체 지형을 절차 적으로 생성하는 것이지만 자원을 배치 할 때 각 사분면에 동일한 수의 각 사분면을 갖도록 제한해야합니다 (일부 변동성을 제공하기 위해 약간의 공차 내에서). 자원의 중요성에 따라 다양한 자원 유형을 다양한 영역 (임의로, 시작 지점 근처, 경계 근처)으로 배치하는 것이 좋습니다. 예를 들면 다음과 같습니다.

여기에 이미지 설명을 입력하십시오

생성 된 이미지를 분석하여 병목 현상으로 간주 될 수있는 좁은 협곡 (예 : 좁은 협곡)을 찾을 수 있습니다. 예를 들어, 병목 현상이 있거나 훨씬 더 적은 병목 현상이나 유사하게 감지 가능한 지형 지형이있는 경우지도의 일부에 대해 지형 생성을 다시 롤하기로 결정할 수 있습니다. 배치 된 각 리소스가 어떤 식 으로든 도달 할 수 있도록 유사한 지형 분석을 수행 할 수도 있습니다.

예를 들어, 왼쪽 하단 사분면에 물이 너무 많기 때문에 (빨간색) 녹색이 포함 된 사분면이 전술적으로 유리하기 때문에 잠재적으로 협곡 병목 현상을 일으킬 수 있습니다.

여기에 이미지 설명을 입력하십시오

기능 생성을 수동으로 안내하도록 선택할 수도 있습니다. 레벨 또는 키 리소스 예금의 섹션을 나누는 강과 같은 특정 요소를 수동으로 배치하고 나중에 수동식 키 밸런싱 기능을 유지하면서 원하는 흥미롭고 유기적 인 다양성을 제공하도록 절차 생성을 실행할 수 있습니다 절차 적 세대

예를 들어,지도를 반으로 나누고 숲이 우거진 덮개로 수동으로 배치 된 강을 보존하는 생성 된 지형은 기지 주변을 추가로 방어했습니다.

여기에 이미지 설명을 입력하십시오


2
고마워, 이것은 내 청크 시스템에서 잘 작동합니다. 사람들은 나의 "그러나 게으른"진술에 혼란스러워 보인다. 저는 아티스트가 아니며 노이즈와 메시 생성이 더 흥미 롭습니다.
James Pae

2
@JamesPae : " Im no artist "레벨 디자인은 예술 에 관한 것이 아닙니다 . 게임 플레이에 관한 것입니다. 문제는 게임 디자인을 좋아합니까?
Nicol Bolas

8
@JamesPae 재미있는 레벨을 만들 수 없다면 절차 적으로 생성 된 레벨을 재미있게 만드는 것이 매우 어려울 것입니다. 발전기를 작성하기 전에 무엇이 재미 있을지 배울 수 있도록 최소한 한 단계는 제작하는 것이 좋습니다
Evorlor

2
@ Evorlor 그는 그것을 즐길 수 없다고 말하는 것이 아니라 그것을 즐기지 않는다고 말합니다. 왜 모든 사람이이 시점을 무시 하는가?
Davor

5
왜 모든 사람들이 문자 그대로 그렇게합니까? 그는 그 말로 농담을했다. OP의 관점을 이해합니다. 예, 그들은 몇 가지 수준을 손으로 만들 수는 있지만 여전히 만든 수준만큼만 있습니다. 좋은 레벨 생성기를 만드는 데 동일한 노력을 기울이면 무한한 레벨을 사용할 수 있습니다. 사람들은 생각과 의견이 다릅니다. 일부는 훌륭한 수준의 수공예를 원할 수도 있고, 일부는 훌륭한 수준의 발전기를 만드는 데 깊이 관여하는 것을 즐길 수도 있습니다.
JamEngulfer

7

경우에 따라 타일 조작 메커니즘을 사용하여 플레이어 자체에 의존하여 균형 잡힌 비대칭 맵을 만들 수도 있습니다.

스펙트럼의 한쪽 끝에서 맵 타일을 선택하고 배치하여 플레이어가 부분적으로 또는 전체적으로 맵을 만들 수 있습니다. 이것을 조정할 수있는 여러 가지 방법이 있습니다 :

  • 플레이어는 일반적인 타일 덱에서 선택
  • 레이어는 개인 타일 데크에서 선택
  • 타일은 제도 단계를 통해 선택됩니다
  • 일부 타일은 시나리오를 통해 사전에 수정 될 수 있습니다 (예 : 항상지도 중앙에 다리가있는 강을 생성합니다)
  • 플레이어는 자원이있는 중앙 시장에서 타일을 구매합니다
  • 플레이어는 타일을 유지하도록 허용되거나 허용되지 않을 수 있습니다

타일 ​​조작 스펙트럼의 다른 쪽 끝에서 플레이어가 맵 타일을 조작 할 수 있습니다. 이 솔루션에서 게임은 초기 맵으로 시작합니다. 초기지도는 다른 답변을 사용하여 대칭이거나 '충분히'공정 할 수 있습니다.

다음으로 플레이어가 다음 중 일부를 수행 할 수있는 맵 조작 단계가 발생합니다.

  • 타일을 회전
  • 스왑 타일 (인접 또는 기타)
  • 타일을 미러링
  • 타일의 행 또는 열을 밀어 넣습니다 (가장자리에서 떨어질 타일)

이러한 조작은 한 번에 하나씩 실행될 수 있으며,이 경우 한 명의 플레이어가 다른 플레이어의 조작에 반응 할 기회가 있거나 플레이어가 실행되는 변경 목록을 대기시킬 수 있습니다. 또한 플레이어가 맵 전체를 조작하거나 시작 영역으로 제한 할 수 있습니다.

이 접근법의 단점은 최종 결과가 바람직하지 않은 결과로부터 보호되어야한다는 것입니다. 즉,지도의 일부에 액세스 할 수 없도록 통과 할 수없는 산맥을 조작하는 것입니다. 이 단점에 대한 가능한 해결책은 다음과 같습니다.

  • 잠재적 결과를 확인하고 불법적 인 결과를 초래하는 행동을 금지
  • 모든 움직임을 허용하지만 불법적 인 것은 취소
  • 불법적 인 움직임이 없도록 타일 제작
  • 움직임이 불법이 아닌 다른 게임 메카닉 (즉, 움직임)을 설계

2

맵 생성 알고리즘이 레벨을 생성하여 대칭 레벨을 생성하도록하고이를 미러 한 다음 각 플레이어를 한쪽에 배치하십시오. x- 축과 y- 축 모두에서 미러링하여 4 인용 맵을 만들 수 있습니다.

그렇게하면 맵이 모든 플레이어에게 똑같이 좋거나 나빠질 것입니다. 주의해야 할 부작용은 플레이어가 다른 플레이어의 위치와 자체 탐색을 한 후 맵의 다른 부분의 레이아웃을 알고 있다는 것을 의미합니다.

또 다른 옵션은이 대칭 트릭없이 맵을 생성 한 다음 전체 맵을 플레이어에게 표시하고 각 플레이어가 시작 위치를 자유롭게 선택하도록하는 것입니다.


1

한 가지 방법은 다른 요소를 사용하여 맵의 균형을 맞추는 것입니다. 일부 맵 분석 알고리즘을 사용하고 불리한 것으로 간주되는 위치에 추가 시작 리소스를 제공하여이를 자동화 할 수 있습니다. 또는이 단계에서 플레이어 자체를 사용할 수 있습니다. 현재의 예는 오프 월드 트레이딩 컴퍼니 (OTC)의 공개 모드 에서 역경매를 사용 하여 최초 청구를 시작하는 것입니다 (예 : 시작 기준 위치 선택).

시간이 흐르면서 창립 초기 채무가 줄어든다. 마지막 2 명의 플레이어를 찾는 데 시간이 오래 걸리면 결국 돈을 시작하게됩니다. 본사를 설립하지 않은 플레이어가 한 명만 남으면 값이 변경되는 것을 멈추고 해당 플레이어는 더 이상 발견 대기를 얻지 못합니다.

3 Moves Ahead 또는 Game Design Round Table 인터뷰 인지 기억이 나지 않지만 , 그 중 하나에서 Soren Johnson (개발자)은이 메커니즘이 맵 문제를 "최상의 위치를 ​​먼저 찾을 수 있습니까"에서 " 지도에서 두 번째로 좋은 위치는 얼마나 좋습니까? "

이점은이 솔루션이 고도로 비대칭적인 맵을 허용한다는 것입니다. 단점은 전체지도가 적어도 처음에는 모든 플레이어에게 공개된다는 것입니다. OTC 접근 방식은 또한 플레이어 기반 위치를 보여줍니다. 블라인드 입찰과 같은 다른 메커니즘은 기본 위치를 공개하지 않을 수 있습니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.