介绍
Lazy Utilities
这个小巧且极其简单的模组添加了一些实用功能:伤害设备、伤害交互、伤害/元素反应以及通用功能。
此外,除了下文提到的模块外,这个模组还添加了一些归属于通用类别的内容。
🔽 开发者说明
你好!由于遇到了几个问题,而且这个项目之前在一个模组中处理了太多系统,我决定将其拆分为 六个独立模组。此举旨在减少开销和资源消耗,并降低出现漏洞或不稳定情况的可能性。
⚠️ 重要提示:
之前,所有这些系统都打包在一个模组中。
现在,它们已拆分为独立模组,请根据所需功能分别下载。
此外,你可能已经注意到,NeoForge 版本(v3.4)一直领先于 Forge 版本(v2.9.7)。此次重组将解决这一差异。拆分工作将主要针对 Minecraft 1.21.1 开展,之后再逐步向下移植到 1.20.1。
🔹 名称变更
之前称为 “LZM: X” 的模块现在已更名为 “SLM: X”。
- SLM 是 SL Modules 的缩写,表示这些模块是在 SL Library 基础上构建的模块化扩展。
- 这体现了新的架构:SL Library 作为核心,其他所有模组则作为可选模块运行。
🔹 核心模块
核心系统将与 LZM: Runner 合并,组成:
- SL Library → 负责处理实用功能、同步和核心系统。该版本已与包含更多高级功能的 NeoForge 版本保持一致。
- SL Data-Driven → 负责在早期加载阶段访问外部文件夹或 JAR 文件中的数据。
🔹 内容模块
- SLM: Shaders: 原先内置的光影内容现已拆分为独立模块,同时修复了一些小问题。
- SLM: Codex: 现已成为独立模块。Forge 和 NeoForge 版本已完全同步(例如支持 curios API),并且可以通过数据包中的 JSON 文件添加 Codex 条目。
- SLM: Elements: 原名为 LZM: Elements。元素数量从 5 种扩展到 8 种,新增:Aero、Lumen 和 Umbra。名称已更新,系统也已全面重构。
- SLM: Epic Fight: 原名为 LZM: Epic Fight。Forge 和 NeoForge 版本现在在两个平台上的表现一致。
- SLM: Combat: 原名为 LZM: Better Combat。现在不再依赖 Better Combat,而是作为独立系统,为能力和基于物品的事件处理提供实用功能。
🎯 此次变更的目标
- 降低整体负载和资源占用
- 提供完全模块化的系统(只安装你需要的内容)
- 提升稳定性并减少漏洞
- 同步 Forge 和 NeoForge 版本
- 提升长期扩展能力
感谢你的支持!
命令:
- /lazy-utilities reload mod <modid>
允许你重新加载某个模组的仓库,同时保留它在仓库链中的位置,避免出现错误,或与其他模组及其依赖项发生冲突。它与 /reload 命令相同,但作用范围更明确。 - /lazy-utilities reload mod-list <modid modid modid …>
与上一个命令类似,它允许你一次重新加载多个模组,也可以只加载一个。如果列表中只有一个模组,就会执行上一个命令(lazy-utilities reload mod <modid>);否则会执行此命令。 - /lazy-utilities reload mod-tree <modid>
此命令允许你重新加载目标 modid 及其所有“果实”,也就是所有依赖它的内容。 - /lazy-utilities reload mod-root <modid>
此命令允许你重新加载目标 modid 及其所有“根源”,也就是它运行所依赖的所有内容。
Forge 事件:
CameraControllerEvent:
新增一个事件,可通过在相机上注册“数据包”来控制相机。你可以设置相机效果的偏移量、渐入渐出时间和持续时间。
打包器:
用于粒子、冷却时间、焦点或非焦点标签、STC 和 CTS 的网络打包器
添加内置资源包和全局数据包:
在 .minecraft/lazy_utilities/global 文件夹中,你会找到 datapacks 和 resourcepacks 两个文件夹。你可以将表现为内置内容的资源放入其中,也可以放入具有相同行为的数据包;两者都具有全局生效的优势。
资源包示例:
数据包示例:
盔甲图鉴:
新增物品图鉴,可为武器和盔甲添加数据(之后如果我认为合适,也可能支持其他物品),并提供空间来展示其被动效果、主动技能、描述、属性或天赋能力。
当需要添加的文本太多,普通提示框无法容纳时,这项功能就很有用。
盔甲图鉴:
在这个 Cataclysmic Arsenal 模组的示例中,展示的是盔甲图鉴。
1) 属性
2) 被动效果
3) 主动技能
两者都会像这些按钮一样显示在左侧;盔甲则会旋转。
你可以设置是否显示盔甲架。
武器图鉴:

在这个 Cataclysmic Arsenal 模组的示例中,展示的是武器图鉴。
1) 属性
2) 描述
3) 内部技能
4) 被动技能
5) 天赋技能
两者都会像这些按钮一样显示在左侧;武器则会旋转。
图鉴提示框:
如果物品实现了其接口,就可以访问该 codex。同样,如果你将 innate skill 转移到 codex,将不再能通过 EF 按钮显示它,而是通过 codex 按钮显示,通常是 X。
按下 X 时显示内容的描述因实现数据而异。目前,codex 只能通过代码添加到物品中,但我会评估是否可以通过 .json 来实现。
LZM: Epic Fight
此模块负责为 Epicfight 添加实用工具,帮助你构建提示信息、管理模型、添加文件以及一些事件。
除非你安装了 Epicfight,否则此模块会自然地与你的游戏“隔离”,只有少数选项会始终处于活动状态。
Packer:
Lazy Utilities 2.5 之前的读取、写入和索引系统已被移除。
文件现在直接挂载,每个文件根据其类型有不同的用途。此外,将不再生成动态资源包。
目标文件夹已从
mods/Lazy Utilities/epicfight -> (to) -> lazy_utilities/epicfight 移动
示例

文件夹内的 Zip 文件将被重定向,而 .Jar 文件将保留其原始命名空间。
命名空间由 .toml 文件决定,如果不行,则由 assets 文件夹决定,并且只能注册一个 modid。Minecraft 命名空间被排除在外。因此,不要将此用作全局数据包或资源包。
模型实用工具:
添加用于玩家模型的实用工具,例如获取坐标、基于模型或其周围环境发射粒子等。
这就是为什么它对“Particles on the Blades”和“Cataclysmic Arsenal”的功能很有用。
技能实用工具:
允许你向对象(例如这里的盔甲)添加虚拟函数,如“OnIni”、“OnRemove”、“Update Container”、“onFail”等。例如,这对于“Cataclysmic Arsenal”在持有武器时为盔甲添加能力很有用。
Forge 事件:
PlayerAttackEvent:
它在玩家身上运行,并在动画期间分析攻击的每个阶段。这会自动为武器创建一个接口。在制作或修改物品时,它对于替换原版攻击系统很有用。
这意味着,例如,来自 Cataclysm 的“Ancient Spear”这类攻击时会发射沙尘暴的武器,在战斗模式下会停止工作。在物品中实现这一点可以解决问题,如 Cataclysmic Arsenal 中所见。
RegisterBladeModelConfig:
允许你记录武器的大小、位置等。它用于记录武器的大小,以便例如“Particles On The Blades”模组可以在武器和模型上生成其粒子。
LZM: Elements
负责添加元素、伤害类型、属性、可配置文本粒子、战斗方式等的模块。
此模块会自然地与你的游戏“隔离”;除非你通过配置文件进行配置或从外部访问,否则此处的内容均不可访问。
伤害类型:
- 直接伤害: 元素直接伤害是一种施加于实体时会造成击退的伤害类型,这种伤害在大多数情况下会极大程度地随玩家武器的伤害而缩放,并且对于定向类型的反应(取决于外部条件)会减少所述反应的伤害削弱,这种伤害也是为武器附魔元素时产生的伤害,这种方法可以将伤害100%转化。
- 持续伤害: 持续伤害是由同类型反应添加的一种辅助/支援伤害类型,这种伤害类型缩放幅度较小,并且随着你的武器伤害提升,伤害增幅会降低,这种伤害类型随时间具有平缓函数直至变为平坦,防止攻击继续缩放,这种伤害类型不会造成击退,并且无视敌人100%的护甲,尽管使用相同的元素伤害参数,这意味着例如,持续电击伤害仍会随目标实体的护甲而缩放,但无视护甲仍将导致“真实”伤害,这适用于所有持续伤害类型。
元素及其效果:
- 火:施加火焰持续伤害,一种每刻造成1点伤害的燃烧效果。它会随护甲缩放:对低护甲更有效。如果目标已经着火则不会施加。
- 水:无额外效果(目前)。
- 土:无额外效果。
- 冰:降低移动速度并减缓自然恢复(增加食物消耗)。
- 电:减少玩家获得的总经验值。
元素伤害类型:
- 火:随目标的护甲缩放。护甲越低=伤害越高(最高+30%)。20点护甲(下界合金)时无加成,30点护甲时伤害最多可降低-10%。
- 水:随目标的最大生命值缩放。最大生命值越低=伤害越高(最高+25%)。如果目标的当前生命值较低,伤害会降低(最多-10%)。对飞行实体造成+10%额外伤害。
- 土:如果目标在地面上,造成+20%更多伤害,如果飞行或滞空则-10%。如果目标受到“定身”影响,伤害额外增加+25%。
- 冰:随目标的最大生命值缩放。最大生命值越高=伤害越高(最高+50%)。不受任何其他状态或反应影响。
- 电:随目标的护甲缩放。护甲越高=伤害越高(30点护甲时最高+75%)。如果目标受到“导体”影响,伤害额外增加+30%。
ERCS – 实体反应冷却护盾:
实体反应冷却系统(ERCS)为实体触发的反应引入了独立冷却,防止它们被过于激进或连续快速地触发。
每个反应都有特定的冷却时间,具体取决于该反应是正向、反向还是静态:
- 正向:起始元素占主导地位的反应,其结果允许继续或连锁反应。
- 反向:元素的逆序,通常造成最大伤害但在此过程中消耗两种元素。
- 静态:无论元素顺序如何,反应行为相同,因为它不遵循任何逻辑依赖。
重要的是,冷却时间不在反应之间共享。例如,蒸发(火+水)的冷却时间与蒸发(水+火)不同。
| 反应 | 直接 | 逆向 | 静态 |
|---|---|---|---|
| 融化 | 850 | 925 | – |
| 超载 | – | – | 420 |
| 蒸发 | 580 | 605 | – |
| 冻结 | – | – | 1200 |
| 感电 | – | – | 300 |
| 冷却 | 315 | 380 | – |
| 燃烧 | 315 | 335 | – |
| 导体 | – | – | 335 |
| 超导 | – | – | 530 |
| 扎根 | – | – | 335 |
ERGCS – 实体反应全局冷却护盾:
实体反应全局冷却系统(ERGCS)引入了一种全局护盾机制,可在护盾激活期间阻止实体触发任何元素反应。
该系统使用反应强度计数器(或“护盾值”)。反应的破坏性越强,其强度值就越高,护盾值也会增长得越快。护盾激活时,实体会暂时免疫后续的所有反应。
护盾会随时间衰减:
- 每次受到攻击时,护盾值减少 1 点。
- 护盾值还会每 2 刻被动衰减。
护盾值耗尽后,实体便会再次受到反应影响。
该系统仅适用于可能触发多次反应的高生命值实体。低生命值或抗性较高的实体通常会在护盾激活前死亡或抵抗反应。
| 反应 | 强度(正向) | 强度(反向) | 强度(静态) |
|---|---|---|---|
| 融化 | 13 | 17 | – |
| 超载 | – | – | 8 |
| 蒸发 | 10 | 12 | – |
| 冻结 | – | – | 25 |
| 感电 | – | – | 3 |
| 冷却 | 4 | 6 | – |
| 燃烧 | 4 | 5 | – |
| 导电 | – | – | 6 |
| 超导 | – | – | 10 |
| 扎根 | – | – | 6 |
反应强度规则:
- 正向:触发元素占主导地位,并可能引发重复或连锁反应。
- 反向:消耗两种元素并造成最大伤害的反应。
- 静态:不受元素顺序或逻辑依赖关系影响的反应。
ICD – 内部冷却机制:
内部冷却机制(ICD)会在连续的元素附着或传递之间引入冷却时间。它可以防止普通攻击过于频繁地附着元素,从而维持普通攻击与特殊技能之间的平衡。
武器附着元素(例如火元素)后,每2.5 秒只能对目标附着或传递该元素一次,或者在连续命中 3–4 次后才能再次触发。此限制仅适用于普通攻击。
特殊技能不受此限制,始终会附着其对应元素。
ICD 的行为具有动态性,具体取决于:
- 源实体的特征。
- 武器的属性。
- 交互是通过普通攻击还是技能触发。
元素转移:
元素通过 ICD 转移时,会将额外数据从源实体传递给目标实体。其中包括用于确定反应伤害倍率的元数据,该倍率取决于源实体的武器属性和基础伤害。
反应伤害分为两种主要类型(此处不作详细说明)。
元素持续时间(单位:刻):
| 元素 | 持续时间 |
|---|---|
| 火元素 | 120 刻(约 6 秒) |
| 水元素 | 105 刻(约 5.25 秒) |
| 岩元素 | 140 刻(约 7 秒) |
| 雷元素 | 80 刻(约 4 秒) |
| 冰元素 | 105 刻(约 5.25 秒) |
每种转移的元素都有表中所示的持续时间,请牢记这一点!
元素追踪:
仅当 “./config/lazy_utilities/LZM_Elements.toml” 中的 “allowElementsInEnvironment” 被设为 true 时生效
- 水元素:游泳、站在水方块上、处于雨中或获得普通药水效果(本质上就是水)时触发。
- 火元素:在熔岩中游泳、站在岩浆块上、被烈焰人或岩浆史莱姆攻击,或着火时触发。
- 岩元素:长时间处于沙漠或类似生物群系、长时间待在地下,或被困在方块中并窒息时触发。
- 雷元素:被闪电击中时触发。
- 冰元素:处于暴风雪中、长时间待在冰冻生物群系或高海拔地区,或被困在细雪中时触发。
好了,现在我们已经了解了伤害类型、其特征和部分功能,接下来看看元素反应……
仅当 “./config/lazy_utilities/LZM_Elements.toml” 中的 “allowReactions” 被设为 true 时生效
以下信息可能会因平衡性调整或顺序变更而改变;未来添加更多元素时,也可能进行修改。
即时反应:
“即时”反应是指在单个刻内触发并完全结算的反应,分为两个子类别。
未确定反应: 这些反应不受目标影响,其伤害、行为和执行数据完全取决于触发反应的实体。
超载
- 继承触发武器基础伤害的 100%。
- 激活时,对目标造成武器伤害的 125%。
- 触发爆炸效果,对范围内(AoE)的目标造成相同伤害的 75%。
- 使目标击退。
- PvP 注意事项:如果启用了 PvP,玩家只会受到直接反应伤害,不会受到范围爆炸伤害。
蒸发
- 继承触发武器伤害的 100%。
- 普通反应造成武器伤害的 145%。
- 在逆向反应(先施加水元素,再施加火元素)中,伤害提升至 170%。
融化
- 继承触发武器伤害的 100%。
- 普通融化反应造成 165%伤害。
- 在逆向反应(基于火元素)中,伤害提升至 170%。
- 如果使用双火元素(意指叠加),反应可造成 200%伤害。
伤害类型说明:最后施加的元素决定反应的最终伤害类型。
例如:如果先施加水元素,再施加火元素,该反应便属于火元素伤害。
判定型反应:这类反应主要取决于目标,虽然伤害倍率会受来源武器的属性影响,但影响范围有限。
冻结
- 伤害根据武器的基础伤害缩放,且收益递减:
- 40 点伤害 → 无削减(0%)。
- 20 点伤害 → 伤害降低 35%。
- 0 点伤害 → 伤害降低 70%。反应伤害等于
- 目标最大生命值的 14%。
- 对高生命值目标,基于冰元素的冻结伤害最多可提高 +50%。
- 伤害上限:基础反应伤害上限为 175。冰元素加成达到上限时,伤害上限提高至 262.5。
持续触发的元素反应:
这类反应造成的是持续伤害(DoT),而非即时伤害。包括以下反应:
- 感电
- 寒冷
- 燃烧
特点:
- 无视目标 100% 的护甲。
- 不会造成击退。
- 伤害会根据施法者的武器伤害动态缩放,而非使用固定数值。
此类伤害被归类为“毒素类”(即稳定的周期性伤害输出)。
逆向反应倍率:
某些持续触发的反应在特定元素作为基础元素时,可获得逆向反应加成:
- 寒冷反应:如果基础元素为岩元素,总伤害提高 +15%。
- 燃烧反应:如果基础元素为岩元素,总伤害提高 +18%。
注意:这些反应也会受到前文介绍的元素伤害倍率系统影响,并完整计入元素增幅、抗性和反应修正。
功能性反应:
效用反应会改变实体与元素伤害和控制效果的交互方式。它们不会直接造成伤害,而是增强其他效果或改变受影响实体的属性。
导体
- 效果:使实体受到的雷元素伤害提高+30%。
- 次要效果:每3秒有10%的几率让实体遭受雷击(成功触发后消耗该反应)。
超导
- 效果:使实体的全类型抗性降低20%。
- 替代效果:如果无法降低抗性,则改为使实体受到所有来源的伤害提高+10%。
扎根
- 效果:使实体受到的岩元素伤害提高+25%。
- 移动惩罚:使移动速度降低15%。
反应表:
| 基础 \ + | 火 | 水 | 岩 | 冰 | 雷 |
|---|---|---|---|---|---|
| 火 | — | 蒸发 | 燃烧 | 融化 | 超载 |
| 水 | 蒸发 | — | 扎根 | 冻结 | 感电 |
| 岩 | 燃烧 | 扎根 | — | 寒冷 | 导体 |
| 冰 | 融化 | 冻结 | 寒冷 | — | 超导 |
| 雷 | 超载 | 感电 | 导体 | 超导 | — |
其他功能:
它还添加了一种新的粒子类型,这种粒子的类型为“text”。通常在对实体应用元素或触发元素反应时会看到它。反应需要(某种程度上)能够访问 ICD;如果尝试通过 /effect 将“reaction”作为效果应用时没有相关数据,操作就会失败。
…
常见问题
Lazy Utilities [Deprecated] 支持哪些 Minecraft 版本?
Lazy Utilities [Deprecated] 支持 Minecraft Java 版 1.20.1–1.21.1,共 2 个版本,可用的加载器:Forge / NeoForge。下载时注意选择和你游戏版本一致的文件。
Lazy Utilities [Deprecated] 怎么安装?
先用 PCL2 或 HMCL 启动器安装对应版本的 Forge / NeoForge,再把下载的 .jar 文件放进游戏目录的 mods 文件夹,重新启动游戏即可。开启了版本隔离的,mods 文件夹在 versions/版本名 下面。
Sleys 的其他作品
查看全部 →Epic Fight – EDP (Extended Datapacks)
允许你在数据包中为类别添加被动技能,并可在样式、蓄力攻击及其他一些内容中使用 SkillDatakeys。
SL Library
添加各种基础工具、同步辅助、策略、数据包发送和数据驱动功能。
SLM: Shader
一个搭配 ShadersFx 使用的小型前置库,提供撞击帧、噪点叠加、颜色叠加和径向模糊【向内与向外】。
SLM: Epic Fight
为 Epic Fight 的技能系统添加实用工具,用于创建被动技能、先天技能并实现事件;以及模型、注册与同步工具。
评论
登录后评论和评分