나만의 밀리토너먼트 만들기

[첨부파일 바로가기]

이 문서에서는 밀리토너먼트에 새로운 밀리맵을 적용하는 방법에 대해서 설명합니다.

스타크래프트1 맵을 전혀 제작할 줄 모르는 사람을 대상으로 작성된 글은 아니므로, 어느정도 SCMDraft2를 사용할 줄 아는 분들만 읽어주세요.

다음은 밀리토너먼트에 새로운 밀리맵을 적용하려면 알고 있어야 하는 것들입니다.


위의 방법들을 모두 알고 있더라도, 밀리토너먼트에 어떤 밀리맵이든지 손쉽게 적용할 수 있는 것은 아닙니다. 아래에서 설명하는 제한사항을 모두 만족하는 밀리맵이라면, 최소한의 트리거 수정으로 밀리토너먼트에 적용할 수 있습니다. 그리고, 빨간색으로 표시된 조건은 반드시 만족시켜야 하는 조건입니다.


위의 조건을 만족하지 못하는 밀리맵을 밀리토너먼트에 적용하기 위해서는 별도의 트리거 작업이 필요합니다. 헐루시네이션 중립 동물을 생성하거나, 미네랄/가스의 함량이 4종을 초과한 것과 같은 경우에는 간단한 트리거로 해결할 수 있지만, 현재 지원하는 중립 오브젝트 리스트에 없는 중립 오브젝트가 깔려 있는 밀리맵은 구조적으로 복잡한 트리거의 수정이 필요할 수 있습니다. 따라서 이런 경우에는 저에게 이메일[ajw9105@hanmail.net]을 보내서 요청해 주세요.

위의 조건을 모두 만족하는 밀리맵이라면 간단한 수정만으로 밀리토너먼트에 적용할 수 있습니다. 지금부터 밀리토너먼트에 새로운 밀리맵을 적용하는 방법을 설명드리겠습니다. 우선 밀리토너먼트에 적용할 밀리맵 파일(복사해야 하므로 수정이 가능해야 함)을 준비하고, 다음 첨부 파일을 다운로드 받아 주세요.

첨부파일.zip

첨부파일에는 SCMDraft2 에디터(TEP[TrigEditPlus - 트리거 편집용 SCMDraft2 플러그인] 포함), 베이스 맵 파일, 타일셋별 지형 틀, 그리고 컴파일된 밀리토너먼트 TEP 트리거 파일이 포함되어 있습니다. 이미 사용하시는 에디터가 있더라도, 밀리토너먼트에 새로운 밀리맵을 적용할 때에는 첨부파일에 포함된 에디터를 사용해 주세요. 왜냐하면 TEP와 SCMDraft2 간의 인코딩 호환성이나, EUDX 지원여부(이게 무엇인지는 몰라도 됩니다) 문제가 있을 수 있기 때문입니다.

