【游戏功能】
斗蟋蟀是老辈人的电竞:两只虫在盆里对峙,攻防杀三招循环,克制关系决定胜负。今天拆斗蟋蟀的表现,看一个回合制猜拳框架怎么做出"虫王对决"的仪式感。
一、三招克制与回合结算
斗蟋蟀的规则骨架是三招克制环:猛攻克稳守、稳守克必杀、必杀克猛攻。每一回合双方同时出招,克制方结算伤害(普克二十五、必杀暴击四十),同招各退半步。三回合两胜、血量先空者出局——双轨判胜让策略分层:拼血量的稳健流和拼回合的速攻流各有胜场。表现层的三件套:出招前双方蟋蟀须须抖动(蓄势的预告)、结算时克制方的伤害数字带"克制"标、血条分列两侧同步跳变——回合制的读得懂比打得爽更重要。
完整演示在这,选招开斗:
fx-cricket
二、幂尔框架实现:克制结算与回合机
克制关系用映射表,回合状态机三态轮转:
local Cricket = {}
local BEATS = { [0] = 1, [1] = 2, [2] = 0 } -- 猛攻克稳守, 稳守克必杀, 必杀克猛攻
local KEY = { ROUNDS = 3 }
local st = { myHp = 100, foeHp = 100, round = 1, phase = "pick" }
local function AiPick()
-- AI 有三成概率预判: 重复上一手就会被读
if math.random() < 0.3 and st.myLast then
return BEATS[st.myLast] -- 出克制我上手的招
end
return math.random(0, 2)
end
function Cricket.Play(my)
if st.phase ~= "pick" then return end
local foe = AiPick()
st.myLast = my
st.phase = "reveal"
local msg
if my == foe then
msg = "双方同招 — 各退半步"
elseif BEATS[my] == foe then
local dmg = my == 2 and 40 or 25
st.foeHp = math.max(0, st.foeHp - dmg)
SL:ShowHitNum("foeCricket", dmg, my == 2 and "crit" or "counter")
SL:PlayBurst(SL:GetValue("foeX"), 150, "gold", 10)
msg = names[my] .. " 克制! -" .. dmg
else
local dmg = foe == 2 and 40 or 25
st.myHp = math.max(0, st.myHp - dmg)
SL:ShowHitNum("myCricket", dmg, "counter")
msg = "被 " .. names[foe] .. " 克制! -" .. dmg
end
SL:ShowSystemTips(msg)
st.round = st.round + 1
SL:ScheduleOnce(function()
if st.myHp <= 0 or st.foeHp <= 0 or st.round > KEY.ROUNDS then
SL:ShowSystemTips(st.myHp >= st.foeHp and "我方蟋蟀胜!" or "对方蟋蟀胜!")
st.phase = "over"
else
st.phase = "pick"
end
end, 1.6)
end
return Cricket
AI 的三成预判概率是斗蟋蟀的隐形课堂:连续出同一招必被读——教玩家"别有习惯",和猜拳读心是同门师兄弟。
三、蟋蟀的演出与斗盆的氛围
蟋蟀的画法要走"神似"路线:椭圆身、圆头、两根长须、后腿撑地——须须的抖动是蟋蟀唯一的表情,出招前抖得越凶蓄势越足。斗盆用棕色椭圆勾边,盆内淡色铺底——盆是擂台,边界感一画出来,两只虫就有了"场"。结算的克制瞬间要有方向感:伤害数字从败方头顶飞出,彩屑从胜方一侧喷洒——观众不用看血条都知道这回合谁赢了。终局的宣判两拍走:胜方蟋蟀振翅鸣叫(须须快速抖动加一声虫鸣音效)、败方沉默退场,一秒后重开盘——虫鸣是斗蟋蟀的终场哨,没有虫鸣的胜利不完整。
全站技术干货持续更新:996 引擎 / Lua 实战帖,语法、参数与示例一篇讲透。进入文章地图 · 查看全部 →
【游戏功能】 围住一只怪的贪心人人都有:三面堵死一只不漏——可围三阙一的规矩偏偏唱反调:围三面留一口,怪只会往那口里钻——口…
【游戏功能】 元素搭配的老话是水火不容,可战场上的说法得倒过来念:水是雷的引信。引水的机制是一场两步的合谋:先泼一瓢水把地泼…
【游戏功能】 低血大怪的回血机制人人见过,可血珠的回血藏着一手"要你去抢"的心机:它每掉两成血就吐一颗血珠在地上,两秒内不踩…
【游戏功能】 隐形怪人人都遇到过,可现身的机制比隐形狠:它钻进影子里消失,一秒后从你脚下画的影圈里钻出来,背刺三十四点——影…
【游戏功能】 有人纳闷:大怪危机预警里最气人的一档是什么?不是它放大招,是它开阵——法阵一转,转满三秒蹦出两只小狼,好好的单…
【游戏功能】 if chg <= 0.8 then lock = true ——一行把"锁定"写进蓄力里的判定,道破了蓄力炮…