EUD/오프셋/로케이션

< EUD‎ | 오프셋
  • 상위 문서 : EUD/오프셋
  • 이 문서는 EUD에서 사용되는 로케이션 관련 오프셋을 모아놓는 문서입니다.
  • 모든 오프셋은 스타크래프트 1.16.1을 기준으로 작성됩니다.

틀:EUD 오프셋 모음

로케이션의 좌표

0058DC60
Size20
Length255
Player NumberP12
Unit ID303
Extended Player Number3647

로케이션의 좌표와 스트링 넘버를 가진다. 각 4바이트별로 역할이 나뉘어진다. 가장 앞에 오는 어드레스를 기준으로 다음과 나열된다.

0102030405060708091011121314151617181920
왼쪽 좌표위쪽 좌표오른쪽 좌표아래쪽 좌표사용하는 문자열 / 적용 높이 및 유닛 플래그

이 어드레스를 이용하여, 매우 섬세한 로케이션 이동이 가능하며, 또한 로케이션 하나로 여러개의 역할을 동시에 수행하게 할 수 있다. 다만, 로케이션의 위치가 상하좌우 좌표로 결정되므로, 이동시에는 4개의 좌표를 동시에 정확한 위치로 변경시켜야 한다. 좌표 하나가 4바이트를 사용하므로, SetTo를 사용하는 것이 효율적이다.

또한, 5번째 데이터에는 해당 로케이션이 사용하는 문자열 번호와 해당 로케이션 플래그가 담겨져있다. 플래그의 값은 다음과 같다.

지상 유닛낮은 지형65536
중간 지형131072
높은 지형262144
공중 유닛낮은 지형524288
중간 지형1048576
높은 지형2097152

위 테이블의 내용은 해당 로케이션이 해당 높이 지대의 해당 유닛을 로케이션에 적용시키지 않겠다는 것을 의미한다. 즉, 65536만큼 더해져있을 경우, 해당 로케이션은 낮은 지형에 있는 지상 유닛을 로케이션의 대상에 제외시킴을 의미한다. 또한, 위 값은 규칙성을 가진다. 기본적으로 65536에서 시작하며, 여기서 현재 수에서 2만큼 곱해지게 된다.

참고로, 256번째 로케이션은 "Anywhere (어디에서나)"에 해당된다.