abcdef
Cheat Engine Tutorial - (6) 본문
이번 스텝에서는 포인터의 개념을 다루겠습니다.
먼저 객체의 개념을 알고 넘어가겠습니다.
캐릭터A가 있습니다. 캐릭터A에겐 아이디, 공격력, 체력, 방어력, 마나 등등이 있습니다. 다른 캐릭터들에게도 있겠죠. 우리가 이것을 코딩을 할 때 계속 변수를 선언하기도 힘들고 구별하기도 힘들며 무슨 패치를 해서 lucky같은 스텟을 넣어줘야하는데 일일이 한명씩 다 넣어줄 수는 없습니다. 만약 이용자가 10만명이라면 10만번 추가를 해야겠죠? 그래서 사용하는 것이 객체입니다. 그리고 이 객체를 캐릭터 A,B,C 막 이렇게 있을텐데 A의 정보(객체)를 가리키고 있고 그 값을 가지고 있는데 이렇게 가리키고 있는걸 포인터라고 합니다.
자 이제 튜토리얼로 넘어와서 Change value 와 Change pointer가 있습니다. Change pointer 는 value를 가리키고 있는 포인터가 다른 주소에 값을 넣는다는 의미입니다. 물론 찾은 포인터가 고정이 안돼 있을 수도 있습니다. 포인터를 포인터가 가리키고 있는 경우입니다. 하지만 이번 스텝에선 포인터가 하나만 나오고 고정 되어있으므로 한번만 찾으면 됩니다. 다음스텝으로 가는 만족 조건은 값을 5000으로 고정하는 것이네요. 먼저 값을 찾읍시다.
이제 이 값을 막 바꿀 수는 있지만 만약 Change pointer를 하면 값을 바꿔도 적용되지 않습니다. 바로 포인터가 가리키고 있는 주소가 달라졌기 때문입니다.
적용이 되지 않죠?
그림으로 설명하면 이렇게 됩니다. 우리가 막 값을 5735로 바꿔도 change pointer를 하면 우리가 바꾼 값은 적용되지 않습니다. 가리키고 있는 주소가 다르기 때문이죠. 그러므로 우린 value를 찾으면 안되고 그 상위에 있는 포인터의 주소를 찾아야 됩니다.
방법은 크게 2가지가 있습니다. 두번째는 나중에 다룰 것입니다. 첫번째는 일단 우리가 change pointer를 하였으므로 값이 저장되어 있는 주소를 다시한번 찾습니다.
일단 value의 주소가 01992F00입니다. 저희는 이 주소를 활용할 겁니다. Value: 에 적는 칸 왼쪽에 Hex가 있을 겁니다. 그걸 체크표시 해주시고 value의 주소를 입력합니다. 주소는 왠만하면 16진수로 되어있기 때문에 Hex를 체크하는 겁니다.
저는 1개 밖에 list에 남지 않았으므로 저게 value를 가리키는 포인터가 됩니다. 포인터 값에는 value를 가리키는 value의주소가 들어가 있습니다. 이것으로 확정이 났군요. 그리고 Address가 초록색이면 고정된 주소라는 뜻입니다. 우리가 이런 포인터들이 많아지거나 복잡해지면 한번에 보고 싶어지는 case들이 있는데 그럴때는 list 오른쪽 위에 Add Address Manually라는 옵션이 있을 겁니다. 눌러주시고
Pointer 체크 후 Description은 이름이니 알아서 해주시고
ㅁ -> ??? 칸에 포인터에 주소를 넣어줍니다. 그러면 위처럼 value에 주소가 ㅁ -> value의주소 가 나오게 됩니다. OK를 눌러주시면 list에 추가가 됩니다.
Value와 값도 같고 주소도 같습니다.
껐다 키면 value의 값이 ??이 되는데 포인터가 가리키고 있는
017A5780으로 value의 주소를 변경시켜주면
포인터가 가리키는 주소로 가서 100이라는 값이 있다는 것을 알 수 있습니다. 이 스텝을 만족시키는 조건은 포인터가 가리키고 있는 값을 5000으로 고정 시켜 주시면 됩니다.
이렇게 해주시고 Change pointer를 해도 주소가 변경되지 않습니다. Change pointer를 한 번 눌러주시면 Next가 활성화 됩니다. 그리고 값도 5000으로 고정되죠.
'IT 독학 > Cheat Engine' 카테고리의 다른 글
Cheat Engine Tutorial - (8) (0) | 2018.08.10 |
---|---|
Cheat Engine Tutorial - (7) (0) | 2018.08.10 |
Cheat Engine Tutorial - (5) (0) | 2018.08.10 |
Cheat Engine Tutorial - (4) (0) | 2018.08.10 |
Cheat Engine Tutorial - (3) (0) | 2018.08.10 |