드라군의 인공지능과 존재할 수 없는 지형.
스타크래프트2009. 2. 7. 02:30
오늘 바투 스타리그 정명훈vs서기수 경기에서 드라군이 말을 듣지 않는 일이 발생했습니다.
이에 서기수 선수는 퍼즈를 요청했고, 심판은 부스로 들어가 몇 차례 확인을 하고는 경기를 재개했죠. 하지만 재개 이후 다시 퍼즈요청으로 경기는 중단.
심판은 명확한 원인을 제기하지 않고, '경기 진행에 문제가 없다.'며 경기를 재개했습니다.
이후 정명훈 선수의 벌쳐-탱크 병력과 교전 이후 서기수 선수의 병력이 모두 소진되어 서기수 선수는 gg를 선언했죠.
여기서 문제.
그 장면을 보면 언덕 위에 있던 드라군이 2부대가량이 되었습니다. 위쪽에 한 부대, 약간 아래쪽에 한 부대.
탱크가 올라오자 드라군이 아래쪽으로 내려가는데, 위쪽 드라군 무더기만 내려가지 않고 시즈탱크 포격에 빨려들어가 다 녹았죠.
이때 바로 문제가 생겼습니다.
서기수 선수의 말은 컨트롤을 해줬는데 다 빨려들어갔다.
스타크래프트의 유닛은 시야 내에 적 유닛이 오거나 공격을 받으면 그 대상을 공격하게 되어 있습니다.
이때 뒤로 빼줘야 하는데, 그러지 않아 빨려들어가서 죽기도 하죠.
이 문제는 컨트롤을 했는데 빨려들어간 겁니다.
스타크래프트를 하는 사람이라면 누구나 다 아는 드라군의 인공지능.
때로는 아래로 내려가라는 명령을 해도 위로 올라갔다가 내려오는 경우도 있고, 흔히 '껌밟았다'라고 말하는 현상도 자주 일어나죠.
또한 '어택땅'현상도 자주 일어나며, 공격하려고 뚜껑만 열었다가 도로 닫기도.
아까 상황에 대해 포모스의 기자분은 '버그'일 가능성도 있다고 하셨는데, 한 부대의 유닛만 명령을 듣지 않는다는 건 듣도보도 못한 소리구요, 제 생각은 이렇습니다.
문제가 일어난 위치가 윗언덕 입구지형 부근입니다.
맵을 제작해봤다면 누구나 알겠지만, 윗언덕은 기본 툴에는 존재하지 않는 지형입니다.
바로 문제의 부분입니다.
언덕 윗입구 지형은 해당 타일의 맵에 존재하는 맵 조각 1x1씩을 떼와서 조합하는 방식으로 만듭니다.
쉽게 말해서 모양만 끼워맞춘, 원래는 존재할 수 없는 '타일이 깨진'지형이죠.
스타크래프트의 유닛은 이동명령을 내리면 가장 빠른 루트를 통해 가려는 성질이 있죠.
그런데 저렇게 깨진 지형이 있으면 최단루트를 계산하는 과정에서 계산오류가 생길 수 있습니다.
특히, 드라군은 그런 것에 민감한 유닛이기도 하구요.
제 생각은 이렇습니다.
서기수 선수는 분명 죽은 드라군 부대에게 3층 지형인 저 위치에서 2층지형인 자신의 앞마당 위 언덕쪽으로 명령을 내렸을 겁니다.(다른 부대의 드라군은 언덕 아래로 내려옴.)
그래서 드라군은 이동루트를 계산하다 옆에 아래로 내려가는 지형을 본 것입니다.(모양으로 보기에는 1시방향으로 가는 것이 2층으로 내려가는 것이지만, 실제 지형은 부분부분 7시방향으로 향하는 것이 지형상의 2층으로 향하는 길이므로)
그래서 2층지형으로 가려고 한 드라군은 3층에서 2층으로 내려가는 길을 보고는 그쪽으로 가게 된 것이죠.
보통 상황이라면 저쪽으로 흘러가다 다시 아래쪽으로 내려가겠지만, 저 위치는 시즈탱크의 포격이 닿는 위치.
따라서 최단루트로 가려는 인공지능상 저쪽으로 갔는데, 그 루트상에 시즈탱크의 포격이 내려앉은 것이죠.
요즘들어 특히 드라군이 이상한 행동을 보이는 것도 깨진 맵 타일 계산을 전부 소화해내지 못해 일어나는 것이 아닌가 합니다.
리버의 경우에도 특정 지역에 내리면 스캐럽을 발사하지 않는 경우도 생기죠. 이것 역시 깨진 타일 때문이아닌가 합니다.
제 의견을 정리하자면, '윗언덕입구 지형 부근에 위치해있던 드라군 병력이 탱크의 포격을 맞고 빨려들어가던 도중 서기수 선수의 컨트롤로 아래쪽으로 이동하라는 명령을 받았는데, 타일이 깨진 윗언덕지형에서 이동루트 계산상 살짝 위쪽(탱크쪽)으로 이동해서 가는 것이 가장 빠른 길이라고 계산한 드라군은 그쪽으로 가다가 탱크의 포격을 받고 아이스크림이 되었다.'
이러한 일이 유독 '드라군'이라는 유닛에서만 일어나는 것은 종족 밸런스상에도 문제가 있다고 봅니다.
안 그래도 블리자드에서도 패치를 포기한 유닛을 더 바보로 만드는 맵 지형.
개선이 필요하다고 생각합니다.
역전의 가능성이 희박하다고는 해도, 보여줄 수 있는 것도 채 보여주지 못하고 패하게 된 서기수 선수께 위로의 말을 전합니다.
이에 서기수 선수는 퍼즈를 요청했고, 심판은 부스로 들어가 몇 차례 확인을 하고는 경기를 재개했죠. 하지만 재개 이후 다시 퍼즈요청으로 경기는 중단.
심판은 명확한 원인을 제기하지 않고, '경기 진행에 문제가 없다.'며 경기를 재개했습니다.
이후 정명훈 선수의 벌쳐-탱크 병력과 교전 이후 서기수 선수의 병력이 모두 소진되어 서기수 선수는 gg를 선언했죠.
여기서 문제.
그 장면을 보면 언덕 위에 있던 드라군이 2부대가량이 되었습니다. 위쪽에 한 부대, 약간 아래쪽에 한 부대.
탱크가 올라오자 드라군이 아래쪽으로 내려가는데, 위쪽 드라군 무더기만 내려가지 않고 시즈탱크 포격에 빨려들어가 다 녹았죠.
이때 바로 문제가 생겼습니다.
서기수 선수의 말은 컨트롤을 해줬는데 다 빨려들어갔다.
스타크래프트의 유닛은 시야 내에 적 유닛이 오거나 공격을 받으면 그 대상을 공격하게 되어 있습니다.
이때 뒤로 빼줘야 하는데, 그러지 않아 빨려들어가서 죽기도 하죠.
이 문제는 컨트롤을 했는데 빨려들어간 겁니다.
스타크래프트를 하는 사람이라면 누구나 다 아는 드라군의 인공지능.
때로는 아래로 내려가라는 명령을 해도 위로 올라갔다가 내려오는 경우도 있고, 흔히 '껌밟았다'라고 말하는 현상도 자주 일어나죠.
또한 '어택땅'현상도 자주 일어나며, 공격하려고 뚜껑만 열었다가 도로 닫기도.
아까 상황에 대해 포모스의 기자분은 '버그'일 가능성도 있다고 하셨는데, 한 부대의 유닛만 명령을 듣지 않는다는 건 듣도보도 못한 소리구요, 제 생각은 이렇습니다.
문제가 일어난 위치가 윗언덕 입구지형 부근입니다.
맵을 제작해봤다면 누구나 알겠지만, 윗언덕은 기본 툴에는 존재하지 않는 지형입니다.
언덕 윗입구 지형은 해당 타일의 맵에 존재하는 맵 조각 1x1씩을 떼와서 조합하는 방식으로 만듭니다.
쉽게 말해서 모양만 끼워맞춘, 원래는 존재할 수 없는 '타일이 깨진'지형이죠.
스타크래프트의 유닛은 이동명령을 내리면 가장 빠른 루트를 통해 가려는 성질이 있죠.
그런데 저렇게 깨진 지형이 있으면 최단루트를 계산하는 과정에서 계산오류가 생길 수 있습니다.
특히, 드라군은 그런 것에 민감한 유닛이기도 하구요.
제 생각은 이렇습니다.
서기수 선수는 분명 죽은 드라군 부대에게 3층 지형인 저 위치에서 2층지형인 자신의 앞마당 위 언덕쪽으로 명령을 내렸을 겁니다.(다른 부대의 드라군은 언덕 아래로 내려옴.)
그래서 드라군은 이동루트를 계산하다 옆에 아래로 내려가는 지형을 본 것입니다.(모양으로 보기에는 1시방향으로 가는 것이 2층으로 내려가는 것이지만, 실제 지형은 부분부분 7시방향으로 향하는 것이 지형상의 2층으로 향하는 길이므로)
그래서 2층지형으로 가려고 한 드라군은 3층에서 2층으로 내려가는 길을 보고는 그쪽으로 가게 된 것이죠.
보통 상황이라면 저쪽으로 흘러가다 다시 아래쪽으로 내려가겠지만, 저 위치는 시즈탱크의 포격이 닿는 위치.
따라서 최단루트로 가려는 인공지능상 저쪽으로 갔는데, 그 루트상에 시즈탱크의 포격이 내려앉은 것이죠.
요즘들어 특히 드라군이 이상한 행동을 보이는 것도 깨진 맵 타일 계산을 전부 소화해내지 못해 일어나는 것이 아닌가 합니다.
리버의 경우에도 특정 지역에 내리면 스캐럽을 발사하지 않는 경우도 생기죠. 이것 역시 깨진 타일 때문이아닌가 합니다.
제 의견을 정리하자면, '윗언덕입구 지형 부근에 위치해있던 드라군 병력이 탱크의 포격을 맞고 빨려들어가던 도중 서기수 선수의 컨트롤로 아래쪽으로 이동하라는 명령을 받았는데, 타일이 깨진 윗언덕지형에서 이동루트 계산상 살짝 위쪽(탱크쪽)으로 이동해서 가는 것이 가장 빠른 길이라고 계산한 드라군은 그쪽으로 가다가 탱크의 포격을 받고 아이스크림이 되었다.'
이러한 일이 유독 '드라군'이라는 유닛에서만 일어나는 것은 종족 밸런스상에도 문제가 있다고 봅니다.
안 그래도 블리자드에서도 패치를 포기한 유닛을 더 바보로 만드는 맵 지형.
개선이 필요하다고 생각합니다.
역전의 가능성이 희박하다고는 해도, 보여줄 수 있는 것도 채 보여주지 못하고 패하게 된 서기수 선수께 위로의 말을 전합니다.