概述
一个仅服务器端的 Fabric 模组,可以在一些关于玩家的事件(如死亡,上限,杀死其他玩家等)发生时执行一些命令或发送消息。
配置文件
配置文件位于 config/player_events.json 中,如下所示:
{
"death": {
"actions": [
"${player} just died!"
],
"broadcast_to_everyone": true,
"pick_message_randomly": false
},
"first_join": {
"actions": [
"Welcome to the server ${player}! Remember to read the rules"
],
"broadcast_to_everyone": false,
"pick_message_randomly": false
},
"join": {
"actions": [
"Welcome ${player}",
"/say Hello ${player}"
],
"broadcast_to_everyone": true,
"pick_message_randomly": false
},
"kill_entity": {
"actions": [
"${player} killed ${killedEntity}"
],
"broadcast_to_everyone": true,
"pick_message_randomly": false
},
"kill_player": {
"actions": [
"${player} killed ${killedPlayer}",
"F ${killedPlayer}"
],
"broadcast_to_everyone": true,
"pick_message_randomly": true
},
"leave": {
"actions": [
"Goodbye ${player}!",
"/say Hope to see you soon ${player}"
],
"broadcast_to_everyone": true,
"pick_message_randomly": false
},
"custom_commands": [
{
"command": "/plugins",
"actions": [
"Hey! We don't use plugins"
],
"broadcast_to_everyone": false,
"pick_message_randomly": false
},
{
"command": "/spawn",
"actions": [
"/tp ${player} 0 64 0 0 0"
],
"broadcast_to_everyone": true,
"pick_message_randomly": false
}
]}
在此文件上,服务管理者可以对于每个事件定义在该事件下发送的消息和执行的命令(actions:[]一条)。还可以将这些消息设置为发送到 所有人,但这不适用于玩家离开的事件。
还可以通过将 pick_message_randomly 设置为 true 来随机发送给定事件下的消息之一。
消息也都支持样式颜色代码。
每个事件都有一个玩家名称的变量:${player},使用此变量的消息都会将变量替换为玩家名称,其他事件也具有以相同方式工作的变量。
以下是这些变量的列表:
使用 /pe reload 或 /player_events reload 即可重新加载模组配置。
也可以使用 /pe test <event> 来测试特定的事件。
所有事件如下:
death 当玩家死亡时执行。
first_join 在玩家首次加入时执行。
join 当玩家加入时执行。
kill_entity 当玩家杀死实体时执行。额外变量:
kill_player 当一名玩家杀死另一名玩家时执行。额外变量:
leave 在玩家离开时执行。
custom_commands 使用定义的命令触发的自定义事件。注意:此事件不支持数据包中的命令。
此外,模组允许创建简单功能组合的指令(如果想要更复杂的指令,此模组无法完成)。
自模组的 2.2.0 版本起,可以使用数据包中相应的标记来定义将在玩家事件上执行的函数:#player_events:<event>。
处理问题
如果在初始化服务器或模组应执行某些操作时遇到错误,以下是一些解决的方法。
关于模组作者的开发的其他内容,可参见模组的 GitHub 页面。