非法简单Moh

非法简单Moh

一个用于标记非法物品、通过提示信息告知用户并阻止使用或持有的模组

管理

Illegal Easy Moh

这是一个面向希望限制用户与不同物品交互方式的服务器的模组。该模组允许标记物品,使其不被允许携带、使用,或对其使用施加限制。

借助此模组,管理员可以将通常写在 Discord 服务器频道内的规则移入游戏领域,并使其成为物品提示信息的一部分。你不仅可以显示某个物品是否属于特定的“违法”类别,并为每个物品添加自定义消息,还可以阻止用户装备或携带它们。

功能

  • 提供一个注册表,你可以注册物品和/或完整的命名空间,并为它们分配一个违法类别
    • 已注册的物品可以归入以下类别:
  • BANNED(禁用)
  • ILLEGAL(违法)
  • RESTRICTED(受限)
  • 阻止用户在其物品栏中拥有 BANNED 物品,方式可以是自动销毁它们或将它们扔到地上
  • 阻止用户装备 ILLEGAL 物品或将它们拿在手中
  • 自定义已注册物品,使其可以通过提示信息向用户解释该物品为何被如此配置
  • 通过 JSON 配置文件或使用命令行命令进行配置
  • 提供英语和西班牙语翻译

工作原理

配置模组

基本配置

你会在“world/serverconfig”内找到一个名为 illegaleasymoh-config.json 的配置文件,其中包含以下属性:

  • overrideBannedCategoryName:允许你更改“Banned items”(禁用物品)类别的标题
  • overrideIllegalCategoryName: 允许你更改“Illegal items”(违法物品)类别的标题
  • overrideRestrictedCategoryName: 允许你更改“Restricted items”(受限物品)类别的标题
  • destroyBannedItemsOnPickup: 布尔值,用于确定禁用物品在拾取时是被销毁(true)还是被丢到地上(false)
  • preventIllegalItemsUsage: 布尔值,用于确定违法物品在装备或拿在手中时是被丢弃(true),还是可以保留在物品栏中(false)

你还会在 /config 文件夹内找到一个名为 illegaleasymoh-common.toml 的文件,其中包含一个配置属性:

POLLING_INTERVAL:此配置决定客户端查询服务器的间隔时间(以毫秒为单位),以确定给定物品的注册表是否发生了变更(如需要查询)。例如,如果你的鼠标停留在某个物品上,模组将每隔 POLLING_INTERVAL 毫秒查询一次服务器,以检查是否进行了任何更改。默认值为 1000ms,最小值为 100ms,最大值为 2000ms。大多数情况下无需更改此选项,但如果由于某种原因你的使用场景要求物品频繁地在类别之间移动,你可能希望降低此值。

黑名单物品

使用 JSON 配置文件:

运行一次服务器,你会在“world/serverconfig”内找到一个名为 iem-blacklist.json 的配置文件。 该文件必须包含一个对象数组,其结构如下

{  
    "namespace": "minecraft",  
    "path": "diamond\_axe",  
    "category": {  
        "category": "2",
        "message": "You can only carry 1 diamond axe"
    }  
}

命名空间和路径代表游戏内的物品标识符。命名空间通常与物品所属的模组相关,而路径则是物品本身的名称。例如:“minecraft:diamond_axe” 对应原版游戏钻石斧的游戏内标识符。在这种情况下,命名空间为“minecraft”,路径为“diamond_axe”。

如果你希望将整个命名空间列入黑名单,可以使用 * 作为路径,例如:


    "namespace": "securitycraft",  
    "path": "\*",

该配置将把整个 securitycraft 命名空间列入黑名单。

category 对象包含 2 个属性,category 本身由一个数字表示,其中:

  • 0 代表禁用物品
  • 1 代表违法物品
  • 2 代表受限物品

message 属性是显示在物品提示信息下部的文本,它是可选的。如果你不希望显示任何类型的消息,只需使用“”作为消息即可。

通过面向管理员的游戏内命令。

有 3 个面向管理员的命令,均以 /iem 为前缀

  • /iem add <message as a string surrounded by "">
  • /iem remove
  • /iem edit <message as a string surrounded by "">

这些命令将使更改持久保存到 JSON 配置文件中,并且如果服务器重启也会被保存。

前置要求

此模组需要 Curios 才能工作,并且需要同时安装在客户端和服务端。

未来版本路线图

  • 允许管理员将特定附魔列入黑名单,并自动从物品中移除它们,但允许用户保留该物品
  • 允许管理员禁用特定层级的元素
  • 允许对物品名称配置使用通配符,例如,“*_pickaxe”将禁用所有名称以 _pickaxe 结尾的物品
  • 允许将用户加入特定注册表条目的白名单

一些截图

禁用物品的外观

违法物品的外观

通过命令行将物品添加到注册表