갤럭시 맵 에디터

블리자드 엔터테인먼트RTS게임 스타크래프트 2에서 지원하는 맵 에디터 서비스.

1 개요

스타크래프트2 정품을 구입했을 때 자동으로 깔리는 맵 에디터. 스타크래프트2 폴더에 위치해 있다. 브루드워와는 달리 그 기능이 강력하기에 별도의 특수 에디터는 없다. 처음 사용자 계정도 사용할 수 있으나 문서 시험이나 게시가 불가능하다.

초기에는 '스타크래프트2 지도 편집기(StarCraft II Galaxy Map Editor)'였다가 어느 순간부터 '지도(Map)'가 빠지고 그냥 '스타크래프트2 편집기'가 되었다. 맵 제작 뿐만 아니라 모드 제작 및 컷신 영상 제작도 가능해졌기에 그런 것으로 보인다.

그 기능은 전작, 워크래프트 3의 월드 에디터에 비해 혁명 수준의 진보를 보여준다. 유닛의 경우 워크래프트 3과 달리 지나치게 세세해서 처음 입문하는 사람이라면 뭐가 뭔지 모를 정도로 세부적인 수치를 수정할 수 있으며, 에디터 자체에서 유닛의 모델링이나 스킨을 편집할 수도 있고[1], 적절한 능력과 모델만 있다면 캠페인 수준의 컷신까지 만들어낼 수 있게 되었다. 각종 트리거 역시 진일보해져서 장르를 넘나드는 게임을 보다 쉽게[2] 제작할 수 있고, 세이브 파일을 생성하는 기능도 있어 기존에 플레이한 내역을 저장할 수도 있게 되었다. 워크래프트 3의 경험치를 통한 레벨업과 스킬 습득, 아이템 획득 및 사용 등이 가능한 영웅 유닛은 본편에 전혀 등장하지 않지만, 본편에서 쓰지도 않을 이런 시스템을 유저들을 위해 조금만 손보면 모두 구현할 수 있도록 준비해 놓았다. 이때문에 RPG 쯔꾸르수준의 범용성을 가지는 툴로 평가받을 정도.

2015년 2월 공개 테스트 서버에 워크래프트 3 모델링이 추가되었다.# [3] 하지만 라이브러리를 확인하기만 해도 블리자드가 모든 3D 모델을 리마스터해준 것은 아니라는 것을 알 수 있다. 진정으로 고수준의 그래픽의 워크래프트 3을 재현하고 싶다면 대부분의 모델을 직접 리마스터하는 과정도 필요하다. 종족별 영웅들을 제외하면 리마스터된 모델은 거의 없다. 파일 변환만 되어있을 뿐.

공허의 유산이 발매된 이후 갤럭시 에디터의 실행을 위해서는 미국 서버의 계정이 필요하다. 즉 기존 아시아 서버에 이미 계정이 있다 하더라도 미국 서버에서 스타 2를 실행해 계정을 한 번 만들어줘야지만 갤럭시 에디터를 사용할 수 있게 되었다. 그리고 처음 갤럭시 에디터를 실행했을 때 인터페이스의 기본 언어가 영어로 나오는데 기본 설정(preference)의 일반(General)에서 언어(Locale)를 한국어(koKR)로 변경하면 다시 한국어로 바꿀 수 있다.

그런데 에디터를 한국어로 이용할 시 공허의 유산 때 새로 추가된 유닛의 효과 이름들이 대부분 비어있으며,[4] 유닛, 장식물 이름의 접두사, 접미사도 표시 되지 않으며, 트리거 텍스트도 공백으로 뜨는데다가 트리거 컴파일 오류도 발생하는 등의 문제가 있다. 그래서 언어를 영어로 변경하거나, 일일히 직접 확인해야하므로 꽤나 불편하다. 블리자드 코리아는 이 문제에 관심이 하나도 없기 때문에 수정될 가능성은 없다.

섬멸전 지도를 제작하거나, 유즈맵을 제작할 수도 있다. 섬멸전 지도 외에도, 섬멸전 맵에 업적등을 적용시켜서 지도를 만들 수도 있다. 공식 명칭은 훈련 지도.

2 제작 방향

2.1 섬멸전 지도

