您的位置:网站首页 > 最新传奇发布网 > 正文

[VC] 学习外:类似夺宝传世 挂心得

作者:惯看权贵 来源:星容航 日期:2018/6/21 20:37:21 人气: 标签:

即可获得超值奖励

long Param1;

1我一定回家好了,它接收线程标识符的指针。如果该参数为NULL,表示该线程创建后立即运行

typedef struct ParamData //参数结构

LPDWORD lpThreadId//给一个变量,新线程使用的可执行文件的默认大小

DWORD dwCreationFlags,//通常为0,别的区,我也绝对不反对的。类似夺宝传世。不过一定要记得扔在小青蛇,扔几个魔功120的魔灵,当然,欢迎大家提问题和扔臭鸡蛋,要花多长的时间?你却一口就能把它吃下:)

LPVOID lpParameter,//lpParameter是目标进程里存储的DLL的绝对路径

LPTHREAD_START_ROUTINE lpStartAddress,//函数地址

SIZE_T dwStackSize,//如果此参数为0,你扔了我还不想捡呢:)

LPSECURITY_ATTRIBUTES lpThreadAttributes,//通常为NULL

HANDLE hProcess,// 目标进程句柄

HANDLE CreateRemoteThread(

InfusionFunc(ProcessId,CallAddhp,NULL,NULL);

else

::AfxMessageBox("未找到进程");

if(ProcessId==NULL)

GetWindowThreadProcessId(hWnd,&rocessId);

HWND hWnd = ::FindWindow(NULL,"Element Client");//窗口标题取句柄

DWORD ProcessId=NULL;

// TODO: Add your control notification handler codehere

void CMy1Dlg::OnButton1()

popad

call dwAddr

pushad

_asm

DWORD dwAddr = 0x5F3A50;

void CallAddhp ()

::CloseHandle(hProcess);

::CloseHandle(hThread);

//释放远程句柄

::VirtualFreeEx(hProcess,ParamAddr,ParamSize,MEM_RELEASE);

::VirtualFreeEx(hProcess,mFuncAddr,4096,MEM_RELEASE);

//释放申请有内存

::WaitForSingleObject(hThread, INFINITE);//等待线程结束

ParamAddr,0,&NumberOfByte);

hThread =::CreateRemoteThread(hProcess,NULL,0,(LPTHREAD_START_ROUTINE)mFuncAddr,

//创建远程线程

::WriteProcessMemory(hProcess,ParamAddr,Param,ParamSize,&NumberOfByte);

::WriteProcessMemory(hProcess,mFuncAddr,mFunc,4096,&NumberOfByte);

//写内存

ParamAddr =::VirtualAllocEx(hProcess,NULL,ParamSize,MEM_COMMIT,PAGE_READWRITE);

mFuncAddr =::VirtualAllocEx(hProcess,NULL,4096,MEM_COMMIT,PAGE_READWRITE);

//申请内存

hProcess =::OpenProcess(PROCESS_ALL_ACCESS,FALSE,dwProcId);

//打开被注入的进程句柄

CString str;

DWORD NumberOfByte; //辅助返回值

HANDLE hThread=NULL; //线程句柄

LPVOID ParamAddr=NULL;//申请参数内存地址

LPVOID mFuncAddr=NULL;//申请函数内存地址

HANDLE hProcess=NULL;//远程句柄

void InfusionFunc(DWORD dwProcId,LPVOID mFunc, LPVOID Param, DWORDParamSize)

最后,从一棵谷苗到一把米,这就是创作和享受的差别吧。种田的人,就竟然要花掉我五六个小时?也许,翻译起来再拼凑上自己的几句,我自己三分钟就能做完的这个教程,不过不是做英语的翻译:)。

有时真的搞不懂,就是专业做翻译的,CCB还不懂电脑的时候,在很久很久以前,学习心得。告诉你,倒象是在翻译呢?也许是职业病吧,都不觉得是自己在写东西,再另外写一个相对全面一点的介绍CE各个部分和各个功能的帖子。

怎么写了一夜,所以我会在大家熟悉了CE的操作后,其实讲了可能你也听不太清楚,不过在你做完这个教程之前,CE界面上的一些东西还没有详细的讲过呢,还要再多学习的。

其实到这里为止,但要更深入地使用CE的更高级的功能,已经是游刃有余了,对付一些简单的游戏,熟悉CE的操作和各种扫描方式的使用,只要再多做练习,你已经学会了CE的基本操作了,但至少,也不是说你就很了不起了,虽然即使你做完成了这个教程,有些地方我是根据我的理解做了修正的,所以里面也有些不正确的地方,而且本身可能由于作者疏忽并且英语也不是作者的母语吧,本身也并不很详细,这个教程,知道吗?

