CHUAN2 DEV ENGINE
996 正版授权研发中心 · 360 授权合作教学中心 · 抖音传奇直播合作授权 · 快手推广运营商授权
OFFICIAL LICENSED ACADEMY 查验官方授权证书 →
// 威海旷世互娱教学基地 · 技术文章
进阶实战游戏功能996引擎

声东击西:虚晃在左,刀落在右

2026-09-30 15:51 作者:996 技术组 996引擎Lua教程传奇脚本进阶实战游戏功能996引擎

【游戏功能】

if math.random() < 0.7 then bites = true——一行掷骰子的代码,掷出的却是狼怪的性子:七成的它扑向虚晃的方向,三成的它纹步不动看着你演完。声东击西的全部胜负都押在这行骰子上:它扑空,破绽吃你一刀七十;它不上钩,实刀只啃二十。今天拆声东击西,看"虚招系"怎么把一次出刀演成一场心理战。

一、虚晃、扑空、补刀三段

声东击西的循环三段。虚晃段:刀光在狼怪左肩划出一道紫灰色的半弧——虚晃的演出要假得像真的:弧线的大小、出手的前摇、脚步的半寸虚动,样样都是进攻的样子,唯独没有伤害——虚晃段骗的不是观众的眼睛,是狼怪的判断。扑空段:七成的狼怪当场中计,整只扑向刀光的方向,扑空的那半步就是破绽——它挪出去的那一刻,身后的空门敞得明明白白,玩家看的是它扑出去的方向,算的是它回身之前还剩几帧。补刀段:实刀从另一侧递进去,七十点的"破绽"大字砸在它的侧腰——补刀的时机卡在它扑空的落点与回防的起身之间,早一帧它还空着,晚一帧它已合拢。三段的核心是"虚决定实":虚晃画在哪、它扑向哪,实刀的落点就长在哪,整个技能是一场玩家先出题、狼怪来作答的考试。

完整演示在这,默认自动循环:

demo
 fx-fakeout

二、幂尔框架实现:骰子掷在虚实之间

虚招的账本记在狼怪的应答里:

lua
local FakeOut = {}
local BITE_RATE  = 0.7      -- 七成上钩
local DMG_BAITED = 70
local DMG_READ   = 20
local LAG_PIVOT  = 0.32     -- 扑空到补刀的空档

function SL:CastFake(caster, target)
    SL:PlayActorAct(caster, "attack")
    local side = SL:GetValue("facing", target)     -- 虚晃晃向它的正面
    SL:GhostSlash(target, side, "#d2a8ff")          -- 幻影刀光没有伤害
    SL:ScheduleDelay(0.2, function()
        local bites = math.random() < BITE_RATE     -- 骰子在此
        if bites then
            SL:DodgeLeap(target, side, 0.28)        -- 扑向虚的方向
            SL:ScheduleDelay(LAG_PIVOT, function()
                SL:RealSlash(caster, target, DMG_BAITED, "破绽")
                SL:FlashScreen("#ffd8a8", 0.10)
            end)
        else
            SL:ScheduleDelay(0.2, function()
                SL:RealSlash(caster, target, DMG_READ, "格挡")
            end)
        end
    end)
    SL:Cooldown("fakeout", 3.0)
end

return FakeOut

扑空与补刀之间那零点三二秒是全技能的呼吸:骰子掷完、狼怪起跳、空门敞开——玩家的实刀踩着这个空档进去,早一帧门没开,晚一帧门已关。

三、虚实两套的演出规格

虚与实要从第一眼就分得开。虚晃三件套:紫灰色幻影弧、无声、无屑——刀光是虚的,颜色就得"发飘",半透明的紫灰一闪即散;实刀三件套:红金实弧、一声闷响、满屏橙屑——虚的飘、实的沉,观众闭着眼都分得清。狼怪的扑空要给全套:蹬地的尘土、扑出去的整只身影、落地时敞开的侧身——扑空演得越用力,破绽的敞开就越有说服力。破绽大字用紫底金字——紫色是"骗"的家色,金是账,骗来的钱用骗家的颜色装。老狼不买账的那一手也要给戏:它纹步不动、头顶浮一枚灰色"哼"字气泡——三成的不上钩不是随机数的沉默,是一头老狼的性格。

四、定价与三条虚规

