게임 하다 보면, 버그들의 공격이 플레이어를 스치지도 않았는데 공격 당했다고 떠서


"아니 ㅅㅂ 이게 왜 맞는데?" 하는 경우 많았을 거임.


이건 버그들이 쓰는 공격 시스템 중 일부가 우리가 익숙한 "히트 박스" 기준 공격이 아니라서 그럼.





우리가 아는 게임의 일반적인 공격은


1. (모델링 수정) 적의 주먹의 모델링이 플레이어에게 닿는다.

2. (좌표값 탐지) 모델링의 위치 좌표와 플레이어 히트박스 좌표가 겹쳐진다.

3. (공격 판정) 좌표 정보를 토대로 공격당한 것으로 처리.


이런 방식인데, 버그들이 쓰는 스크립트성 공격은


1. (좌표값 탐지) 적이 공격이 적중하는 조건을 판단.

2. (공격 판정) 일단 공격을 당한 것으로 처리.

3. (모델링 수정) 모델링을 적절한 위치로 옮기기


이런 식으로 "공격 판정"이 "모델링" 보다 먼저 이루어지는 방식임.


그런데, 이미 공격 판정이 이루어져 버렸는데, 모델링은 따로 노는 상황이 발생하면

어거지로 모델링의 위치를 옮겨놓는 방식을 쓰다보니

차저가 트월킹 추면서 플레이어에게 다가오는 상황이 벌어지는거.




현재 게임 내에서 확인된 스크립트식 공격은 아래와 같음.



1. 차저의 돌진 후 옆치기 공격

차저가 돌격을 취소한 직후, 갑자기 옆으로 확 젖히면서 쳐내는 공격인데, 이게 차저가 움직이는 모델링에 비해 워낚에 공격이 들어가는 범위가 넓고, 가끔가다 돌격을 마친 위치와 스크립트 공격이 터지는 위치가 맞지 않을 때가 많음.

그런데, 겉으로 보기엔 진짜 들이받혀서 맞은 것처럼 보여야 되기 때문에 강제로 차저의 위치 좌표를 옮겨버리는 과정에서 관성 드리프트니, 문워킹이니 트월킹이나 하는 현상들이 나오는거.


2. 스토커와 헌터의 다단히트

다단히트가 터지고 있는 상황에서는 공격을 하는 대상을 죽이지 않는 이상, 아무리 몸을 날려봤자 못 피하고,

다단히트가 발생하는 중에는 점프팩을 달고 날아가는 중에도 쳐 맞음.

특히, 혀를 날리는 공격 이거는 대놓고 스크립트 성 공격임.


3. 파운서와 헌터의 대쉬

파운서나 헌터가 플레이어에게 날아오는 좌표는 플레이어 기준으로 상대적으로 고정된 좌표임.

따라서 얘들이 대쉬를 시전하는 순간에는 플레이어가 아무리 도망치고 날뛰어봤자, 얘들이 도착해야되는 최종 상대 좌표값이 이미 시스템상으로 산출이되어 있으니 피할 수 가 없는 것.

얘들이 벽이나 땅을 뚫고 날아오는 이유도, 이미 얘들이 이동할 좌표값은 고정되어 있으니 어거지로 모델링을 그쪽으로 시스템이 옮겨버리면서 발생하는 거고.