其实,不要迟到旷课,不要捣乱,可要听家长和老C的话哦,呵呵。以后就是个小学生了,你已经领到2005年第一学期的GH小学入学证书了,CCB要恭喜你,已经做到了这一步,[VC]。再玩玩这个TUT并学习一下其他的扫描方法怎样工作的】

如果你一边看一边做,你完成了CE的教程了,找到指针就好办了。

==============================================================

【做得好,就是先找到地址然后找到指针,把CCB这家伙问倒了才好呢:)。其实这就是对付DMA的方法之一了,看不懂就问,坚持啊,你还会想放弃吗?呵呵,这是这个TUT的最后一步了,如果我告诉你,也许你到这一步真的有点想放弃了。不过,确实就够复杂了,而要搜索eax的数值。

这一步,所以不要搜索ebp,但堆栈的位置总是在变化,只使用扩展信息窗口告诉你的数值。ebp-4指向堆栈中保存了指向这个指针的指针,你可能会看到类似这样的:

这些别搞混了,你可能会看到类似这样的:

mov eax,[eax+310]

mov eax,[ebp-4]

如果你懂汇编,但要完成这个TUT只需要一个指针。要找到这个指针(CCB:是说要找到指向指针的另一个指针),有点象绕口令:),就是使用了“指针的指针”,事实上数值是由一个指针指向另一个指针(CCB:再指向真正的数值,那么NEXT按钮将变成可见的了。

在这个TUT中,如果一切正确,点击’Changepointer’按钮,然后(CCB:应该是这里才回到TUT吧?),看着变态传世sf发布网。点最前面FROZEN那一栏的勾)它,使用那个指针改变数值为5000并锁定(就是在下面的地址列表中,那你一定是哪里做错了。

额外信息:

现在,xxxxxxxx会是你找到的数值的地址。如果不正确,将会显示P->xxxxxxxx,如果没搞错,这个地址将会加到列表上,点击OK,使用WINDOWS的计算器在科学方式下用十六进制计算)。

回到TUT(CCB:?),所以你要填的偏移量会是2*4C+00000310=3A8.(这些都是在十六进制下计算的,而EAX*2+00000310则是它的偏移量,那里有各个寄存器在执行这条指令时的值)

在这个情况下EDX会是数值的指针,要看扩展信息窗口下方,看看它的算式。

[EAX*2+EDX+00000310] eax=4C 并且edx=00.(CCB:这时各个寄存器的值到底是多少,如果是更复杂的指令,否则那里填0),把12这个数值填在偏移量(OFFSET)那里,否则让它保持0(CCB:就是如果有类似那样的计算,并允许你填入指针的地址和偏移量。

举例说明更复杂的算式:

如果汇编指令在后面有一个计算(例如:[esi+12])那么把数值填在后面,并允许你填入指针的地址和偏移量。

在地址那里填入你刚才扫描到的地址。

这个窗口将会改变,那么看看扩展信息窗口下面EAX=后面的数值)。当扫描完成时它可能返回一个或几百个地址。大多数情况下你要的会是最小(CCB:指地址最小,如果方括号里面是[eax],扫描扩展信息窗口告诉你的十六进制数。(CCB:学习外。就是方括号里面的内容,并做一次4字节的扫描,但扩展信息窗口可以不用关掉),才能回到CE主窗口,要记住在方括号中间的内容)(CCB:要关了那个有代码地址列表的窗口,但如果你关了,(你可以让那个扩展信息窗口开着,就是说CE认为找到了数值的指针了。

回到CE主窗口,(CCB:说明这个不是我们要的)那么再看看代码地址列表中另一个代码地址。如果有方括号,那条指令会是红色的)。如果这个汇编指令里面没有包括一个在方括号中的东西,这样一个新的窗口会打开并显示详细的信息告诉你当这个指令运行时会发生什么事(CCB:这个新出来的窗口上,双击这个代码地址(或者选择它并点击Moreinfo),这样会找到一个代码地址,再找找是什么在改写这个地址。再次改变这个数值,当你找到后,但如果你懂的话会很有帮助。你看挂心得。

首先找到数值的地址,你不需要真的懂汇编,另一个不但会改变数值并且还会改变数值在内存中的位置。

在这一步,一个会改变数值,更精彩的还在后面呢。

在TUT下面你会找到两个按钮,不是吗?别急,但至少也比单纯地找数值的地址并修改和锁定要好一些了,你还不太清楚怎样手工修改找到的地址,虽然,还教你找那条修改这个地址的指令了,现在不但教你找地址,这个NEXT按钮也会变成可见的。

这就是为什么要用到指针了:传世sf发布网新服。

在上一步我解释了怎样用代码寻找功能对付变化位置。但单独用那个方法不容易找到地址来修改为你要的数值。

【指针(密码0)

越来越精彩了,如果一切都做对,点击这个TUT上的Changevalue按钮,并点Close关闭这个窗口。

注:如果你以足够快的速度锁定这个地址,这样游戏(CCB:指这个TUT)将会再次正常地运行下去,如果你保存地址表的话)。

现在,这样还会将代码地址加到高级选项窗口上的代码列表(它将会一起保存,会看到一个地址和一些汇编代码。

点击Stop,如果一切都做得对,回到CE,点击这个TUT上的’Changevalue’(改变数值)按钮,上面会有一个空的列表。

点击这个地址并选择Replace(替换)选项把它替换成什么也不做的代码,一个窗口将会出现,并选择“Find out what writes to thisaddress”(找到是什么改写这个地址),右击CE中的这个地址,我假设你已经知道怎么做了)

然后,我假设你已经知道怎么做了)

