【游戏功能】
if stun > 0 then dmg = dmg * 2.4——一行专挑人不能还手时下手的判定,写尽了落井下石全部的作风:先撞钟把它定住,定住的半秒里每一刀翻倍、必带碎裂,而且落一刀,它定住的时辰还短一截。今天拆落井下石,看"惩罚系"怎么把一个控制技能的空当,演成一段明码的收获期。
一、定人、望井、落石三段
落井下石的循环三段。定人段:先手把钟撞响、把符贴上、把网撒开——总之让它定住——定人段是全技能的前置课:井不是天生的,井是你挖的,它不动的那一秒半,就是井口的尺寸。望井段:它的头顶浮起蓝色的定身条,一格一格走短——望井段是全技能的读秒:这条条就是收获期的货单,条走完井就填平了,剩下的每一刀都是原价的苦活。落石段:刀往定住的它身上招呼,七十二点的"井石"大字刀刀必碎裂——落石段是全技能的兑付:翻倍的账、加倍的屑、必出的碎裂,井里下的每一块石头都听响。三段的核心是"定即加倍":它不动,你的刀就翻倍——这个世界的法则平时讲武德,落井下石这一招专管不讲的那半段。
完整演示在这,默认自动循环:
fx-dropstone
二、幂尔框架实现:井口是一个只出不进的钟
落石的账本挂在它的定身上——
local DropStone = {}
local CRIT_MULT = 2.4 -- 定身期翻倍带碎裂
local STUN_COST = 0.4 -- 落一刀,定身短一截
local PLAIN_DMG = 30
local well = { stun = 0 }
function SL:CastStun(target, dur)
well.stun = dur
SL:Stun(target, dur)
SL:ShowTipAbove(target, "定")
end
function SL:DropStone()
if well.stun <= 0 then
SL:PlayActorAct("self", "attack")
SL:ScheduleDelay(0.18, function()
SL:HitActor("target", PLAIN_DMG)
SL:ShowTipAbove("target", "-" .. PLAIN_DMG)
SL:ShowTipAbove("self", "弹刀")
end)
return
end
local dmg = math.floor(PLAIN_DMG * CRIT_MULT)
well.stun = math.max(0, well.stun - STUN_COST) -- 落一刀,井浅一截
SL:PlayActorAct("self", "attack")
SL:ScheduleDelay(0.18, function()
SL:HitActor("target", dmg)
SL:ShowTipAbove("target", "-" .. dmg .. " 井石")
SL:ShakeCamera(5, 0.24)
end)
end
return DropStone
落一刀井浅一截是全技能的平衡阀:翻倍不是白翻的,每块石头都从井的深度里扣——贪刀的尽头,是它醒来你站在井底。
三、落石的演出规格
定身条是全技能的货单:蓝色的定身倒计时压在它头顶,条走得清清楚楚——货单挂在它头上,玩家的每一刀都在照单下货。井石的三件套:五像素震屏、蓝白金三色迸屑、必出的碎裂光斑——井里落的石头要块块听响,闷刀不配进井。弹刀的戏要"凉":它没定住硬按,刀被弹开、三十点的灰字加"弹刀"小字——原价还带羞辱,这份凉意是教人等井的教学费。定身条随落刀缩短要可读:落一刀条跳一格——井在变浅这件事必须一眼可见,否则玩家不知道自己在花什么。
四、定价与三条井规
惩罚系的定价一句话:定身翻倍、落刀缩时、弹刀原价——翻倍的甜和井浅的险印在同一张单上,收获期的每一刀都在花定身的存款。三条井规:其一,井只认定——减速、灼烧、恐吓都不算井,只有"完全动不了"的那一秒半才开井口,惩罚系的门槛立得高,翻倍才立得住;其二,落石不续井——井里的石头没有一块能垫高井底,落刀不能把定身续回去,贪是贪不出第二口的;其三,井深人人有份——队里谁往井里落刀都翻倍,井是公共的收获期,先到的先石头。与抢空档对照着看:同是打它的空当,抢空档的市是它抡空开的——门开着等你进;落井下石的井是你自己定出来的——井挖好了才开张,惩罚系的两个门派在"等它失误"还是"造它失误"上分了家。
五、惩罚系的连招学:控制和刀,得有一个当月老
落井下石真正示范的是控制与输出的婚姻:控制类技能单拎出来是"它不动",输出类技能单拎出来是"它掉血",两本账一结婚,控制就成了输出的一部分——定身的一秒半,字面意义上就是一段收获期。老玩家的连招表因此改写:撞钟不再是控制技,是落井下石的上半句;寒冰箭不再是减速箭,是井口的挖掘机。对观战者,蓝色定身条配上刀刀碎裂的落石,是最直白的"打法教学"——先定后砍四个字,看一遍就会。工程收尾记一笔:井深的消耗要按刀计不按伤害计——落的是石头不是斤两,一刀一口不管大小,账目清楚玩家才肯规划落石顺序。最后留给数值组的一句话:翻倍对井浅,账面是自平衡的——惩罚系的收益上限握在控制链的手里,控制练得多深,井就挖得多深。
井石还有一手团队里的让法:井就一点四秒,队里手最快的法师先落一发大的,战士的重刀紧随其后——井深的账按秒分给刀最快的人,同一口井里喂进两发最重的输出,翻倍的刀才翻得值。会排的队伍把落石的顺序写成暗号,钟声一响,井里的石头按轻重大小排队落。
写完再留一句给做惩罚系的同学:弱点加成最容易做成"一个乘区",而它本该是一口自己挖自己填的井——井要有深度条、石要块块有响、浅要浅得看得见,玩家挖一口井出来的成就感,比白给十次翻倍值钱。
补一个演示彩蛋位:井底最后一刀落下的瞬间,定身条会先碎成三截再消失——条碎的样式和井石同款,井填平的方式,就是用你落下去的那些石头。
全站技术干货持续更新:996 引擎 / Lua 实战帖,语法、参数与示例一篇讲透。进入文章地图 · 查看全部 →
【语法算法】 上一版的炮台索敌逻辑有个隐蔽报错:炮台永远打同一个怪——即使那只怪已经死了,索敌的游标也不挪窝。追到底索敌的游…
【语法算法】 先抛一个坑:打不完的火系怪怎么办?火抗怪火打不动,换冰系技能要切装备要换面板——切完黄花菜都凉了。元素转换的答…
【语法算法】 上个月的事故复盘会上有个数字被念了三遍:四成——策划写的是"同伴陪疼四成",代码落下去成了"陪疼四十点",两只…
【语法算法】 单行代码拆解:弹射初速=-420——弹射的全部动力就这一行的负初速。负号朝上、四百二十是弹射的初速大小——踩上…
【语法算法】 上一版的减速类模块全按"乘以零点五"来写,帧率无关的版本照搬了这套写法——结果高帧率机上减速效果好,低帧率机上…
【语法算法】 先抛一个坑:怎么把散在四处的怪聚到一起打?逐个拉是笨办法,一个范围技又只能打一片——引力球的答案是一个会动的吸…