会话
在你创建选区或者在游戏内改变你的首选项时,你的相关信息会被储存在一个临时会话中,这个会话在你在线期间一直会处于激活状态。当你断开连接时,你的会话会在被保留10分钟被删除,你可以重新登录来保留你的会话,每个人连接到服务器时的会话是互相分离的(仅限多人游戏)。
会话包括:
- 你的当前选区
- 你的操作历史
- 你的方块修改上限
- 你选择的用于恢复的快照
历史
你的前15个操作会被保存在你的操作历史中。操作历史会记录WorldEdit改变的方块和之前的方块。如果你希望撤销一个修改,在聊天框中输入//undo。如果你改变了想法,你可以使用//redo来重做上一个操作。
如果你需要清除你的历史记录,使用/clearhistory命令。
方块支持
WorldEdit对于不同平台,不同版本以及你的不同配置有不同的方块支持等级。
如果WorldEdit不支持你的平台,你会注意到一些问题:
- 如果没有正确的支持,箱子,熔炉等在复制时不会保存他们的库存
- 如果没有正确的支持,在撤销对于箱子,熔炉等的改变时有可能使他们的内容丢失
平台 | 状态 |
---|---|
Bukkit | Bukkit平台支持需要你使用与你CraftBukkit相对应版本的WorldEdit。WorldEdit 拥有需要特定版本的Bukkit来使用的“NMS 方块”或“适配器”(较新版本中)代码。 每个WorldEdit版本会有一个对应最新Bukkit版本的它们的列表。如果出现问题,你可能需要升级或降级你的WorldEdit。 |
Spigot | 见 Bukkit。 |
Minecraft Forge | 在WorldEdit 6及以上完全支持。 |
MinecraftEdu | MinecraftEdu 是 Forge 版 WorldEdit的修改,平台支持随MCEdu提供的版本而改变。 |
MCPC+ | 大部分版本支持。 |
Cauldron | WorldEdit 5 尚未支持。WorldEdit 6 及以上如果安装Forge版本的WorldEdit即可以完全支持。推荐在使用 WorldEdit 6 及以上时同时安装 Forge 与 Bukkit 版 WorldEdit。 |
LiteLoader | 这是一个非官方平台的 WorldEdit,暂时没有关于支持的相关信息。 |
Canary | 这是一个非官方平台的 WorldEdit,暂时没有关于支持的相关信息。 |
物品支持
在版本5.4及以上,所有支持自定义方块的平台(主要Bukkit)会支持储存在方块内的物品。
之前的版本仅有粗略的物品支持,但仅限于第三方修改添加并放置在箱子内的物品(第三方自定义方块完全不被支持)。
服务器配置
在你安装WorldEdit后第一次运行服务器时,在plugins/WorldEdit/config.yml下会生成 config.yml 文件。你可以使用这个文件来配置WorldEdit的各个设置。
格式
文件使用的是YAML格式,所以你必须遵守这些规则:
- 不要使用制表符 你必须使用空格否则Bukkit会报错。如果你使用像Notepad++(推荐Windows用户使用)等编辑器,你必须将它设置成“使用空格替换制表符”。在Notepad++中,这一项可以在 设置>首选项>语言菜单 中修改。
- 不要去掉缩进。某些项目因为是其他项目的子项目因此才有缩进(如“max-blocks-changed”是“limits”分类下的一项)
- 如果你想在将文件正式放进WorldEdit之前检查一下,可以将它粘贴到 http://yaml-online-parser.appspot.com/ 来看一下是否提示“ERROR:”。
- # 开头的行是注释所以可以被忽略。
配置项目
注意:以下的配置项目中每多一个点,说明你需要将它比上一项缩进更多一层。
配置项 | 数据种类 | 默认 | 介绍 |
---|---|---|---|
wand-item | integer | 271 | 魔杖工具,即使用左键与右键点击来选择选区的工具,使用的物品ID。默认为木斧。 |
shell-save-type | bash 或 bat | 使用的脚本文件格式。/delchunks指令会使用这项。 | |
debug | true/false | false | 如果开启,每个指令完成使用的时间会被在每个指令使用后显示。 |
限制 | |||
limits.max-blocks-changed.maximum | integer | -1 | 每次操作可以改变的方块数上限。这一项的上限是一个用户不能自行设定超过的上限。如果你想设定默认值(对单个用户的),使用default-max-blocks-changed。-1的数值表示无上限。 |
limits.max-blocks-changed.default | integer | -1 | 默认方块修改数上限。如果这个数值比max-blocks-changed设定的数值高,该上限会覆盖此上限。-1的数值表示无上限。 |
limits.max-radius | integer | -1 | 使用半径参数的指令可以使用的最大上限。使用-1来设定无上限。 |
limits.max-super-pickaxe-size | integer | 5 | 超级镐子最大可以使用的范围。 |
limits.disallowed-blocks | 方块ID列表 | (一个列表) | 一个不能被使用的方块和物品的列表。注意//stack指令不遵守这个配置。 |
使用背包 | |||
use-inventory.enable | true/false | false | 从玩家的背包得到所有需要的方块。 |
use-inventory.override | true/false | true | 启用worldedit.inventory.unrestricted权限,使一个玩家可以越过use-inventory开启时的限制。 |
记录 | |||
logging.log-commands | true/false | false | 选择是否在后台记录使用的指令。 |
logging.file | string | 放置记录命令使用的文件的路径。使用时log-commands必须开启。 | |
超级镐子 | |||
super-pickaxe.drop-items | true/false | true | 使用单方块超级镐子时是否掉落方块。 |
super-pickaxe.many-drop-items | true/false | false | 使用非单方块镐子时是否掉落方块。注意这些模式下可能会有大量方块被破坏并且掉落过多的方块物品。 |
快照 | |||
snapshots.directory | string | 读取快照的路径。除非使用了绝对路径,这个路径是与服务jar所在路径相对的。 | |
导航魔杖 | |||
navigation-wand.item | integer | 345 | 绑定/jumpto(左键)和/thru(右键),使用的工具。默认物品为指南针。 |
navigation-wand.max-distance | integer | 100 | 导航工具可以使用的最大距离。 |
脚本 | |||
scripting.timeout | integer | 3000 | CraftScript运行的最大时长(毫秒)。 |
scripting.dir | string | craftscripts | 存放脚本的路径。 |
保存 | |||
saving.dir | string | schematics | 保存schematic文件的位置。 |
历史 | |||
history.Size | integer | 15 | 撤销历史存储数 |
history.expiration | integer | 10 | 撤销历史过期时间 |
屠杀 | |||
butcher.butcher-default-radius | integer | -1 | 杀死怪物的范围,-1为无上限。 |
如果需要在游戏内重置WorldEdit的配置,可以使用/reloadwe
来重载插件。
使用背包
开启背包使用模式会使WorldEdit强制只从玩家的背包提取方块。此外,如果玩家的背包有空间,方块在被替换或破坏时会被“采集”并放置进玩家的背包中。
如果一个方块不能被找到(比如玩家没有更多的那种方块了),操作会继续执行单并不能放置更多的方块(至少那一种)。玩家在最后会收到缺少的方块列表。如果一个方块需要被放置在另一个方块上(比如火把)但并不能放置支撑方块,操作会在放置支撑方块被放置之前被打断。在失败的情况下,//undo和//redo可以用来重复一个操作。当一个方块因为被破坏而被放置到玩家背包时,它会是一个被采集过的方块,或者有些情况下,没有方块。玻璃和书架会被给予,水方块和岩浆方块不会,并且在放置时不需要提供。注意箱子不会被正确复制,并在被移除时掉落里面的物品,如此可以防止利用复制与粘贴来复制物品。背包使用功能被编译在WorldEdit的很深层,所以所有指令都能使用。
如果你想一些用户不使用他们的背包,可以在配置中启用背包使用豁免权限的设置并给出worldedit.inventory.unrestricted权限。