当你找到地址后,所以一个普通的内存地址列表将会不适用。

首先找到这个数值的内存地址(你能进到这一步,在这种情况下,甚至是在你玩的时候也会变,不要让狡猾的游戏开发者骗了:)。

下面的数值每次你开始这个TUT的时候会存放在不同的位置,你用二件事仍然能做出可以用的内存列表。

在这一步我会描述怎样用寻找代码功能。

有时一些东西的保存位置在你重新开始游戏时会改变,有时要换换别的方式,特别是在多次搜索不到结果的时候,学习类似。所以有时不要轻易地被你看到的东西误导,却有可能在内存中是用小数来保存,而你明明看到是显示为整数的数值,有时在内存却是用整数来保存,例如你看到有小数的地方,所以有时故意颠倒黑白,其实有时游戏的开发者为了不让你太容易扫描到数值的地址,只是让你熟悉不同数据类型的扫描。再次提醒一下,其实也没什么,很快就能找到)

【代码寻找(密码)

第五步:

这一步,数值填入0.5,但也许你想试试其他的扫描方式。(CCB友情提示:扫描子弹的时候试试’Decreasedvalue by’方式就不错,而点击shoot(CCB:其实是Fire)可以用掉0.5的子弹。

精确数值扫描方式在这一步能工作得很好,而点击shoot(CCB:其实是Fire)可以用掉0.5的子弹。

你得把这两者都修改到5000或者更多才能进下一步。

点击Hit me可以减少一些血,看不懂不要紧,而所能表示的精度也不同,传世2sf发布网。它们在电脑里面占用的字节数长度不同,而double为双精度数,但float为单精度数,float和double都是浮点数,但血是储存为float(浮点数)而子弹是储存为double(双精度浮点数)(CCB:这是数据类型的术语,但有些游戏使用了叫做“浮点数”的记数方法。

如下边你看到你的血(Health)和子弹(Ammo)。两者都以浮点数储存,我们使用字节来扫描,继续下一步吧。

浮点数是带有小数点的一些数字(如5.12或.1)

(可能是为了防止简单的内存扫描)

在前面的教程中,但这种方式是在要知道减少了多少这个具体数值才有用。好了,这样也能更快地找到准确的地址,即“减少了什么数值”,并选择’Decreasedvalueby’,负号只是表示它是减少的),再在CE中输入刚才的数字(负号不要,每次点了Hitme之后记住血条上面显示的减少的数字,如果你够聪明,其实在这一步,这样可以再减掉一些无关的结果。另外,多加几次"Unchange"(无变化)扫描,确认数值确实没改变的情况下,试试在扫描的过程中,其实有时在找到的数值比较多的时候,CCB友情提醒一下,然后根据猜测来找。还有,一般还是靠猜,结果就有可能找不到真正的地址。所以关于那些以长度表示的数值,听听vc。所以如果你受这个显示数字的误导,而当它要显示的时候才把1644除以3然后显示出来,其实在内存可能是1644,例如上面说的548,真正的血是你看到的数值的3倍,最简单的就是,例如,而用另一个方式显示,可能会用某一个方式存真正的血的数值,很多游戏的开发者,但你就知道它是真的按这个值存在内存的吗?不一定的哦,学习外。说血是548,血条上面有个表示血的数字,但有时,有些没有,有些有,上面或下面不是有数字吗?是的,比如血条或蓝条,另一方面靠试。你也许会说,这东西一方面靠猜,但没说是怎么知道的。我的看法是,这是对那些血条之类的东西的扫描。作者说知道数值是0到500之间,稍为复杂一点了,才能进到下一步。

【第四步:浮点数(密码)

第四步:

这一步,把它改为5000,并把它加到下边的列表。

现在,你知道传世sf发布网新服。所以选择比较象我们要的那个地址是,直到你找到了若干地址。

我们知道这个数值是在0到500之间,并重复上面的步骤,再次点击’Hit me’,并点击“Next Scan”

当扫描完成后,并选择’Decreased Value’(减少了的数值),但你不需要这个数值)

现在回到CE,你会掉一些血(掉的血量多少会在血条上方显示几秒然后消失,(大多数WINDOWS应用程序使用4字节数据)

当扫描完成后点击’Hitme’,数值类型选择4字节,同样的,所以选择扫描方式为"Unknown initialvalue",所以使用精确数值不行了,“Unknown initialvalue”(未知初始数值)和“Descreased value(减少了的数值)”。

点击’First scan’并等它扫描完成。

因为你不知道现在它的数值是多少,但我只解释最简单的方式,(例如使用“减少了什么数值”的扫描方式),每次减的血量会显示在进度条的上方。

同样的有好几个方式找这个数值,并且每次你点’Hitme’之后你会减一些血,我们不知道它开始时的数值。

我们只知道这个数值是在0到500之间,但现在我们有一个进度条,让我们进入下一步吧。

在上一步中我们知道初始数值所以我们进行了精确数值扫描,看来你已经理解了怎样使用精确数值扫描找到一个数值了,就是精确数值的扫描和修改了。现在就点击NEXT进入下一步吧!

OK,但至少你已经学到最基本的一步,不过现在的大多数游戏都没这么简单,你已经能对付很简单的游戏了,对于类似夺宝传世。并且也就能修改它了。到这一步,这样你就找到了要修改的数值的地址,直到结果剩下很少或者1个为止,试图改变数值然后再次扫描,如果扫描结果太多,即找到数值,这是使用CE的最基本功能,这个TUT已经说得很清楚,也不用我再补充什么了,你就准备好了进入下一步了。】

【第三步:未知初始数值(密码:看着最新新开传世sf发布站。)

第三步:

这一步,NEXT按钮将会变成可点击的了,并把它修改为1000。

如果一切都OK,并按回车),这样会让这个地址移动到下方的列表上并显示它的当前数值。

双击(下方列表的)数值栏(或者选择它,并把新的血的数值填到数值输入框,点击TUT上的’Hit me’,并点击’First Scan(首次扫描)’

现在双击左边列表上的地址,并点’NextScan(再次扫描)’

重复这些步骤直到你确认你已经找到它的地址了(在地址列表上只有一个地址)

如果你找到多于一个地址而你不知道哪一个是正确的地址的话,并点击’First Scan(首次扫描)’

过一会儿(如果你有一个非常慢的电脑的话)扫描完成并且扫描的结果会显示在左边(如果找到的地址的数量少于设置的数值的话)。传世最新sf发布网站。

把血的数值填在数值输入框上,不过我不敢打赌。Single,Double, 以及其他的扫描方式不行,如果这个地址后面是0的话,不过不是大麻烦)。8字节可能也可以,所以有点麻烦,但要改却要连前一字节一起改,所以虽然用1字节能找到,而这里要你改为1000,但当你最后在修改它时你会遇到麻烦(虽然很容易解决)(CCB:大家不会忘了吧?1字节表示的最大数值是255,挂心得。1字节也可以的,’ExactValue(精确数值扫描)’:

当数值类型设置正确后,但我会告诉你一个最简单的,有几个不同的方法,你必须找到这个数值并把它改为1000

首先确认数值类型设置为2字节或4字节,你必须找到这个数值并把它改为1000

要找到这个数值,你的Health(血)会减少。

要进到下一个步骤,让我们进入到下一步吧。

每次你点击"Hit me"(打我)时,选择这个TUT的进程,然后点击CE左上的那个选择进程的按钮,开CE(哪个先开都没关系),就是开TUT,看这些译文应该能明白怎么做,所以这一步应该不需要我再补充什么,我翻译过来了,上面的这些英文,点击NEXT按钮继续到下一个步骤(或者输入密码而进到你想去的其他步骤)。

你看到在这个窗口的下方的文字Health:XXX

现在你已经在CE中打开了TUT,这样就可以点NEXT进到下一步了。

【第二步:精确数值扫描(密码:你知道传世sf发布网。0)

第二步:

好了,进程选择窗口将会消失并且在CE上方会显示进程名。

现在,如果你喜欢,并点击OK。现在先不要管其他所有的按钮,除非你把它改名了。选择它,进程的名字应该是“tutorial.exe”,找到这个教程,所以Next按钮才是灰色的:)。

当这一切都做对了之后,如果你还没运行的话(CCB:因为还没运行,并让你更熟悉CE的使用。

当进程列表窗口打开后,所以Next按钮才是灰色的:传世sf发布网。)。

然后点击"open process"按钮(在左上角那个有电脑图标的那个)

首先运行CE,你就明白。TUT上面的英文的译文,为什么呢?让我翻译一下上面的英文吧,而Next这个按钮是灰的,上面一大段英文,点击运行。这个时候就出来这个TUT的对话框,找里面的“Cheat EngineTutorial”(以下简称TUT),那么我们现在就开始吧。

这个教程试图解释在游戏中作弊的基本步骤,我会用【】号把它们括起来。

【欢迎你来到CE的教程(V2.4)

先在开始菜单上找到CE的程序组,也许你等不及了,它也会给你相应的密码。

第一步:

好了,而不用每一次都从第一步开始的。而你每完成一步之后,输入相应的密码会直接从某一步开始,而是有时你需要从中间某一步开始时,类似夺宝传世。不是说这个TUTORIAL要输入密码才能运行,才让你做下一步。而在第一步时那个输入密码的地方,当你按它的要求做到了,并按TUTORIAL上面的要求修改,去找到它的地址,这样让你象是修改游戏一样,这些数值也会象游戏中一样减少,并且你点了上面某个按钮之后,在每一个步骤都会有一些类似血(HEALTH)或子弹数量的东西,它里面也和游戏一样,是CE作者做的用来让你练习的一个程序,所以不用怕。

CE带的这个TUTORIAL,会把TUTORIAL上面的所有英文都翻译出来让你看明白,我在教你使用CE来完成这个TUTORIAL的同时,不过没关系,是英文的,你就基本上算是掌握了CE的用法了。

CE带的TUTORIAL,如果你做得到,按它的要求一步一步做完,通过完成CE带的那个TUTORIAL,我们来开始一步一步学习CE的使用吧,你会真正掌握CE的使用的。

现在,下面结合实例来说明,我早就去睡觉了。不要紧,我就不用再继续写下去了,如果你会了,当然了,你还没真正掌握CE的使用,挂心。我却要打字打了半天:)

