保持个性

保持个性

这是一个Fabric服务器模组,可基于每个玩家实现自定义的保留物品栏规则。

游戏机制

描述

Minecraft 的 keepInventory 游戏规则为玩家提供了一个重要功能,但遗憾的是,它无法兼顾服务器中不同玩家的偏好。Keep It Personal 是一个 Fabric 模组,旨在通过提供命令来让玩家单独自定义死亡时的掉落物,从而解决这一问题。借助这些命令,玩家可以:

  • 选择死亡时掉落什么,而不影响其他人
  • 自定义其物品栏中哪些部分会掉落

Keep It Personal 的设计目标是轻量且兼容;它完全在服务端运行,并与原版客户端完全兼容。

安装

要安装此模组,只需将 JAR 文件添加到服务器根目录下的 mods 文件夹中。

使用方法

此模组使用单个命令 /kip,以及如下所述的多个子命令。

死亡偏好

下表列出了玩家可以选择在死亡时保留的选项。

名称 描述
armor 玩家装备的头盔、胸甲、护腿和靴子
offhand 玩家副手中的物品
hotbar 玩家快捷栏中的物品
inventory 玩家主物品栏中的物品,不包括上述选项
cursed 玩家物品栏中附有消失诅咒的物品
experience 玩家的经验

子命令

查看所有偏好

要查看你当前偏好的列表,请运行 /kip。

查看单个偏好

要查看你是否选择了某个特定偏好,请运行 /kip <preference>。

死亡时保留所有物品

要在死亡时保留物品栏中的所有物品,请运行 /kip everything。

清除所有偏好

要清除你的偏好并在死亡时掉落所有物品,请运行 /kip nothing。

设置特定偏好

要设置特定偏好,请运行 /kip <preference> <true | false>,其中 true 表示你希望在死亡时保留偏好物品,false 表示你希望掉落它们。

配置

Keep It Personal 可以在 config/keep_it_personal.toml 文件中进行配置。如果你不熟悉 TOML,强烈建议你学习其规范,以便于配置。

禁用特定偏好

如果你希望禁用某一组偏好,使其无法被任何人使用,可以使用 preferences.disabled 属性。例如,以下配置会禁用除 experience 之外的所有偏好。

[preferences]
disabled = ['armor', 'offhand', 'hotbar', 'inventory', 'cursed']

默认值

默认情况下,不会禁用任何偏好。

启用特定偏好

如果你希望某一组偏好 始终 处于启用状态,同样可以使用 preferences.enabled 属性。例如,以下配置会强制启用 armor 和 offhand。

[preferences]
enabled = ['armor', 'offhand']

默认值

默认情况下,不会启用任何偏好。

权限

此模组可选支持 fabric-permissions-api 以控制命令权限。每个命令都可以通过特定权限进行控制。下表包含权限的完整列表。

权限 描述
keep_it_personal.kip 查看他们已选择的所有偏好
keep_it_personal.kip.<preference> 查看并更新特定偏好
keep_it_personal.kip.everything 将所有可用偏好添加到所选偏好中
keep_it_personal.kip.nothing 从所选偏好中移除所有可用偏好

权限配置属性

对于不使用 fabric-permissions-api 或同时使用 OP 权限等级的服务器,你可以为这些命令指定默认权限等级。这在配置文件中通过 permissions.permissionLevel 设置。

权限等级可以是数字值或文本值,其中文本值是首选选项。

名称 文本值 数字值
所有 all 0
版主 moderators 1
游戏管理员 gamemasters 2
管理员 admins 3
所有者 owners 4

例如,要让拥有 moderators 权限等级或更高的玩家能够使用此命令,你需要在 keep_it_personal.toml 中指定以下内容。

[permissions]
permissionLevel = 'moderators'

默认情况下,权限等级为 all。请注意,权限等级会覆盖 fabric-permissions-api 中设置的权限。

默认值

默认权限等级为 0,即授予每位玩家。如果你希望通过权限管理器控制权限,则应相应更新权限等级。

外部兼容性

目前,对其他扩展玩家物品栏的模组的支持情况未知,但很可能不受支持。不过,对 Trinkets 的支持目前正在进行中,未来可能会支持其他模组。