이번에는 다른 수치를 건드려보자
화면을 한 번 보셨으면 아시겠지만 가장 눈에 띄는건 역시 체력일 것입니다.
맞아도 체력이 안 떨어지는 식으로 설정을 하여 봅시다.
우선 이 게임에서의 체력은 Float 형으로 다루고 있습니다.
그러므로 Float 타입으로 맞추고 100을 스캔 후 맞으면서 넥스트 스캔을 해봅시다.
바로 이런식으로 2개의 주소가 나왔고 1개는 말 그대로 출력만 해주는 값이고
1개는 실제 피통 값입니다. 사실 이걸 100으로 고정을 하든 하면 끝이겠죠.
그러면 이걸 게임 실행때마다 계속 찾아야 하는 번거로움이 있겠죠.
이를 해결까지 하면 완벽할 것 같습니다.
실제 피값(여기선 1번째 주소)에다가 Find out accesses를 걸고 한 대 맞아봅시다.
맨 위에 카운팅이 엄청 높은건 피통의 내용을 계속해서 읽어가야 하기 때문에
도는거라고 가정하고 빼면 남은 8개가 맞았을 때 혹은 회복 아이템을 먹었을 때의 변동에
걸리는 명령어들입니다.
우선 첫번째로 나온 7FF77BDBDC0E - F3 0F10 89 A4000000 - movss xmm1,[rcx+000000A4] 에
디버깅을 걸어봤습니다.
근데 여기는 플레이어의 피통도 관리하지만 더불어 적, 그러니까 여기선 저그죠.
저그 유닛의 피통도 다 읽어와서 처리하는 구간입니다.
마땅히 플레이어의 피통 주소만 읽기에는 명확하게 구분 되어지는게 없는 듯 합니다.
그렇다면 저 rbx+A4들 가지고 노는 곳들 중에 플레이어의 피통만을 관리하는
명령어가 분명히 있긴 있을것입니다. 하나 하나 디버깅 걸어서 적군을 때렸을때
걸리는지 안 걸리는지 확인을 해봐야할 거 같아요.
쭉 해보시면 이 부분의 주소가 적을 때렸을 때 걸리지 않습니다.
지금 걸려있는건 제가 저그 유닛에게 맞아서 피통이 감소할 때 걸린 것입니다.
그러면 여기서 얻는 [rax+A4]가 내 실제의 피통이라는 뜻이겠죠.
이 부분을 간단하게 Hooking을 해보았습니다.
그런데 위에 보면 MyHealth라는 임의의 공간을 만들고 주소를 옮겨놨는데
이는 다음 글에서 다뤄볼 것입니다.
이 Hooking만으로 나의 피통은 100이 고정이 되어서 적에게 아무리 맞더라도
죽지 않는 상태가 완성 되었습니다. 한 번 확인 해볼까요?
게임 치트의 경우 하나하나 찾아가면 연동 되어지는게 많다보니 다른 치트들도
걸려서 나오는 경우가 많기 때문에 노가다를 한다고 해서 손해는 절대 아닙니다.
뭐라도 건지게 되어 있어요.
한 번 쭉 보시면서 천천히 해보시길 바랍니다.
'Reversing & Cheat Engine' 카테고리의 다른 글
18. 간단한 게임 치트 도전 - 총속 (0) | 2024.03.03 |
---|---|
17. 간단한 게임 치트 도전 - 데미지 (0) | 2024.03.02 |
15. 간단한 게임 치트 도전 - 총알무한 (2) | 2024.02.29 |
14. 크랙미 다섯 번째 (0) | 2024.02.27 |
13. 크랙미 네 번째 (파도콘) (0) | 2024.02.26 |