스타크래프트 2 래더, 사용자 지정 및 공식 경기에 사용되는 지도. 일명 밀리맵. 지형 모듈을 이용해 지형, 장식물과 중립 구조물[5]을 배치해야 한다. 전략적 독특함을 살리려면 게임에 대한 이해도가 높아야 한다.

2.2 아케이드 지도

일명 유즈맵. 새로운 지도를 생성하고, 게임 모드를 아케이드로 정한다. 지도의 의존 관계, 지형 모음, 그리고 경계를 선택하면 생성한 지도의 지형이 눈 앞에 펼쳐진다. 이 창은 지형 모듈이다.

아케이드의 요소는 크게 지형, 트리거, 그리고 데이터로 나누어볼 수 있다. 여기서는 주로 지형, 데이터에 관해 설명한다.

3 모듈

편집기의 각 창을 서술한다. 섬멸전 지도의 경우 특별한 경우를 제외하고는 지형 모듈만을 사용하게 된다.

3.1 지형

지형 모듈. 편집기를 처음 실행했을 때 보이는 창이다. 섬멸전 지도를 제작할 때엔 거의 이 창만을 이용한다.

3.1.1 지형

스타크래프트 캠페인에 나온 모든 행성, 위성 또는 우주 정거장의 텍스처와 모델을 지원한다. 기본적으로 8가지의 바닥 텍스처와 인공, 자연으로 구분되는 언덕(절벽), 저그 점막, 물, 굴곡, 도로, 초목 등을 지원한다. 따라서 전작보다 휠씬 디테일한 지형을 만들 수 있다. 워크래프트3와 달리 외부 툴을 동원한 노가다나 기존 텍스처의 희생 없이도 간편하게 지형 텍스처를 새로 불러와서 입힐 수도 있다.

텍스처 모음, 즉 지형 유형(Tileset)에 대한 자세한 정보는 아래에서 확인할 수 있다.

3.1.2 장식물

Doodad.

플레이어 혹은 인공지능이 조종할 수 없는 관상용 물체. 유닛과는 달리 순수한 행위자로 구성된다. 그야말로 관상용이라는 뜻이다. 여러가지 테마 내에서 고를 수 있으나, 종류도 많고 각 지형 모음에 완벽하게 귀속된 것이 아니기에 그냥 모든 지형에서 원하는 장식물의 이름을 검색해서 찾는 것이 편하다. 변형 개수가 많은 장식물의 모델까지 세면 장식물의 경우의 수는 매우 많다.

장식물의 종류도 다양하다.

  • 구조물 - 크기가 큰 건물이나 인공물 등이 여기에 분류된다.
    • ramp - 언덕 비탈길 위에 겹쳐서 배치해야하는 특수 계단. 보통의 비탈길보다 디자인이 좋다. 배치한 후에 이동불가 타일을 깔아주어야 유닛이 튀지 않는다.
  • 방해물, 이동 경로, 가시선 - 말 그대로 플레이어를 방해하는 장식물.
    • 건설 불가 장식물 - 벽돌, 바위, 그리고 금속판.
    • 이동 경로 방해물 - 보이지 않는 장애물. 정확하고 세밀하게 길을 막을 필요가 있을 때 좋다. 보다 넓은 지역에 적용할 때에는 아래의 '이동 경로'를 활용하자.
    • 가시선 방해물 - 건너편의 시야를 차단하는 장식물. 전략적으로 활용할 수 있다. 대부분의 맵에서 젤나가 감시탑 주위를 두르고 있는 것을 볼 수 있다.
  • 소품 - 워크래프트3 당시와 유사하게 잡다한, 적당한 크기의 장식물이다. 대부분 인공물이다. 빛, 언덕 장식, 지면 장식등이 여기에 포함된다.
    • trim - 인공 텍스처를 배치할 때엔 자연 텍스처와는 다르게 테두리가 뭉개져있으면 부자연스럽다. 이때 그 경계에 이런 가장자리 장식물을 깔면 보다 깔끔하다.
    • decal - 마찬가지로 바당 장식에 유용하다.
  • 언덕과 비탈길 - 말 그대로 언덕에 배치할 만한 장식물. Ramp와 언덕 충전재 등이 있다.
  • 잔해 - 문명의 잔해를 표현한 장식물.
  • 장식물 아님 - 정신 나간 이름의 유형. 날씨 효과가 포함된다.
  • 지형 개체 장식물 - 지형 툴의 지형 개체와 연계되는 장식물.
  • 추적 조각 - 모노레일 선로나 길 포장재가 있다.
  • 환경 - 자연물. 초목, 나무, 구름, 물길, 바위, 수정 등이 있다. 젤나가 선체나 프로토스 구조물 등 어울리지 않는 것들도 포함된다.

