[开发者心得] [单脚本][反作弊模块] AntiCheatSystem测试版

[复制链接]
1106 |1
叽里咕噜小胡桃 发表于 2024-1-12 14:54:16 | 显示全部楼层 |阅读模式
本帖最后由 叽里咕噜小胡桃 于 2024-2-20 19:29 编辑

近期ts游戏圈外挂传播较多,很多游戏都遭重了。
针对目前比较常见的内存修改器和加速齿轮,我们真IKun坤哥做了一个反作弊脚本功能模块
下载后导入到工程文件,并拖入到场景中~
主要包括以下几个常用功能~
1. 检测作弊功能
1.1. [加速器] 加速器、变速齿轮检测
需要在双端脚本的onStart的方法里调用AntiCheatSystem.checkAccelerator();否则不会生效
每10s检测一次客户端和服务器的时间差值,有1s的容错,但是在丢包的情况下 加速校验可能误报,所以要检测到后继续让C端开启加速器检测,多次报加速器的玩家有大概率为开加速器
image.png
开加速挂了会回调出“pingpongField”,并且停止对该玩家的检测,避免rpc过多影响性能
image.png
实战测试

1.2. [内存修改] 检测脚本变量的内存值被内存修改器修改
目前仅支持number类型被非脚本以外的东西修改(比如内存修改器)
image.png
实战测试 在DefaultUI.ts里对gongJiLi进行保护,对fangYuLi不进行保护
image.png


1.3. [内存修改] 检测阻止C端角色属性被内存修改器修改,并触发回调(目前仍有问题)

这个目前问题比较多,不推荐使用,感兴趣的可以钻研一下
目前仅支持number类型被非脚本以外的东西修改(比如内存修改器)

image.png

加完后别忘了再set一下,不然没有cache就无法检测

实战演示视频


image.png

目前这一块的功能无法检测到UE层的数据变动,所以如果找到了特征值,直接改UE的角色属性,这个脚本防不住
这个脚本能做的是一个钩子,当ts层角色number类型数据改动时,通过gg修改器找到改动数值时有概率改到ts这一层,这时就会触发检测回调,处理玩家(这已经是ts能做到的极限啦jojo~
所以比较推荐大家C端写个脚本,进入游戏后定时修改、浮动一些角色number相关属性的值,让特征值不好定位
并且这个GeterSeter还有个问题就是,服务器修改角色属性同步下来后也会被当做作弊判定,以及如果填入的默认值和编辑器设定的默认值不同时,初始化UE给设置速度的时候也会被误判
image.png
image.png

2. 回调功能

image.png
纯C端回调,检测到作弊时可以采取一定措施,比如向服务器发消息或者调用RPC方法把自己踢了,或者用飞书Bot发送检测报告

[开发者心得] [单脚本] MyClearFeishuBot 通过飞书机器人监控服务器里的事件吧

或者弹出一个极高层级的UI挡住不让继续玩
事实上无论是1.2.内存修改还是1.1.加速器,一般玩家正常玩被误判的概率不大,所以触发回调的时候可以弹出,并提示
image.png

3. 测试用工程
CheatTest.zip (287.93 KB, 下载次数: 65)
回复

使用道具 举报

复读机读复读机 发表于 2024-1-12 18:46:33 | 显示全部楼层
是时候解决加速器玩家了
回复

使用道具 举报

热门版块
快速回复 返回顶部 返回列表