【游戏功能】
打击组报过一条谁也没当回事的记录:同一只大怪的同一爪,有人挨了二十,有人只挨十——装备一样、站位一样、连挨打的帧都一样。排查到最后,少的那个十不是巧合,是一层石肤把刀接走了一半;而那层石肤的主人,此刻正被大怪越追越近、一步都跑不动。今天拆石肤咒,看"附身防御"怎么把一张皮,变成一笔软硬的交换。
一、披石、卸力、碎壳三段
石肤咒的循环三段。披石段:一层青灰的石纹从脚底爬上来裹满全身,头顶亮出石肤的倒计时和壳的存量——披石段是全技能的立约:五秒的硬皮、六十点的壳,壳是白纸黑字的存量,挨多少刀就扣多少数。卸力段:大怪的一爪二十砍在身上,石纹当的一声接住一半,飘出"壳十"和"血十"两行字——卸力段是全技能的核心:减半不是消失,二十的刀分十给壳、十给血,壳替人挡的那一半记账在壳上;壳有六十,挡得住三轮半,第四轮就是肉。碎壳段:存量扣完或者五秒到点,石纹当场碎裂散开,皮软回原样——碎壳段是全技能的兑现:壳的碎法有两种,被刀磨碎的和到点自己散的,散的安静碎的响,但散完都一样——你没壳了。三段的核心是"硬要收租":石肤咒的防御从不是白给的,它收的租叫脚程——披着石的每一步都比平时沉四成,硬是买来的,买硬的钱是跑。
完整演示在这,默认自动循环:
fx-stoneskin
二、幂尔框架实现:石肤是一个有存量的壳
石肤咒的账本就是一个有存量的壳——
local StoneSkin = {}
local SKIN_LIFE = 5.0 -- 披五秒
local SKIN_POOL = 60 -- 壳六十存量
local SKIN_CUT = 0.5 -- 卸一半
local SKIN_SLOW = 0.6 -- 脚剩六成
local skin = { t = 0, pool = 0 }
local cd = 0
function SL:CastSkin()
if skin.t > 0 or cd > 0 then return end
skin.t = SKIN_LIFE
skin.pool = SKIN_POOL
cd = 8.0
SL:TipAboveMe("石肤!")
end
function SL:TakeHit(raw)
if skin.t <= 0 or skin.pool <= 0 then return raw end
local cut = math.round(raw * SKIN_CUT)
cut = math.min(cut, skin.pool) -- 壳只赔剩下的数
skin.pool = skin.pool - cut
SL:TipAboveMe("壳-" .. cut)
if skin.pool <= 0 then
skin.t = 0 -- 壳碎咒散
SL:BreakSkin()
end
return raw - cut
end
function SL:MoveSpeed()
if skin.t > 0 and skin.pool > 0 then return SL:BaseSpeed() * SKIN_SLOW end
return SL:BaseSpeed()
end
return StoneSkin
存量封顶是全技能的筋骨:math.min(cut, skin.pool) 一行管住了壳的底——最后一刀只赔壳里剩的数,绝不透支;扣血走 TakeHit、走位走 MoveSpeed,两本账各查各的 skin,减伤和迟滞永远同披同散。
三、卸力的演出规格
石纹是全技能的脸面:青灰的纹路贴着身形长出来,不是套壳是长壳——纹要随呼吸微微发亮,亮一停玩家就以为壳没了。两行账要"分":挨刀那一瞬"壳十"灰字在上、"血十"红字在下,一格之隔同帧飘出——一刀两账分开念。裂纹要"长":壳每挨一刀,身上多一道斜的暗纹,纹越攒越密——裂纹是存量的刻度,比头顶的数字更让人心慌;心慌了才知道该撤了。碎裂要"响":壳碎的一瞬石屑四溅、脆响一声,溅出去的石屑落一地——碎要有动静,安静的散伙玩家会以为还在壳里。脚步要"沉":披石走路的步子落点带一小圈尘土、频率慢半拍——沉是演出来的,光在数值里慢不叫沉,叫卡。
四、定价与三条石规
附身防御的定价一句话:五秒硬皮、六十存量、挨刀减半、脚沉四成——三轮半的大怪爪击被壳接走九十点,账面稳赚;可这九十点的代价写在脚下,披石的人追不上人,也逃不远。三条石规:其一,减半不减痛——壳接一半血接一半,二十的刀永远是二十的疼分两处算,石肤不是免伤是分账;其二,壳是硬顶——存量扣完咒当场散,到不了点、撑不了场,硬皮没有延期;其三,租按秒收——五秒一披脚沉五秒,硬的时间就是慢的时间,两笔账同进同出。与铁壁对照着看:同是"拿东西替人挨刀",铁壁是立在外面的墙——墙碎了溅铁屑,人和墙是两件东西;石肤是披在身上的壳——壳长在人身上,卸的力直接分在两本血账上,附身系的防御没有"挡在前面"只有"分在身上",借物御刀和披石受刀,是硬气功的两个门派。
五、石肤的顶刀学:披石是为了站桩那三秒
石肤咒真正交付的是"站与走的切换":披石站桩硬顶,散皮撒腿就跑——这个技能的本质是把"什么时候该硬"变成一个五秒一档的决策。老玩家的用法是"换挡":大怪抬手连拍的那两轮披石硬吃,壳替血挨刀;它喘息的那一拍散皮走位、回蓝回位,等下一轮拍击再披——硬五秒、软五秒,一场仗就在换挡里过完。莽的打法也有:披着石顶着怪的脑门对拍,比谁先见底——壳六十对拍击四十,账面居然赢,但第四轮的空档够它拍两轮肉,赢面全押在出招的先后。对观战者,石纹上裂纹一道一道爬满、最后一刀石屑炸开,是最有"阵地感"的镜头:观众看得出这五秒是拿脚程换的,壳碎的那一声脆响就是租期到了。工程收尾记一笔:裂纹的道数要和存量余数对得上——壳还剩三十裂纹已经爬满,或者壳快碎了一道纹都没有,账和画对不上玩家就不信这层壳。最后留给数值组的一句话:九十点的卸力对四成的脚程,一场仗五秒一换能省下两瓶药——石肤咒的定价不是挡多少刀,是"玩家舍不舍得把跑的能力押给硬"——舍得的站得住,不舍得的活得久。
写完再留一句给做附身防御的同学:石肤最容易做成"减伤百分之五十的开关",而它本该是一层看得见裂纹听得见脆响的壳——纹要贴身长、账要两行分、碎要有动静——壳立住了,玩家才会把硬当成五秒的租约而不是常驻的底牌。
补一个演示彩蛋位:壳碎的那一帧,最大那道裂纹会先白一下再整壳崩开——白的一瞬是"存量见底"的最后确认,确认一过,落一地的石屑就是这五秒租金的收据。
全站技术干货持续更新:996 引擎 / Lua 实战帖,语法、参数与示例一篇讲透。进入文章地图 · 查看全部 →
【游戏功能】 把怪往远处引会怎么样?多数战斗里答案是"它跟你到天涯海角",可在归巢线的规矩里,答案是你敢拉出它的地界,它就敢…
【游戏功能】 血池阵的全机制就一句话:脚边开一池血露,泡在里面每秒回十二,可池子只有一百二的存量——你回多少它扣多少,存量见…
【游戏功能】 if pts[tp].hits = 3 then seal = 8 end ——一行数到三就封穴的代码,藏着封…
【游戏功能】 打击组报过一条谁也没当回事的记录:同一只大怪的同一爪,有人挨了二十,有人只挨十——装备一样、站位一样、连挨打的…
【游戏功能】 数值组对过一笔让人生气的账:一条大怪被毒得明明白白,血线掉到七成的那个瞬间,毒的扣血流水戛然而止——毒没了,可…
【游戏功能】 为什么有的召唤兽见怪就咬,有的站着看戏?差的多半不是等级,是一条契——没认主的兽再凶也是野的,认了主的兽才分得…