이제 다음 설명을 읽어주세요.

  1. 밀리토너먼트에 적용할 밀리맵을 첨부파일에 포함된 SCMDraft2 에디터를 사용해서 열어 줍니다. 이 밀리맵을 밀리토너먼트에 적용하기에 적합하도록 약간 수정을 할 것입니다.

    먼저 밀리맵의 스타트 로케이션을 모두 지우고, 그 자리에 P12 소유의 넥서스(스타팅 위치 표시용)를 설치합니다. 그리고, 오버로드 생성 위치 표시용 건물인 포토캐논도 P12 소유로 설치합니다(넥서스와 포토캐논 사이에 빈 타일이 있으면 안됩니다). 넥서스와 포토캐논은 반드시 타일에 맞춰서, 스타팅마다 하나씩만 설치해야 합니다. 다음 예시는 신백두대간 7시 스타팅 입니다.

    M12T-1 신백두대간 7시 스타팅

    빠른무한과 같은 맵이 아니라면, 넥서스는 반드시 미네랄/가스와 3칸 이상의 거리를 두고 설치해 주세요.

    만약 미네랄이 스타팅 건물 위쪽에 있는 스타팅이라면, 게임 시작시 일꾼이 스타팅 건물 윗쪽으로 나오게 하는 게 좋겠죠? 이런 스타팅의 경우에는, 오버로드 생성위치 표시용 건물인 포토캐논과 정확히 같은 자리에 P12 소유의 파일런 하나를 겹쳐서 설치 하면 됩니다. 다음 예시는 신백두대간 1시 스타팅 입니다.

    M12T-2 신백두대간 1시 스타팅

    이렇게 파일런이 설치된 스타팅은 게임 시작 시, 일꾼이 스타팅 건물 윗쪽으로 나오게 됩니다.

  2. 맵에 존재하는 중립 오브젝트 중에, 러커 에그와 셀레브레이트 다고스를 각각 일반 저그 에그와 셀레브레이트로 대체해서 설치합니다. 밀리맵에 설치되어 있던 중립 오브젝트이므로, "유닛 스프라이트" 상태로 깔려 있을 것입니다. 밀리토너먼트는 어차피 유즈맵이므로 대체할 때에는 일반 "유닛"으로 설치해도 됩니다.

  3. 헐루시네이션이 아니면서 무적인 모든 지상 동물을 무적 고양이로 바꿔서 배치합니다. 헐루시네이션이 아니면서 무적이면 안 되는 동물들은 고양이가 아닌 다른 지상 동물들로 대체합니다. 만약 헐루시네이션이거나 HP가 조정된 동물들이 있다면, 그 동물들은 별도의 트리거로 처리해야 합니다.

  4. 준비한 밀리맵의 제일 아랫줄을 다음 스크린샷처럼 지상유닛 이동 불가 지형으로 깔아줍니다.

    M12T-3 밀리맵의 제일 아랫줄 처리

    일부 밀리맵은 이 처리를 해 주지 않고 밀리토너먼트에 적용하면, 특정 유닛 통행가능 여부 등이 원본 밀리맵과 달라질 수 있기 때문에, 반드시 이 처리를 해 주는 것이 좋습니다.

  5. 4번 과정까지 적용한 밀리맵을 다른 이름으로 저장(별도로 저장)합니다. 이 밀리맵은 일회용 밀리맵으로 쓰일 것입니다. 단, 128 * 128 크기의 밀리맵을 사용하는 버전의 밀리토너먼트는 일회용 밀리맵이 필요하지 않으므로, 별도로 저장할 필요가 없습니다.

  6. 미네랄/가스를 함량에 따라 분류합니다. 앞서 언급했듯이, 미네랄/가스 각각 4종류 까지 분류할 수 있습니다. 4 종류를 초과하는 경우 초과분에 대해서도 별도의 트리거로 처리해야 합니다.

    96 * 128 크기의 밀리맵 한 개와 128 * 96 크기의 밀리맵 한 개(총 두 개)를 사용하는 버전의 밀리 토너먼트의 경우 각각 밀리맵별로 미네랄/가스를 분류하는 것이 아니라 두 밀리맵의 모든 미네랄/가스를 대상으로 분류를 해야 합니다.

    신백두대간과 신피의능선이 적용된 밀리토너먼트를 예시로 들어 보겠습니다.



    이들은 다음과 같이 분류할 수 있습니다. 먼저 미네랄 입니다.



    다음은 가스입니다.



    이제 이 분류 1 ~ 3의 미네랄/가스의 소유자를 P11 ~ P9로 만듭니다. 즉, 다음과 같이 미네랄/가스의 소유자를 변경합니다(분류 0 미네랄/가스는 변경할 필요 없겠죠).



    96 * 128 크기의 밀리맵 하나와 128 * 96 크기의 밀리맵 하나를 사용하는 버전의 밀리토너먼트에서는, 이 작업을, 그 두 맵 파일을 오가며 해 줘야 겠죠(예시에서는 신백두대간의 함량 40미네랄과 함량 2000가스를 P10의 소유로 변경하고, 신피의능선에서는 함량 1000미네랄과 함량 3000가스를 P11 소유로 변경해야 합니다).

    하지만 120 * 120 크기의 밀리맵 하나를 사용하는 버전이나 128 * 128 크기의 밀리맵 하나를 사용하는 버전의 밀리토너먼트에는 맵이 한 종류만 사용되기 때문에, 그 하나의 밀리맵에서만 이러한 작업을 해 주면 됩니다.

    각 분류별 미네랄/가스 함량은 나중에 쓰이게 되니 기억해 둡시다.

  7. 6번 과정까지 적용한 밀리맵을 저장합니다. 이 밀리맵은 재사용하는 밀리맵으로 쓰일 것입니다. 여기까지 진행했으면, 다음과 같은 결과물이 있어야 합니다.

    만약, 밀리맵에 포함된 모든 미네랄/가스의 함량이 기본값(1500/5000)이라면, 일회용 버전과 재사용 버전을 나눌 필요가 없어져서, 결과물로 나온 맵이 더 적을 수 있습니다.

  8. 다음 과정으로 넘어갑시다. 첨부파일을 살펴보면 "96×128", "120×120", "128×128"이라는 이름을 갖는 폴더가 하나씩 있을 것입니다. 준비한 밀리맵이 같은 타일셋의 밀리맵 두 개(96 * 128 크기 하나, 128 * 96 크기 하나)라면, "96×128" 폴더, 120 * 120 크기의 밀리맵 하나라면 "120×120" 폴더, 128 * 128 크기의 맵 하나라면 "128×128" 폴더 안의 파일들을 사용하게 될 것입니다.

    적용하려는 밀리맵의 크기에 맞는 "M×N" 폴더 안의, "MT(M×N)[3.26].scx" 맵 파일을 열어줍니다. 그리고 적용하려는 밀리맵과 같은 타일셋으로 변경합니다. 이 때, 미리 깔려있는 유닛이나 건물이 제거되지 않도록 건물과 유닛을 아무곳에나 놓을 수 있는 옵션을 켜 둡니다. 그리고 "지형 틀(M×N)[3.XX]" 폴더 안에서 해당 타일셋의 지형 틀 맵 파일(지형 틀 맵 파일의 이름은 "(타일셋 이름의 이니셜)"로 시작합니다)을 찾아 열고 그 지형 전체를 복사해서 "MT(M×N)[3.26].scx" 맵 파일에 붙여넣습니다.

    이 과정은 적용하려는 밀리맵이 스페이스 타일셋이라면, 수행할 필요가 없는 작업입니다. 왜냐하면, "MT(M×N)[3.26].scx"파일의 기본 타일셋이 스페이스 타일셋 이기 때문입니다.

  9. 이제 준비해둔 밀리맵을 복사해서 "MT(M×N)[3.26].scx" 맵 파일에 붙여넣습니다. 128 * 128 크기의 밀리맵을 사용하는 버전은 밀리맵을 위한 공간이 한 곳 뿐이므로, 재사용을 위해 수정한 128 * 128 크기의 밀리맵 하나를 그 공간에 붙여 넣으면 됩니다.

    나머지 버전의 밀리 토너먼트는 일회용 밀리맵을 위한 공간과, 재사용 밀리맵을 위한 공간이 구분되어 있습니다. 아래 스크린샷은 "MT(120×120)[3.26].scx" 맵의 스크린샷입니다.

    M12T-4 왼쪽 두 곳은 재사용 밀리맵. 오른쪽 두 곳은 일회용 밀리맵.

    스크린샷에 표시된 것처럼 왼쪽 두 곳은 재사용 밀리맵을, 오른쪽 두 곳은 일회용 밀리맵을 복사해서 붙여 넣으면 됩니다. "MT(96×128)[3.26].scx"도 위의 스크린샷과 모양은 좀 다르지만, 왼쪽 두 곳은 재사용 밀리맵을, 오른쪽 두 곳은 일회용 밀리맵을 복사해서 붙여 넣으면 됩니다.

  10. 다음은 트리거를 손봐줄 차례입니다. 만약 미네랄/가스를 함량에 따라 분류하는 과정이 필요 없는 경우(모든 미네랄/가스의 함량이 기본값[1500/5000]인 경우, 96 * 128 크기의 밀리맵과 128 * 96 크기의 밀리맵을 사용하는 버전의 경우에는, 두 밀리맵 모두 모든 미네랄/가스의 함량이 기본값[1500/5000]인 경우)에는 이 과정을 수행할 필요가 없습니다(트리거를 손볼 필요가 없습니다).

    먼저 첨부파일 중 "CompiledTrigger(M×N)[3.26].lua" 파일을 열어 줍니다. 연결된 프로그램이 없어서 선택하라고 나온다면, 메모장을 사용해서 열어주세요.

    M12T-5

    스크린샷 아래쪽에 보이는, 선 아래의 트리거들은 절대로 손대지 마세요.

    자 위에서부터 하나씩 살펴 봅시다. 먼저 미네랄/가스의 함량 설정입니다. 위에서 함량에 따라 4종으로 미네랄/가스를 분류했던것 기억하시죠? 그 값을 넣어주면 됩니다.

    그 다음으로, "fill_unit_count"라는 옵션이 있는데, 이 옵션은 일반적으로 변경하지 않는 것을 권장합니다. 어디에 쓰이는 건지만 간략하게 설명드리자면, 스타팅 건물의 윗쪽으로 일꾼이 나오게 하는 옵션을 사용했을 때, 나오는 일꾼의 위치를 조금씩 조정할 때 쓰는 옵션입니다.

    마지막에 있는 트리거 4 개는("CompiledTrigger(128×128)[3.26].lua" 파일에는 1개 밖에 없습니다), "TEP로 트리거를 작성할 줄 안다."고 하시는 분들만 손대 주시면 됩니다. 주석에 적힌 대로 저 트리거는 특정 맵에서 게임이 시작된 직후 한 번 동작하는 트리거 입니다. 조건 부분과, 액션 부분의 SetSwitch, PreserveTrigger 부분만 손대지 않으면, 나머지 부분은 자유롭게 수정하셔도 됩니다.

    앞서 언급했었던 헐루시네이션 동물이나, 4종을 초과한 미네랄/가스의 생성, 또는 지원하지 않는 중립 건물을 생성하는 용도로 사용할 수 있습니다. 단 상황에 따라서 TEP로 EUD까지 사용할 줄 알아야 하는 경우도 있습니다. 예를 들면, 4종을 초과한 미네랄/가스를 건설 불가능 타일위에 생성해야 하는 경우가 있겠군요(미네랄/가스를 건설 불가능 타일에 깔거나 겹치려면 EUD가 필요합니다).

    주석에 적혀있는 맵의 번호는 다음과 같이 부여되어 있습니다(아래 스크린샷은 "MT(120×120)[3.26].scx"의 것이지만, "MT(96×128)[3.26].scx"도 마찬가지의 순서로 맵의 번호가 부여되어 있습니다).

    M12T-6 맵에 부여된 번호

  11. 트리거를 손봐줬으면, 손봐준 트리거를 맵에 적용시켜야 겠죠? 만약 밀리맵의 모든 미네랄/가스의 함량이 기본값이어서 트리거를 손봐줄 필요가 없었던 경우에는 이 과정 역시 수행할 필요가 없습니다.

    에디터로 돌아와서 아래 스크린샷에 표시된 것과 같이 "Triggers" 탭에서 제일 아래에 있는 "TrigEdit++"를 선택하여 TEP를 실행시킵니다.

    M12T-7 TEP 실행

    그리고 TEP가 실행되면, 기존에 있는 트리거들을 하나도 남김없이 과감하게 삭제해 버리고 나서, 앞서 메모장으로 편집했던 트리거들을 통째로 복사해서 TEP에 붙여넣습니다. 당연히 "MT(M×N)[3.26].scx" 맵에는, "CompiledTrigger(M×N)[3.26].lua" 파일을 수정한 트리거를 붙여 넣어야 합니다.

    M12T-8 트리거 복붙

    붙여넣은 뒤 "[Ctrl] + S"단축키를 눌러 트리거를 컴파일합니다. 성공적으로 컴파일이 되었다면 아무 메시지도 뜨지 않고, 위의 스크린샷에 빨간 사각형으로 표시된 "(Modified)" 문구가 사라지게 됩니다. 컴파일을 완료하였다면 TEP창을 닫습니다.

  12. "MT(M×N)[3.26].scx" 맵의 이름/설명/세력명을 알아보기 쉽게 적당히 수정합니다. 당연히 수정한 사람의 이름을 추가해도 되지만, 원작자 이름은 한곳 정도는 남겨놓아야 겠죠? 다 수정했으면 마지막으로, "MT(M×N)[3.26].scx" 파일의 이름을 알아보기 쉽게 적당히 바꿉니다.




밀리토너먼트 설명 문서로 돌아가려면 이 이미지를 클릭해 주세요.