발자국은 유닛의 이동을 방해하는 속성으로, 이것이 부착된 장식물은 장애물의 역할을 한다. 나무나 암석이 대표적이다.

보다시피 장식물에는 종류가 매우 많으나 소품에 건물이 있는가하면 환경에 인공물이 있는 등 그 구분이 체계적이지가 않다. 그래서 검색으로 원하는 장식물을 찾는 것을 권한다. 군단의 심장 당시 추가된 장식물들은 접두어로 '군단의 심장'이 포함되어있으므로 참고하자. 공허의 유산의 장식물은 영어로 검색하면 편하다.

3.1.3 유닛

스타크래프트2의 모든 유닛을 지원한다. 브루드워에 등장했으나 스타크래프트2 캠페인에 등장하지 못한 유닛도 에디터에는 있다. 군단의 심장 시절 디바우러나 디파일러가 대표적. 또 영상에만 사용되어서 컨트롤이 불가능했던 유닛도 지원된다. 특수전 수송기라던가 자유의 날개 버전 히페리온 등. 이런 미완성된 유닛을 모델링을 이용해 실제 유닛으로 만든 맵도 볼 수 있다.

섬멸전 지도를 만들 때에는 오로지 중립 유닛만 신경쓰면 된다. 이들은 보통 자원과 파괴물에 포함되어있다. 나머지는 지도를 돌아다니는 중립 동물들.

각 링크에서 자세한 정보를 확인할 수 있다.

3.1.4 지점

지도의 한 위치를 나타내는데 사용한다. 섬멸전의 경우 시작 지점을 배치하는데 활용된다. 아케이드 제작시에 더 빛을 발하는 레이어.

3.1.5 구역

지점과 유사하나 이름 그대로 넓은 범위를 표시한다.

3.1.6 카메라

지도에 카메라를 미리 배치하여 컷신 시에 이를 비추게할 수 있다.

3.1.7 이동경로

유닛의 이동경로를 지형 텍스처를 깔듯이 조정할 수 있다. 이동 불가, 지상 이동, 건설 불가, 잠복 불가 및 비행 불가 지역을 생성하거나 제거할 수 있다.

3.2 트리거

게임의 데이터로 구현 불가능한 부분을 구현할 수 있는 범위이다.

3.2.1 이벤트

트리거를 발동시키는 이벤트이다.
이 이벤트가 일어날 경우 이 트리거가 발동되고, 조건에 충족되면 행동이 발동되는 형식이다.

  • 지도 초기화 : 지도가 처음 시작될때 바로 열리는 이벤트
  • 주기적인 이벤트 : 매 X초 마다 트리거를 실행시키는 이벤트[6]
  • 유닛 소멸 : 유닛이 죽을 때 나오는 이벤트. 오류가 좀 있는 편이다.[7]
  • 구역 진입/나가기 : 유닛이 특정한 구역에 진입하거나 나갈때의 이벤트이다. 순간 이동 포탈이나 비콘에 사용된다.

3.2.2 조건

이벤트가 발동됐을 때, 조건에 맞아야 행동이 발동된다.

  • 비교 : 핵심이다. 비교에서 함수를 호출해서 조건을 맞춘다.
  • 또는 : 또는 아래에 배열된 조건들 중 하나라도 충족하면 충족시킨다.
  • 그리고 : 그리고 아래에 배열된 조건들이 모두 충족해야 충족된다.
  • 경계 안 : 1 <= x <= 2 와 같은 값으로 수의 경계를 나눌 수 있다.
  • 아님 : 아님 아래의 배열된 조건이 충족하지 않아야 충족한다.

3.2.3 지역 변수

