PGR21.com
다시봐도 좋은 양질의 글들을 모아놓는 게시판입니다.
Date 2008/01/06 01:24:28
Name Forgotten_
Subject 스타에서의 건물과 유닛에 대한 판정
얼마 안 있어 새로운 스타리그가 시작이 됩니다. 차기 시즌에는 현 프로리그 후기리그의 맵을 2개, 그리고 새로운 컨셉의 신규맵이 2개가 들어갈 예정입니다.

온게임넷은 항상 거의 매 시즌이 들어갈 때 맵에디터와 스타 전반에 대한 연구를 통해 새로운 맵의 요소와 새로운 컨셉의 맵을 가장 먼저 시도했습니다. 좁은 입구, 중립건물의 활용, 윗입구와 구릉지 지형, 중립웹과 중립스웜의 활용 등이 저희의 성과이며, OMAT이 스타크래프트 리그에 던진 화두들이기도 합니다.

이번 시즌 역시 새로운 컨셉의 신규맵이 2개 있을 예정이고, 그 중 하나는 앞으로 말씀드릴 연구결과를 바탕으로 한 것입니다.



1. 판정
어느 지점, 혹은 어느 건물 사이를 어느 유닛이 지나갈 수 있느냐 없느냐, 어느 지점은 2층이고 어느 지점은 1층이 되는 기준은 무엇인가, 건물 건설이 가능하고 불가능하고를 결정하는 기준은 무엇인가, 유닛의 시야는 무엇을 기준으로 하게 되는가, 등등등. 이 모든 판정에는 객관적 기준이 있습니다.

이 것을 이해하기 위해서는, 스타의 맵 타일 시스템을 알 필요가 있습니다. 현대적 프로그래밍 이론에 등장하는 '객체'의 개념을 빌어 자세하게 설명드리려면 몇 회에 걸쳐 글을 써야 하겠습니다만, 요점만 말씀드리자면 전반적인 스타크래프트는 3개의 단위의 지배를 받습니다. (단위의 이름은 제가 임의로 붙였습니다..)

1) 픽셀 : 말 그대로 점입니다. 게임 화면을 그대로 캡쳐했을 때 점 하나. 스타는 640X480 게임이기 때문에 640X480개의 픽셀이 있다고 보시면 됩니다.
2) 도트 : 픽셀이 64개, 8X8로 모인 단위입니다.
3) 타일 : 도트가 4X4, 즉 픽셀이 32X32로 모인 단위입니다.

아시다시피, 타일은 건물짓는데 기준이 되는 '한 칸'입니다. 예를 들어 파일런은 타일 기준으로 2X2 크기이고, 커맨드 센터는 4X3 크기인 식이죠. 그리고 타일은 맵에디터의 기준이 되는 단위이기도 합니다. 일반적으로 로템이나 파이썬 등의 128X128 맵은 이 타일을 기준으로 가로로 128, 세로로 128개 크기라는 뜻입니다.

그렇다면 이 3개의 단위는 판정과 어떤 관계가 있을까요?

1) 유닛의 크기 : 픽셀 단위로 세팅되어 있습니다.
2) 건물의 크기 : 건물의 건설 자체는 타일단위입니다만, 실제 유닛의 이동과 관련이 있는 크기는 픽셀 단위 입니다.
3) 맵 상의 유닛이동 가능/불가타일 : 도트 단위로 판정이 됩니다.
4) 맵 상의 건물건설 가능/불가타일 : 타일 단위로 판정이 됩니다.
5) 1/2층 판정 : 타일 단위로 판정이 됩니다.

실제로 스타를 인스톨 하면 생기는 stardat.mpq와 broodat.mpq라는 거대한 파일 안에, 스타의 모든 것(그래픽, 사운드, 세팅 등)이 들어가 있습니다. 그래서 이 정보를 바꾸면 옛날에 유행하던 건담크래프트처럼 MOD를 만들 수 있는 것이죠. 그리고 저 파일 안을 들여다 보면, 저 유닛과 건물의 크기, 유닛이동 가능성 등에 대한 데이터가 미리 들어 가 있습니다. 즉, 어딘가에 '이 타일은 1층이다, 이 타일은 3층이다'와 같은 정보가 들어 가 있는 것입니다.



2. 유닛의 이동
이제, '유닛의 이동'이라는 면에 한정지어 생각해 봅니다.

어떤 유닛이 특정 건물 사이, 혹은 건물과 지형 사이를 통과할 수 있는가 하는 문제는 입구막기와 직결됩니다.

