cocos2dx检测及预防外挂加速

本文详细探讨了使用Cocos2d-x游戏引擎开发过程中,如何检测和预防外挂加速的问题。通过分析外挂常见手段,提出了一系列有效的防护措施,包括但不限于性能监控、代码混淆、反调试技术等,旨在保障游戏公平性和用户体验。
摘要由CSDN通过智能技术生成
	目前外挂加速的原理(个人推测):加快app响应频率,例如一秒才响应一次的,调整到一秒响应多次,从而加速游戏速度(当然减速也是相同原因)。
	观察经过:通过观察时间差(deltaTime),发现当外挂调整游戏的时钟频率,时间差也会相应的进行改变,如果只是设置cocos2dx引擎的scaleTime是不会改变这个时钟频率,所以解决方案锁定在检测这个时间差来判断是否使用了外挂进行加速或减速。
	预防:把检查api放到需要的位置,例如游戏登录后通过定时器执行,或者开始战斗后的每帧逻辑里,通过cocos2dx的导演类获得当前deltaTime判断是否在合理范围内(例如,我目前项目正常速度下,时间差为0.033左右),我这里设置的合理范围是0.032至0.034,如果超出合理范围则记录当前的时间,与下一次的记录时间作比较,当连续记录时间超过自设时间(我设置了2秒),则认为是使用了外挂,最后执行自己想要进行的逻辑(我这里设置了跳到登录界面,并弹窗提示玩家使用了外挂),如果没有连续记录,则让记录清零,防止因短暂的频率波动导致误判。
	
	以下是具体代码:
function Util:checkCheat()
    local deltaTime = cc.Director:getInstance():getDeltaTime()
    if deltaTime > 0.034 or deltaTime < 0.032 then
        self:logTime()
    else
        self.dtTime = 0
        
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值