CE使用实例:

—————————————————————————-

其实到现在为止,其实你用一秒钟就能看清楚,手工把地址加上。

CE的主界面基本就是这些,可以不用扫描,找最新传世sf发布网站。知道具体的地址,如果你以前找到过某个地址,这个是用于手工向下方的地址列表添加地址的,你知道它是做什么的就行了。右边的一个Addaddressmanually,不过暂时不想详细介绍这个按钮里面的功能,也是在这个里面,CE的最有用的一个功能——反汇编,而它的功能还不仅仅是查看和修改内存,它是用来查看和修改内存的,这个是CE最有用的按钮之一,各有一个按钮。左边的一个是MemoryView,在下方地址列表的左上和右上,这个是清除下方地址列表中所有的地址的。

最后,你双击左边的地址列表,然后按这个按钮把它们移到下方的地址列表中。当然,这个用于从左边的地址列表中把地址移到下方的地址列表的。你可以在左边列表中选择一个或多个地址,有一个斜向右下的红箭头的按钮,Value是该地址的数值。

在中间还有另一个红色停止符号的按钮,Type是数值的类型,Address是地址,Description是对该地址的注释,Frozen是对地址进行锁定用的,是你选择了的地址。它有五个栏,而下方的这个,上面那个是CE扫描的临时结果,这个和上面那个不一样,又是一个地址列表,看着传世。并把结果恢复到前一次扫描时的状态。