그런데 다행히도, 유닛과 건물의 크기 모두 직사각형으로 되어 있다는 사실이 밝혀져 있습니다.
그리고 더욱 다행히도, 위에 썼듯이 유닛의 이동 가능성은 도트 단위로 판정이 됩니다.

다음 그림을 봅니다.



시즌 초 '백마고지'맵의 수정 관련 포모스 기사의 그림입니다.

사실 위 사진은 상당히 확대한 것이고, 위에 있는 정사각형 격자들이 타일입니다.
그리고 그림 상에서 까맣게 표시되어 있는 부분은 유닛이 지나갈 수 없는 공간입니다.

자 그렇다면, 자연스럽게 이런 의문이 듭니다.
저 사진에서 배럭과 벽 사이로 어느 유닛이 지나갈 수 있을까?

이런 궁금증을 해결하기 위해서는, 두 가지를 알면 됩니다.
1) 궁금한 유닛의 크기
2) 배럭 오른쪽의 공간의 크기

먼저, 유닛의 크기는 pgr에 해당 글이 있습니다. (그리고 실제 제가 다시 확인해 본 바로는 정확합니다.)


(모든 지상 중립동물의 크기는 32X32 입니다.)

출처 : https://pgr21.com./zboard4/zboard.php?id=free2&no=32078

그래서 이 글과 같은 재미있는 일이 생기게 됩니다.
https://pgr21.com./zboard4/zboard.php?id=humor&no=42015

질럿은 마린보다 크다고 알려져 있지만, 그건 가로 뿐입니다. 세로는 오히려 질럿이 1픽셀 작기 때문에, 건물로 막았을 때 그 틈이 19픽셀이었을 경우에는, 질럿은 통과하고 마린은 통과 못하는 지형이 생기게 됩니다.

또 이런 일도 있습니다.
https://pgr21.com./zboard4/zboard.php?id=ACE&no=684
이 글과 해당 경기에서의 해설의 혼란 역시, 질럿이 키가 작기 때문에 생긴 일입니다.



자 그렇다면, 건물의 크기는 어떨까요? 처음에는, 제가 인용한 위의 글과 비슷하게 다음 그림과 같은 방법을 쓰려고 했습니다.



배럭스는 처음에 32픽셀만큼 떨어져 있다가 1픽셀씩 땅에 가까워 집니다. 그리고 탱크의 크기가 32니까, 어느 배럭스까지 갔다가 막히는지를 알면, 배럭스의 왼쪽/오른쪽/위/아래에 각각 어느 만큼의 공간이 있는지를 알아낼 수 있습니다.

이렇게 해서, 배럭스는 왼쪽에 16, 오른쪽에 7, 위에 8, 아래에 15픽셀만큼 공간이 있다는 사실을 알아냅니다! 아아, 이건 정말 노가다였습니다. 그렇기 때문에 다른 건물에 대해서는 하지 않았습니다.

그리고 실제 실험 대신에, stardat.mpq 파일의 압축을 풀어서 그 안에 있는 값을 그냥 읽었습니다. 다음은 그 값입니다. (잘 안보이시면 클릭해주세요!)



위 데이터를 응용하려면 다음과 같이 하면 됩니다.


배럭이 왼쪽, 서플라이가 오른쪽으로 갔을 때, 그 사이를 통과 가능한 유닛은?

배럭-서플라이 구조라면, (배럭의 오른쪽 공간)+(서플라이의 왼쪽 공간)=17 만큼의 공간이 있습니다.
그렇기 때문에 가로 크기가 17 이하인 유닛들 만이 그 사이를 통과 가능합니다.





사실 위의 표를 알아낸 것이 작년 9월 말 쯤이고, 그 이후에 온게임넷 맵제작팀의 모 제작자가 이 표를 이용해서 재미있는 컨셉의 맵을 하나 만들었습니다. 알아낸 사실을 신규맵 일정과 맞추어 공개하려다 보니 이제야 공개하게 된 것 죄송하게 생각합니다. 어떤 컨셉의 맵일지 기대해 주시구요, 저는 물러가겠습니다.


- Forgotten_ 드림.
* 메딕아빠님에 의해서 게시물 복사되었습니다 (2008-01-09 19:42)

통합규정 1.3 이용안내 인용

