FPS方框透视辅助开发教学5:绘制所有敌人射线和距离-游戏安全逆向社区论坛-技术社区-学技术网

FPS方框透视辅助开发教学5:绘制所有敌人射线和距离

前言

FPS方框透视辅助开发教学1:数据挖掘和基本绘制
https://www.52xuejishu.com/forum-post/337.html

FPS方框透视辅助开发教学2:编写代码读取玩家数据
https://www.52xuejishu.com/forum-post/339.html

FPS方框透视辅助开发教学3:屏幕坐标转换算法、绘制文本到敌人
https://www.52xuejishu.com/forum-post/340.html

FPS方框透视辅助开发教学4:屏幕坐标转换算法完整解析
https://www.52xuejishu.com/forum-post/345.html

本次内容包含

1.阵营分析:决定画队友还是敌人

2.人物遍历:利用房间人数判断

3.死亡判断:死亡就不绘制

想学习游戏辅助开发没地方?

来这里,我们有基础版299和专业版2024

【基础版】包含4套教学,赠送价值158过检测过保护CE

B站平台可直达下单,手机访问效果最佳

https://mall.bilibili.com/neul-next/detailuniversal/detail.html?isMerchant=1&page=detailuniversal_detail&saleType=10&itemsId=11262567&loadingShow=1&noTitleBar=1

包含:

学习游戏安全,加入游戏安全逆向基础版社区,现在优惠价299
游戏安全逆向:入门科普大全解
https://study.163.com/course/courseMain.htm?courseId=1212474809&share=2&shareId=1020678503
游戏安全逆向工程师:CE基础
https://study.163.com/course/courseMain.htm?courseId=1209141829&share=2&shareId=1020678503
C语言0基础入门游戏辅助开发实践
https://study.163.com/course/courseMain.htm?courseId=1213365801&share=2&shareId=1020678503
易语言0基础游戏辅助电脑脚本开发(正在更新ing)
https://study.163.com/course/courseMain.htm?courseId=1213780852&share=2&shareId=1020678503

优惠下单链接,学习游戏修改作弊、辅助脚本开发、飞天遁地透视自瞄辅助技术,您的最佳选择:
平台下单地址https://mall.bilibili.com/neul-next/detailuniversal/detail.html?isMerchant=1&page=detailuniversal_detail&saleType=10&itemsId=11262567&loadingShow=1&noTitleBar=1
下单后承诺以上四套内容全部开通在网易云课堂、永久观看时效、指导答疑
下单后即赠送过网络游戏检测保护的CE游戏修改器一套(价值158)

【专业版】包含12套教学,内容更多,工具更丰富,详情联系i-xiaodi

https://mall.bilibili.com/neul-next/detailuniversal/detail.html?isMerchant=1&page=detailuniversal_detail&saleType=10&itemsId=11262678&loadingShow=1&noTitleBar=1

阵营分析

利用CE的结构剖析功能,添加队友和敌人,观察

如果和本人数据一致,说明是队友,否之为敌人

可得偏移0x134即阵营数据

图片[1]-FPS方框透视辅助开发教学5:绘制所有敌人射线和距离-游戏安全逆向社区论坛-技术社区-学技术网

死亡判断

这里最简单的方法是找血量,而不是所谓的死亡标记

经过细致测试死亡后人物血量<=1

图片[2]-FPS方框透视辅助开发教学5:绘制所有敌人射线和距离-游戏安全逆向社区论坛-技术社区-学技术网

图片[3]-FPS方框透视辅助开发教学5:绘制所有敌人射线和距离-游戏安全逆向社区论坛-技术社区-学技术网

人物遍历

可以利用for (int i = 1; i < 房间人数; i++)

下标为何起始为1?

因为下标为0是自己,我们从除自身外的其他人开始遍历,所以下标从1开始

故最终代码可以粗略整理为:

该代码仍然为粗略的debug代码,后期慢慢优化即可

距离绘制

距离我们采用2D距离,细节:2D距离除以10,因为2D距离太大了,方便显示

char nText_2D距离[54];
sprintf(nText_2D距离, "●:%.0f m", 二维距离 / 10);
char nText_2D距离[54];
sprintf(nText_2D距离, "●:%.0f m", 二维距离 / 10);
char nText_2D距离[54]; sprintf(nText_2D距离, "●:%.0f m", 二维距离 / 10);

射线绘制

从屏幕底端中心点射出,也就是坐标(1024/2 ,768)

DrawLine(512, 768, 屏幕x, 屏幕y, TextCOLOR);
DrawLine(512, 768, 屏幕x, 屏幕y, TextCOLOR);
DrawLine(512, 768, 屏幕x, 屏幕y, TextCOLOR);

测试视频

0:00 / 0:00
0.75x
1.0x
1.25x
1.5x
2.0x
Video load failed
请登录后发表评论