为你的服务器添加锁、钥匙和开锁工具!
本插件目前处于停更状态,不会收到任何更新,直到我决定回归为止。
概述
Locks and Lockpicking 是一款锁具与开锁插件,包含锁、钥匙、开锁工具等诸多功能!它是目前为数不多保持更新的开锁插件之一,是任何服务器的完美补充。该插件深度整合了 Minecraft 的合成机制,这意味着玩家永远无需与命令或告示牌打交道。
功能特性
- 6 个等级的锁具
- 陷阱
- 可开启多把锁的钥匙
- 可选择在哪些世界合成锁、开锁工具和钥匙
- 通过权限限制谁可以合成锁、开锁工具和钥匙
- 开锁工具附带交互式开锁小游戏,而非枯燥的概率判定
- 可以锁住门、箱子和潜影盒
- 上锁的门、箱子和潜影盒只能用正确的钥匙破坏
- 可自定义所有配方的
crafting.yml文件 - 可更改锁、钥匙、陷阱和开锁工具的材质类型,甚至可以设置其耐久度(物品将变为不可破坏),以使用自定义模型数据技巧
- 游戏内查看所有配方
- 包含多语言
language.yml文件,可轻松创建自己的语言文件,以更改插件中的大部分文本 - 可配置的
config.yml文件,用于更改各种选项,例如开锁工具损坏的几率 - 为大多数操作提供可自定义的音效(请确保该音效在你的 Spigot 版本中确实存在)
- 覆盖领地类插件(如 Towny、Factions),但未经充分测试
- 战利品箱可通过命令生成或随机生成
- 可选择让自然生成的箱子以上锁形式出现,但仍包含其原有的战利品
- 管理员可为锁(或任何物品)添加“不可偷窃”标签,使没有相应权限的玩家无法移动该物品
- 门自动关闭功能,时间可配置
- 门的“防偷”选项,使门锁无法被偷走
- 你可以让带有锁的门保持解锁状态
已知问题
- 创造模式可能会干扰插件的部分功能。已知在创造模式下无法使用的功能包括:开锁。
使用方法
如何合成锁、钥匙和开锁工具
这是默认配方,你可以在 crafting.yml 中更改它们。
钥匙的 ID 在合成前显示为空白,合成后会获得一个唯一的 ID。ID 看起来像玩家 UUID,但与制作钥匙的玩家没有任何关联。你也可以让两把钥匙拥有相同的 ID:只需将带有目标 ID 的钥匙拖到另一把钥匙上,它们就会拥有相同的 ID。这对于与朋友共享钥匙很有用。
如何使用锁
锁具有 6 个难度等级。难度 1-5 会改变锁的锁芯数量,难度 6 则使锁无法被撬开,换句话说,只有拥有钥匙的人才能打开它。不同难度的锁芯数量如下:
- 难度 1: 3 个锁芯
- 难度 2: 4 个锁芯
- 难度 3: 5 个锁芯
- 难度 4: 6 个锁芯
- 难度 5: 7 个锁芯
对于箱子和潜影盒:将锁放入箱子/潜影盒的第一个格子(左上角)即可上锁。如果你想避免每次都要撬开自己的箱子/潜影盒/门,请务必在锁住容器前,将一把钥匙拖到锁上以进行关联。
对于门:潜行点击一扇未上锁的门会打开一个菜单,你可以在第一个格子放入锁。如果门已上锁,你可以拿着钥匙潜行点击来打开菜单,取出或更换锁。成功撬开门后也会打开此菜单。其余操作与箱子和潜影盒类似。
如果你忘记为一把无法撬开的锁制作钥匙,请向管理员求助。他们可以绕过锁,为你打开箱子/潜影盒/门。要破坏一个已上锁的箱子/潜影盒/门,你必须使用与该锁关联的钥匙。
如何使用钥匙
锁的 ID 不需要是空白的,如果你想,可以覆盖别人的锁。多个锁可以拥有相同的 ID,这使得多把钥匙可以开启多把锁。你也可以通过将钥匙拖到另一把钥匙上来让它们拥有相同的 ID。
其他事项
如果你用钥匙打开一扇门,它会变为解锁状态,任何人都可以开关它。如果你用钥匙关上一扇门,它会变为上锁状态,没有钥匙的人无法打开它。(刚放入钥匙时,门是解锁的,你需要手动锁上一次。)
开锁小游戏
当撬错锁芯时,有一定几率被踢出小游戏并重置密码,也有一定几率导致开锁工具损坏。默认情况下,难度 I 的被踢出几率是 10%,每高一个等级增加 5%;开锁工具损坏的几率是难度 I 为 30%,每高一个等级增加 8%。
陷阱
陷阱放置在锁旁边的格子里。
药水陷阱
药水陷阱可以填充任何类型的原版药水或喷溅药水,并会对任何撬锁失败的玩家施加/投掷一份该药水的复制品。
填充方法很简单:只需将药水拖到药水陷阱上并放下。如果药水陷阱中已有药水,则新药水必须类型和强度相同。你也可以手持药水陷阱右键点击来清空它。
红石陷阱
这个简单但非常有用的陷阱,会将上锁物品正下方的方块变为红石块,持续 2 游戏刻。这可以用来制作各种陷阱,从地板消失到用粘液块弹射玩家。
战利品箱
普通战利品箱
战利品箱是上锁的箱子,可以通过命令生成,或在配置中启用随机生成器来生成。战利品箱有 5 个等级,对应锁的难度,并拥有一个战利品表(参见配置)。
永久战利品箱
永久战利品箱与普通战利品箱类似,但有几点关键区别:
- 它们在被尝试撬锁后不会消失。
- 它们有可尝试撬锁的冷却时间(在配置中设置)。
- 它们只能通过命令设置。
权限
lockpick.admin: 允许使用管理员命令。lockpick.override: 允许在没有钥匙的情况下打开/破坏已上锁的箱子/潜影盒/门。lockpick.move: 允许移动带有“不可偷窃”标签的物品。lockpick.recipe.view: 允许玩家使用/lockpick recipe命令。玩家默认拥有此权限。lockpick.pick: 允许玩家撬锁。玩家默认拥有此权限。lockpick.craft.lockpick: 允许玩家合成开锁工具。玩家默认拥有此权限。lockpick.craft.key: 允许玩家合成钥匙。玩家默认拥有此权限。lockpick.craft.locks: 允许玩家合成所有锁具。玩家默认拥有此权限。lockpick.craft.traps: 允许玩家合成所有陷阱。玩家默认拥有此权限。
命令
/lockpick: 显示所有命令。权限:lockpick.admin/lockpick lock 1-6: 给予你一个难度 1 到 6 的锁。权限:lockpick.admin/lockpick unstealable: 使你手持的物品无法被移动,除非拥有相应权限。/lockpick lootbox: 打开可更改战利品表的 GUI。/lockpick lootbox 1-5 true/false: 生成一个 1-5 级的战利品箱,可选择是否为永久性。/lockpick reload: 一个实验性的重载命令。
目前获得难度 6(无法撬开)的锁的唯一方法是使用 /lockpick lock 6。
安装与配置
- 下载插件。
- 重启服务器,让插件生成其文件。
- 根据服务器需求修改
config.yml中的选项。
默认配置摘要
主要配置选项包括
language:设置使用的语言文件。worlds:列出允许合成插件物品的世界。tierkickstart,tierkicklevel,tierbreakstart,tierbreaklevel:控制开锁小游戏的难度和开锁工具损坏几率。invertid:反转 ID 分配逻辑,使锁获得 ID,钥匙从锁获取 ID,降低偷锁吸引力。explodable:控制上锁容器是否可被爆炸破坏。LockMaterial,KeyMaterial等:设置各类物品的材质和耐久度。door.autoclose:设置被撬开的门自动关闭的延迟(秒)。door.steal:控制是否允许在撬开门后偷走门锁。sound:章节,为各种操作配置音效。lootbox:章节,配置战利品箱的生成、物品数量、冷却时间等。potiontrap:章节,配置药水陷阱的最大充能次数和效果持续时间。
默认合成配置摘要
合成配方在 crafting.yml 中定义,使用行(1-3)和字母代表材料的方式配置。例如:
lockpick:开锁工具的合成材料列表。key:钥匙的合成图案和材料。weak,normal,tough,strong,fine:对应难度 1-5 的锁的合成配方。master:难度 6(无法撬开)锁的配方,默认需要命令方块和基岩,旨在让普通玩家无法合成。
待办事项
- 更多陷阱类型。
- 为开发者提供 API。
- 可能添加钥匙链功能。
- 更多命令。
- 更多权限细分。
使用本插件的服务器
服务器列表
play.agoriacraft.com(网站:www.agoriacraft.com)
如果你希望将服务器添加到此列表,请联系我并提供服务器 IP 和名称。
数据统计 (bStats)
收集哪些数据?
- 服务器的随机生成 UUID
- 服务器在线玩家数量
- 服务器的在线模式状态
- 服务器的 Bukkit 版本
- 系统 Java 版本(例如 Java 8)
- 操作系统名称(例如 Windows)
- 操作系统版本
- 操作系统架构(例如 amd64)
- 操作系统核心数(例如 8)
- 支持 bStats 的插件列表
- 支持 bStats 的插件的版本
所有数据都是公开且匿名的,不会将发送的信息与特定服务器关联(例如服务器 xyz 正在使用插件 zyx),也不会存储你的服务器 IP。如果你不希望服务器向 bStats 发送数据,可以在 /plugins/bStats/config.yml 文件中将 enabled 设置为 false 来禁用它。但我非常希望你能保持启用,这有助于保持我的开发动力并提供有关插件使用情况的宝贵数据。
统计数据查看链接:https://bstats.org/plugin/bukkit/LocksAndLockpicking
支持与许可
支持开发:
你可以通过 PayPal 支持我的开发工作
https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=5P356KWNJ6VXC&source=url
如果你在捐款信息中告知我你的 Discord 标签,或通过站内私信联系我(我需要核实你的捐款),你将被加入一个特殊的 Discord 服务器。在那里,你可以获取此插件及其他项目的最新开发版本,获得更快的支持,并且你的建议也会得到更重的考量。
许可证: GNU GENERAL PUBLIC LICENSE。