附魔禁用标签

附魔禁用标签

添加一个数据包标签,禁用附魔、交易、战利品及创造模式菜单中的附魔!

附魔禁用标签

只需在数据包中写一行,即可禁用世界中的任意附魔。

将某个附魔加入一个标签后,它就会不复存在:它不会出现在附魔台、村民交易、战利品箱或创造模式物品栏中,并且会从已经拥有它的物品上被移除。

快速上手:三步禁用一个附魔

假设你想移除经验修补,对吧?

第一步:创建文件夹

进入你的世界文件夹,在 datapacks 内创建如下结构:

<你的世界>/
└── datapacks/
    └── no-mending/
        ├── pack.mcmeta
        └── data/
            └── enchantmentdisabletag/
                └── tags/
                    └── enchantment/
                        └── disabled.json

no-mending 可以任意命名。其他所有内容必须一字不差地按所示拼写。

第二步:填写两个文件

pack.mcmeta

{
  "pack": {
    "pack_format": 15,
    "description": "禁用经验修补"
  }
}

disabled.json

{
  "replace": false,
  "values": [
    "minecraft:mending"
  ]
}

第三步:加载它

启动世界,如果你已经在世界中,则运行 /reload。

就这样。经验修补消失了。

禁用多个附魔

将它们添加到同一个列表中,用逗号分隔:

{
  "replace": false,
  "values": [
    "minecraft:mending",
    "minecraft:silk_touch",
    "minecraft:fire_aspect"
  ]
}

保持 "replace": false。 它告诉 Minecraft 将你的列表与其他列表合并。将其设置为 true 会覆盖其他数据包添加的内容,这通常不是你想要的。

查找正确的附魔 ID

在聊天栏中输入 /enchant @s ,游戏会列出它知道的所有附魔 ID。请完全按照这些名称使用,包括 minecraft: 前缀。

进阶用法

values 列表接受原版标签系统支持的所有内容,不仅仅是普通名称。

一次禁用整个组

在条目前面加上 # 来指向另一个标签并禁用其中的所有内容:

{
  "replace": false,
  "values": [
    "#somemod:cursed_enchantments"
  ]
}

值得了解的是:Minecraft 1.20.1 本身不附带任何附魔标签(这些标签在 1.21 中才出现),因此这适用于模组添加的标签,或你自己在数据包中定义的标签。指向不存在的标签会导致加载失败,所以如果你不确定它是否存在,请使用下面的可选形式。

可能未安装的附魔

指定一个来自未安装模组的附魔会破坏数据包。要使条目变为可选,请将其写成带有 "required": false 的对象:

{
  "replace": false,
  "values": [
    "minecraft:mending",
    { "id": "somemod:lifesteal", "required": false }
  ]
}

这样,无论该模组是否安装,数据包都能正常加载。这是编写供他人共享的数据包的安全方式。

在整合包中使用

任何模组的附魔都可以使用,只需使用该模组的 ID 代替 minecraft: 即可。整合包作者可以将数据包打包到整合包中,这样玩家就不需要自己进行任何设置。

客户端还是服务端?

该模组在服务端单独即可工作,但同时在客户端安装会带来更干净的体验:

  • 创造模式物品栏不会显示已禁用的附魔。
  • /enchant 命令会显示明确的错误消息,而不是通用消息。

这会删除我物品上的附魔吗?

会。 禁用附魔会将其从已经拥有该附魔的物品上移除,而如果一本附魔书最终没有任何附魔,它会变回普通的书。

在禁用任何附魔之前备份你的世界,并考虑补偿那些花费大量时间刷取你正在移除的附魔的玩家。

前置要求

  • Minecraft 1.20 和 1.20.1
  • Fabric 用户需要 Fabric API
  • Forge 用户无需额外内容

致谢

该模组最初由 Greenhouse Modding(以及 ChrysanthCow)制作,他们将其发布到公共领域。原版已被下架,因此这是我制作的重制版本,使其保持可用并附带一些修复和改进。它使用相同的模组 ID 和相同的 enchantmentdisabletag:disabled 标签,因此你现有的任何数据包或世界仍然可以原样使用。(除非……)

原始作品的功劳完全归于他们。现由我维护。