在主窗口的中间,这样会清除掉最后一次你做的选择,可以点UndoScan,这样你就能重新开始。而有时当你在扫描中间选错了而影响了结果,并且释放上次扫描所占用的内存,点NewScan之后会清除以前扫描的结果,如果想开始一个新的扫描,当数值变化之后输入新的数值再点Next Scan直到找到正确的内存地址。扫描后FirstScan会变成New Scan,这是开始一个全新的扫描,输入好数值后点FirstScan,这个也先不管。第一次扫描时选择好扫描类型,暂时不用管它。新开传世sf发布网。还有右边有个EnableSpeedhack的选项,这里一般不需要修改,再下面是设置内存扫描选项的Memory Scan Options,选择数据类型的ValueType,是选择扫描方式的Scan Type,再下来,Next Scan和UndoScan。下面是一个输入数值的地方Value,First Scan,上面是三个按钮,是CE的扫描部分,而数值是十进制的。

在主窗口的下方,而Value是该地址当前的数值。地址当然是十六进制表示的,Address是内存地址,而如果目前找到的结果多于设置的数量时就暂时不显示。这个列表有两个栏,找到的结果会全部显示在这个列表中,一般找到的结果少于某个数(默认的设置是少于50个)时,学习。是一个扫描结果的地址列表,但在这里可以看到目前为止找到的结果数量是多少。

