适用版本:0.85.0600
源代码性质:C++思路伪代码,非成品
源码行数:120行
文章编辑:雪舞
编辑时间:2025-5-4
相关文章:
卡冷却池封包(情愿或者雪舞封包工具):
卡冷却池封包
登录流程图:
登录流程图
存在的问题:
1.封包伪造,多次执行登录事件操作
2.没有对登录封包进行双重验证
解决后,不需要再新加BUFF检测冷却池了.
解决方案
***付费内容***
这样就可以淘汰用BUFF来检测的代码了.
不过我们可以再回忆一下以前的解决方法:
x888888_OnScenePlayerEnter 记录冷却池标记:
--非法冷却池检查标记
SetMissionFlag(sceneId,playerId,MF_ILLIGAL_COOLDOWNCHECK,1)
x888888_OnScenePlayerLogin 加入发放冷却池检测BUFF
-- 非法冷却池操作检查
LuaFnSendSpecificImpactToUnit(sceneId, selfId, selfId, selfId, 20006, 600 )
冷却池检测BUFF:
20006 冷却池非法重置检查 90 StdImpact090 1 -1 -1 -1 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 脚本ID 900002 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
冷却池检测脚本:
;非法冷却事件检查
900002=\NewScript\SkillSystem\XYJ_CheckIlligalCoolDown.lua
脚本具体内容:
--非法冷却池重置检查
x900002_g_scriptId = 900002
--**********************************
--BUFF回调
--**********************************
function x900002_OnImpactFadeOut( sceneId, selfId, impactId )
if GetMissionFlag(sceneId,selfId,MF_ILLIGAL_COOLDOWNCHECK) ~= 1 then
--记录日志
local Tip = "玩家"..GetName(sceneId,selfId).." 账号:"..GetHumanGUID(sceneId,selfId).." 非法篡改游戏数据,惩罚原因:非法卡技能冷却"
WriteCheckLog( sceneId, selfId, Tip )
--给玩家的提示
BeginEvent( sceneId )
AddText( sceneId, Tip )
EndEvent( sceneId )
DispatchMissionTips( sceneId, selfId )
--封禁玩家
LuaFnSendSpecificImpactToUnit(sceneId, selfId, selfId, selfId, 42, 0 ) --BUFF 监禁(无法使用技能和物品)
NewWorld(sceneId,selfId,151,24,46)
return
else
SetMissionFlag(sceneId,selfId,MF_ILLIGAL_COOLDOWNCHECK,0)
end
end
剩余 60% 内容需要支付 300.00
金币 后可完整阅读
支持付费阅读,激励作者创作更好的作品。