2017년 2월 12일 일요일

오버워치 에임핵 ct의 모든 것 4 - 원리편

내가 아는 어셈블리로 실수를 다루는 방법은 2가지가 있다. 옛날에 32비트로 된 게임을 다루었을 때는 주로 f문 계열을 통해 실수를 조작한다. fld, fadd, fmul 같은 것들이다. 이런 f문 계열은 호랑이 담배피던 시절부터 있었던 게임(ex. 메이플스토리)에서부터 계속 쓰여 왔다.

최근 CPU는 대부분 SSE를 지원한다. SSE는 xmm 레지스터를 사용하고 그것을 다루는 명령어셋이다. SSE는 float, double, int 등 산술 연산에 필요한 모든 자료형을 지원하고, 다소 복잡한 계산도 하나의 명령어로 충분하게 해준다. 또한 병렬 연산이 가능하여 3차원 벡터를 다루는데 매우 편리하다. 오버워치에서는 SSE를 통해 실수를 다룬다. 따라서 필자도 이 메타에 따라서 제대로 SSE를 쓰는 것을 보여주겠다. 다르게 말하자면 이전 ct를 확 뜯어 고칠 것이다. 좀 귀찮게 생각될 수도 있지만 이것이 설명하기도 더 편하고 스크립트 길이도 확 줄어 든다. 필자는 SSE4.1 명령어셋까지 활용할 것이며 치트 엔진이 인식 못하는 명령어도 있다. 예를 들어서 DPPS 명령어가 있다.

작성중....

댓글 3개:

  1. 저.. 치트엔진에 관하여 궁금한점이 있는데
    오버워치는 아니구요.! Postmessage에 관한 질문입니다.

    혹시 개인적으로 연락할수 있는 수단이 있을까요.?
    메일이라던가..사례는 하겠습니다!

    답글삭제