promotional bannermobile promotional banner

InsaneBlade

Nine Sword Style for SlashBlade(and any weapon).Your whole hotbar joins the fight: the other 8 SlashBlades roll to strike with you — with icon bursts, kill-feed flair, and a full-proc JACKPOT.

Insane Blade · 八刀 — Store Page (English)

Developed in pair with Kimi K3 (Moonshot AI); some art/SFX assets are AI-generated.

Summary

Your whole hotbar joins the fight: the other 8 SlashBlades roll to strike with you — with icon bursts, kill-feed flair, and a full-proc JACKPOT.

Description

**Insane Blade ** is a combat addon for SlashBlade-flavored mods (works with SlashBlade: Resharped and any mod whose blades live in the slashblade namespace) that turns your hotbar into a blade formation. When you land a melee hit with a blade in your main hand, each of the other 8 blades in your hotbar independently rolls a chance to join the strike, adding its own damage on top.

Requirements

  • Minecraft 1.20.1, Forge (also runs on NeoForge 1.20.1 47.1.x)
  • A SlashBlade mod to supply the blades (e.g. SlashBlade: Resharped) — without one, the mod simply stays dormant.

Open source under MIT. Issues and PRs welcome on GitHub.

Insane Blade·九刀流 (Forge 1.20.1)

我很喜欢老版本拔刀剑的九刀流,于是我写了这个MOD,让快捷栏上的其余8把拔刀剑参与作战。采用基于概率的触发方式,并且设计了触发反馈与音效。伤害数值与反馈音效开关全部可配置,提供了多种伤害计算模式(可平衡),支持写入拔刀剑以外的任何物品参与九刀流检测(如果你喜欢拔刀剑以外的武器),完全无需拔刀剑前置模组即可生效。

与"拔刀剑:双刃重铸"兼容,数值完全服务端可配置(平衡性)


本模组由作者与 Kimi(Moonshot AI) 结对设计并开发:机制讨论、代码实现与调试中均有 AI 参与。 音效(blade_burst / blade_burst_heavy)与满刀徽章贴图(jackpot.png)为 AI 生成资产。


Proc engine — PRD + Momentum

No pure dice here:

  • PRD (pseudo-random distribution, Dota 2 style): every blade tracks its own miss streak — the longer it misses, the higher its next proc chance, ramping to a guaranteed hit. Long-term proc rate is tunable via the PRD constant (~15–25% out of the box).
  • Momentum: when any blade procs, a short window opens that boosts all blades' proc chance, stacking up to a cap and refreshing on each proc. That's where those "everything fired at once" highlight moments come from — by design, not luck.

Damage models — pick your flavor (server config)

  • FLAT (default): each procced blade adds its damage × damageScale. Predictable, zero surprises.
  • RATIO: bonus scales directly with your main hand's final damage — all your modpack buffs apply proportionally.
  • BLEND: geometric blend of blade damage and main-hand damage (y^(1-α) · x0^α). Buff-scaling with a built-in anti-runaway curve; identical blades behave exactly like FLAT.
  • Safety fuse: maxBonusRatio caps the total bonus relative to your main-hand hit, so stacked-buff modpacks can't spiral out of control.

Cooldown scaling is respected, and the bonus is applied before armor reduction.

Feedback — three overlay styles (client config)

  • BURST — icons pop and float up above your hotbar.
  • KILLFEED — a scrolling feed slides in on the right, one row per proc group.
  • MINIMAL — just a quick counter flash.

Proc counts tier up: 1–4 gold, 5–7 bigger red, and a full 8-blade JACKPOT shows a dedicated emblem with 「疯狂!!」 instead of a number. Slash sound effects pitch up with the proc count. Icon scale, linger time, volume, and per-player toggles are all in the client config — on servers, every player gets their own preferred flavor.

Multiplayer & performance

  • All damage logic is server-authoritative (no cheating surface); vanilla clients can join a server running it — they just won't see the feedback.
  • Server rules live in serverconfig, visuals in per-player config/insaneblade-client.toml.
  • Cost per hit: 8 item reads + 8 RNG rolls + at most one packet. Nanoseconds. No entities spawned, ever.

一.机制

概率引擎

每把刀独立维护"连续未中次数":

本次概率 = min(1, C × (连续未中 + 1) + 剑势层数 × 每层加成)
  • PRD 保底(Dota 2 同款伪随机):越不中越容易中,C×n 涨到 100% 必中。 长期期望由 C 决定:0.033≈15%、0.055≈20%(默认)、0.085≈25%——正好覆盖你要的 15%~25% 区间。
  • 剑势连击:任一刀触发后开启短窗口(默认 3 秒),全体刀概率 +8%/层、最多 5 层、触发刷新时间。 "突然连着几刀全爆"的高潮就是它被制造出来的,而不是纯运气。

伤害计算(三种模式,bonusMode 切换)

  • 触发点:服务端 LivingHurtEvent(LOW 优先级,让绝大多数加伤模组先跑完), 仅当玩家主手持刀亲手近战命中(刀光实体、幻影剑不算);
  • 面板读取走纯原版 API(主手属性修饰符攻击 + 附魔对目标生物类型加成), 不需要引入拔刀剑依赖——零耦合,没装重锋也只是静默不生效;
  • 加成在护甲减免前加入(吃目标护甲/保护)。设本刀主手伤害快照为 x0、摇中刀面板为 y:
