世界编辑管理指令

基本信息

属性 值
来源类 WorldEditCommands(5 条)、ForgeRotationCommands(1 条)
文件 command/WorldEditCommands.java(111 行)、forge/command/ForgeRotationCommands.java(35 行)
注册位置 CommandManager.java:160、:161(均在 /worldedit 组内)
组别名 we(CommandManager.java:158)
命令数 6

命令表

指令 别名 说明 权限节点
/worldedit version ver Get WorldEdit version (无)
/worldedit reload — Reload configuration worldedit.reload
/worldedit cui — Complete CUI handshake (internal usage) (无)
/worldedit tz — Set your timezone for snapshots (无)
/worldedit help — Displays help for WorldEdit commands worldedit.help
/worldedit reloadmappings — Reload rotation mappings worldedit.reload

这 6 条主别名均不含前导斜杠,故实际输入为 /worldedit version(或 /we version)、/worldedit reload 等。

各命令行为

/worldedit version(WorldEditCommands.java:48-66)

打印 WorldEdit 版本与上游仓库地址,并以 debug 级(actor.printDebug)追加两组信息:

  • 全部已注册 Platform 的 getPlatformName() / getPlatformVersion()
  • 全部 Capability 枚举值及各能力由哪个 Platform 提供(无提供者显示 NONE)

/worldedit reload(WorldEditCommands.java:68-80)

调用 we.getServer().reload() 重载配置,并向事件总线投递 ConfigurationLoadEvent(携带 Capability.CONFIGURATION 的配置对象),最后打印 “Configuration reloaded!”。

//we reload 同时也是会话存储重建的触发点:SessionManager.onConfigurationLoad 订阅该事件并把 store 重新赋为 new JsonFileSessionStore(<工作目录>/sessions)(session/SessionManager.java:283-287)。

/worldedit tz(WorldEditCommands.java:89-99)

/worldedit tz [时区] 设置当前玩家会话的时区,供快照按本地时间归类。回显该时区下的当前时间。

/worldedit cui(WorldEditCommands.java:82-87)

标记会话 setCUISupport(true) 并向客户端派发 CUI 设置事件。源码 desc 自述为 “internal usage”。

⚠️ 该命令的入站通道在 1.7.10 版中未注册:WECUIPacketHandler.init()(forge/WECUIPacketHandler.java:37-40,负责 newEventDrivenChannel("WECUI") 并注册 onPacketData)全仓无任何调用点(grep -rn 'WECUIPacketHandler' src/ 仅命中类自身与 ForgePlayer.java:122 对常量 UTF_8_CHARSET 的引用)。因此 /worldedit cui 只能由客户端主动触发,服务端不会因 CUI 握手包而执行它。

/worldedit reloadmappings(ForgeRotationCommands.java:25-33)

本 GTNH 分支新增的旋转映射重载命令(对应 HEAD 提交 “Add Support for Custom Rotation Mappings (#18)”):

  1. 重新执行 RotationMappings.init(ForgeWorldEdit.inst.getWorkingDir()),从磁盘重读映射
  2. 若 ModRotationBlockTransformHook 存在则调用其 clearCache()
  3. 打印 “Rotation mappings reloaded!”

详见 旋转映射(分支新增)。

权限

/worldedit reload 与 /worldedit reloadmappings 共用 worldedit.reload 节点(WorldEditCommands.java:69、ForgeRotationCommands.java:26)。

相关条目