在主窗口中间的右边,也暂时不会显示,找到的结果很多,显示FOUND:0。如果某次扫描时,当还没开始扫描或最后的扫描结果是0时,这个是表示找到的结果的数目,有个英文FOUND后面有个数字,在左上角三个按钮的下方,显示当前的进度。

在主窗口中间的左边,看看仿盛大传世sf发布网。是当你在进行扫描的时候,即游戏的名称。而下面进度条,后面的进程名就是你所选择的程序,进程ID是一个由8个十六进制代码组成的标识号,那么它会显示你选择的进程的ID和进程名,如果已经选择了一个进程,表示你还没选择进程,它会显示“No ProcessSelected”,当CE还没选择要修改的进程时,上面的英文,下面是一个进度条,上面是一行英文,看着仿盛大传世sf发布网。这个是把地址列表保存下来的。

然后,另一个是一张软盘的图标,这个是用来打开以前保存的CE的地址列表(*.CT)的打开按钮,一个是打开的文件夹,图标就象其他的软件一样,或者简单地就双击要修改的进程。

在这三个按钮的右边,然后点OK按钮,这样的学习方法就不好了)。在这里可以找到并选择你要修改的游戏,结果反而会忽略了最需要先弄懂的东西,当然最后是要什么都知道。就是说要分主次先后来学。如果一开始就去注重很多暂时不需要知道的细节,然后再更细致地学习,先弄懂那些非知道不可的东西,就是在接触一个新的东西的时候,你暂时不用管(一个好的学习方法,还有几个按钮,就是当前在你的系统上运行的所有进程的列表。这个窗口的下方,窗口的标题是ProcessList,会出来一个新窗口,就是你系统当前正在运行的程序)。这样CE才知道你要修改的是正在运行的程序中的哪一个。点击之后,就是指定一个进程(什么叫进程?简单地说,使用CE要做的第一件事,这个是作者提醒你,它的外框会不停地闪动,还没指定所要修改的进程时,是指定进程的按钮。在刚运行CE,左上方有三个按钮。

左上方另外的两个按钮,左上方有三个按钮。

第一个按钮,至于使用上的具体细节,并且解释上面的各个部分的功能和简单的用法介绍,现在我来描述一下CE的主界面,这不是你玩的东西。类似夺宝传世。

在CE主窗口的标题栏下面,那么赶快把CE删了吧,你的智商应该不足以用来修改游戏,我想,根本不需要汉化。如果你连这几个单词都没办法或者不想去弄懂,结果看到它的主界面上的英语单词少得可怜,以至于我本来想给它做汉化,简单到不能再简单了,会看到CE的主界面。其实CE的主界面真的非常非常简单,运行后,就可以运行CE了,安装好之后,而在桌面上会有CE的快捷方式。

三,在开始菜单上会有CE的程序组,仿盛大传世sf发布网。没必要再罗嗦。安装后,很简单,CE的安装也和其他的软件一样,当然是把它安装上,那么开始这一切之前,如果你还没安装CE,LET’S GO!

二,LET’S GO!

一,除了没有游戏的画面。如果你能使用CE按这个TUTORIAL的要求对它进行修改,而且它本身也和游戏差不多,它不但会一步一步地教你怎么用CE,它是作者为了让使用的人进行练习而编写的,本身也是一个程序,不过这个TUTORIAL,就是教程的意思,CE本身带了一个TUTORIAL,确实比较麻烦。幸好,还有可能要安装,就算找得到,那么大家也得找到我用的游戏,如果真正的用一个游戏来做例子,以这个游戏的修改来讲解。不过,需要一个游戏,要用一个具体的例子来讲解CE的用法,然后再用一个具体的例子来让大家真正掌握CE的用法。

CE操作入门

——————————————————————————————-

OK,就是要对上面说的这些步骤进行详细的解释,可以简单到一句话:

当然,使用CE的基本步骤,进入正题吧。

而下面的这个教程,可以简单到一句话:

1.运行CE->2.运行游戏->3.在CE中指定要修改的游戏->4.首次搜索一个数值->5.回游戏中让这个数值增加或减少->6.回CE按数值增减的情况再次搜索->7.重复5和6直到得到一个或很少的几个结果->8.在这几个结果中判断哪一个是真正的结果。

其实,废话少说,[VC]。没必要用多余的图片

好了,并且我觉得文字已经足够表达,因为我没空做图片,我想你没必要看下去了,如果你觉得没有图片就一定学不会,因为我觉得我能用纯文字教你使用CE,你不会看到任何图片,所以我个人并不喜欢TSEARCH。

在这个教程里面,操作过于复杂,但TSEARCH的界面比较混乱,我觉得TSEARCH可以和它媲美,这也是我喜欢它的原因之一。同类软件中,可以直接由它生成外挂。而它的界面非常简洁朴素,它本身就自带了外挂制作工具,这个是别的游戏工具中几乎没有的;还有,例如:它有强大的反汇编功能,它还有其他游戏修改软件所没有的一些特点,但它不仅仅是个游戏修改工具,它并不比其他同类软件强多少,虽然单独从搜索游戏里面的数值来说,这个是

CHEATENGINE(以下简称CE)是我见过的最优秀的游戏作弊工具。它的优点多不胜数,例如:它有强大的反汇编功能,它还有其他游戏修改软件所没有的一些特点,但它不仅仅是个游戏修改工具,它并不比其他同类强多少,虽然单独从搜索游戏里面的数值来说,以显示物品

CHEATENGINE(以下简称CE)是我见过的最优秀的游戏作弊工具。它的优点多不胜数,以显示物品

00 85C0 TEST EAX,EAX ;eax 是物品内存偏

00F E8 8CA9F0FF CALL bao.00432FE0

00E 55 PUSH EBP ;y

00 81C1 ADD ECX,840

00 53 PUSH EBX ;x

00 8B0D 180E7000 MOV ECX,DWORD PTRDS:[700E18]

判断地面是否有物品:官方也是循环调用,在夺宝传世中为何不行???)。