模式 公式 特点
FLAT(默认) y × damageScale,再乘攻击冷却比例 与旧版行为一致:数值可预测、零意外;但整合包 buff 与八刀无关
RATIO x0 × ratio ×(y ÷ 主刀面板) 完全挂钩主手最终伤害,整合包加成全吃;buff 同比膨胀
BLEND y^(1-α) × x0^α 挂钩又防爆:9 把相同的刀时与 FLAT 期望一致;buff 越高加成越大,但只按次线性(α=0.5 即平方根级)膨胀
  • x0 是减防前的瞬时绝对值(已过属性/附魔/暴击/冷却缩放与排在我们前面的模组倍率), 每一刀独立快照,无跨刀平均、无状态残留;
  • RATIO / BLEND 的 x0 本身已被原版冷却缩放乘过,不再手动乘冷却比例(FLAT 保留手动缩放);
  • maxBonusRatio 保险丝:八刀总加成不超过 x0 × 该倍数,防 LOWEST 优先级乘算模组二次放大;
  • 设计取舍:三种模式都不吃暴击二次乘算(暴击已含在 x0 里),不引入 mixin—— 想要真正"融进面板"(被后续乘区再次放大)见 V2 路线的 INTEGRATED 设想。

反馈表现(客户端配置 config/insaneblade-client.toml,纯本地、联机各看各的)

  • 四种图标风格(overlayStyle):
    • BURST(默认):屏幕中下侧图标一字炸开,回弹放大、上浮消散;
    • KILLFEED:屏幕右侧连杀信息流,整组滑入、向上堆叠、滑出消散;
    • MINIMAL:极简,只闪一个计数文字。
    • ULTRABURST:屏幕右侧连杀信息流,整组滑入、向上堆叠、滑出消散,同时加上屏幕中下侧图标一字炸开,回弹放大、上浮消散.
  • 计数阶梯:摇中 1~4 把显示黄字 xN,5~7 把红字加大, 8 把全中(满刀)不显示数字——弹出专属徽章 + 红色粗体「疯狂!!」;
  • 质感旋钮:iconScale(图标缩放 0.5~2.0)、lingerMs(停留时长)、volume(音量倍率)、 procSound / procOverlay 总开关;
  • 徽章贴图在 assets/insaneblade/textures/gui/jackpot.png,可换成自己的 128×128 透明底 PNG;
  • 音效自定义:内置两段 AI 生成的斩击音(普通触发 / 3 把以上重度触发),音调随摇中数爬升。 想换成自己的录音:把同名 .ogg 替换进 assets/insaneblade/sounds/ 重新 build 即可 (建议 44.1kHz,注意响度别爆音)。想加更多变体,注册新 SoundEvent + 在 sounds.json 里映射就行。

多人说明

  • 伤害逻辑全部在服务端,无作弊空间;
  • 发包前用 isRemotePresent 检查对端:没装本 mod 的客户端不会收到包,可正常进服,只是没有图标/音效反馈;
  • 伤害规则是 SERVER 配置,联机以服务端为准并自动同步;
  • 图标/音效表现是 CLIENT 配置,每人各调各的,服主与队友互不影响。

性能

每次命中 = 8 次物品读取 + 8 次随机数 + 最多一次发包,纳秒级。 不生成刀光实体、不跑连招流程——"性能爆炸"的源头从设计上就不存在。

二.配置项(存档 serverconfig/insaneblade-server.toml)

键 默认 说明
bladeNamespaces ["slashblade"] 视为刀的命名空间
prdConstant 0.055 PRD 常数 C(15%→0.033,20%→0.055,25%→0.085)
momentumBonusPerStack 0.08 剑势每层全体概率加成
momentumMaxStacks 5 剑势层数上限
momentumTicks 60 剑势窗口时长(tick)
damageScale 1.0 摇中刀计入伤害的比例(0~100%,仅 FLAT 模式)
fallbackAttack 8.0 读不到面板时的兜底攻击
bonusMode FLAT 八刀加成计算模式:FLAT / RATIO / BLEND
ratio 0.4 仅 RATIO:每把摇中刀 = 主手伤害 × 此系数 ×(该刀面板 ÷ 主刀面板)
blendAlpha 0.5 仅 BLEND:几何混合指数(0=纯面板,1=纯挂钩)
maxBonusRatio 2.0 保险丝:八刀总加成上限(主手伤害倍数,0=不设限)

客户端配置(config/insaneblade-client.toml,纯本地)

键 默认 说明
overlayStyle BURST 图标风格:BURST / KILLFEED / MINIMAL
iconScale 1.0 图标缩放(0.5~2.0)
lingerMs 900 反馈停留时长(毫秒)
volume 1.0 音效音量倍率(0~2.0)
procSound / procOverlay true 音效 / 图标总开关

计数阶梯:1~4 黄字,5~7 红字加大,8(满刀)专属徽章 +「疯狂!!」(不显示数字)。

The InsaneBlade Team

profile avatar
  • 2
    Projects
  • 88
    Downloads

More from shenqianxiaoaaaaa

  • HoldYourCamera project image

    HoldYourCamera

    Auto camera switch . Just hold an item, press J, pick a camera — per-item perspective rules with zero config-file knowledge required.

    • 23
    • August 5, 2026
  • HoldYourCamera project image

    HoldYourCamera

    Auto camera switch . Just hold an item, press J, pick a camera — per-item perspective rules with zero config-file knowledge required.

    • 23
    • August 5, 2026