【游戏功能】
一、一个打在空气里的三连击
女王崇拜类三连技能的首测录像里最扎眼的一幕:三道粉色刃光依次飞出,动作行云流水,怪物安然无恙——刃光的轨迹从怪的头顶两指处掠过。量了一下:刃的飞行高度写死在角色头顶上方,而怪的受击区间在头胸。三连发的排面做足了,唯一的命中判定却挂错了高度。多段投射技能的每一发都要过同一道关:它的竖直坐标,落在目标的受击带里了吗?
二、机制原理:错层三连与归位回收
女王崇拜的结构是"三段错层加归位"。错层:三枚蝶刃依次间隔零点一九秒出手,竖直坐标在头胸带内微错开——第一枚锁喉、第二枚割胸、第三枚扫腹,同一目标吃三下的观感是"被割了一整轮"而非"被同一把刀捅三次"。归位:默认状态下刃飞到目标点不消失,回旋飞回掌心——女王的刀不留在别人的地盘上,归位本身就是收招动作,连下一轮的起手都顺理成章。回旋可关,关掉则是"一去不回"的决绝版。蝶刃本体是双层蝶翼加自旋,粉色加色混合让它飞过之处自带残光。
fx-queenbow
三、正确写法:错层三连(引擎侧)
local BLADE = { Y_TOP = -92, Y_MID = -62, Y_LOW = -40, GAP = 0.19 }
function queenWorship:Cast(caster, target)
caster:PlayAction(global.MMO.ANIM_SKILL)
local heights = { BLADE.Y_TOP, BLADE.Y_MID, BLADE.Y_LOW }
for i = 1, 3 do
PerformWithDelayGlobal(function()
local blade = CreateQueenBlade(caster:GetPalmPos())
blade:SetTargetY(target:GetY() + heights[i]) -- 错层: 三枚三个高度
blade:SetSpeed(self._speed)
blade:SetReturn(self._canReturn) -- 回旋开关
blade:OnArrive(function()
target:OnHit(self._dmg / 3) -- 三枚均分伤害
SpawnCrossMark(target) -- 头胸处的十字割痕
end)
end, (i - 1) * BLADE.GAP * 1000)
end
end
-- 蝶刃: 飞行贴图朝向运动方向, 自旋只转翼不转头
function queenBlade:Update(dt)
self._spin = self._spin + dt * 22
self._sprite:setRotation(self._spin)
self._x = self._x + self._dirSign * self._speed * dt
if math.abs(self._x - self._targetX) <= self._speed * dt then
self:OnArrive()
if self._canReturn then self._returning = true else self:Remove() end
end
end
四、四个必须钉死的细节
五、心法:多段技能的排面在错层里
女王崇拜的错层思想适用于一切多段投射:三连矢高度错开、五连拳落点错开、多重火球弹着点错开。错层让每一段都有独立的视觉身份,玩家看到的是"一套组合拳"而不是"一个技能放了三遍";数值上多段合并结算,表现上段段有姓名。排面不是数量堆出来的,是层次错出来的。
全站技术干货持续更新:996 引擎 / Lua 实战帖,语法、参数与示例一篇讲透。进入文章地图 · 查看全部 →
【游戏功能】 一、先抛一个坑 同样是"放一片技能特效",为什么有的游戏炸二十个火球丝般顺滑,有的游戏炸五个就掉帧?直觉答案"…
【游戏功能】 一、一个职业选手的操作拆解 看高手第一视角录像,最费解的操作是:他打一下、退两步、再打一下,全程像在跳一支排练…
【游戏功能】 一、一个被浪费的冰冻 组里新人做了个冰法连招:冰冻命中后立刻接大火球,理论伤害翻倍。试玩却怪怪的——冰冻刚套上…
【游戏功能】 一、一次吓到自己的召唤 召唤兽系统的内测录像里有个名场面:道士按下召唤,屏幕上"啪"地多出一只金毛巨狼,没有地…
【游戏功能】 一、先抛一个坑 领域类技能最怕做成"一次性特效放完拉倒":冰环扩一圈、冻一下、结束——站在领域里的怪第二秒解冻…
【游戏功能】 一、一次只有挨打没有还手的守势 守势类技能首版的哀嚎最一致:"金环弹开了围攻,然后呢?"——然后没有然后。格挡…