0012F204 00000000 \Arg4 = 00000000 ;挖肉方向0 ~ 7 正下方位0逆时针增大

0012F200 00000098 |Arg3 = 00000098 ;肉的y

0012F1FC 00000101 |Arg2 = 00000101 ;肉的X

0012F1F8 169D5128 |Arg1 = 169D5128 ;动物ID

00B E8 30C2FBFF CALL bao.004E53D0

00 8B0D E80D7000 MOV ECX,DWORD PTRDS:[700DE8]

00 50 PUSH EAX

00 8B45 DC MOV EAX,DWORD PTR SS:[EBP-24]

00 57 PUSH EDI

00F 53 PUSH EBX

00E 52 PUSH EDX

00B 8B55 A0 MOV EDX,DWORD PTR SS:[EBP-60]

00 E8 02E5F6FF CALL bao.00

00 51 PUSH ECX ;x2

00 8B4D 98 MOV ECX,DWORD PTR SS:[EBP-68]

00 50 PUSH EAX ;x2

00 8B45 94 MOV EAX,DWORD PTR SS:[EBP-6C]

00 57 PUSH EDI ;y1

00F 53 PUSH EBX ;x1

00D 6A 01 PUSH 1

挖肉距离

0042DD80 C2 0400 RETN 4

0042DD7A 81C4 ADD ESP,94

0042DD75 E8 FB701C00 CALL bao.005F4E75

0042DD73 33CC XOR ECX,ESP

0042DD6C 8B8C24 MOV ECX,DWORD PTRSS:[ESP+90]

0042DD6A 0301 ADD EAX,DWORD PTR DS:[ECX] ;700E18 基址 +增量

0042DD64 69C0 D0000000 IMUL EAX,EAX,0D0 ;EAX 820 可以看出一个背包D0大

0042DD62 7D 1F JGE SHORT bao.0042DD83

0042DD5F 3B41 04 CMP EAX,DWORD PTR DS:[ECX+4]

0042DD5D 7C 24 JL SHORT bao.0042DD83

0042DD5B 85C0 TEST EAX,EAX

0042DD54 8B8424 MOV EAX,DWORD PTR SS:[ESP+98] ;EAX 第几个格子如: 0A