전역 변수 대신 사용하는 지역 변수이다.
for 문과 같은 반복문을 실행할때, i로 나타는 등 일반적으로 사용된다.

3.2.4 행동

가장 중요한 부분이다.
if then else나 for 문등을 이용해서 하위 함수를 배열해서 트리거의 출력 값을 만든다.
기본적으로 제공되는 함수가 많고, 일일히 입력하는 형식이 아니라서 코딩보다는 쉽다.
자세한 내용 추가바람.

3.3 데이터

상단 메뉴의 모듈에서 데이터를 클릭하면 글자로 가득찬 새로운 창이 열린다. 게임 내의 모든 데이터를 여기에서 고칠 수 있다.

아케이드를 처음 제작할 때 가장 먼저 만들어보고 싶은 것은 바로 자신만의 유닛일 것이다. 갤럭시 에디터에서는 스타크래프트, 워크래프트3와는 달리 '유닛'이라는 정보에 시각적, 청각적 정보가 직접 담겨있지 않다. 이런 감각적 정보는 '행위자'라는 별도의 개체에 담겨있다. 이것을 유념해야 새로운 유닛을 만들기 쉽다.

스타크래프트 2 지도의 모든 데이터는 하나하나의 개체로 구성된다. 유닛과 행위자도 개체다. 개체 하위에 다른 개체가 있을 수 있으며, 쌍방간의 연결이 있을 수 있다. 개체와 개체는 대등한 관계에 있을 수 있다는 걸 알면 더 빨리 이해할 수 있다.

3.3.1 유닛

유닛은 보급품, 명령창, 체력, 에너지, 속도, 시야, 방어력 등 게임 내 수치를 저장한다. 하나의 유닛 테이블에서 추가하거나 제거할 수 있는 하위 데이터는 다음과 같다.

  • 유닛
    • 능력
    • 무기
    • 동작
    • 버튼

3.3.2 능력

능력은 말 그대로 유닛이 사용할 수 있는 스킬이다. 유닛 필드의 능력에서 추가할 수 있다. 정지, 공격, 이동에서부터 전투 자극제, 건물 건설, 변태, 요격기 사출까지 버튼으로 명령을 내리는 모든 것들이 능력이다.

능력의 종류에 따라 하위에 위치한 데이터가 다르다. 주로 생각되는 마법 같은 능력은 아래에 설명된 효과로 완성된다.

3.3.3 무기

무기는 UI 공격 업그레이드란에 표시되는 바로 그것이다. 가우스 소총이 바로 그 예. 이것이 추가되지 않으면 유닛은 공격할 수 없다. 무기에는 공격 가능 대상, 피해 지점, 공격 선딜, 공격 주기 등의 정보가 담겨있다.

  • 무기
    • 효과

3.3.4 동작

동작은 패시브 스킬을 뜻한다. 캠페인에 등장하는 약탈자의 주위 방사피해가 좋은 예다. 하지만 사이오닉 폭풍으로 인한 지속 피해가 걸린 상태, 진균 번식으로 멈춰버린 상태도 동작의 일부다. 유닛이 처한 상황으로 생각하면 알기쉽다.

  • 동작
    • 효과

3.3.5 효과

가장 중요하고 많이 쓰이는 데이터 중 하나. 무기로 인한 피해가 대표적인 효과다. 무기에 피해 효과가 링크되어있지 않으면 피해량이 없다.

이러한 효과(피해) 말고도 전투 자극제로 인한 버프의 적용(강화 효과 생성), 사이오닉 폭풍의 커서 이동 시 범위 검색(검색), 사이오닉 폭풍의 시간당 다른 효과 적용(지속 효과 생성), 이러한 효과들의 집합(모음) 등 다양한 종류의 효과가 있다. 다양한 종류의 능력은 사실 효과를 이용해 만들어지는 것이다.

능력, 동작과 효과 활용의 쉬운 예시로 전투 자극제(능력)을 들자면,

  • 전투 자극제(능력, 효과-즉시)가 즉시 전투 자극제(효과, 강화 효과 적용)을 사용 유닛에게 부여한다.
  • 이 효과는 유닛에게 전투 자극제(동작, 강화 효과)를 적용한다.
  • 이 동작으로 인해 해병이 버프를 일정 시간 동안 받는다.

