게임 트레이너 이런것을 한번 만들어 보고 싶은대 어떤것을 어디만큼 할줄 알아야 합니까?
C++, 어셈블러, MFC 다 조금씩 할줄 압니다 계속 배우고 있구요
트레이너를 만들기 위해선 리버싱후 어셈코드를 읽고 임의로 수정하고 등등... 여러가지 과정이 많더군요
메시지 해킹에다가 메모리 라이트 등등
트레이너의 간단한 동작 원리를 알고 싶내요
아 그리고 옵셋[상대위치?]]의 정확한 뜻도 알고 싶습니다.
가령 치트엔진 같은 툴로 특정 게임의 특정 메모리가 의미하는 것을 알아냈을때
C++로 메모리 삽입 코드를 짯을때 그 특정 게임이 실행될때마다 다른 메모리를 할당 받던대
옵셋을 알면 옵셋을 기준으로 쉽게 삽입할수 있고 그런겁니까?
아직 배울게 많습니다 많이 가르쳐주세요 ^^
옵셋의 개념은.. 프로그램이 실행될때 자신이 사용하는 메모리를 os 에서 할당 받아서 쓰게 되는데요,
그 메모리의 시작 번지가 offset 이라고 보시면 됩니다. 매번 실행할때 마다 바뀌게 되죠.
하지만, 거기서부터 얼마 뒤에 있는 변수 라는것은 위치가 거의 고정됩니다. (그것도 가변되게 만드는
방법도 물론 있지만요) 그래서 옵셋이란 걸 알아내야 일단 변수 위치를 찾아낼 수 있는거고요.
특정 변수 위치만 알아 낸다면 그 변수값을 고정시키거나 강제로 얼마 이상으로 세팅하거나 하는거고..
그게 트레이너가 되는겁니다.