虚招系的定价一句话:上钩七十、看穿二十、三秒换式——期望值五十五上下,虚实之间那三十点的差价,就是"骗"这门手艺的手工费。三条虚规:其一,虚招不吃护甲——虚晃本就无伤,破甲对它毫无意义,虚的账只算在它扑空的那几步上;其二,扑空方向可读——老玩家看它蹬地的后腿就知道往哪扑,虚招的破绽是公开的考题,不是暗桩;其三,换式期间禁虚——三秒冷却里连按只出普攻,虚招是节奏不是机关枪。与拖刀计对照着看:同是"骗",声东击西骗的是方向——虚左实右,考它往哪看;拖刀计骗的是距离——佯败诱敌,考它追不追,虚招系的两个门派在"骗眼睛还是骗脚"上分了家。

五、心理系的读心学:骰子两边都要有戏

声东击西最好玩的地方是那三成的"不上钩":七成上钩给玩家成就感,三成看穿给玩家敬畏感——一头永远上当的狼是木桩,一头偶尔看穿表演的狼才是对手。虚招系的深度全在这枚骰子的配比里:上调到九成,骗成了领工资;下调到五成,骗成了开盲盒;七成刚够让玩家在"这次它信不信"的悬念里按下去。对观战者,这也是全场最好看的博弈:虚晃一记,狼怪扑空,观众比玩家先喊出"中了"。工程收尾记一笔:扑空的方向要和实刀的来向严格相反——虚东击西四个字是物理承诺,狼怪扑向左边、刀从右边进来,方向一乱,整场戏的信用就塌了。最后留给数值组的一句话:七十对二十的三倍半差价,配上三秒换式,账是平的——虚招系的平衡点不在伤害差,在骰子两边的戏都值得看。

换式的三秒也不是垃圾时间:骗来扑空之后,接两记普攻把破绽的窗口榨干,再等下一次虚晃——虚招挑节奏、普攻填空档,一套连下来虚中有实。只会按同一个按钮的玩家吃三十点的差价,会衔接的玩家吃的是差价再加两刀,虚招系的上限藏在虚实之间的缝隙里。

写完再留一句给做虚招系的同学:虚招最容易做成"一段多余的动画",而它本该是一场有输赢的读心——虚得够真,它才会上钩;它偶尔不上钩,你的每次得手才值钱。

补一个演示彩蛋位:狼怪连着两次上钩之后,第三次的上钩率悄悄降一成——挨骗的狼也在学习,观众看不见这行账,但老玩家总觉得"这狼越打越精",那就对了。

作者履历与出处

本文由 996 技术组基于 996 引擎官方知识库与浮生梦老师课程体系整理。团队长期从事传奇类引擎 Lua 后端逻辑、客户端界面与商业版本交付,内容以官方知识库与真实项目为出处,按版本持续修订。

← 返回文章地图返回研学路径

幂尔框架 · 实战干货 · 接口调用

LATEST ARTICLES

全站技术干货持续更新:996 引擎 / Lua 实战帖,语法、参数与示例一篇讲透。进入文章地图 · 查看全部 →

进阶实战游戏功能

Lua长按判定:按住计时的两分口径

【语法算法】 上一版埋了个越用越错的隐蔽报错:长按的计时不在抬手时清零——第一次长按松手后,秒表没归零,第二次轻轻一点直接被…

2026-10-02 03:05 996 技术组
进阶实战游戏功能

Lua淡入淡出:透明度的排队渐变

【语法算法】 接着抛坑:淡入没播完又来一个淡出,会怎样?答不好的界面都会出事——同一个面板的透明度被两个渐变同时抢,一个往上…

2026-10-02 03:05 996 技术组
进阶实战游戏功能

Lua波浪排布:相位错开的错落动画

【语法算法】 上一版留了排"齐步走"的图标的隐蔽报错:一排波浪排布的图标同起同落——设计稿上是此起彼伏的波浪,实机上整排图标…

2026-10-02 03:05 996 技术组
进阶实战游戏功能

Lua点击热区:视觉与命中的两套尺寸

【语法算法】 先抛一个坑:按钮太小点不中,为什么不做大热区?界面上那个二十像素的小圆钮,玩家戳三次中一次——把按钮画大又会破…

2026-10-02 03:05 996 技术组
进阶实战游戏功能

Lua受击击退:位移衰减的推离

【语法算法】 vel=vel math.pow(0.01,dt) ——先拆这一行。击退的全部手感都在这一行的衰减里:初速三百…

2026-10-02 03:05 996 技术组
进阶实战游戏功能

Lua受击闪白:叠加渐隐的一层白

【语法算法】 上个月一场闪了全屏的事故成了组里的教材:受击闪白上线第一天,玩家一挨打整个界面白一遍——血条、按钮、聊天框全泡…

2026-10-02 03:05 996 技术组