一个高性能、功能强大的 Minecraft Bukkit/Spigot/Paper/Folia 加入退出消息自定义插件,支持聊天 / 标题 / 动作栏 / Boss血条 / 音效 / 渐变颜色 / 权限组 / 首次加入 / 静默隐身 / PlaceholderAPI 等。
- 自定义加入 / 退出消息:每个玩家可设置个人消息,也支持管理员为他人设置
- 多种显示方式:聊天广播、私密消息、标题(Title)、动作栏(ActionBar)、Boss血条(BossBar)
- 音效支持:加入 / 退出可播放自定义音效,可仅对当事人或全服播放
- 多种消息模式:
full完整消息模式 与prefix_suffix前后缀模式 - 权限组模板:VIP / 管理员 / 默认组等,按优先级匹配,各自拥有独立的消息与效果
- 首次加入(新玩家):自动识别新玩家并发送专属欢迎
- 静默 / 隐身:拥有指定权限的玩家加入退出不广播(兼容 Essentials 静默)
- 广播冷却:可设置加入/退出消息冷却,防止刷屏
- 颜色 / 渐变:标准颜色代码
&a、十六进制&#RRGGBB、渐变<gradient:#c1:#c2>文本</gradient> - 占位符:内置
%player_name%等 + 自定义占位符 + 完整 PlaceholderAPI 支持 - 高性能:内存缓存 + 异步数据库访问(HikariCP 连接池),加载后加入/退出零数据库查询
- 数据库:SQLite 与 MySQL 双支持,表结构向后兼容 v1.x
- Folia 支持:自动检测并适配 Folia 区域调度器
- 热重载:
/lcjm reload无需重启服务器 - PlaceholderAPI 扩展:
%lapiscjm_join_message%等变量
- 将
Lapis-CustomJoinMessage.jar放入服务器plugins/目录 - 重启服务器(或
/reload) - 可选:安装 PlaceholderAPI 以使用
%任意变量%
| 命令 | 说明 | 权限 |
|---|---|---|
/setjoin |
查看当前加入消息 | lapiscjm.use |
/setjoin <消息> |
设置加入消息 | lapiscjm.join.use |
/setjoin reset |
清除加入消息 | lapiscjm.join.use |
/setjoin prefix <前缀> / /setjoin suffix <后缀> |
前后缀模式 | lapiscjm.join.use |
/setquit |
查看当前退出消息 | lapiscjm.use |
/setquit <消息> |
设置退出消息 | lapiscjm.quit.use |
/setquit reset |
清除退出消息 | lapiscjm.quit.use |
| 命令 | 说明 |
|---|---|
/lcjm reload |
重载配置(配置文件变化会自动备份旧文件) |
/lcjm version |
查看版本信息 |
/lcjm permission <玩家> |
检查玩家权限 |
/lcjm group list |
列出权限组 |
/lcjm resetplayer <玩家> [--force] |
重置玩家数据 |
/lcjm listplayers |
列出数据库中的玩家(可点击删除) |
/lcjm deleteplayer <uuid> |
删除玩家数据 |
/setjoin <玩家> <消息> |
为其他玩家设置加入消息 |
/setquit <玩家> <消息> |
为其他玩家设置退出消息 |
别名:/lcjm 也可用 /cjm、/lapiscjm。
| 权限 | 说明 | 默认 |
|---|---|---|
lapiscjm.use |
使用玩家命令 | 所有玩家 |
lapiscjm.join.use |
设置加入消息 | 所有玩家 |
lapiscjm.join.color |
加入消息中使用颜色 | OP |
lapiscjm.quit.use |
设置退出消息 | 所有玩家 |
lapiscjm.quit.color |
退出消息中使用颜色 | OP |
lapiscjm.admin |
管理命令 + 管理他人消息 | OP |
lapiscjm.admin.others |
为他人设置消息 | OP |
lapiscjm.reload |
重载配置 | OP |
lapiscjm.* |
全部权限 | OP |
兼容旧版权限:customjoinmessage.use、customjoinmessage.join.use 等仍然有效。
# 全局设置
settings:
enabled: true
join-enabled: true
quit-enabled: true
message-mode: full # full | prefix_suffix
hide-default-join-message: true
hide-default-quit-message: true
cooldown-seconds: 0 # 广播冷却(秒)
# 默认消息模板(支持多行、渐变、PAPI)
messages:
join:
prefix: "&e欢迎 "
suffix: " 加入服务器!"
chat:
- "&e%player_name% &7加入了服务器"
private: []
sound:
enabled: false
name: "ENTITY_PLAYER_LEVELUP"
volume: 1.0
pitch: 1.0
broadcast: false
title:
enabled: false
title: "&b欢迎回来 %player_name%"
subtitle: "&f祝你游戏愉快"
fade-in: 10
stay: 60
fade-out: 20
actionbar:
enabled: false
text: ""
bossbar:
enabled: false
text: ""
color: GREEN
style: SOLID
duration-seconds: 5
quit:
... # 结构同 join
# 首次加入(新玩家)
first-join:
enabled: false
message:
chat:
- "&6&l[新玩家] &e%player_name% &6加入了服务器"
...
# 权限组(优先级越大越优先,permission 留空 = 所有玩家)
permission-groups:
admin:
priority: 100
permission: "lapiscjm.admin"
message:
join:
chat:
- "&4[管理员] &c%player_name% &7加入了服务器"
sound: ...
title: ...
quit:
chat:
- "&4[管理员] &c%player_name% &7离开了服务器"
default:
priority: 0
permission: ""
message:
join:
chat:
- "&7[&a+&7] &6%player_name%"
quit:
chat:
- "&7[&c-&7] &6%player_name%"
# 静默 / 隐身
silent:
join-permissions: ["essentials.silentjoin"]
quit-permissions: ["essentials.silentquit"]
vanish-permissions: ["essentials.vanish"]
# 长度限制(-1 不限,不计算颜色代码)
length-limits:
full-mode: 50
prefix: 20
suffix: 20
# 自定义占位符
custom-placeholders:
server_name: "我的服务器"
server_ip: "mc.example.com"
# PlaceholderAPI
placeholders:
enabled: true
# 数据库
database:
type: sqlite # sqlite | mysql
sqlite:
file: joinmessages.db
mysql:
host: localhost
port: 3306
database: minecraft
username: root
password: password
table: joinmessages
pool-size: 8%player_name%:玩家名%player_displayname%:显示名%world%:所在世界%uuid%:玩家 UUID%server_name%等:custom-placeholders中自定义- 所有 PlaceholderAPI 变量(需安装 PAPI)
- 标准颜色:
&a、&l、&r等 - 十六进制:
&#FF0000 - 渐变:
<gradient:#ff0000:#00ff00:#0000ff>文本</gradient>(支持任意多个颜色)
v2.0.0 的表结构与 v1.x 保持一致(joinmessages 表),升级插件后玩家的历史数据自动保留,无需迁移。
要求:JDK 17+,Gradle 9.x
gradle clean build产物位于 build/libs/Lapis-CustomJoinMessage.jar。
- 全面重构,插件主类更名为
LapisCustomJoinMessage - 新增标题 / 动作栏 / Boss血条 / 音效显示
- 新增渐变颜色支持
<gradient:...> - 新增权限组模板系统(优先级匹配)
- 新增首次加入(新玩家)欢迎
- 新增静默 / 隐身支持
- 新增广播冷却
- 新增自定义占位符
- 内存缓存 + HikariCP 连接池,显著提升性能
- 全新命令体系(
/lcjm管理命令),保留/cjm别名 - PlaceholderAPI 扩展标识更新为
lapiscjm - 兼容 v1.x 数据库表结构与旧权限节点
本项目采用 MIT 许可证。