코드 주입 게임 수정의 최적화

우리가 88을 플레이하면 게임의 난이도가 너무 클 수 있습니다

또는 게임, 당신은 게임의 플레이를 높이려는, 당신은 수정을 사용할 수있는이 시간이 더 숙련되고있다.

메인 메모리 게임 수정은 메모리 게임을 수정

변경, 하나 개의 타이머 값 메모리를 수정하는 방법에는 두 가지가 있습니다. 비슷한 효과를 얻을 잠급니다.

이러한 프로그램은 프로그램을 실행하는 데 시간이 필요합니다. 게임의 값이 폐쇄되면, 예를 들어, 건강 등을 변경해야합니다.

부풀어 게임, 다른 혜택에 추가하여, 네트워크 게임을 수정하고 게임의 반 부정 행위 메커니즘을 가지고 주목해야한다. 그리고 데이터 동기화 손실의 위험이 있습니다.

두 번째 옵션은 프로그램 코드를 수정하는 것입니다. 예를 들어,

1 탄의 수를 더한 총알의 수를 줄이기 위해 수정 한 번 작업을 발사, 총알은 증가 할 것이다.

프로그램 코드 때문에 동적으로로드 할 수 있습니다. 당신이 촬영하는 경우 코드는 메모리에로드됩니다. 당신은 당신이 위치 코드를 찾을 수있다, 뭔가를 변경하고 싶습니다.

코드 위치는 변경되지만 코드는 우리가 코드의 어떤 종류를 검색, 당신은 위치를 찾을 수 있습니다, 동일합니다.

우리는이 코드를 넣어 서명을했다. 오프셋 서명을 검색 할 때 서명 코드가로드 된 경우, 당신이 직접 폭력을 검색 할 수있는 것보다 더 크다.

오프셋 (offset)가로드 서명 코드보다 작은 경우, KMP 알고리즘을 사용, 또는 BM 검색 알고리즘 할 수있다.

관심을 검색 할 때, 메모리는 느린 실행하는 기능을 읽을 수 있지만 데이터의 양이 속도에 작은 영향의 크기를 읽을 수 있습니다. 우리는 캐시에 많은 양의 데이터를 읽을 수 있습니다.

이 기능의 수는 메모리가 40킬로바이트 캐시를 사용하는 경우에만 검색 시간이 400ms 일입니다 완료하는 데 약 1000 읽기 읽기 호출을 줄일 수 있습니다.

고속 캐시 외에, 우리는 또한 반복적으로 탐색 영역 메모리, 게임을 다시 열 좁힐 수 있으며, 메모리 위치가 발견

사이 4XXXXXX1에 0XXXXXX1. 당신이 할 수있는 6X4 = 24 비트 데이터 공간의 중앙을 검색만을 필요로 할 때이다.

총, 혈액, 이탈리아의 마피아 2 , 예를 들어. 오픈 소스 코드는 GitHub의되었습니다.

간단한 패키지의 메모리 작동 코드입니다. 코드에 설명 된대로 40킬로바이트 사용 캐싱, 검색 속도를 높일 수 있습니다.

코드를 이해하려면, 어셈블러, C의 ++에 대해 잘 알고 있어야합니다. 그리고 윈도우 메모리의 지식.

필요한 경우 코드는 (실제로는 이전 거북이! \ 재미)를 스테이션 B 작은 거북 기준 알고리즘 코스, KMP 및 BM 달성되지 않았다.

추천

출처www.cnblogs.com/pojdd/p/11388643.html