指令、权限与占位符
管理员指令、权限节点和 PlaceholderAPI 完整参考。
主指令:/seasons,别名:/season。
所有命令层级都有 Tab 补全,包括世界名、四季键、24 节气键和已加载事件 ID。
玩家命令
| 指令 | 说明 |
|---|---|
/seasons |
显示帮助 |
/seasons help |
显示帮助 |
/seasons info [world] |
查看日期、季节、节气、模式、温度、作物和下一节气 |
/seasons calendar |
打开六页日历 GUI,仅玩家可用 |
/seasons hud <on|off|toggle|status> |
开启、关闭、切换或查看自己的操作栏与季节 Buff BossBar;个人选择持久保存 |
/seasons event list |
列出全部已加载季节事件 |
/seasons event info |
查看事件类型和配置数量 |
/seasons festival list |
按日期列出全部已加载节日 |
/seasons festival today |
查看服务器现实日期对应的全部已启用节日 |
/seasons festival info |
查看节日类型和配置数量 |
玩家省略 [world] 时使用当前世界。控制台执行 info 必须提供世界名。
/seasons hub 作为常见误写也可使用;Tab 补全统一提示标准写法 hud。操作栏总开关位于 temperature.yml -> action-bar.enable,季节 Buff BossBar 总开关位于 config.yml -> season-buff-boss-bar.enable;两者都关闭时玩家不能自行开启显示。
管理员命令
| 指令 | 说明 |
|---|---|
/seasons reload |
重载配置并重启插件内部定时服务 |
/seasons set season <world> <spring|summer|autumn|winter> |
手动设置季节,节气设为该季第一个节气 |
/seasons set term <world> <term> |
手动设置节气,同时使用该节气所属季节 |
/seasons next [world] |
手动推进到下一节气 |
/seasons auto [world] |
恢复世界自动轮转并立即重算 |
/seasons event trigger <eventId> |
手动触发已启用事件,仅在线玩家可用 |
控制台执行 next、auto 时必须指定世界。set 的世界参数始终必填。
手动触发普通季节事件不检查事件所属季节;流星雨手动触发会跳过夜间门槛,但仍受流星模块、世界和并发限制。
权限
| 权限 | 默认 | 用途 |
|---|---|---|
liseasons.player |
true |
主指令、查询、GUI、事件与节日列表 |
liseasons.admin |
op |
重载、设置、推进、自动恢复、手动触发事件 |
liseasons.climate.bypass |
false |
免疫温度事件、持续温度伤害和新增持续灾害;OP 也需显式授予 |
plugin.yml 把主命令权限设为 liseasons.player。如果权限插件显式拒绝该权限,即使另外授予管理员节点,也可能无法进入主命令;建议管理员同时拥有两个节点。
PlaceholderAPI
PlaceholderAPI 是可选前置。安装后 LISeasons 自动注册内置扩展,标识符为 liseasons,并声明持久保留,不需要从 eCloud 下载。
季节与节气
| 占位符 | 返回值 |
|---|---|
%liseasons_season% |
messages.yml 中带 MiniMessage 颜色的季节文本 |
%liseasons_season_colored% |
同上 |
%liseasons_season_name% |
纯季节名称 |
%liseasons_season_key% |
启用世界返回 spring、summer、autumn、winter;未启用世界返回 none |
%liseasons_term% |
当前节气名称 |
%liseasons_solar_term% |
当前节气名称 |
%liseasons_solar_term_name% |
当前节气名称 |
%liseasons_term_key% |
当前节气拼音键 |
%liseasons_solar_term_key% |
当前节气拼音键 |
%liseasons_next_term% |
下一节气名称 |
%liseasons_next_solar_term% |
下一节气名称 |
%liseasons_next_term_remaining% |
距离下一节气的时间文本 |
%liseasons_next_solar_term_remaining% |
同上 |
日期、世界与模式
| 占位符 | 返回值 |
|---|---|
%liseasons_date% |
当前日历月日文本 |
%liseasons_server_date% |
同上 |
%liseasons_month_day% |
同上 |
%liseasons_date_iso% |
ISO 日期,如 2026-08-11 |
%liseasons_month% |
月份数字 |
%liseasons_day% |
日期数字 |
%liseasons_world% |
messages.yml 映射后的带颜色世界名称 |
%liseasons_world_colored% |
同上 |
%liseasons_world_name% |
原始世界文件夹名 |
%liseasons_mode% |
自动 或 手动 |
体温
| 占位符 | 返回值 |
|---|---|
%liseasons_temperature% |
玩家体感温度 |
%liseasons_temperature_status% |
极寒、舒适、炎热等描述 |
%liseasons_air_temperature% |
空气温度 |
%liseasons_wetness% |
湿度百分比 |
参数中的短横线会归一化为下划线,例如 %liseasons_air-temperature% 与 %liseasons_air_temperature% 等价。
玩家所在世界未启用季节系统时,季节变量不会再返回空字符串:season 与 season_colored 返回 season.case.none,season_name 返回 season-names.none,season_key 返回固定键 none。节气、日期与模式变量仍返回空字符串,因为该世界没有对应的季节日历状态;世界名称变量照常可用。
异步记分板安全
PAPI 扩展不在 TAB 记分板异步线程读取区块,而是读取玩家线程提前生成的显示与温度快照。玩家刚加入、快照尚未就绪时,占位符暂时返回空字符串;未启用季节的世界会保存明确的“无季节”快照,不会与尚未初始化混淆。
如果仍看到:
Thread failed main thread check: Cannot retrieve chunk asynchronously
TemperatureService.airConditionModifier
通常说明服务器仍加载了 1.0.52 或其他旧 Jar。检查 plugins/ 是否有重复 LISeasons 文件,并完整重启。
季节和世界颜色文本
season:
switch: '%liseasons_season_key%'
case:
'none': "<gray>无季节</gray>"
'spring': "<green>春季</green>"
'summer': "<yellow>夏季</yellow>"
'autumn': "<gold>秋季</gold>"
'winter': "<aqua>冬季</aqua>"
default: "<gray>未知季节</gray>"
world:
switch: '%player_world%'
case:
'world': "<green>主世界</green>"
'world_nether': "<red>下界</red>"
'world_the_end': "<red>末地</red>"
default: "<gray>未知世界</gray>"
switch 只用于说明数据来源,插件实际根据缓存键查 case。none 是未启用季节世界的保留键;自定义世界的键必须与真实世界文件夹名完全一致。
注意:PAPI 返回的彩色值是 MiniMessage 标签文本。最终是否解析成颜色取决于调用它的插件是否支持 MiniMessage;若对方只支持传统 § 色码,应使用纯名称变量或在对方插件中配置兼容解析。