通过游戏学指针系列3:查找人物真正的血址并用指针编码
c吧
全部回复
仅看楼主
level 1
溥沛雯7Y 楼主
通过游戏学指针系列3:获取血值真正地址并用c指针描述出来
一.让地址定起来
通过前面两次课,搜到的血值每个人搜到的地址不一样
002F7B94
002F7B98

0F9E074E
实践:1在地址上按右键------点击谁在访问(Find out what accesses this address)------yes
------此时出来一串复制下来------
00FA86C4 - 89 4D FC - mov [e
bp
-04],ecx
00FA86C7 - 8B 45 FC - mov eax,[ebp-04]
00FA86CA - 8B 80 26070000 - mov eax,[eax+00000726] <<
00FA86D0 - 8B E5 - mov esp,ebp
00FA86D2 - 5D - pop ebp
EAX=00000023
EBX=00000000
ECX=0F9E0020
EDX=0125111C
ESI=000B4DC2
EDI=00000000
ESP=0030EC08
EBP=0030EC0C
EIP=00FA86D0
------查找ECX的值:0F9E0020(勾选Hex------数据类型选4字节------粘贴此值0F9E0020)-------点first scan-------
找到第一个绿色的地址13082EC
最后统一规则:
[13082EC]+726
二. 测试本机上的表示血值的地址是否正确
1 点击Add Address Manually-----勾选pointer------将地址复制过去13082EC
-------再倒数第二个框中添加726
此时会看到新出来一个地址------这个地址所放的内容就当前血值
三. 总结:
1如果第一步不明白-------照着做即可
2按照第二步的操作再本机上会产生一个地址,那么这个地址中就是人物当前血值对于任何机器都适用
四. c语言中如何获取内容
int a=1;
标准的写法:int a=(int)1;
1定义一个指针(规则就是再数据类型后加*)
int* p;
2给指针赋值
int * p=(int*)0x13082EC(在c语言或c++中前面加一个前缀,这样表示把地址给指针了)
3.[13082EC]再地址上加上一个[]表示,获取地址中的内容,再c中获取地址中的内容,规则:
再指针变量前加上*,表示获取指针中的内容
所以*p代表人物中的[13082EC]这部分内容
4那么如何表示当前血值,综合代码:
int* p;
Int addr;
P=(int *)0x13082EC;
addr=*p;
int* role=(int *)(addr+0x726);
Int cur=*role;
本文章根据手把手项目开发网中的视频教程整而来,工具和资料下载地址:http://www.shou8shou.cn,指导教师QQ:1026165915
2025年07月06日 02点07分 1
吧务
level 11
又是大写P,又是小写p,写的啥玩意[疑问][疑问]
你自己跑个程序,看同一个变量的地址是固定的不?
2025年07月06日 09点07分 2
level 1
前两节课你发哪里了?[怒]
2025年07月10日 00点07分 3
1