当前位置: 首页 > news >正文

游戏 AI 反作弊|内附解决方案详情!

我们提出使用在游戏中广泛存在的回放日志数据,重构出玩家当局的表现。在回放
日志数据中,我们构建了玩家的时序行为数据,并基于该时序行为数据,分别搭建
了透视和自瞄外挂检测系统,该方法和系统可广泛应用于各种在线游戏平台,提高
游戏平台的公平性和客户满意度。
玩家时序行为数据包括每一个时刻的位置坐标、摄像机/枪口朝向、武器类型、是否
击杀、是否命中等信息,在此基础之上我们进行二次设计加工,构造每个时刻的准
心移动的速度、加速度和目标相对移动轨迹、相对偏向角、目标是否在视野内等特
征,再往上一层,构造以“开火、命中、击杀、回合、对局、玩家历史对局”渐进地
多层次维度的特征。
透视和自瞄是 FPS 游戏里不同类型的作弊问题,我们从同一个时序行为数据中提取
多个特征,其中我们发现部分特征非常明显且富于表达,呈现出正常玩家与作弊玩
家的巨大差异性。我们将多个特征构成的序列喂入模型进行预训练,得到表征之后
再进行分类监督学习,最后对玩家是否作弊进行预测。该方案采用自监督时序模型
对玩家行为数据进行建模,过程分为三个阶段:
在第一阶段,通过对历史玩家对局数据进行对比构造样本,将上述信息输入到模
型中进行学习,该模型能够自主学习游戏玩家的行为模式和数据特征r
在第二阶段,使用少量有标签的历史玩家数据进行监督学习,从而更好的学习到
数据的潜在表示r
在第三阶段,模型对游戏玩家每场行为数据进行处理,以检测其是否存在透视或
自瞄外挂行为。
基于时序行为数据的透视外挂检测方案
作弊玩家使用透视外挂,获取了正常玩家不具备的视野和整体宏观信息优势,也正
因为如此,他们的行为表现的与正常玩家有所不同,例如能在视野信息未知的情况
下进行走位和瞄准,从而获取对枪时的优势,在目标掩体后暴露瞬间会有超出正常
水平的瞄准击杀表现,落在数据上有诸多特征维度可以进行区分,本文我们选取 2
个最为明显的维度进行展示:关键时刻目标相对偏向角的变化,以及综合多个击杀/
多回合的瞄准击杀表现。
1. 关键时刻目标相对偏向角的变化
作弊玩家使用透视后,一般会有很多有意识或无意识的“预瞄准”现象,使得目标相
对偏向角的变化曲线与正常玩家不同。
可以看到,在关键时刻例如击杀前目标在墙后移动的时候,透视作弊玩家的目标相
对偏向角比正常玩家总体偏低,且变化较为稳定。
2. 综合多个击杀、多回合的瞄准击杀表现
作弊玩家在目标遮挡到“视野暴露”的瞬间,能够在很短的时间内完成瞄准与击杀,
与普通玩家的正常反应时间呈现出较大的差距,该差距在综合多次击杀、多回合表
现的情况下尤为明显。
FPS 游戏反外挂
如上图所示,尽管作弊玩家偶尔会“演”,正常玩家也会有偶尔“超神”表现,但是放大
到单回合多次击杀,以及多回合、多场次的瞄准击杀表现来看,透视作弊玩家的平
均反应时间(命中时间差)要比正常玩家低,且稳定,而平均击杀率(对枪 KD)则
比正常高。
下一期,将分享剩余方案详情~

—— END——

今天先聊到这里,看到这里的游戏人,期待下次为大家分享更多游戏行业洞察!

我来自网易~ 是你最得力的游戏行业战略家,也是最硬核的游戏技术布道师,一起让技术发光~ 欢迎各位游戏人一起探讨交流~

tips:《网易智企游戏AI指南》免费领取方式——评论区留言【指南】,立即get√

http://www.lryc.cn/news/321891.html

相关文章:

  • elementUI组件库样式修改整理
  • 还是了解下吧,大语言模型调研汇总
  • Win11初始化系统遇一文解决
  • vr虚拟现实游戏世界介绍|数字文化展览|VR元宇宙文旅
  • kotlin 程序 编译与执行
  • Python学习:注释和运算符
  • 英伟达 V100、A100/800、H100/800 GPU 对比
  • Spark面试重点
  • UGUI源码分析与研究2-从底层实现的角度去分析和调优UI的性能问题和疑难杂症
  • OpenAI的GPT已达极限,更看好AI Agent
  • 【C/C++】详解 assert() 断言(什么是assert? assert有什么作用?)
  • [C++]20:unorderedset和unorderedmap结构和封装。
  • ARM 汇编指令:(六) B 跳转指令
  • ​​SQLiteC/C++接口详细介绍之sqlite3类(十一)
  • 百度智能云+SpringBoot=AI对话【人工智能】
  • 第二十七节 Java 多态
  • 基于Springboot的员工健康管理系统(有报告)。Javaee项目,springboot项目。
  • [论文精读]Dynamic Coarse-to-Fine Learning for Oriented Tiny Object Detection
  • Selenium WebDriver 中用于查找网页元素的两个方法
  • python 常用装饰器
  • 深入解析MySQL日志系统:Binlog、Undo Log和Redo Log
  • 强森算法求两点最短路径的基本流程及代码实现
  • 数据结构入门篇 之 【双链表】的实现讲解(附完整实现代码及顺序表与线性表的优缺点对比)
  • 什么是零日攻击?
  • 阿里云2025届春招实习生招聘
  • 简单了解多线程
  • GEE对上传并读取CSV文件
  • vulnhub-----SickOS靶机
  • slab分配器
  • MySQL面试题之基础夯实