0042DD4D MOV DWORD PTRSS:[ESP+90],EAX

0042DD4B 33C4 XOR EAX,ESP

0042DD46 A1 A8686E00 MOV EAX,DWORD PTR DS:[6E68A8]

0042DD40 81EC SUB ESP,94

00 E8 348DFCFF CALL bao.0042DD40 ;返回背包内容内存地址

00 81C1 000 ADD ECX,600

00464FFB 8B0D 180E7000 MOV ECX,DWORD PTRDS:[700E18]

00464FFA 57 PUSH EDI;第几个格子

背包计算:类似夺宝传世。

00 E8 C3B6E9FF CALL bao.004E3ED0

00 55 PUSH EBP ;y

00 57 PUSH EDI ;x

00 8B0D E80D7000 MOV ECX,DWORD PTRDS:[700DE8]

捡物 例二

00 E8 6BB8FBFF CALL bao.004E3ED0

00F 55 PUSH EBP ;y

00E 53 PUSH EBX ;x

00 8B0D E80D7000 MOV ECX,DWORD PTRDS:[700DE8]

捡物 例一

005BB09B E8 9023F0FF CALL bao.004BD430

005BB09A 57 PUSH EDI

005BB099 56 PUSH ESI

005BB097 8BF0 MOV ESI,EAX

005BB091 8B0D E00D7000 MOV ECX,DWORD PTRDS:[700DE0]

是否可达

005BB0AC E8 5FA1F6FF CALL bao.00

005BB0AB 57 PUSH EDI

005BB0AA 56 PUSH ESI

005BB0A4 8B0D 60C MOV ECX,DWORD PTRDS:[312C360]

多格移动:0x00 根据无法到达消息 下断

005244DE E8 FDC0FDFF CALL bao.005005E0

005244C4 8B0D E80D7000 MOV ECX,DWORD PTRDS:[700DE8]

参数2:Y

参数1:X

ecx:0x3fec158

单格移动:0x005005E0

DWORD flProtect // type of access protection

DWORD flAllocationType, // type of allocation

SIZE_T dwSize, // size of region to allocate

LPVOID lpAddress, // desired startingaddress

HANDLE hProcess, // process to allocate memory

LPVOID VirtualAllocEx(

来自 2.3.1

2 在文件前面加一个宏的前缀 __declspec(dllimport)

实现可以调用 1需在def的文件中声明

DLL外挂框架构建

注意堆栈平衡 至最后时 需将esp加相应的值

bool UpdateData();true 表示更新窗口数据值变量false表示更新变量数据至窗口数据

LPCTSTR lpString // title or text

HWND hWnd, // handle to window or control

BOOL SetWindowText(

API 函数

_stdcall()

减法指令 : sub 同上

加法指令: add eax ebx 但两个不可全是 变量 a b

_asm 可在其中加入mov edi edi ;mov edi edi;在od中查找这几行代码 就可查找到内联汇编的程序(定位)

内联汇编vc++

外挂笔记 自 2.2.1

函数头部一般均有 push ebp

找背包里的物品 可能与使用的call近一些

可能用键盘和快捷键机制不同?

可以在堆栈中反汇编跟随进到jmp处

在od中转到该地址

查找 访问 该地址的代码 记下出现的代码

以药的数量为突破口

找物品使用call时

CE使用技巧

外挂笔记 自 2.1.3&2.1.4

5. 用OD复制代码时不可至剪切板(自身bug)须至文件 (现在可以吗???)

4. 基址:找最新传世sf发布网站。 指针 或者说是 常量地址(全局结构变量首地址)

3. 在认为是基址处 可下一个 硬件访问的双字断点

2. 双击地址 可显示其偏移地址(从双击位置起)

1. dd 地址//使用堆栈格式转储 即显示内存

2. 内存扫描选项可选全部(首次可不选)(扫描时为何选四字节,若不知道,也可用jmp本身的地址。

1. 找进程时,可用本身起始地址调用,兼容性差一些可下无数个

CE使用技巧

外挂笔记 自 2.1.1&2.1.2

找到call的地址时,看着夺宝。因为断了之后才可发现。

内存断点: mw 地址//内存中断在写入时 ,硬件断点: hw 地址//硬件中断在写入时。只支持四个。速度快

断在该地址的后一行,CreateRemoteThread( hp,NULL,0,(LPTHREAD_START_ROUTINE)(线程地址0x...),NULL,0,&tid); 在进程(hp标识的)里调用call

读完这篇文章后,您心情如何?
0
0
0
0
0
0
0
0
本文网址: