始终掉落战利品(更新)

始终掉落战利品(更新)

让生物无论因何死亡,总是掉落经验和战利品。

游戏机制

Always Drop Loot

Always Drop Loot 在 Fabric、Forge 和 NeoForge 上的非官方延续版本。

在原版 Minecraft 中,因坠落、岩浆、窒息、营火、溺水、实体挤压以及其他非玩家原因而死亡的生物,可能会丢失依赖玩家击杀的经验或掉落物。本模组使该行为可配置,以便被动农场和自动化系统能够获得预期的掉落物。

版本兼容性

每个受支持的加载器/系列组合均以 单个运行时 JAR 的形式分发。例如,Forge 1.21 的 JAR 声明与整个 1.21.x 系列兼容;无需为每个补丁版本单独提供 JAR。

Minecraft 系列 Fabric Forge NeoForge
1.16.x 不可用 不可用 不可用
1.17.x 不可用 不可用 不可用
1.18.x 不可用 不可用 不可用
1.19.x 不可用 不可用 不可用
1.20.x 1.20–1.20.6 1.20–1.20.6 1.20.1–1.20.6
1.21.x 1.21–1.21.11 1.21–1.21.11 1.21–1.21.11
26.1.x >=26.1 <26.2 >=26.1 <26.2 >=26.1 <26.2
26.2.x >=26.2 <26.3 >=26.2 <26.3 >=26.2 <26.3
26.3.x >=26.3 <26.4 >=26.3 <26.4 >=26.3 <26.4

不可用 表示此仓库不提供该系列的模组构建。1.20 系列中的 NeoForge 支持从 1.20.1 开始。

上述范围为各构建产物声明的兼容范围。每个项目为每个系列使用一个代表性的 Minecraft 版本,如下所列。

项目矩阵

加载器 系列 构建目标 加载器/API 目标 Java 字节码 / 目标运行时
Fabric 1.20 1.20.6 Loader 0.16.10 / API 0.100.8 17 / 视版本而定
Fabric 1.21 1.21 Loader 0.15.11 / API 0.100.4 21 / 21
Fabric 26.1 26.1 Loader 0.18.4 / API 0.144.0 22 / 25
Fabric 26.2 26.2 Loader 0.19.3 / API 0.154.2 25 / 25
Fabric 26.3 26.3 Loader 0.19.5 / API 0.160.6 25 / 25
Forge 1.20 1.20.6 Forge 50.2.10 17 / 视版本而定
Forge 1.21 1.21 Forge 51.0.33 21
Forge 26.1 26.1 Forge 62.0.2 25
Forge 26.2 26.2 Forge 65.1.1 25
Forge 26.3 26.3 Forge 66.0.2 25
NeoForge 1.20 1.20.6 NeoForge 20.6.139 17 / 视版本而定
NeoForge 1.21 1.21 NeoForge 21.0.167 21
NeoForge 26.1 26.1.2 NeoForge 26.1.2.95 25
NeoForge 26.2 26.2 NeoForge 26.2.0.59 25
NeoForge 26.3 26.3 NeoForge 26.3.0.3-beta 25

Minecraft 26.3 目前仅有 Fabric 和 NeoForge 项目。NeoForge 26.3.0.3-beta 是测试版加载器。两个构建均通过了针对被动经验、掉落模式、装备掉落和游戏规则持久化的专用开发服务器检查。客户端和整合包兼容性尚未测试。

安装

  1. 为你的 Minecraft 版本安装 Fabric Loader。
  2. 为同一版本安装 Fabric API。
  3. 将模组 jar 放入你的 mods 文件夹。
  4. 启动游戏或服务器。

本模组实际上是服务端的,因此在单人游戏和专用服务器上都很有用。

配置

本模组通过游戏规则进行配置。由于它们是世界特定的,每个存档或服务器可以有不同的行为。

如果单人世界禁用了作弊,你可以通过以启用作弊的方式对局域网开放世界,来临时启用对游戏规则的访问。

always-drop-loot:always_drop_xp

控制生物在非玩家击杀死亡时是否可以掉落经验。

默认:

/gamerule always-drop-loot:always_drop_xp true

行为:

  • true:当死亡由环境或自动化造成时,生物仍可掉落经验。
  • false:原版风格的经验行为。

always-drop-loot:passive_xp_modifier

控制 非 玩家击杀而死亡的生物的经验倍率。

默认:

/gamerule always-drop-loot:passive_xp_modifier 1.0

行为:

  • 1.0:非玩家击杀掉落生物的正常经验量。
  • 0.5:非玩家击杀掉落一半经验。
  • 0.0:非玩家击杀不掉落经验。
  • 2.0:非玩家击杀掉落双倍经验。

此值仅影响未归功于玩家的死亡。它不会改变正常的玩家击杀经验。

always-drop-loot:loot_drop_mode

控制掉落表如何解释 killed_by_player 条件。

默认:

/gamerule always-drop-loot:loot_drop_mode ALWAYS_AS_PLAYER

可用值:

  • ALWAYS_AS_PLAYER:始终将生物视为被玩家击杀。
  • NEVER_AS_PLAYER:从不将生物视为玩家击杀。
  • VANILLA:使用正常的原版行为。
  • VANILLA_INVERSE:反转原版行为。

此规则影响依赖 killed_by_player 的基于掉落表的掉落物。

示例设置

从自动化农场始终掉落正常经验和掉落物:

/gamerule always-drop-loot:always_drop_xp true
/gamerule always-drop-loot:passive_xp_modifier 1.0
/gamerule always-drop-loot:loot_drop_mode ALWAYS_AS_PLAYER

允许农场掉落物,但减少自动化击杀的经验:

/gamerule always-drop-loot:always_drop_xp true
/gamerule always-drop-loot:passive_xp_modifier 0.5
/gamerule always-drop-loot:loot_drop_mode ALWAYS_AS_PLAYER

保留原版掉落逻辑,但仍允许被动农场获得一些经验:

/gamerule always-drop-loot:always_drop_xp true
/gamerule always-drop-loot:passive_xp_modifier 0.5
/gamerule always-drop-loot:loot_drop_mode VANILLA

致谢

原模组的概念、实现和开源发布的全部功劳归于 sargunv。

此更新分支的存在是为了让模组在较新的 Fabric 1.21.x 版本上保持可用,同时尽可能贴近地保留原始理念和行为。

许可证

此分支继续遵循原项目的 Apache-2.0 许可证。