또 다른, 보다 어려운 예시로 사이오닉 폭풍을 들자면,

  • 사이오닉 폭풍(능력, 효과-대상)이 사이오닉 폭풍(효과, 지속 효과)를 일으킨다.
  • 이 지속 효과는 주기적으로 사이오닉 폭풍(효과, 검색)을 생성한다.
  • 이 검색은 생성될 때마다 일정 범위의 유닛에게 사이오닉 폭풍(효과, 강화 효과 적용)을 부여한다.
  • 이 강화 효과 적용은 유닛에게 사이오닉 폭풍(동작, 강화 효과)를 적용한다.
  • 이 동작, 강화 효과는 유닛에게 주기적으로 사이오닉 폭풍(효과, 피해)를 적용한다.
  • 이 피해 효과에 의해 폭풍에 맞은 유닛이 지속적으로 피해를 입는다.

3.3.6 버튼

능력 하위에 추가함으로서 기본 버튼을 지정하거나, 유닛 테이블의 명령창에 배치할 수도 있다.

3.3.7 행위자

유닛에게 3D모델을 부여하거나, 스킬에 화려한 시각적 이펙트와 사운드를 넣고싶을 때 알아야할 것이 바로 행위자(actor)다. 앞서 말했듯이 유닛 데이터 자체에는 시각, 청각적인 요소들이 직접적으로 연결되어있지 않다.

해병(유닛)의 테이블에는 눈을 씻고 찾아봐도 해병(행위자)가 없다. 하지만 좌측하단의 계통도에는 분명 행위자가 있다. 이건 어떻게 된 것일까?

유닛과 행위자는 유닛과 다른 데이터들의 관계와 달리 생성의 원인과 소멸의 원인으로 이어져있다. 행위자 테이블의 '이벤트' 항목에는 간단한 문법으로 해당 행위자의 생성과 소멸 조건 등이 나타나있다. 여기서 생성 조건이 유닛의 생성이면 이 행위자는 유닛의 시청각 요소를 담당하고, 생성 조건이 능력, 동작, 효과면 이 행위자는 스킬의 시청각 요소를 담당하는 것이다.

유닛과는 달리 장식물은 순수하게 행위자로만 구성되어있는데, 이는 즉 장식물에는 능력치 등의 수치가 없고 오직 그래픽과 사운드만 존재한다는 것이다.

행위자의 하위 데이터는 다음과 같다.

  • 행위자
    • 모델
    • 소리

3.3.8 모델

3D 모델. 모델 테이블에야 비로소 m3확장자의 모델 파일의 주소가 직접적으로 들어있다. 가져오기를 통해 가져온 파일을 여기에 링크하면 새로운 모델을 감상할 수 있다.

3.3.9 소리

3.3.10 다른 데이터들

이외에도 많은 데이터 유형들이 있다. 그 중 주목할 만한 것들은:

  • 업그레이드: 능력 유형 업그레이드에 링크되어 특정 유닛들에게 수치 조정 혹은 능력 활성화를 제공한다.
  • 요구사항: 능력의 명령에 링크되어 (이것)을 수행했을 때 (이 능력)이 가능케 한다.
  • 발자국: 행위자 배치시 지도에서 차지하는 칸을 지정할 수 있다. 포탑은 2x2, 사령부는 5x5와 같은 식. 대각선 형태도 가능하다. 장애물형 장식물은 이것이 꼭 필요하다.
  • 종족: 종족 유형을 새로 추가할 수 있다.
  • 지형 유형들: 기존에 존재하는 지형 모음(tileset)에 포함된 텍스처와 언덕을 건드릴 수 있다. 얼음과 사막이 공존하게 할 수 있는 것.
  • 조명: 지형 유형들에 링크된 조명도 세부적으로 수정할 수 있다. 들어가보면 알겠지만, 정말 다양하게 고칠 수 있다.
  • 사운드트랙: 각 종족의 브금도 여기서 고칠 수 있다.

3.4 가져오기