"Pgr은 '명문화된 삭제규정'이 반드시 필요하지 않은 분을 환영합니다.
법 없이도 사는 사람, 남에게 상처를 주지 않으면서 같이 이야기 나눌 수 있는 분이면 좋겠습니다."
tongjolim
08/01/06 01:26
수정 아이콘
배럭-서플라이 구조는 마린도 통과하지 않나요....
블루스톰에서 입구막을때 자주 나왔고 베넷에서 심시티로 써먹고 있습니다만....
배럭-서플라이를 16으로 말씀하셧지만 17이 계산이 맞는듯 하네요...
서플-배럭으로 지으면 대략 좌절....
Forgotten_
08/01/06 01:30
수정 아이콘
죄송합니다 착각이 있었습니다. 수정 완료했습니다. (__)
tongjolim
08/01/06 01:34
수정 아이콘
좌서플 우팩토리나 윗팩토리 아래서플구조도 질럿막는 심시티가 가능하네요~
하늘하늘
08/01/06 01:39
수정 아이콘
와우 신규맵이 뭘까 기대되는 글이네요.
언제나 omat의 맵들을 응원하고 있습니다.
빨리 보고싶네요 ^^
공실이
08/01/06 01:40
수정 아이콘
와......... 드디어 (?) 건물크기와 모든 유닛크기, 통과가능 등등의 크기가 밝혀졌었군요..

왠지 기쁩니다 흐흐
DarkSide
08/01/06 01:44
수정 아이콘
포가튼 님. 차기 시즌 Post 815와 Post Persona... 기대 해 보겠습니다.
이번에도 Hitchhiker와 같은 좋은 맵이 나오기를 진심으로 기원하겠습니다.
맵퍼라는 직업도 힘드실 텐데 수고 많으십니다.

