2.21.0 - The Adventure Awakening Update
on 2025 Apr 04注意: 在寻找附加组件吗?可在社区上查看完整的EssentialsX集合!
终于,🎉 EssentialsX 2.21.0版本发布啦!此版本支持《我的世界》1.21.4版本以及“花园觉醒”更新内容,对插件内的文本进行了重制,为使用MiniMessage的富文本组件添加了初步支持,还带来了一些新特性并修复了若干漏洞!
感谢为本版本贡献代码的每一个人(其中许多人列在了本版本发布内容的末尾),也感谢在Crowdin上参与翻译工作的所有人。
此外,还要特别感谢我们社区的成员们,他们在GitHub和MOSS上帮助了无数人使用EssentialsX,包括@Evidentsinger14、@JasonHorkles、@ImDarkLaw、@Chew等等。
EssentialsX项目是由社区推动的。如果你想帮忙,可以通过以下方式贡献:
最后,要向我们在Patreon和GitHub Sponsors上的支持者们大声致谢! 特别感谢我们的“英雄”层级支持者:
- AKP
- @jharrison123
- @aternosorg
- @pebblehost
你们的支持让我们能够继续在业余时间投入大量精力,为大家开发和改进EssentialsX。如果你有多余的零钱,可以点击下面的按钮之一,以一次性或每月定期捐赠的方式支持EssentialsX项目:
支持的服务器版本
EssentialsX正式支持Paper服务器软件。具体来说,EssentialsX旨在以下《我的世界》版本上运行:
- ✅
1.21.4
- EssentialsX针对此版本积极开发并提供支持。 - ⚠️
1.8.8
、1.9.4
、1.10.2
、1.11.2
、1.12.2
、1.13.2
、1.14.4
、1.15.2
、1.16.5
、1.17.1
、1.18.2
、1.19.4
以及1.20.6
- 这些版本仍受支持,但并非我们的优先事项,未来版本可能会不再支持。 - ⚠️ Spigot仍受支持,但对我们来说优先级较低,未来版本可能会不再支持。
我们建议使用最新版本的Paper。EssentialsX包含一些重要改进,这些改进需要Paper支持,包括:
- Paper的异步区块加载可减少玩家传送时的卡顿峰值。 CraftBukkit和Spigot不支持插件的异步区块加载。
/anvil
、/grindstone
、/cartographytable
、/loom
、/smithingtable
以及/stonecutter
仅在Paper上受支持。 CraftBukkit和Spigot不支持这些所需的API。- 《我的世界》1.12及以上版本中的
/recipe
需要Paper来避免CraftBukkit和Spigot引入的复制漏洞。 - 与CraftBukkit和Spigot相比,Paper包含了无数的整体性能优化。
EssentialsX不支持以下《我的世界》版本或服务器软件:
- ℹ️ 暂不支持Folia。我们正在努力提供对Folia的适当支持。 不要尝试在Folia或其分支上使用当前版本的EssentialsX - 可能会丢失用户数据。
- 🛑 “超高性能”的Paper分支,包括Akarin、Yatopia以及类似项目。 这些通常会有非标准行为,可能会破坏你的世界和已安装的插件。
- 🛑 Mohist - 已知Mohist项目存在问题,过去曾诱骗用户删除官方的EssentialsX文件并安装非官方版本。 我们无法保证EssentialsX非官方版本的安全性或功能性;应尽可能避免使用Mohist。
- 🛑 其他Forge/Bukkit混合服务器,包括Cauldron、Thermos、Magma、CatServer、Arclight - EssentialsX是为Bukkit API构建的,该API无法很好地支持模组。 对于运行《我的世界》Forge、NeoForge或Fabric的模组化服务器,你应该使用FTB Essentials。
- 🛑
1.7.10
及以下版本。
升级到2.21.0版本
如果你是从2.20.1版本升级,可以保留当前的EssentialsX配置文件。不过,2.21.0版本添加了几个新选项,你可能需要进行配置。继续阅读以查看新配置选项列表。
从2.20.0或更早版本的EssentialsX升级?请查看之前的更新日志。
已知问题
在Spigot上即使EssentialsX重生点覆盖了出生点,锚点能量也会耗尽
在CraftBukkit和Spigot上,由于CraftBukkit中一个未修复的漏洞,无论respawn-at-anchor
设置如何,锚点能量都会耗尽。这个漏洞在Paper中已被修复。
在Spigot上跨世界传送时飞行模式会重置
在Spigot 1.7.1及更高版本中,由于原版行为的改变,无论world-change-fly-reset
设置如何,玩家的飞行模式都会被重置。Paper服务器对此已有修复方案。(#6012)
重要变更
冒险模式重构(#4717)
EssentialsX 2.21.0对我们的翻译系统进行了全面检修,以添加对聊天组件(Adventure/MiniMessage)的支持。
这带来了按玩家地区设置的翻译以及在我们的messages.properties
文件中对MiniMessage的支持。
所有消息在此次更新前后应基本保持一致。未来的更新将为我们的一些命令添加悬停和点击事件。
在此版本中,消息文件已从plugins/Essentials/
移至plugins/Essentials/messages/
。升级到2.21.0时,任何自定义消息文件将自动转换并移至新位置。
聊天:与其他聊天插件一起使用Paper事件(#6033,#6050)
默认情况下,EssentialsX 2.21.0现在使用Paper的现代AsyncChatEvent,而不是Bukkit的旧版AsyncPlayerChatEvent。这将使EssentialsX在未来能够支持聊天格式中的富文本组件。
然而,如果你使用任何依赖旧版AsyncPlayerChatEvent的插件,在升级到2.21.0时可能会遇到兼容性问题。
目前,你可以通过在config.yml
中将chat.paper-chat-events
设置为false
来切换回旧版事件,但请注意,此配置选项并非长期使用的,未来可能会被移除。
你应该尝试用支持Paper聊天事件的插件替换任何不兼容的插件。
新特性
EssentialsX现在支持1.21.4版本以及“花园觉醒”更新内容(#5522,#5592,#5783,#5834,#5900,#5961,#5985)
EssentialsX现在正式支持Paper和Spigot的1.21.4版本,以及“花园觉醒”更新内容。 对《我的世界》1.21.5版本以及“春日生机”更新内容的支持将在未来的补丁版本中添加。
新的per-player-locale
设置。(#4717)
EssentialsX现在可以用玩家的母语发送消息。
# EssentialsX在发送消息时是否应使用玩家的语言而非服务器的语言?
# 如果你想为服务器和玩家设置不同的语言,这会很有用。
# 例如,如果你将服务器语言设置为英语,而有一位说法语的玩家,你可以将此设置为true
# 这样EssentialsX会用法语向该玩家发送消息,而在控制台中发送的消息仍为英语。
# 如果玩家的语言未知,则使用服务器的语言。
per-player-locale: false
新的message-colors
设置。(#4717)
现在你可以自定义EssentialsX的配色方案,而无需修改messages.properties
文件。
# 更改EssentialsX消息中使用的默认主色和副色。
# 一些消息可能使用自定义颜色,这些需要在相应的消息文件中进行编辑。
# 如需了解更多关于自定义消息的信息,请参阅https://essentialsx.net/wiki/Locale.html
message-colors:
primary: '#ffaa00'
secondary: '#ff5555'
/sell
和售卖标识的乘数(#4770)
具有特定权限的玩家现在可以为通过/sell
或[Sell]
标识出售物品的价值设置可自定义的乘数。这些乘数可在config.yml
中如下配置:
# 允许玩家为通过/sell或售卖标识出售的物品获得乘数。
# 你可以使用下面的'default'等级设置默认乘数。
# 要为不同的人授予不同的乘数,你需要在下面定义一个'multiplier-rank'。
# 创建下面的'multiplier-rank',并赋予相应的权限:essentials.sell.multiplier.<multiplier-rank>
sell-multipliers:
default: 1.0
double: 2.0
triple: 3.0
/mail
命令现在允许清除其他人的邮件。(#4878)
拥有essentials.mail.clear.others
权限的玩家可以使用/mail clear <player>
清除其他玩家的邮件,拥有essentials.mail.clearall
权限的玩家可以使用/mail clearall
清除所有用户的邮件。
/skull
命令现在可以根据材质URL给出头颅。(#5120)
现在你可以使用/skull <texture>
根据材质URL或Base64编码的材质数据给出头颅。
为/itemlore
命令设置传说文本行数限制的选项。(#4773)
现在你可以对玩家使用/itemlore
命令添加的传说文本行数设置限制。拥有essentials.itemlore.bypass
权限的玩家将不受此限制。
# 设置用户使用/itemlore命令可以设置的最大传说文本行数。
# 拥有essentials.itemlore.bypass权限的用户将能够绕过此限制。
max-itemlore-lines: 10
新的socialspy-uses-displaynames
设置。(#5613)
现在你可以指定EssentialX在社交监控中是否应使用用户名而非昵称。
# 社交监控是否应使用可能包含颜色的格式化显示名称。
# 如果为false,社交监控将仅使用玩家的实际名称。
socialspy-uses-displaynames: true
随机传送的各种改进。(#4271,#5990)
与随机传送相关的有多项新增内容。包括一个[RandomTeleport]
标识、可从控制台运行/tpr
的功能,以及以下新的配置选项:
# 如果进行了配置,用户将在随机出生点出生,而不是在新手出生点。
random-spawn-location: "none"
# 如果进行了配置,当用户死亡时,他们将在随机重生点重生。
random-respawn-location: "none"
为/balancetop
定义要求。(#5394)
服务器管理员现在可以通过以下config.yml
选项定义玩家要出现在/balancetop
列表中所需满足的最低余额或游戏时长要求:
# 玩家要使其名字出现在余额排行榜列表中必须满足的要求。
# 游戏时长以秒为单位。
baltop-requirements:
minimum-balance: 0
minimum-playtime: 0
Discord:可设置忽略{color}和{role}占位符的某些角色的选项。(#5157)
现在你可以定义一个应被{color}和{role}占位符忽略的角色列表。
# 应被{color}和{role}占位符忽略的角色列表。
# 用于Discord到MC的聊天格式。
discord-role-blacklist:
- "123456789012345678"
- "Members"
Discord:可定义角色别名的选项。(#5157)
现在你可以在Discord到MC的聊天中继中将角色名称替换为你想要的任何内容。
# 角色别名允许你在Discord到MC的聊天中继格式中将角色名称替换为不同的内容。
# 如果你正在使用角色别名,请确保删除开头的'#',以便能读取该设置。
discord-roles-aliases:
# "123456789012345678": "&c&lAdmin"
# "Members": "Member"
其他新增内容
- 翻译内容已根据Crowdin上社区的最新贡献进行了更新。
- 我们的功能提供系统已被完全重写。(#5087,#6081)
- 我们的依赖项和构建工具已更新到最新版本。(#5685,#5704)
- 工具包现在支持带有自定义模型数据的物品。(#5433)
- 没有
essentials.editsign.waxed.exempt
权限时,无法再使用/editsign
编辑上过蜡的标识。(#5492) /pay
命令现在支持千(k)、百万(m)、十亿(b)和万亿(t)的缩写。(#5457)/whois
和/seen
命令现在会显示玩家是否在白名单中。(#5486)tpr.yml
中的excluded-biomes
设置现在支持自定义生物群系。(#5703)- 在启用
jail-online-time
选项的情况下监禁离线玩家时,现在会将玩家监禁适当的时长。(#5701) /fireball
命令可用于发射风之冲击。(#5951)/delhome
命令现在支持*
通配符。(#5919)- 现在你可以使用
/skull
将头颅目录给予其他玩家。需要essentials.skull.spawn.others
权限。(#5822,#6008) - 为
/alts
添加了一个翻译键,可用于自定义其输出。(#5595) /ess dump
命令现在使用pastes.dev。(#6011)- 聊天格式现在可以按类型(正常/提问/呼喊)进行自定义。(#5337)
- Discord: Discord模块现在也支持Paper的聊天事件。(#5908)
- Discord:
/discord
中的链接现在可点击。(#5934) - Discord:
server-start
消息现在有一个{starttimeseconds}
占位符,用于显示服务器启动时间。(#5686) - 出生点:
/spawn
命令在传送发生之前不再发送其消息。(#6025)
漏洞修复
从2.20.1及更早版本修复的漏洞
- 修复了
/clearinventory
的复制漏洞。(#5899,#5901) - 修复了交易标识的各种问题。(#5574,#5874,#6076)
- 在
/potion
中,现在对药水使用了正确的权限节点。(#5552) - 玩家不能再
/ignore
自己了。(#5488) - 从book.txt文件给予的书籍不再给出无效书籍。(#4920)
- 自定义退出消息现在显示正确的在线玩家数量。(#5541)
2.20.1 - The Trails and Tales Update
on 2024 Nov 29🎉 EssentialsX 2.20.1 已发布,带来了对 1.20.1 的支持和一些 bug 修复。
感谢所有为此次发布贡献代码的人(其中许多人列在本版本底部),以及在 Crowdin 上为翻译做出贡献的每个人!
此外,还要特别感谢我们的社区成员,他们在 GitHub 和 MOSS 上帮助无数人使用 EssentialsX,包括 @triagonal、@JasonHorkles、@Evidentsinger14、@ImDarkLaw、@Chew、@Laarryy 等许多其他人。
EssentialsX 项目由社区提供动力。如果您想帮助我们,可以通过以下方式做出贡献:
最后,向我们在 Patreon 和 GitHub Sponsors 上的支持者们致敬!
特别感谢我们的英雄级支持者:
- AKP
- Vestria MC
- @aternosorg
- @pebblehost
您的支持帮助我们继续花费大量的业余时间为每个人开发和改进 EssentialsX。如果您有任何多余的零钱,可以点击下面的按钮之一,以一次性或每月的承诺来支持 EssentialsX 项目:
支持的服务器版本
EssentialsX 正式支持 CraftBukkit、Spigot 和 Paper 服务器软件。具体来说,EssentialsX 设计用于以下 Minecraft 版本:
- ✅
1.19.4
和1.20.1
- EssentialsX 积极针对并支持这些版本。 - ⚠️
1.8.8
、1.9.4
、1.10.2
、1.11.2
、1.12.2
、1.13.2
、1.14.4
、1.15.2
、1.16.5
、1.17.1
和1.18.2
- 这些版本仍受支持,但不是我们的优先事项,可能会在未来的版本中被删除。
我们建议使用最新版本的 Paper。EssentialsX 包含需要 Paper 的重大改进,包括:
- Paper 的异步区块加载减少了玩家传送期间的卡顿峰值。
CraftBukkit 和 Spigot 不支持插件的异步区块加载。 /anvil
、/grindstone
、/cartographytable
、/loom
、/smithingtable
和/stonecutter
仅在 Paper 上受支持。
CraftBukkit 和 Spigot 不支持这些所需的 API。/recipe
在 1.12+ 上需要 Paper 以避免 CraftBukkit 和 Spigot 引入的重复漏洞。- Paper 包含对 CraftBukkit 和 Spigot 的无数整体性能优化。
EssentialsX 不支持以下 Minecraft 版本或服务器软件:
- ℹ️ Folia 尚未得到支持。我们正在努力实现对 Folia 的正确支持。 请勿尝试在 Folia 或其分支上使用当前版本的 EssentialsX - 您可能会丢失用户数据。
- 🛑 "超性能" Paper 分支,包括 Akarin、Yatopia 等类似项目。
这些项目经常执行非标准行为,可能会破坏您的世界和已安装的插件。 - 🛑 Mohist - Mohist 项目已知存在问题,过去曾欺骗用户删除官方 EssentialsX 罐子并安装非官方版本。
我们不能保证非官方版本的 EssentialsX 的安全性或功能;在可能的情况下,应避免使用 Mohist。 - 🛑 其他 Forge/Bukkit 混合服务器,包括 Cauldron、Thermos、Magma、CatServer - EssentialsX 是为 Bukkit API 构建的,该 API 不支持 mods。
对于模组服务器,请使用 SpongeForge 和 Nucleus,或 Forge 或 Fabric 的替代模组。 - 🛑
1.7.10
或更低版本。
升级到 2.20.1
如果您从 2.20.0 升级,可以保留当前的 EssentialsX 配置文件。此版本的配置文件没有新更改。
从 2.19.7 或更早版本的 EssentialsX 升级?请参阅 先前的更新日志。
已知问题
即使 EssentialsX Spawn 覆盖了生成位置,锚点电荷仍会在 Spigot 上耗尽
在 CraftBukkit 和 Spigot 上,由于 CraftBukkit 中的一个未修复的 bug,锚点电荷将无论 respawn-at-anchor
设置如何都会耗尽。此 bug 已在 Paper 中修复。
在世界之间传送时飞行模式会重置。(#4325)
在 Minecraft 1.17.1 及更高版本中,由于 vanilla 中的行为更改,玩家的飞行模式将无论 world-change-fly-reset
设置如何都会重置。此问题将在未来的 Essentials 版本中修复。
新功能
EssentialsX 现在支持 1.20.1 (#5389)
EssentialsX 现在正式支持 Paper、Spigot 和 CraftBukkit 1.20.1。
其他添加
- 翻译已根据 Crowdin 上的最新社区贡献进行了更新。
- 我们的依赖项和构建工具已更新到其最新版本。(#5383)
- 添加了使用
/recipe hand
获取您手持物品配方的功能。(#5346)
Bug 修复
从 2.20.0 和更早版本修复的 Bug
- 在使用 LuckPerms 上下文进行新加入时不再引发异常。(#5364)
- 在使用
/toggleshout
命令时,呼喊和问题前缀现在可以正常工作。(#5367) - 套件占位符中的下划线在接收套件时不再被删除。(#5366)
- 配置文件中提供的无效十进制值现在返回正确的默认值。(#5373)
- 在对某些离线玩家进行操作时不再引发异常。(#5375, #5466)
- 无效的材料名称在 /unlimited 用户数据值中不再阻止用户数据加载。(#5438)
- 交易标志在将
currency-symbol-suffix
设置为true
时不再损坏。(#5441) - 附魔命令现在支持手持在副手的物品。(#5449)
- 书籍命令现在可以与手持在副手的其他物品正常配合使用。(#5449)
- 与离线玩家查找相关的各种问题已得到修复。(#5462)
- AntiBuild:不再对 NPC 运行 AntiBuild 检查。(#5365)
- Discord:控制台消息和 Webhook 消息在垃圾邮件后不再在控制台中刷屏或消失。(#4786)
- Discord:退出消息在线玩家计数占位符不再少一个。(#5440)
- Discord:控制台中继现在正确过滤所有格式代码。(#5454)
- Discord Link:当没有数据更改时,玩家链接数据不再保存到磁盘。(#5388)
- Discord Link:取消链接后,Discord 角色和 Minecraft 组现在会立即删除。(#5388)
从 2.20.1 开发版本修复的回归问题
以下是从 2.20.1 开发版本修复的 Bug:
- 套件中的命令不再将空格替换为下划线。(#5377)
- 套件中的空行不再引发异常。(#5378)
- 套件不再仅在命令中将空格替换为下划线。(#5379)
为开发者更改
新事件
EssentialsX 2.20.1 引入了一个新事件:
KitPreExpandItemsEvent
在玩家即将接收套件物品之前触发。(#5407)
要查看完整的提交日志,请 点击此处。
2.20.0 - The Better Together Update
on 2024 Nov 292.19.7 - The (Even Less) Wild Update
on 2024 Nov 292.19.6 - The (Not Too) Wild Update
on 2024 Nov 29无