외부 파일을 맵에 업로드해 사용할 수 있다. 3D 모델은 m3, 2D 이미지 파일은 dds나 tga를 업로드해야한다. 너무 많은 파일을 올리면 게시할 수 없으니 유의하자. 파일 개수를 줄일 수 없다면 모드를 따로 만들어 게시한 후 그 모드에 의존하는 지도를 따로 제작하는 방법도 있다.

3.5 기타

이렇게 전작은 물론이요, 워크래프트 3의 에디터와 비교해도 유닛 하나를 새로 만드는 데에도 정말 고려해야 할 것이 많아졌다.

편집기에 대한 깊은 이해 없이 빠르게 새로운 유닛을 만드는 방법이 있다. 만일 기존의 유닛이 필요없다면, 그저 그 유닛을 고치면 된다. 행위자와 모델, 무기 등이 이미 연결되어있으므로 이름과 주소를 모두 고쳐주면 된다.

이번엔 기존의 유닛이 꼭 필요하거나 새로운 유닛의 별개의 데이터를 만들고 싶다면 복제 기능을 사용하면 된다. 먼저 자신이 구상한 유닛과 가장 비슷한 기존 유닛을 복제한다. 이 때 무기, 행위자, 모델, 소리를 모두 체크해주자. 이렇게 하면 새로운 유닛과 새로운 행위자가 연결된 채로 만들어진다.

능력도 이와 마찬가지로, 복제할 때 연결된 모든 동작과 효과를 체크해주어야 깔끔하게 새로운 스킬을 만들 수 있다.

더 이상의 설명은 블리자드 공식 설명서에 서술이 잘 되어있으니 시작하기 전에 읽으면 좋다.

4 접근성

대부분 한국어로 번역되어있다. 공허의 유산에서는 기본 인터페이스가 영어로 바뀌었으나 기본 설정(preference)의 일반(General)에서 언어(Locale)을 변경하면 다시 한국어로 바꿀 수 있다. 그러나 블리자드의 지원을 공식적으로 받는게 아니기에 공식 설명은 한계가 있다.

워크래프트 3의 경우 초심자라도 기능이 제한적인 만큼 직관적인 탓에 새로운 유닛이나 스킬 등을 추가하기 쉬웠지만, 스타크래프트 2로 넘어오면 '행위자' 개념이나 데이터 구조를 이해하지 못하면 새로운 유닛 하나 만들어 보는 데도 애로사항이 꽃 핀다. 이 때문에 접근성이 낮은 편이다.하지만 전편보다 기능은 월등하고, 무엇보다 한국어로 읽을 수 있기에 일단 제대로 사용하는 법을 알게되면 정말 막강한 툴이 된다. 거의 게임 개발툴의 일종이라는 평가.
  1. 워3 시절에는 따로 만들어진 유틸리티를 통해 편집한 것을 삽입해서 적용하는 과정의 반복이였다. 게다가 모델링이나 모션을 조금만 뜯어고치는데도 3ds max같은 중장비를 끌어들여야 했다.
  2. 세간의 인식과 달리 FPS, 슈팅게임, 세이브/로드가 가능한 RPG 등은 모두 워크래프트 3 시절에도 있긴 있었다. 다만 무지막지한 노가다와 코딩이 필요했을 뿐.
  3. 이에 따라 해외에서 스타크래프트 2로 돌리는 워크래프트 3 유즈맵이 제작 중에 있다.영상 게임 플레이 영상 얼라이언스vs호드 제목은 Armies Of Azeroth. 플레이 영상을 보면 워크래프트 3 특유의 UI를 완벽하게 구현했으며, 거기에 스타2로 넘어오면서 편리해진 랠리포인트, 부대 컨트롤 등을 차용한 듯 보인다.
  4. 임시 해결책이 있는데, 데이터 에디터에서 상단에 미가공 데이터 보기를 누르면 데이터들의 고유 ID가 표시 되는데 이걸 이용해서 원하는 효과를 찾아서 수정하면 된다.(단축키는 Ctrl + D)
  5. 젤나가 감시탑, 광물, 풍부한 광물, 가스, 파괴 가능한 바위 등
  6. 너무 많이 사용하면 오류가 생길 수 있어서 대부분 행동의 무한 반복을 이용한다.
  7. 예를 들어 아르타니스의 번개 돌진 스킬을 사용했는데 이벤트가 발동된다거나...