본문 바로가기

스타크래프트2 에디터/에디터 강의

(36)
유닛의 동작 중첩수를 텍스트로 표시+버튼에 텍스트 표시하기 이를 이용해 동작 이름을 [동작 이름] 중첩 으로 표시할 수 있고, 동작 설명에 동작 중첩으로 인해 더해지는 효과 값을 표시할 수 있습니다. ex) 1중첩 당 이속 10% 감소되는 동작이 있다면 동작 설명에 이동 속도 % 감소 이런 식으로 써놓는다면 2중첩시 "이동 속도 20% 감소" 3중첩시 "이동 속도 30% 감소"로 표시됩니다. 협동전 아바투르를 보시면 위와 같이 생체물질 중첩수를 표시하는 것을 보실 수 있습니다. 처음엔 패시브 버튼에 동작을 연결한 줄 알았는데 뜯어보니 동작은 연결되어 있지도 않았습니다. 그래서 생체 물질 버튼을 뜯어보니 EDSTR_FIELDNAME_CButton_ChargeText 이런게 있었네요. 충전 텍스트가 뜨는 부분에 표시되는 텍스트란 뜻인거 같습니다. 열어보면 이렇게 아..
35. [데이터] 충돌 투사체 오랜만에 복귀합니다.개인적인 일 때문에 바빠서 한동안 강의를 못 썼네요... 이번 강의에서는 충돌 투사체를 만드는 법을 강의합니다.충돌 투사체는 지정한 지점 방향을 향해 날아가다가 중간에 적이 있으면 충돌하는 것을 말합니다.디아블로의 스킬을 떠올리시면 쉬울 거 같습니다. 충돌 기능을 위해서, 지속 효과 생성을 이용하여 주기적으로 미사일이 있는 곳 주변의 유닛을 영역 검색 효과로 검색합니다. 이 지속 효과 생성 효과를 미사일 발사 효과의 발사 효과 항목을 이용하여 미사일이 발사될 때 함께 실행하도록 합니다.이 효과에서 시전자는 능력을 시전하는 유닛을 가리키고, 출처는 미사일이 될 것입니다. 이것은 굉장히 편리한데, 이를 이용하면 미사일 유닛에 특별한 동작을 부여하지 않아도 되며 지속 효과를 파괴하는 방법에..
34. [데이터] 랜덤 효과 트리거 강의에서 랜덤 트리거에 대해서 알아봤었는데요,2012/10/05 - [스타크래프트2 에디터/에디터 강의] - 29. [트리거] 랜덤 트리거이번 강의에선 데이터에서의 랜덤 설정법을 알아봅니다. 데이터에서의 랜덤은 효과에 있습니다. 먼저 모든 효과에는 확률을 정할수 있습니다.동작 적용 효과 모음 효과 피해 효과에 다 있습니다.(설정한 수 X 100) %의 확률로 효과가 발동합니다. 그리고 모음 효과에서는 2가지 이상의 효과가 있을 때 그 중 한 개 혹은 몇 개만 무작위로 실행되도록 할 수 있습니다. 먼저 모음 효과에 2개 이상의 효과를 넣고,최대 개수를 설정합니다. 필요한 경우 최소 개수를 설정합니다.최대 개수와 최소 개수 모두 0이면 모두 실행됩니다.그 후 무작위를 사용함으로 설정하면 됩니다.이를 ..
33. [데이터] 크리티컬 데미지 이번엔 치명타 혹은 피해 극대화,즉 크리티컬 데미지를 만들어보도록 하겠습니다. 크리티컬은 동작의 피해응답 만을 이용합니다. 먼저 크리티컬 동작을 가지는 유닛에게 넣어줄 동작을 만듭니다. 그리고 피해량을 증가시키는 동작을 만듭니다. 마지막으로 동작 적용 효과를 하나 만듭니다.이 효과에는 피해량 증가 동작을 연결시켜줍니다. 먼저 유닛에게 넣어줄 동작으로 갑니다.확률이랑 장소와 일부 비율 수정만 하면 될 거 같지만 막상 게임 실행해서 테스트 해보면 그렇지 않습니다.왜일까요?저도 몰라요...ㅠ 설정 해줄 것은 3가지 입니다.장소, 확률, 그리고 처리됨 입니다.장소는 피해를 주는 유닛이므로 공격자로 설정합니다.만약 피해 받는 유닛에게 크리티컬 확률을 적용시키고 싶다면, 수비자로 하시면 됩니다.그리고 크리티컬 확률..
32. [데이터] 경험치 오늘은 RPG나 AOS 게임의 필수 요소!경험치를 만들어보겠습니다. 이번 강의에서는 경험치를 만들고, 유닛에게 경험치를 부여하는 법,그리고 스텟을 부여하는 법을 강의합니다. 먼저 동작에 가서 실전 경험 동작을 만들어 줍니다. 제일 먼저 살펴볼 중요한 것은 경험치 비율입니다. 기본적으로 처치시 비율 1로 설정이 되어있기는 합니다만,가끔 어떤 유닛을 죽여도 경험치가 안 오르는 경우 이 부분이 0으로 설정되어 있는건 아닌지 살펴보세요. 그리고 영웅이 여럿일 경우 필요한 공유 반경입니다.여럿이 같이 죽였는데 막타 때린 사람 혼자 경험치를 먹으면 화가 나겠죠?공유 반경을 잡아주면 적을 죽일 경우 공유 반경 내의 경험치를 가진 유닛은 모두 경험치가 오릅니다.공격력 에 값을 설정해주면유닛이 죽이는데 기여한 정도에 따..
31. [데이터] 지속 효과 - 오프셋 설정 이번 강의에서는 밴시의 융단 폭격 같이한 지점 외의 다른 곳에 효과를 내는 법을 강의합니다. 능력은 효과 - 즉시 나 효과 - 대상을 아무거나 써도 무방하지만저는 대상 방향이나 지점을 정할 수 있는 효과 - 대상을 쓰겠습니다. 우선 능력을 만드신 후 그림과 같이 3개의 효과를 생성합니다.이번 강의의 핵심인 지속 효과와 영역 검색 효과, 유닛에게 피해를 입히는 피해 효과입니다. 영역 검색 효과는 알아서 적절히 해주시고.... 그리고 지속 효과 생성 효과에 영역 검색 효과를 연결합니다.주기 효과에서 연결합니다. 그리고 바로 아래 보시면 주기적 오프셋 이란 것이 있습니다. 열어봅시다. 좌표 값을 설정할 수가 있습니다. 앞에서 설정한 효과가 설정한 좌표에서 일어납니다. Y값에 - 값을 입력하면 지정한 값만큼 앞..
30. [데이터] 업그레이드와 요구 사항 오늘은 업그레이드와 업그레이드와 관련된 요구 사항을 알아보도록 하겠습니다.초보분들이 업그레이드의 요구 사항을 제대로 설정해주지 않아 업그레이드 완료 시에도 버튼이 남아 있는 것 때문에 헤매는 경우가 많은데요. 이 강의에서 그 문제점을 해결해 보겠습니다. 먼저 공/방 업그레이드를 살펴봅니다.프로토스 지상 무기 1단계입니다. 오른쪽의 업그레이드:효과 + 를 살펴보면우선 무기의 레벨에 1을 더합니다.이렇게 하면 거신을 클릭했을 때 무기 아이콘에 레벨 값이 1 상승합니다. 그리고 무기 아이콘도 바꿀 수 있습니다. 그리고 효과에서 데미지를 높입니다.거신은 공격 횟수도 2인데 공격력이 2나 상승하다니.... 능력에 관한 업그레이드에는 따로 효과를 지정하지 않습니다. 그 이유는 조금 있다 살펴봅니다. 특수 업그레이드..
29. [트리거] 랜덤 트리거 이번 강의에서는 많이 사용되는 랜덤 값 설정법을 간단히 알아보겠습니다. 우선 랜덤 값은 무작위 정수라는 것을 이용합니다.무작위 정수란 최솟값과 최댓값을 설정해주고두 수 사이에 있는 정수 하나를 골라 실행한다는 뜻입니다.이 때 두 수 사이 정수는 최솟값과 최댓값을 포함합니다.따라서 확률에 이용할 때 %는 사용할 수 없고,50%의 경우 최솟값을 1로 설정하고 최댓값을 2로 설정하고 (1/2 = 0.5 = 50%),25%의 경우 최솟값을 1로 설정하고 최댓값을 4로 설정해야 (1/4 = 0.25 = 25%) 합니다. 먼저 유닛을 만들 때 랜덤하게 설정해봅시다.0~100 사이의 개수만큼 생성되거나, 아예 생성이 안 될수도 있습니다. 다음은 확률적으로 발동하는 트리거입니다.바로 전환 문을 이용하는 것인데요.C언어..
28. [트리거] 카메라 이번 강의에서는 트리거를 이용하여 카메라를 가지고 놀아보겠습니다. 먼저 카메라를 여러개 지도상에 배치합니다. 카메라 하나를 복제해서 여러 각도로 만들었습니다. 4개의 카메라가 선택되었는데요.속성을 보면 X축 회전 값만 다르고 나머지는 똑같이 되어있습니다.0도 , 90도, 180도, 270도 로 바꿔놓았습니다. 지금 해볼것은 맵 상에 배치된 여러 카메라로 시점이 옮겨지는 것을 할 겁니다.카메라 개체 적용이라는 트리거를 이용합니다.속도와 도착 시 감속을 설정할 수 있고, 지속 시간을 설정가능합니다.이때 카메라가 스샷과 같이 여러개일 경우 대기 트리거를 통해 지속 시간과 같은 값으로 설정해야 합니다. 그럼 실행해 볼까요?지미짚 카메라, 음악 프로그램에서 카메라 돌리는 효과, 매트릭스에서 카메라 돌아가는 효과 ..
27. [트리거] 게임 초기 설정 / 종료 설정 오늘은 트리거와 관련하여게임 시작시의 설정과 게임 종료 설정 방법을 배워보도록 하겠습니다. 먼저 지도에 이렇게 몇 가지 놓습니다.그리고 메뉴 탭에[지도] - [플레이어 속성]에 들어가서색상과 시작 장소를 설정합니다.시작 장소가 플레이어 색깔에 맞게 바뀝니다. 트리거로 가서,지도 초기화, 즉 게임이 시작할 때,여러가지 옵션을 설정합니다.먼저 업그레이드 설정입니다.플레이어 업그레이드 레벨 추가입니다.일반적인 업그레이드도 이렇게 설정하지만,무기, 방어력 업그레이드 시에도 이 행동으로 설정합니다.단, 레벨 추가가 아닙니다.무기 업그레이드 같은 것은 1단계, 2단계, 3단계 업그레이드가 따로 따로 있기 때문입니다. 그리고 지정한 구역에 유닛이 없어도 보이게 할 수 있습니다. 캠페인 시작시에 시작 지점에 카메라가 ..
26. [트리거] 유닛에게 명령하기 추석들은 잘 보내고 계신가요?전 추석 지내느라 오늘에서야 포스팅을 합니다. 오늘은 간단하게 유닛에게 지시를 전달하는 트리거를 보겠습니다. 지시 전달을 하는 행동은 두가지가 있습니다.유닛 하나에만 지시 전달을 하거나,유닛 그룹에 지시 전달을 할 수 있습니다. 지시전달 행동을 만들면유닛을 정하고,지시를 정하고,지시 순서를 정합니다.대기열에서기존 지시 바꾸기는 현재 하고 있는 행동을 멈추고, 이 트리거에서 받은 명령을 수행합니다.기존 지시 이전은 현재 하고 있는 행동 이전에 명령을 먼저 수행하고, 하고 있던 행동을 완료합니다.기존 지시 이후는 반대로 하고 있던 행동을 완료한 후 명령을 수행합니다. 기본적으로 지시는 대상 없는 지시,즉 전투 자극제 같은 능력만 할 수 있습니다. 지점 혹은 유닛을 선택하여 시전하..
25. [트리거] 변수를 이용한 여러가지 트리거 만들기 이번 강의에서는 변수를 이용하여 2가지 트리거를 만들어 보겠습니다. 먼저 요청이 들어와서 목표 만들기인데요. 두가지 목표를 만들어 보도록 하겠습니다. -적 해병 죽이기-플레이어 해병의 생존 으로 하겠습니다. 이 트리거를 위해서 꼭 의존관계는 캠페인 설정 추가 해주셔야 합니다. 먼저 변수를 설정 해주셔야 합니다. 목표 2개니까 변수도 두 개입니다.유형은 목표로 하셔야 합니다. 다음은 트리거입니다. 먼저 목표 생성 트리거인데요.조건이나 이벤트등은 원하는 대로 해주시고요. 행동은 [목표] -목표 만들기 상태: 활성 유형: 주/목표 텍스트: "" 설명: ""(그다지 필요 없는 듯...) [변수] -변수 설정 변수: 값: 마지막으로 만든 목표 변수를 설정해 주는 것이 중요합니다. 다음 완료/실패 트리거인데요. 간..
24. [트리거] 게임 상에 유닛 생성하기 오늘부터는 실제 사용되는 트리거를 만들어보도록 하겠습니다.이번 강의는 지형에서 유닛을 배치하는 것이 아닌,트리거로 게임 상에 유닛을 배치해보도록 하겠습니다. 그냥 유닛 만들기로 안 써있고 앞에 뭐가 붙어서 어디 있는지 못 찾으시는 분들도 많더군요.일반적으로 기본 방향을 향하는 유닛 만들기를 사용합니다.기본 방향은 유닛에서 설정되어 있는 방향을 말합니다. 해병과 같은 유닛의 경우 270도, 건물의 경우 225도 방향을 향하고 있습니다. 유닛 만들기 에서 옵션도 설정이 가능한데요,건물 같은 경우 건설 중인 상태로 생성할 수도 있습니다.테란 건물의 경우 건설로봇이 있어야 건물이 완성되겠죠? 기본 방향 말고 방향을 다양한 방법으로 조정할 수 있습니다.특정 지점, 특정 각도는 알기 쉬운데, 지점 방향은 뭘까요? ..
23. [트리거] 행동 다음 강의부터 실전에 쓰이는 트리거를 알아보기 때문에, 행동이 돌아가는 원리(?)와 몇 가지 유용한 것들만 소개해드리면서이번 강의도 짤막하게 하겠습니다. 먼저 유닛과 관련된 행동에서 유닛을 선택하는 법입니다.유닛의 체력, 에너지, 방어력 등을 설정하는 유닛 속성 설정 입니다. 지도 상에 배치된 유닛을 선택할 경우에는 '값'을 선택합니다.현재 지도상에 유닛을 배치하지 않았으므로 아무 것도 나타나지 않습니다. 함수에서 어떤 방식으로 생성된 유닛인지를 반환할 수도 있습니다. 미리 만든 유닛 변수를 이용해서 변수에 저장된 유닛을 불러오는 경우도 있습니다. 특정 유닛 그룹의 유닛에게 모두 행동을 적용하고 싶을 때는 어떻게 해야 할까요? 바로 유닛 그룹 레이블에 있는 "플레이어 그룹의 각 유닛 선정"을 이용합니다...
22. [트리거] 변수 이번 강의에서는 변수에 대해서 강의하겠습니다.변수에는 변수 (전역 변수)와 지역 변수가 있습니다. 변수는 방정식에서는 x로 대표되는 변할 수 있는 수라고 설명하지만,트리거 에디터에서의 변수는 프로그래밍에서의 변수와 같습니다.프로그래밍에서 변수는 값을 담는 그릇으로 설명됩니다.변수 안에 어떤 값을 저장할수도 있고, 그 값을 다른 값으로 바꿀 수도 있고, 또 다른 변수를 넣을수도 있습니다. 먼저 프로그래밍에서 변수를 선언하는 것과 같은변수 만들기입니다.왼쪽 아래 창에서 마우스 오른쪽 버튼을 클릭하거나Ctrl + B 단축키를 이용하여 새 변수를 만들 수 있습니다. 프로그래밍에서는 문자열과 수밖에 값을 정할 수 없지만,트리거 에디터는 다양한 유형의 변수를 지정할 수 있습니다.가장 많이 사용되는 것은 역시 유닛이..