前言
幽络源本次免费分享的是CSGO(现在叫CS2了)透视辅助制作教程
本教程分为两篇,当前为上篇->找基址
下篇将教学使用Python结合找到的基址手写一个透视辅助
所具备的知识
CE的使用
Python的使用(本上篇不涉及)
还有一些大脑的空间想象力(本上篇不涉及)
教程目的
通过CE找到一些基地址,然后结合Python实现CSGO的透视绘制,这里我们是纯手写透视。
第一步:找自己坐标基地址
要找的基址包括=>自己的坐标、场内所有人物的坐标、FOV视角
坐标也就是空间中的X、Y、Z
FOV视角包括了横向的视角角度、纵向的视角角度
1.1打开游戏
打开游戏切换为1280*720(或其他分辨率)的窗口模式,选择练习->竞技模式开人机房方便我们调试学习
1.2调整控制台
这里需要你在游戏设置中先启用控制台,如图点击左上角设置按钮,来到游戏设置将启用开发者控制台切换为是
进入游戏按~键调出控制条,输入sv_cheats 1开启允许调试
然后输入mp_roundtime_defuse 60 让游戏设置为60分钟一局(下局会生效的)
然后输入bot_stop 1和bot_dont_shoot 1分别使人机停止移动和停止射击
1.3找自己坐标
打开幽络源专属CE,可在此链接获取(附使用教程)=>
在CE中打开CS2,如图:
先找自己血量,我们通过血量来找坐标会比较简单
4字节精确数值搜索100,如图:
然后我们从高处往下跳,每损失一些血量就再次扫描血量,如图血量变为了97我们修改为97再次扫描
数值还是有点多,我们继续减少血量再次扫描,如图,好吧还剩12个数值,那就ctrl+a全部拉取到下边的方框保存
右键任意一个地址,点击找出是什么改写了这个地址,如图:
然后找一个这种没有自己变化的打开继续去减少自己血量,如图
损失血量后会出现一条指令,选中指令,点击ShowDisassembler,如图
然后右键地址点击Find out what.....,如图
此时我们需要继续去损失血量,然后会显示一条指令,选中指令,右键点击open dissect....,如图
然后点击新建窗口,一直确定确定确定直到出现如下图,而且可以看到有三个连续的Float数据,这就是自己的坐标数据,不信可以移动和跳动下看看是否变化(如果你没有看到三个连续的Float坐标就换一个没有自己变化数值继续找):
1.4保存自己的坐标
在上面我们找到了自己的坐标数据,但是不要高兴太早,这三个数据在联机模式是无法使用的,我们依次右键将地址数据保存到地址列表框,如图
注意保存到地址列表框后自己加上描述,地址从小到大分别是自己的x,y,z,如图
现在我们开始找联机模式可用的坐标,如图设置CE的搜索方式为单浮点,搜索-1687,然后改变下自己的X坐标然后再次扫描,当数值比较少的时候,就可以拉到最下方,随便选一个绿色的client+偏移的作为我们的X坐标了(保险起见,可以多复制几份到记事本,万一有的地址联机模式无法使用就切换),如图
我这里随便选一个放到地址框,命名为我的真实X,如图
根据最开始我们找到的x、y、z可以发现这三个坐标是有关系的,x+4得y,y+4得z,所以尝试一下用我们的真实X+4看能不能获取到真实的Y,如图
可以看到,确实是可以的,同理把真实的Z也获取到,如图,这里得到的真实Z看起来似乎要略微大于我们之前找到的Z,这并不是找错了,这确实是真实的Z,他永远大于我们之前找到的Z一点点
1.5总结自己的坐标
由上我们可以总结出我自己的X、Y、Z坐标分别是
client.dll+19149C0
client.dll+19149C4
client.dll+19149C8
第二步:找FOV视角基地址
2.1找FOV视角
这个就比较简单了,准星移动到最上方,以浮点数形式搜索-89
然后准星移动到最下方搜索89,如此反复即可找到纵向的FOV视角,然后随便取一个绿色的使用,如图
然后呢,纵向的FOV视角+4是可以得到横向的FOV视角的,如图
2.2总结FOV视角
由上可总结出我们的FOV视角纵向地址和横向地址分别为
client.dll+1A0A2A8
client.dll+1A0A2AC
第三步:找敌人坐标地址
3.1找敌人血量
CE搜索四字节100,因为敌人血量100
然后随便找个敌人给他来一刀,不要刀头,然后切换为减少的数值,点击再次扫描,如图
数值还是有点多,继续给他来一刀,再次搜索减少的数值,如图猜测20应该就是敌人的血量,数值不多了,再切换为未变动的数值搜索一次
将这些数值全拉到地址框,全改为999,然后刀敌人看是否减少血量,若减少了,则确认就是敌人的血量
3.2找敌人人物偏移
对任意一个血量数值右键找出是什么改写了地址,找个一在变化的然后点击More infomation,如图
我们将他提示的可能的地址复制下来,然后在CE中16进制进行搜索,最后往下拉可以看到一个绿色的地址,将这个绿色地址保存到地址框,如图
对保存下来的地址右键找出是什么改写了这个地址,然后Show Disa....,然后右键地址点击Find out what...,如图
Find out what后出现一个框,选中任意一个数据,右键然后open dissect..,再一直确认确认确认,如图
最后可以看到如下界面,注意看CSPlayerPawn,这里有10个,因为场内有10个人,而且可以发现每个人物之间的偏移为8
3.3找敌人坐标偏移
任意打开一个CSPlayerPawn,往下找可以看的三个连续的Float数据,这便是敌人的X、Y、Z,而且可以左边看到偏移为DB0、DB4、DB8
3.4确认人物基地址
上面可以看到我们是从client.dll+1830260找起的,难道这就是第一个人物的地址吗?不一定,我们可以双击通过血量找到的地址,然后对比人物地址,如图可以看到这个client.dll+1830260其实是第5个人物的地址,所以我们还得减去48才能是第一个人物的地址
3.5总结所有人物地址和偏移
由上可得出所有人物的地址为client.dll+1830218+i*偏移8
(i是一个变量,上面的人物结构可以看到有20个数据,所以后续我们的i可以从0循环到19)
人物的X坐标为client.dll+1830218+i*偏移8+偏移DB0
人物的Y坐标为client.dll+1830218+i*偏移8+偏移DB4
人物的Z坐标为client.dll+1830218+i*偏移8+偏移DB8
结语
在本篇教程中我们找到了自己的坐标、FOV视角、以及场内所有人物的偏移和坐标,希望小伙伴们能手动实操,熟悉找基址的过程,因为这个方法是对任何游戏通用的。
在下篇教程中(制作中)我们将通过Python结合我们找到的基址手写一个CSGO透视辅助,敬请期待....