항상 좋은 맵을 만들기 위한 맵퍼들의 노력과 그 결과물인 명맵들에
감사를 표하면서 항상 뒤에서 응원하겠습니다. 화이팅!
줄리앙
08/01/06 01:47
수정 아이콘
어라? 마린이랑 메딕이랑 완전히 똑같습니까 ? 크기가 ?? 어렴풋하게 기억하기로는 로템 2시에서 입구막으면 서플사이로 마린은 통과하고 메딕은 통과 못했던것 같았는데 .. 아닌가요 ??
彌親男
08/01/06 01:56
수정 아이콘
호오... 혹시 중립배럭과 서플인데 피가 무한인 것들인가요?(이건 좁은 길, 좁은 입구보다 심한 그것!!)
08/01/06 02:04
수정 아이콘
질럿 키가 작다니 OTL
지니-_-V
08/01/06 02:30
수정 아이콘
마린이랑 메딕이 똑같으면 분명히 서플사이를 통과해야될텐데 입구를 막아서 바이오닉병력을 출발시키면 분명히 마린은 통과하는데 메딕은 통과못하는 그런게 있던데.. 이것은 어떻게 된걸가요?
zephyrus
08/01/06 02:33
수정 아이콘
파일론 바로 위에 포톤캐논을 붙여지으면 드라군이 지나간답니다. -_-;
게이트 사이에 좀 갇히지나 말지......
My name is J
08/01/06 02:36
수정 아이콘
오오! 새맵의 힌트인가요! 기대됩니다.^^
XiooV.S2
08/01/06 06:42
수정 아이콘
줄리앙님//저도 그런거 같은데.. 파벳도 매딕이랑 뚱뚱해서 통과 못했던거 같은데..아닌가..?
夜空ノムコウ
08/01/06 09:13
수정 아이콘
신기하고 재밌네요. 개발자들이 임의로 써놓은 숫자를 맵 제작에 활용한다니... 블리자드가 깜짝 놀랄만한 맵 기대해봅니다^^
7drone of Sanchez
08/01/06 10:21
수정 아이콘
잠결에 읽어서 대충 넘겼는데 생각나서 또 한번 보니 아주 진국자료네요!
괜찮으시다면 출처 밝히고 개인 블로그에 퍼가고 싶습니다만 허락해주실런지요...?
살인의추석
08/01/06 10:32
수정 아이콘
와 너무 자세한데요?
remedios
08/01/06 10:47
수정 아이콘
전문가의 노력의 결과가 담겨있는자료네요
고등어3마리
08/01/06 10:58
수정 아이콘
논문이 따로없네요..--;
추게로~
김훈민
08/01/06 12:55
수정 아이콘
적절한 시기에 적절한 센스로 적절한 티져네요^^
늘 수고하십니다...
아무런 발자국이 없는 눈길을 가장 먼저 걸어가시는 건..늘 외롭죠...
아무도 가지 않은 길을 혼자 간다는 느낌도 있지만..
가끔 뒤에서 따라오는 분들이...왜 이런 길로 길 내 놓아서 뒷사람 고생시키냐고...불평불만을 하시는 분들도 계시니...껄껄..
(고맙다는 말 먼저하고...요길은 좀 힘드네~이렇게 웃으면서 곱게 말해도 될 일을...)
08/01/06 16:38
수정 아이콘
항상 신규시즌 되면은 누가 올라오나 보다 어떤 새로운 맵이 올라올까 기대하는 유저입니다. 이번 페르소나도 결과는 조금 안좋았지만 의도 자체는 상당히 새롭고 혁신적이었다고 생각합니다. 2008시즌 스타리그 맵 기대하겠습니다.
정용욱
08/01/06 21:03
수정 아이콘
엄재경씨 입이 또 바빠지겠군요.
고생하셨습니다-
레미오로멘
08/01/07 06:39
수정 아이콘
수고하십니다 맵퍼님들 ^^
신예ⓣerran
08/01/10 01:58
수정 아이콘
질럿이 키가 작은건 정말 의외지만 잠깐 다른길로 빠지자면 3번째 링크글에서 파이썬 입구는 사실상 잘못막은거 아닌가요? 한칸만 왼쪽으로 지으면 되는데 -_-;
Operation_Man
08/01/12 09:06
수정 아이콘
고스트... S라인의 소유자였구나......
목록 삭게로! 맨위로
번호 제목 이름 날짜 조회
1183 양산형 테란에 대한 변명 [48] opSCV9993 08/01/25 9993
1182 시작은 단 두 사람이었지요. 황제라고 불렸던 청년과... [92] 폭풍검17176 08/01/24 17176
1181 데자뷰 [15] TheNoName7670 08/01/21 7670
1180 [스타구경] 온게임넷 박카스 스타리그 16강 1회차 [11] ls6649 08/01/22 6649
1179 한상봉은 저주를 거부했고, 이윤열은 명패를 거부했다. [41] The xian13032 08/01/20 13032
1178 조용호, 기억하고 계십니까 [60] Judas Pain12807 08/01/20 12807
1177 새로운세대로. [33] Ace of Base11306 08/01/17 11306
1176 진영수 vs 이성은 로키2 관전평 [40] opSCV8300 08/01/15 8300
1175 무한도전 멤버들이 받은 해골의 수 [67] 에시앙24514 08/01/17 24514
1174 (역사,다시보기)이순신에 대한 오해와 진실 [52] happyend10180 08/01/15 10180
1173 송병구선수가 가지지 못한것 [15] happyend11062 08/01/14 11062
1172 발버둥 [10] 점쟁이6355 08/01/13 6355
1171 신한은행 프로리그 2007 후기리그 팀별/선수별 기록 정리 [27] ClassicMild6789 08/01/09 6789
1170 非매니아를 매니아로 만들어주어야 하는 곳.... [9] 슈퍼계란7722 08/01/06 7722
1169 스타에서의 건물과 유닛에 대한 판정 [24] Forgotten_10398 08/01/06 10398
1168 [L.O.T.의 쉬어가기] 이젠 임요환을 놓아주어야... [14] Love.of.Tears.8805 08/01/05 8805
1167 러브포보아의 초중급자를 위한 컴퓨터 조립 추천부품입니다~!! (08년 1월편) [52] 러브포보아9440 08/01/06 9440
1166 박성균 vs 이성은 파이썬 관전평 [25] opSCV10512 08/01/03 10512
1165 팀리그의 엔트리와 연습에 대한 소고 [26] Judas Pain7683 08/01/02 7683
1164 [투표결과] 2007 StartCraft Award in PgR21 ... 투표결과 공지. [29] 메딕아빠8644 07/12/30 8644
1163 그래도 김택용이다. [48] sylent14046 07/12/31 14046
1162 [응원글]이 와중에 '르까프 오즈' 정규리그 1위 확정!! [9] HalfDead5781 07/12/30 5781
1161 [L.O.T.의 쉬어가기] Fan之心 [2] Love.of.Tears.5373 07/12/28 5373
목록 이전 다음
댓글

+ : 최근 6시간내에 달린 댓글
+ : 최근 12시간내에 달린 댓글
맨 위로