• 欢迎来到Minecraft插件百科!
  • 对百科编辑一脸懵逼?帮助:快速入门带您快速熟悉百科编辑!
  • 因近日遭受攻击,百科现已限制编辑,有意编辑请加入插件百科企鹅群:223812289

FastAsyncWorldEdit

来自Minecraft插件百科
C7w留言 | 贡献2020年10月21日 (三) 12:39的版本
跳转到导航 跳转到搜索

FastAsyncWorldEdit

FAWE 是 WorldEdit 的一款附属插件,它通过改变大量 WorldEdit 中的核心类,在大幅度提升原插件的性能的同时,也为其大量增添了新功能。

相关链接:

目前支持的平台

  • CraftBukkit
  • Spigot
  • Paper
  • Forge
  • Sponge

目前停止更新的旧平台:

  • Nukkit
  • Thermos

汉化

  • Jenkins 上从#1209号构建开始已经内置中文
  • 汉化文件的修改 Github

区域限制:

当前支持下列区域插件:

  • WorldGuard
  • Towny
  • GriefPrevention
  • PreciousStones
  • Factions (mcore, uuid, one)
  • Residence
  • Regios
  • PlotSquared
  • PlotMe

你可以在配置中禁用本项,也可以使用 /wea 或者 fawe.bypass 来跳过检查

记录与回滚操作

请在 config.yml 中启用 use-diskuse-database 两个选项来开启 FAWE 插件提供的记录与回滚操作。为了实现记录的功能,首先请安装 BlocksHub 插件,随后你就能使用以下记录插件之一来记录了:

  • CoreProtect
  • LogBlock
  • Prism
  • HawkEye

给予普通玩家使用 FAWE 回滚操作的权限并不危险,要想跳过记录请使用 //fast 命令

命令

总览

要想在游戏中查看这些命令的话,请使用 //help [类型|命令] ## 命令的用法
- <arg> - 一个必需参数
- [arg] - 一个可选参数
- <arg1|arg2> - 在这些选项中选择
- <arg=value> - 缺省值
- -a - 一条命令的标记,如 //<command> -a [命令的标记的值]

    1. 详阅
  • 未分类的命令
别称 权限 标记 使用方法
//cancel fawe.cancel 取消你当前正在进行的任务
/plot replaceall plots.replaceall 替换地皮世界中所有的方块
/plot createfromimage plots.createfromimage 从一张高度图图片开始世界生成: 更多信息


World Edit 命令

  • /we threads

权限worldedit.threads
说明: 显示出目前插件使用的所有线程

  • /we version

说明: 获取当前 WorldEdit / FAWE 插件的版本信息

  • /we help [<command>]

权限worldedit.help
说明: 显示 FAWE 插件的命令帮助信息

  • /we debugpaste

权限worldedit.debugpaste
说明: 将调试信息上传到 hastebin.com

  • /we changelog

权限worldedit.changelog
说明: 查看 FAWE 插件的更新日志

  • /we reload

权限worldedit.reload
说明: 重载插件配置

  • /we tz [timezone]

说明: 设定时区,方便为快照命名

  • /we cui

说明: 完成 CUI 信息交换(内部开发使用)

Utility 命令

(一些实用性的命令: 更多信息)

  • /remove <type> <radius>

权限worldedit.remove
描述: 移除所有指定类型的实体

  • //fill <block> <radius> [depth]

权限worldedit.fill
描述: 填充一块洞

  • //help [<command>]

描述: 显示 WorldEdit 插件的帮助命令

  • //drain <radius>

权限worldedit.drain
描述: 移除一片池塘内的水

  • //removenear <block> [size]

权限worldedit.removenear
描述: 移除你附近的方块

  • //fillr <block> <radius> [depth]

权限worldedit.fill.recursive
描述: 递归填充周围的洞

  • //removeabove [size] [height]

权限worldedit.removeabove
描述: 移除你头上方的方块

  • //fixlava <radius>

权限worldedit.fixlava
描述: 让岩浆静止

  • //removebelow [size] [height]

权限worldedit.removebelow
描述: 移除你脚下方的方块

  • //fixwater <radius>

权限worldedit.fixwater
描述: 让水静止

  • //green [radius] [-f]

权限worldedit.green
描述: 绿化半径中的区域

  • //replacenear <size> <from-id> <to-id> [-f]

权限worldedit.replacenear
描述: 替换附近的方块

  • //snow [radius]

权限worldedit.snow
描述: 模仿下雪

  • /butcher [radius] [-p] [-l] [-a] [-n] [-g] [-b] [-t] [-f] [-r]

权限worldedit.butcher
描述: 击杀附近的怪物,根据半径,如果没有特别给出半径的话则使用配置文件中的默认半径。
可用的标记:
-p 也击杀宠物
-n 也击杀 NPC
-g 也击杀铁傀儡
-a 也击杀动物。
-b 也击杀中立生物
-t 也击杀带有名字的怪物
-f 相当于这以前所有标记的混合
-r 也击杀盔甲架
-l 目前没有具体作用

  • //ex [radius]

权限worldedit.extinguish
描述: 熄灭周围的火

  • //thaw [radius]

权限worldedit.thaw
描述: 移除周围的区域中的雪与冰

  • //calc <expression>

权限worldedit.calc
描述: 求一个数学表达式的值

  • //confirm

描述: 确认一条命令

Region 命令

(一些对区域起作用的命令: 更多信息)

  • //replace [from-mask] <to-pattern> [-f]

权限worldedit.region.replace
说明: 用给定的方块替换选区中所有另一给定的方块

  • //stack [count] [direction] [-s] [-a] [-m]

权限worldedit.region.stack
说明: 堆叠复制选区中的内容
标记:
-s 将选区移动到最后一次被堆叠复制的区域
-a 跳过空气方块

  • //set [pattern]

权限worldedit.region.set
说明: 将选区填充为给定方块

  • //fall [replace] [-m]

权限worldedit.region.fall
说明: 让选区中的方块自然掉落
-m 标记仅会让方块在垂直方向上下落

  • //faces <block>

权限worldedit.region.faces
说明: 建造出选区的墙壁,天花板和地板

  • //center <block>

权限worldedit.region.center
说明: 填充出选区的中心方块

  • //hollow [<thickness>[ <block>]]

权限worldedit.region.hollow
说明: 将本区域设置为中空
可以设置“中空”的部分用什么方块来填充
厚度用[曼哈顿距离]来计算。

  • //smooth [iterations] [-n]

权限worldedit.region.smoothsnow
说明: 将区域平滑化
-n 标记仅更改自然生成的方块。
-s 标记只更改雪方块。

  • //nbtinfo

权限worldedit.nbtinfo
说明: 查看一个方块的NBT信息

  • //setskylight

权限worldedit.light.set
说明: 设置一个选区的天空亮度

  • //line <block> [thickness] [-h]

权限worldedit.region.line
说明: 以长方体选择区域的两个对角绘制出一条对角线线段。
仅能够在长方体选区中使用。
可用的标记:
-h 仅会生成外壳

  • //getlighting

权限worldedit.light.fix
说明: 获取某位置的亮度信息

  • //overlay <block>

权限worldedit.region.overlay
说明: 在给定区域的顶层方块上方覆盖给定方块

  • //wea

权限fawe.admin
说明: 跳过区域的权限检测限制

  • //wer

权限fawe.worldeditregion
说明: 将当前你有权限更改的区域设为选区

  • //fixlighting

权限worldedit.light.fix
说明: 修复某位置的光照

  • //removelight

权限worldedit.light.remove
说明: 移除选区中的光照

  • //curve <block> [thickness] [-h]

权限worldedit.region.curve
说明: 过选择的点画一条曲线。
只能在使用凸多面体选区类型时才能使用。
Flags:
-h 仅会生成外壳

  • //naturalize

权限worldedit.region.naturalize
说明: 顶层覆盖3层泥土,下面填充为石头

  • //walls <block>

权限worldedit.region.walls
说明: 围上选区的四边,即将选区用墙围起来

  • //setblocklight

权限worldedit.light.set
说明: 设置选区中的方块亮度

  • //lay <block>

权限worldedit.region.overlay
说明: 设置选区的顶层方块

  • //move [count] [direction] [leave-id] [-s]

权限worldedit.region.move
说明: 将选区中的内容移动。.
-s 标记会将选区设定到目标位置。
-b 也会复制生物群系
-e 忽略实体
-a 忽略空气
自动使用 <leave-id> 填充被移动区域。

  • //forest [type] [density]

权限worldedit.region.forest
说明: 在区域内生成森林

  • //flora [density]

权限worldedit.region.flora
说明: 在区域内生成植物群

  • //deform <expression> [-r] [-o]

权限worldedit.region.deform
说明: 使用给定的表达式使区域变形
表达式对每个方块都会执行,它可以
将方块的x,y,z修改到新方块的位置
来实现。详阅 tinyurl.com/wesyntax。

  • //regen [biome] [seed]

权限worldedit.regen
说明: 重新生成当前选区中的地图。
注意:这条命令会按照区块为单位来执行,
即会自动将选区内的所有区块自动重新生成。

Selection 命令

(改变你的选区位置,选区的模式或是查看关于你的选区的信息: 更多信息)

  • //count <block> [-d]

权限worldedit.analysis.count
说明: 为当前选区中某种类型的方块计数

  • //size [-c]

权限worldedit.selection.size
说明: 获取当前选区的信息

  • //expand <amount> [reverse-amount] <direction>

权限worldedit.selection.expand
说明: 延展选区区域

  • //shift <amount> [direction]

权限worldedit.selection.shift
说明: 移动选区区域

  • //sel [cuboid|extend|poly|ellipsoid|sphere|cyl|convex] [-d]

说明: 选择选区类型

  • //contract <amount> [reverse-amount] [direction]

权限worldedit.selection.contract
说明: 缩小选区区域

  • //pos1 [coordinates]

权限worldedit.selection.pos
说明: 设置选取点1

  • //pos2 [coordinates]

权限worldedit.selection.pos
说明: 设置选取点2

  • //chunk [x,z coordinates] [-s] [-c]

权限worldedit.selection.chunk
说明: 将选取范围设置为当前你所在的区块。
使用 -s 标记,则你目前选区范围会扩展到包含目前选区范围的全部区块
也可以使用给定的坐标,这会替代你的
当前位置。使用-c来指定区块坐标,
否则将自动使用全局坐标。
(举个例子,全局坐标5,5和 -c 0,0 所指代的位置是相同的)

  • //hpos1

权限worldedit.selection.hpos
说明: 将选取点1设置为看向的方块

  • //wand

权限worldedit.wand
说明: 获取魔杖物品

  • /toggleeditwand

权限worldedit.wand.toggle
说明: 切换编辑魔杖功能的启用与否

  • //hpos2

权限worldedit.selection.hpos
说明: 将选取点2设置为看向的方块

  • //outset <amount> [-h] [-v]

权限worldedit.selection.outset
说明: 使用给定的数值,在所有方向上延展选区。
可用标记:
-h 仅会延展横向
-v 仅会延展纵向

  • //distr [-c] [-d]

权限worldedit.analysis.distr
说明: 获得选区内方块的分布情况。
-c 标记会获得你剪切板内容的分布情况。
-d 标记会将数据值不同的方块分开统计

  • //inset <amount> [-h] [-v]

权限worldedit.selection.inset
说明: 使用给定的数值,在所有方向上缩小选区。
可用标记:
-h 仅会缩小横向
-v 仅会缩小纵向

History 命令

(能够撤销操作,反撤销操作,清除历史的相关命令: 更多信息)

  • //redo [times] [player]

权限worldedit.history.redo
说明: (从历史记录中)反撤销上个操作

  • //clearhistory

权限worldedit.history.clear
说明: 清除你的历史记录

  • //undo [times] [player]

权限worldedit.history.undo
说明: 撤销上个操作

  • //frb <user=Empire92> <radius=5> <time=3d4h>

权限worldedit.history.rollback
说明: 撤销某个给定的操作。 - 时间使用以下单位: s(秒), m(分钟), h(小时), d(天), y(年)。
- 从硬盘中导入: /frb #import

Schematic 命令

(跟 schematic 文件有关的命令)

  • /schematic load [<format>] <filename>

权限worldedit.clipboard.load, worldedit.schematic.load, worldedit.schematic.upload, worldedit.schematic.load.other
说明: 将某个schematic文件导入到你的剪切板中

  • /schematic delete <filename>

权限worldedit.schematic.delete
说明: 将某个schematic文件从文件列表中移除

  • /schematic list [mine|<filter>] [page=1] [-d] [-n] [-p]

权限worldedit.schematic.list
说明: 列出所有schematic路径下的可用文件
-p <页码数> 能够列出指定页面的文件
-f <format> 启用格式限制

  • /schematic save [<format>] <filename>

权限worldedit.clipboard.save, worldedit.schematic.save, worldedit.schematic.save.other
说明: 将你的剪切板中的内容储存到schematic文件中

  • /schematic remap

权限worldedit.schematic.remap
说明: 将剪切板在MCPE/PC的格式间进行转换

  • /schematic formats

权限worldedit.schematic.formats
说明: 列出所有可用的格式

  • /schematic loadall [<format>] <filename|url>

权限worldedit.clipboard.load, worldedit.schematic.load, worldedit.schematic.upload
说明: 读取多个剪切板
-r 标记可以启用随机位置旋转

Clipboard 命令

(跟复制和粘贴方块有关的命令: 更多信息)

  • //copy [-e] [-m]

权限worldedit.clipboard.copy
说明: 将选区中的内容复制到剪切板中
可用标记:
-e 跳过复制实体
-m 设置资源蒙版,蒙版外的方块会作为空气复制
-b 也会复制生物群系
警告:实体的粘贴不能通过命令撤销!

  • //flip [<direction>]

权限worldedit.clipboard.flip
说明: 以复制点为基点,对剪切板中的内容进行镜面翻转。

  • //rotate <y-axis> [<x-axis>] [<z-axis>]

权限worldedit.clipboard.rotate
说明: 在不产生破坏的情况下,旋转剪切板中的内容。
角度需要输入度数,正数代表进行顺时针旋转。你也可以堆叠进行多次旋转。我们并不接受非90度倍数的值,否则将不会起任何作用,所以输入的度数应该是90的倍数。

  • //lazycopy [-e] [-m]

权限worldedit.clipboard.lazycopy
说明: 将选区中的内容延迟复制到剪切板中
可用标记:
-e 跳过复制实体
-m 设置资源蒙版,蒙版外的方块会作为空气复制
-b 也会复制生物群系
警告:实体的粘贴不能通过命令撤销!

  • //place [-s] [-a] [-o]

权限worldedit.clipboard.place
说明: 在不应用任何变化(如旋转)的前提下,直接放置剪切板中的内容。
可用参数:
-a 跳过空气方块
-o 粘贴在原位置
-s 粘贴之后将选区设定在粘贴区域

  • //cut [leave-id] [-e] [-m]

权限worldedit.clipboard.cut
说明: 将选区剪切到粘贴板之中
可用参数:
-e 跳过复制实体
-m 设置资源蒙版,蒙版外的方块会作为空气复制
-b 也会复制生物群系
警告:实体的粘贴不能通过命令撤销!

  • /download

权限worldedit.clipboard.download
说明: 通过配置的网页接口下载剪切板的内容

  • /asset [category]

权限worldedit.clipboard.asset
说明: 将你的剪切板的内容保存到网页资源接口中

  • //paste [-s] [-a] [-o]

权限worldedit.clipboard.paste
说明: 粘贴剪切板的内容。
可用参数:
-a 跳过空气方块
-b 跳过粘贴生物群系
-e 跳过粘贴实体
-o 粘贴到原位置
-s 在粘贴之后将选区设定在粘贴区域

  • //lazycut [-e] [-m]

权限worldedit.clipboard.lazycut
说明: 将选区中的内容延迟剪切到剪切板之中
可用参数:
-e 跳过复制实体
-m 设置资源蒙版,蒙版外的方块会作为空气复制
-b 也会复制生物群系
警告:实体的粘贴不能通过命令撤销!

  • /clearclipboard

权限worldedit.clipboard.clear
说明: 清除你的剪切板

Generation 命令

(创建特殊结构或更多有关特性: 更多信息)

  • //image <imgur> [randomize=true] [complexity=100]

权限worldedit.generation.image
说明: 创建一张图片

  • //generate <block> <expression> [-h] [-r] [-o] [-c]

权限worldedit.generation.shape
说明: 根据表达式创建结构,表达式返回的值
应该是正数(返回true,如果选择点在结构内的话)
作为可选项,你可以设置目标方块的类型或数据。
可选参数:
-h 创建凹下去的结构
-r 使用原版Minecraft坐标
-o 与 -r 相似,但使用相对坐标。
-c 与 -r 相似,但相对坐标的中心不同。
如果你既没有没有输入 -r ,也没有输入 -o 的话,选区会自动映射为 -1..1
详见 tinyurl.com/wesyntax。

  • //cyl <block> <radius>[,<radius>] [height] [-h]

权限worldedit.generation.cylinder
说明: 生成圆柱体。
通过指定用逗号分隔的两个半径,
你能够创建椭圆体。
第一个参数指定南北距离,第二个参数指定东西距离。

  • //sphere <block> <radius>[,<radius>,<radius>] [raised?] [-h]

权限worldedit.generation.sphere
说明: 生成实心球。
通过指定用逗号分隔的三个半径,
你能够创建椭球体。椭球体半径的距离的指定顺序为:
南北,上下,东西。

  • //ore <mask> <pattern> <size> <freq> <rarity> <minY> <maxY>

权限worldedit.generation.ore
说明: 生成矿物

  • //caves [size=8] [freq=40] [rarity=7] [minY=8] [maxY=127] [sysFreq=1] [sysRarity=25] [pocketRarity=0] [pocketMin=0] [pocketMax=3]

权限worldedit.generation.caves
说明: 生成网状的洞穴结构

  • //hcyl <pattern> <radius>[,<radius>] [height]

权限worldedit.generation.cylinder
说明: 生成中空的圆柱体。
通过指定用逗号分隔的两个半径,
你能够创建椭圆体。
第一个参数指定南北距离,第二个参数指定东西距离。

  • //ores

权限worldedit.generation.ore
说明: 生成矿物

  • //hsphere <block> <radius>[,<radius>,<radius>] [raised?]

权限worldedit.generation.sphere
说明: 生成中空的球体。
通过指定用逗号分隔的三个半径,
你能够创建椭球体。椭球体半径的距离的指定顺序为:
南北,上下,东西。

  • /forestgen [size] [type] [density]

权限worldedit.generation.forest
说明: 生成森林

  • //hpyramid <block> <size>

权限worldedit.generation.pyramid
说明: 生成中空的金字塔

  • /pumpkins [size]

权限worldedit.generation.pumpkins
说明: 生成南瓜群

  • //pyramid <block> <size> [-h]

权限worldedit.generation.pyramid
说明: 生成填充过的金字塔

  • //generatebiome <biome> <expression> [-h] [-r] [-o] [-c]

权限worldedit.generation.shape, worldedit.biome.set
说明: 根据表达式创建结构,表达式返回的值
应该是正数(返回true,如果选择点在结构内的话)
作为选择项,你可以设置目标方块的类型或数据。
可选参数:
-h 创建凹下去的结构
-r 使用原版Minecraft坐标
-o 与 -r 相似,但使用相对坐标。
-c 与 -r 相似,但相对坐标的中心不同。
如果你既没有没有输入 -r ,也没有输入 -o 的话,选区会自动映射为 -1..1
详见 tinyurl.com/wesyntax。

Biome 命令

(更改当前生物群系,或查看当前或所有生物群系)

  • //setbiome <biome> [-p]

权限worldedit.biome.set
说明: 设置区域的生物群系。
默认来说,我们会将你选区中的所有方块直接设置为对应生物群系。
-p 标记则将选区所在区块设置为对应生物群系。

  • /biomeinfo [-p] [-t]

权限worldedit.biome.info
说明: 获取当前位置的生物群系。
默认来说,我们会检测你选区中所有的方块,列出所有包含的生物群系。
-t 则检测你目光指向的那个区块。
-p 会检查你当前所在的区块。

  • /biomelist [page]

权限worldedit.biome.list
说明: 获取所有可用的生物群系。

Anvil 命令

(操纵大量方块:更多信息)


  • /anvil count <ids> [-d]

权限worldedit.anvil.count
说明: 为选区中的方块计数

  • /anvil replace [from-block] <to-block>

权限worldedit.anvil.replace
说明: 用一种方块替换选区中的所有另一种方块

  • /anvil replaceall <folder> [from-block] <to-block> [-d] [-f]

权限worldedit.anvil.replaceall
说明: 用另一种方块替换选区中的所有方块
-d 标记会禁用通配符的匹配

  • /anvil copy

权限worldedit.anvil.copychunks
说明: 将区块延迟复制到你的anvil剪切板中

  • /anvil paste [-c]

权限worldedit.anvil.pastechunks
说明: 从anvil剪切板将内容粘贴出来。
-c 标记会调整将内容粘贴到区块中。

  • /anvil distr

权限worldedit.anvil.distr
说明: 用另一种方块替换选区中的所有方块

  • /anvil trimallplots

权限worldedit.anvil.trimallplots
说明: 修剪地皮世界中的区块
未认领的区块会被删除
未修改的区块会被删除
使用 -v 来删除没有人去过的区块

  • /anvil countall <folder> [hasSky] <id> [-d]

权限worldedit.anvil.countall
说明: 为世界中的方块计数

  • /anvil clear

权限worldedit.anvil.clear
说明: 清除选区的区块(不整理磁盘碎片,直接删除)

  • /anvil removelayers <id>

权限worldedit.anvil.removelayer
说明: 如果某一区块的顶层方块全部都与提供的方块类型匹配成功的话,就移除顶层方块。

  • /anvil replacepattern [from-mask] <to-pattern>

权限worldedit.anvil.replace
说明: 移除选区内所有匹配对应样式模板的方块

  • /anvil remapall <folder>

权限worldedit.anvil.remapall
说明: 将世界在MCPE和PC的存档格式之间转换

  • /anvil deletealloldregions <folder> <time>

权限worldedit.anvil.deletealloldregions
说明: 移除一段时间内没有人进入的区域
你可以使用秒 (s), 分钟 (m), 小时 (h), 天 (d), 周 (w),和 年 (y) 来计算时间
(请注意:月份不是计算时间的单位)
举个例子: 8h5m12s

  • /anvil replaceallpattern <folder> [from-block] <to-pattern> [-d] [-m]

权限worldedit.anvil.replaceall
说明: 将选区中所有的方块替换成另一种方块样式

  • /anvil deleteallunvisited <folder> <age-ticks> [file-age=60000]

权限worldedit.anvil.deleteallunvisited
说明: 会将满足以下条件之一的全部区块移除: 加载时间没有到指定整数游戏刻的区块(20t = 1s);
在创建后,持续时间 file-duration (ms) 内没有被玩家访问的;
在过去的 chunk-inactivity (ms)时间中没有被使用的。 因此,我们推荐的自动保存时间间隔便是 file-durationchunk-inactivity 的值。

Super Pickaxe 命令

(超级镐子相关命令: 更多信息)

  • /sp recur <radius>

权限worldedit.superpickaxe.recursive
说明: 启用递归超级镐子模式

  • /sp area <radius>

权限worldedit.superpickaxe.area
说明: 启用区域超级镐子模式

  • /sp single

权限worldedit.superpickaxe
说明: 启用单个方块的超级镐子模式


Navigation 命令

(关于玩家在地图上移动的相关命令: 更多信息)

  • /descend [# of floors]

权限worldedit.navigation.descend
说明: 向下降一层

  • /ascend [# of levels]

权限worldedit.navigation.ascend
说明: 向上升一层

  • /thru

权限worldedit.navigation.thru.command
说明: 穿过面前的墙壁

  • /jumpto [world,x,y,z]

权限worldedit.navigation.jumpto.command
说明: 传送到某一位置

  • /ceil [clearance] [-f] [-g]

权限worldedit.navigation.ceiling
说明: 前往当前的最顶层,即“天花板”上

  • /up <block> [-f] [-g]

权限worldedit.navigation.up
说明: 向上移动一段距离,并在脚下生成方块

  • /unstuck

权限worldedit.navigation.unstuck
说明: 在卡在方块中的情况下逃脱

Snapshot 命令

(列出,读取快照以及查看跟快照有关的信息)

  • /snapshotlist [num]

权限worldedit.snapshots.list
说明: 列出快照列表的对应页数

  • /snapshotafter <date>

权限worldedit.snapshots.restore
说明: 选择发布时间在该时间之后,距离时间最近的一个快照

  • /snapshotbefore <date>

权限worldedit.snapshots.restore
说明: 选择发布时间在该时间之前,距离时间最近的一个快照

  • /snapshotuse <snapshot>

权限worldedit.snapshots.restore
说明: 选择要使用的快照

  • /snapshotsel <index>

权限worldedit.snapshots.restore
说明: 选择根据列表ID排序的某一快照

Snapshot Util 命令

(更多信息)

  • /restore [snapshot]

权限worldedit.snapshots.restore
说明: 从某一快照恢复选区

Scripting 命令

(执行 CraftScript 脚本 更多信息)

  • /cs <filename> [args...]

权限worldedit.scripting.execute
说明: 执行一个 CraftScript 脚本

  • /.s [args...]

权限worldedit.scripting.execute
说明: 执行上一个 CraftScript 脚本

Chunk 命令

([旧版使用] 检索区块: 更多信息)

  • /chunkinfo

权限worldedit.chunkinfo
说明: 获得你当前所在的区块的有关信息

  • /listchunks

权限worldedit.listchunks
说明: 列出你的选区所在的所有区块

  • /delchunks

权限worldedit.delchunks
说明: 已过期,请使用 anvil 命令来执行对应操作

Options 命令

(玩家切换设置和物品信息)

  • //searchitem <query> [-b] [-i]

说明: 搜索某个物品。
Flags:
-b 仅搜索方块
-i 仅搜索物品

  • //gtransform [transform]

权限worldedit.global-trasnform
说明: 获取全局变换式

  • //toggleplace

说明: 在你当前位置和第一个选取点之间切换位置

  • //tips

说明: 切换FAWE提示是否开启

  • //gsmask [mask]

权限worldedit.global-mask
说明: 设置应用到你所有编辑的全局资源蒙版,任何作为源资源存储的方块数据均需要经过本蒙版判定(例如:判定方块能否被复制到剪切板中)

  • //gmask [mask]

权限worldedit.global-mask
说明: 设置应用给你所有编辑的全局目标蒙版,与上面一个指令相对的,所有你的目标性更改均需通过本蒙版的判定(例如:判定能否修改世界中的方块)

  • //fast [on|off]

权限worldedit.fast
说明: 切换FAWE插件是否进入快速模式,在该模式下你的操作不会记录到相关历史记录中,即无法进行撤销操作

Brush Options 命令

(工具命令)

  • /target [mode]

说明: 在不同的目标模式之间切换

  • /size [pattern]

权限worldedit.brush.options.size
说明: 设置笔刷大小

  • //listbrush [mine|<filter>] [page=1] [-d] [-n] [-p]

权限worldedit.brush.list
说明: 列出或搜索所有你能使用的笔刷
-p <页码数> 列出指定页面

  • /mask [mask]

权限worldedit.brush.options.mask
说明: 设置笔刷的目标蒙版

  • /range [pattern]

权限worldedit.brush.options.range
说明: 设置笔刷的范围

  • /transform [transform]

权限worldedit.brush.options.transform
说明: 设置笔刷的变换式

  • /mat [pattern]

权限worldedit.brush.options.material
说明: 设置笔刷的填充方块样式

  • /patterns [page=1|search|pattern]

说明: 决定被放置的方块样式
使用[括号]来输入参数
使用 , 来代表 或 的分割
例如: #surfacespread[10][#existing],andesite
更多信息: https://git.io/vSPmA

  • /savebrush [name]

权限worldedit.brush.save
说明: 保存你当前的笔刷
使用 -g 标记以储存到全局

  • /loadbrush [name]

权限worldedit.brush.load
说明: 读取笔刷

  • /transforms [page=1|search|transform]

说明: 变换方块被放置的方式
使用[括号]来输入参数
使用 , 来代表 或 的分割
使用 & 来表示 和 的分割
更多信息: https://git.io/v9KHO

  • /primary [brush arguments]

说明: 设置右键点击激活的笔刷

  • // [on|off]

权限worldedit.superpickaxe
说明: 切换是否开启超级镐子功能

  • /targetmask [mask]

说明: 设置目标蒙版

  • /none

说明: 从当前物品上解除绑定功能

  • /visualize [mode=0]

说明: 在不同的预览模式之间进行切换
0 = 没有预览
1 = 预览单个目标方块
2 = 用玻璃预览所有将会改变的方块

  • /scroll [none|clipboard|mask|pattern|range|size|visual|target]

说明: 在不同的目标模式之间进行切换

  • /secondary [brush arguments]

说明: 设置左键点击激活的笔刷

  • /smask [mask]

权限worldedit.brush.options.mask
说明: 设置笔刷的资源蒙版

  • /masks [page=1|search|mask]

说明: 查看所有用来决定方块能否被放置的蒙版
使用[括号]来输入参数
使用 , 来代表 或 的分割
使用 & 来表示 和 的分割
举个例子: >[stone,dirt],#light[0][5],$jungle
更多信息: https://git.io/v9r4K

Tool 命令

(将某些功能绑定到持有的物品之上: 更多信息)

  • /tool tree [type]

权限worldedit.tool.tree
说明: 生成树的工具

  • /tool repl <block>

权限worldedit.tool.replacer
说明: 方块替换工具

  • /tool info

权限worldedit.tool.info
说明: 方块信息工具

  • /tool lrbuild <leftclick block> <rightclick block>

权限worldedit.tool.lrbuild
说明: 大范围建筑工具

  • /tool cycler

权限worldedit.tool.data-cycler
说明: 方块数据值循环工具

  • /tool deltree

权限worldedit.tool.deltree
说明: 移除漂浮的树的工具

  • /tool inspect

权限worldedit.tool.inspect
说明: 选择检查笔刷

  • /tool floodfill <pattern> <range>

权限worldedit.tool.flood-fill
说明: 池塘填充工具

  • /tool farwand

权限worldedit.tool.farwand
说明: 远程选区工具

Brush 命令

(从远程建筑与涂画的工具。 更多信息)

  • /brush copypaste [depth=5]

权限worldedit.brush.copy
说明: 左键点击一个物体的底座来复制。
右键点击来粘贴
-r 标记能够在粘贴时应用随机旋转
注意:能和剪切板滚动一起搭配使用
视频: https://www.youtube.com/watch?v=RPZIaTbqoZw

  • /brush command <radius> [cmd1;cmd2...]

权限worldedit.brush.command
说明: 在点击的位置执行一条命令。
你的选区会延展到包括该点
可用的变量: {x}, {y}, {z}, {world}, {size}

  • /brush populateschematic <mask> <file|folder|url> [radius=30] [points=5] [-r]

权限worldedit.brush.populateschematic
说明: 选择分散型schematic笔刷。
-r 标记能够应用随机旋转

  • /brush scmd <scatter-radius> <points> <cmd-radius=1> <cmd1;cmd2...>

权限worldedit.brush.scattercommand
说明: 在表面的随机一点执行命令
分散的半径是每个点之间的最小距离
你的选区会延展到包括该点
可用的变量: {x}, {y}, {z}, {world}, {size}

  • /brush erode [radius=5]

权限worldedit.brush.erode
说明: 侵蚀地形

  • /brush pull [radius=5]

权限worldedit.brush.pull
说明: 将地形朝着你所在的方向隆起

  • /brush blendball [radius=5]

权限worldedit.brush.blendball
说明: 平滑化,混合化地形
图片: https://i.imgur.com/cNUQUkj.png -> https://i.imgur.com/hFOFsNf.png

  • /brush stencil <pattern> [radius=5] [file|#clipboard|imgur=null] [rotation=360] [yscale=1.0]

权限worldedit.brush.stencil
说明: 使用高度图来绘制出地形表面。
-w 标记仅会应用于最大饱和度
-r 标记会应用随机旋转

  • /brush splatter <pattern> [radius=5] [seeds=1] [recursion=5] [solid=true]

权限worldedit.brush.splatter
说明: 设置物体表面为随机方块。
图片: https://i.imgur.com/hMD29oO.png
使用示例: /br splatter stone,dirt 30 15
注意:种子决定着会有多少斑点,递归次数决定着其大小,solid决定着模型是按照每个种子应用还是按照每个方块应用。

  • /brush cylinder <block> [radius=2] [height=1] [-h]

权限worldedit.brush.cylinder
说明: 创建圆柱体。
-h 标记会创建中空的圆柱体。

  • /brush shatter <pattern> [radius=10] [count=10]

权限worldedit.brush.shatter
说明: 创建将地形分成多个部分的不均匀的线
图片: https://i.imgur.com/2xKsZf2.png

  • /brush circle <pattern> [radius=5]

权限worldedit.brush.sphere
说明: 围绕着你看向的方向创建一个圆。
注意:无视笔刷的半径,并且启用预览可以帮助你操作的可能结果

  • /brush smooth [size=2] [iterations=4] [-n]

权限worldedit.brush.smooth
说明: 选择地形平滑化笔刷。
-n 标记会只更改自然生成的方块。

  • /brush ex [radius=5]

权限worldedit.brush.ex
说明: 火焰熄灭笔刷的简写

  • /brush gravity [radius=5] [-h]

权限worldedit.brush.gravity
说明: 这个笔刷会模仿重力的作用。
-h 标记能够让它从世界的最大Y坐标开始计算,而不是点击方块的Y坐标。

  • /brush sspl <pattern> [size=0] [tension=0] [bias=0] [continuity=0] [quality=10]

权限worldedit.brush.surfacespline
说明: 在地面上创建一条曲线。
视频: https://www.youtube.com/watch?v=zSN-2jJxXlM

  • /brush spline <pattern>

权限worldedit.brush.spline
说明: 点击一些物体,然后再次点击相同的方块来让你的物体之间进行连接。
笔刷半径设置过小,或是点击位置错误或导致变形。形状必须是简单的线条或者封闭的环形。
图片: http://i.imgur.com/CeRYAoV.jpg -> http://i.imgur.com/jtM0jA4.png
图片2: http://i.imgur.com/bUeyc72.png -> http://i.imgur.com/tg6MkcF.png

  • /brush surface <pattern> [radius=5]

权限worldedit.brush.surface
说明: 使用高度图来画出表面。
-w 标记仅会应用于最大饱和度
-r 标记会应用随机旋转

  • /brush layer <radius> [color|<pattern1> <patern2>...]

权限worldedit.brush.layer
说明: 使用覆盖层来替换地形。
示例:/br layer 5 95:1 95:2 35:15 - 会在地面上放置一些覆盖层
图片: https://i.imgur.com/XV0vYoX.png

  • /brush sphere <pattern> [radius=2] [-h]

权限worldedit.brush.sphere
说明: 创建一个球体。
-h 标记能够创建中空的球体。

  • /brush clipboard

权限worldedit.brush.clipboard
说明: 选择剪切板笔刷。
-a 标记会使其不会粘贴空气方块。
不输入 -p 标记,粘贴后的内容的中心会出现在目标位置。输入该标记后,粘贴内容所在的位置就会根据你在复制内容时所站的位置而定义了。

  • /brush recursive <pattern-to> [radius=5]

权限worldedit.brush.recursive
说明: 设置所有连接起来的方块。
-d 标记会应用深度优先的顺序
注意:设置蒙版可以递归指定的方块

  • /brush scatter <pattern> [radius=5] [points=5] [distance=1] [-o]

权限worldedit.brush.scatter
说明: 在地面上随机散布方块。
-o 标记会覆盖原方块
视频: https://youtu.be/RPZIaTbqoZw?t=34s

  • /brush line <pattern> [radius=0] [-h] [-s] [-f]

权限worldedit.brush.line
说明: 创建线段。
-h 标记仅会创建其外壳
-s 标记在创建之后会选择点击的点。
-f 标记会创建平坦的线段。

  • /brush height [radius=5] [file|#clipboard|imgur=null] [rotation=0] [yscale=1.00] [-h]

权限worldedit.brush.height
说明: 这个笔刷可以使地形上升或下降。
- -r 标记启用随机坐标旋转
- -l 标记使得该笔刷也会在雪层中工作
- -s 标记禁用平滑
注意!注意!如果你要降低地形的话请将yscale的值设置为负数!
在雪层中应用的图片: https://i.imgur.com/Hrzn0I4.png

  • /brush butcher [radius=5] [-p] [-l] [-a] [-n] [-g] [-b] [-t] [-f] [-r]

权限worldedit.brush.butcher
说明: 击杀在指定的半径内的怪物。
可用的标记:
-p 也击杀宠物
-n 也击杀 NPC
-g 也击杀铁傀儡
-a 也击杀动物。
-b 也击杀中立生物
-t 也击杀带有名字的怪物
-f 相当于这以前所有标记的混合
-r 也击杀盔甲架
-l 目前无任何作用

  • /brush flatten [radius=5] [file|#clipboard|imgur=null] [rotation=0] [yscale=1.00] [-h]

权限worldedit.brush.height
说明: 平坦笔刷,可以使地形平坦
- -r 标记启用随机坐标旋转
- -l 标记使得该笔刷也会在雪层中工作
- -s 标记禁用平滑

  • /brush cliff [radius=5] [file|#clipboard|imgur=null] [rotation=0] [yscale=1.00] [-h]

权限worldedit.brush.height
说明: 这个笔刷可以平坦地形且创建悬崖。
- -r 标记启用随机坐标旋转
- -l 标记使得该笔刷也会在雪层中工作
- -s 标记禁用平滑

蒙版 /Masks  

(关于蒙版方面的帮助 更多信息)

蒙版决定了方块能否被放置
- 使用 [brackets] 来输入参数 - 使用 , 来代表 或 的分割
- 使用 & 来代表 与 的分割
例如: >[stone,dirt],#light[0][5],$jungle 更多信息: https://git.io/v9r4K

  • #offset <dx> <dy> <dz> <mask>

说明: 使蒙版偏移对应坐标值

  • % <chance>

说明: 百分比几率

  • #id

说明: 限制初始ID

  • #data

说明: 限制初始数据值

  • { <min> <max>

说明: 限制方块与初始方块的距离范围

  • #existing

说明: 设置限制为非空气方块

  • $ <biome>

说明: 限制操作在特殊的生物群系中,要想列出所有的生物群系请使用 //biomelist

  • #surface

说明: 限制操作在表面方块上(任何接触空气的固体方块)

  • ! <mask>

说明: 取对应蒙版的“非”值

  • = <expression>

说明: 表达式蒙版

  • #region

说明: 在某个提供的区域内部

  • \ <min> <max>

说明: 限制为特殊的地形坡度
-o 标记仅仅会覆盖,举个例子: /[0d][45d]
作用解释:能够选出任何坡度在0-45度之间的方块
示例:/[3][20]
作用解释:能够选出任何坡度在3-20度之间的方块

  • #dregion

说明: 在玩家的选取之中

  • #xaxis

说明: 限制为特殊的x轴坐标位置

  • #yaxis

说明: 限制为特殊的y轴坐标位置

  • #opacity <min> <max>

说明: 限制为指定的不透明度等级

  • #light <min> <max>

说明: 限制为指定的光亮等级

  • #blocklight <min> <max>

说明: 限制为指定的方块亮度等级

  • #haslight

说明: 限制为方块是否拥有光照(天空或环境)

  • ~ <mask> [min=1] [max=8]

说明: 邻近的其他方块的数量

  • #brightness <min> <max>

说明: 限制指定的方块光照等级

  • #nolight

说明: 限制方块需要没有光亮(天空或环境)

  • #skylight <min> <max>

说明: 限制需要指定天空光亮等级

  • #simplex <scale=10> <min=0> <max=100>

说明: 使用噪声算法作为蒙版

  • #zaxis

说明: 限制为特殊的z轴坐标位置

  • > <mask>

说明: 限制在某一指定方块的上面

  • #wall

说明: 限制为墙壁(任意方块,东西南北任意一面为空气)

  • | <mask> <min> <max>

说明: 限制旁边位置拥有指定数量的其他方块

  • #iddata

说明: 限制指定的方块ID与数据值

  • < <mask>

说明: 在某一指定方块之下

  • #solid

说明: 限制仅操作固体方块

样式 /Patterns

(对于某些方块样式信息的帮助。 更多信息)

样式决定放置什么方块
- 使用 [brackets] 输入参数
- 使用 , 来代表 或 的分割
举个例子: #surfacespread[10][#existing],andesite
更多信息: https://git.io/vSPmA

  • #offset <dx> <dy> <dz> <pattern>

说明: 使样式偏移对应坐标值

  • #mask <mask> <pattern-true> <pattern-false>

说明: 根据蒙版应用样式

  • #id <pattern>

说明: 只改变方块ID

  • #spread <dx> <dy> <dz> <pattern>

说明: 随机扩散方块

  • #buffer <pattern>

说明: 只有当样式在使用时才放置方块
如果你不想点击某些地方两次时,用它和笔刷搭配

  • #clipboard

说明: 使用你剪切板中的方块作为样式

  • #relative <pattern>

说明: 将样式偏移到你所点击的位置

  • #data <pattern>

说明: 只会改变方块的数据值

  • #biome <biome>

说明: 设置生物群系

  • #existing

说明: 仅更改已经存在的方块

  • = <expression>

说明: 样式表达式: http://wiki.sk89q.com/wiki/WorldEdit/Expression_syntax

  • #simplex <scale=10> <pattern>

说明: 使用噪声算法来随机放置方块

  • #averagecolor <color> [randomize=true] [max-complexity=100]

说明: 在已经存在的方块和颜色之间平均化

  • #desaturate [percent=100] [randomize=true] [max-complexity=100]

说明: 减小已经存在的方块的饱和度

  • #darken [randomize=true] [max-complexity=100]

说明: 减小已经存在的方块的亮度

  • #fullcopy [schem|folder|url=#copy] [rotate=false] [flip=false]

说明: 将你完整的剪切板填充到方块上

  • #buffer2d <pattern>

说明: 只有在一列中的样式被使用时才会放置方块

  • #lighten [randomize=true] [max-complexity=100]

说明: 增大已存在的方块的亮度

  • #saturate <color> [randomize=true] [max-complexity=100]

说明: 增加已经存在的方块的饱和度

  • #anglecolor [randomize=true] [max-complexity=100]

说明: 根据坡度角的大小,计算出的较正常方块暗的方块

  • #iddatamask <bitmask=15> <pattern>

说明: 使用样式的ID和目的方块的数据值放置方块
- 用于替换半砖或其他方块数据值需要修改的方块

  • #angledata

说明: 根据坡度角提供方块数据值

  • #!x <pattern>

说明: 本样式不会提供z轴的信息。
举个例子: #!x[#!z[#~[#l3d[pattern]]]]

  • #!y <pattern>

说明: 本样式不会提供y轴的信息

  • #linear <pattern>

说明: 循环从样式列表中读取并设置方块

  • #!z <pattern>

说明: 本样式不会提供z轴的信息

  • #surfacespread <distance> <pattern>

说明: 随机改变地面上一个方块的位置

  • #linear3d <pattern>

说明: 使用 x,y,z 坐标选定一个来自列表中的方块

  • #solidspread <dx> <dy> <dz> <pattern>

说明: 随机传播固体方块

  • #color <color>

说明: 使用接近于指定颜色的方块

变换式 /Transforms

(变换式的有关帮助。 更多信息)

变换式会在放置方块之前,对其作出某种变化
- 在 [brackets] 中输入参数
- 使用 , 来代表 或 的分割
- 使用 & 来代表 与 的分割
更多信息: https://git.io/v9KHO


  • #offset <dx> <dy> <dz> [transform]

说明: 偏移变换式,将方块偏移指定坐标后放置

  • #rotate <rotateX> <rotateY> <rotateZ> [transform]

说明: 所有的变化都会被绕着指定位置旋转

  • #scale <dx> <dy> <dz> [transform]

说明: 所有的变化都会按比例进行缩放

  • #pattern <pattern> [transform]

说明: 使用给定的方块样式

  • #spread <dx> <dy> <dz> [transform]

说明: 随机偏移变换式

  • #linear <transform>

说明: 从变换式列表中循环选择变换式

  • #linear3d <transform>

说明: 使用 x,y,z 坐标选定一个来自列表中的变换式

配置

FAWE 安装后,即使不经过配置,也已经非常高效了,但是在配置或微调操作限制和队列操作的相关设置后,FAWE的效率还会有一定的提升。请参阅下列的内容以及默认配置文件中的注释行。

如果你在修改了配置之后,发现之后插件不正常工作,那么请把你微调的那一项设置改回默认。

要想重置 config.yml 文件的话,请删除它,然后重启服务器或使用 /fawe 命令重新载入 FAWE 插件。

异步操作

WorldEdit 插件会在放置方块之前,尝试将所有编辑操作全部储存在内存之中。

WorldEdit 也会在内存中储存撤销方块等等历史记录,在大型编辑时这会增加内存的需求,甚至会导致服务器内存溢出崩溃,或导致编辑失败。

FAWE 则对速度有极大的提升,它将每个编辑操作都分割到了异步线程上进行。

本插件会在计算完成之前,部分计算完成之后就开始放置方块。

这让全局编辑的整体速度得到有效提升。

同时,因为方块在有关计算完毕之后就开始放置,它们不会占用内存的空间。

FAWE 也能够通过配置将撤销方块(等有关历史记录)储存在硬盘之上,这可以与其他性能的改善搭配使用,最终使 FAWE 插件能够在极小占用的情况下完成数倍于 Worldedit 插件的编辑内容。

操作限制设置

这些设置能够让你控制某些用户组单次编辑可以放置的方块数目。

“default”(默认)小节就是为非管理组用户和没有权限跳过限制的用户所准备的。

查看 fawe.bypassfawe.admin 权限来获取更多信息。

你也能通过使用权限节点来定义某些特定用户组的限制,请查看下方的默认配置文件中的注释行。

队列设置

这小节中的设置能够让你微调异步队列操作,影响内存的使用情况与编辑速度。

本地队列

FAWE 会将每个编辑命令放在分割的异步线程之中,以此来代替把操作塞进服务器主线程的做法,队列中的方块由每个玩家的本地队列来处理。

在队列中,方块按照区域来排序,这能够让 FAWE 使用更高效的优化算法,最终将方块放置(分配)进世界之中。

举个例子,WorldEdit会使用插件本体来执行光照和物理效果,然后发包,最后改变每一个方块。

但是取而代之的是,FAWE将它队列中的方块按照区块分开检测,使用更高效的优化算法,将方块放置进世界中。

在编辑开始时,本地队列进入未完成阶段。

当需要处理的队列方块为简单的 //set 或者是 //copy 这种类型的命令时,方块已经直接准备好放置了。

当使用其他命令(例如 //smooth 或 //deform)来编辑方块时,方块的变化要依赖于世界中的其他方块,并且编辑所涉及的方块可能要改变好几次。

(一般来说,本地化队列的所有编辑都能够在涉及64个区块内完成)

当编辑全部完成之后,本地队列变化成完成状态。

全局队列

FAWE 使用全局队列来放置当前激活的本地队列中的编辑内容。

全局队列按照编辑的优先级来处理编辑顺序,所以提交时间最长的编辑会首先开始进行。全局队列中的方块放置是在服务器的主线程上工作的。

FAWE 首先会放置完成状态的本地队列中的方块。因此,在放置未完成状态的本地队列中的方块之前,完成状态的本地队列列表必须是空的。

全局队列和本地队列相互连接配合,便实现了编辑的成功进行。

(从内部代码实现的角度来说,我们使用两个队列<queue>来存储相关队列内容,一个是完成状态的本地队列,另一个是未完成状态的)

效率改善

FAWE 也尝试通过“在没有完成状态的本地队列时,放置未完成状态的本地队列中的方块”的方式来改善插件的效率。

  • target–size

FAWE 使用 target–size 来控制放置未完成队列中的方块数目,同时确保将要被放置的方块将不再因后续的计算而改变。

虽说在大多数情况下,类似于 //smooth 或 //deform 的这些命令,它们涉及的区块数目远小于64个区块,但是,如果在指令仍在计算方块更改时,涉及的方块数目便已经超过了本选项设置的限度,这些指令的最终实现效果便可能不是那么理想。

这是因为,这些命令所涉及的方块改变会参考世界中其他位置方块的情况,并且所涉及的一些方块可能要经历多次改变。

而在这种设置的情况下,在附近的64个区块进入处理队列之后,其他方块被重新计算、修改的可能性便被抹除了。

但是对于简单的操作来说,不会存在这种问题,例如 //copy 和 //set,因为这些命令涉及的方块不会进行多次的改变。

如果队列中不存在完成的本地队列正等待放置方块,且队列中排队的区块数目大于等于target-size选项所设置的值的话,全局队列会直接开始处理仍然在计算中的可放置方块。

调高这项设置能够确保像 //smooth 和 //deform 这样的命令稳定,但调低这项设置也能确保全局队列一直在放置可用的方块,而不是处于闲置状态。

默认的 target–size 的值是64.

如果没有 target–size 选项的话,使用 /fastmode 运行巨大的编辑会导致未完成的队列的填充速度比 max–wait–ms 的清空队列速度更快。

减小 target–size 选项的值,可能会使例如 //smooth 和 //deform 这些命令的成效变差,因为在方块确定被放置之后,将花费在计算重新改变方块上的时间被取消了。

同时,也正因为这些命令会依赖于其他位置的方块,如果 target–size 设置不够大的话,与先经过完全计算,再开始放置方块的模式相比,直接从未完成队列中放置方块这种模式最后所表现出的效果可能有一些差异。

这可能会导致命令的最终效果不正确。

所以请将 target–size 选项的值设定的适当大,来避免这个问题。

target–size 的值设置的过大可能收效不大,因为大多数涉及的方块编辑操作都能限制在64个区块之中。

同时如果将它设置的很大的话,就会降低 FAWE 阻止大型编辑使服务器内存溢出的能力。

  • max–wait–ms

FAWE 对于放置已经完成计算的相关编辑方块来说,也是非常高效的。

但是,等待计算完成既耗费时间,也占用内存。

因此,本设置就是用来避免编辑计算没有完全完成时,部分已经完成计算的方块一直闲置在内存中的问题。

本选项主要用来保持全局队列持续处于放置方块的状态之中。

全局队列会在队列中没有处于完成的本地队列,并且全局队列处于空闲状态时间的比 max–wait–ms 所设置的时间长(单位为毫秒)时,开始放置仍然在处理中的方块。

max–wait–ms 设置也能解决区块读取连接超时的问题。通常区块的读取速度都是小于一秒的,所以默认的 max–wait–ms 的值是 1000,用于避免编辑冻结或是区块读取错误。

如果区块没有及时加载的话,请尝试将这个数值调大。

默认配置文件

默认的配置文件如下面的代码所示。

请注意,服务器文件夹内生成的配置文件是不带注释的。

# 前六项是不能配置的
issues: "https://github.com/boy0001/FastAsyncWorldedit/issues"
wiki: "https://github.com/boy0001/FastAsyncWorldedit/wiki/"
date: "27 Aug 2017 14:00:00 GMT"
build: "https://ci.athion.net/job/FastAsyncWorldEdit/<build>"
commit: "https://github.com/boy0001/FastAsyncWorldedit/commit/<hash>"
platform: "<platform>"
# 可用选项:de
# 请发起pull request来贡献翻译: https://github.com/boy0001/FastAsyncWorldedit/new/master/core/src/main/resources
language: ''
# 是否允许插件自动更新
update: true
# 是否将插件的使用统计发送到 mcstats.org
metrics: true
# FAWE 在没有足够的可用内存时,是否会跳过处理相关区块以防止崩溃
prevent-crashes: false
# 设置为 true 来启用支持 WorldEdit 的相关插件对区域的限制。(例如: PlotSquared 或 WorldGuard)
# 要想在区域中启用 WorldEdit 的话,用户需要相关权限:
# fawe.<plugin>  权限。查看权限页面来获取所有目前支持的区域插件。
region-restrictions: true
# FAWE 在内存占用超过这个百分比时会取消非管理员做出的编辑
#  - 使用 `/wea` 或 `//fast` 或 `fawe.bypass` 命令跳过检测
#  - 设置为 100 或 -1 禁用本设置。
max-memory-percent: 95

clipboard:
  # 是否将用户剪切板内容储存到硬盘上,而非储存在内存中
  #  - 执行剪切板操作相关命令的速度将会有一定程度的下降
  #  - 剪切板中每个方块占用 2 字节的存储空间
  use-disk: true
  # 是否将剪切板压缩,以减少文件大小:
  #  - TODO: 目前还没有实现在硬盘上的压缩随机访问
  #  - 0 = 不进行压缩
  #  - 1 = 快速压缩
  #  - 2-17 = 较慢速度压缩
  compression-level: 1
  # 用户剪切板信息在删除之前,储存在硬盘上的时间,单位为天
  delete-after-days: 1

lighting:
  # 是否应该在重新计算光照完成后再发包
  delay-packet-sending: true
  async: true
  # 重新计算光照的模式:
  #  - 0 = 无(不重新计算光照)
  #  - 1 = 优化(重新计算光源和改变的方块的光照)
  #  - 2 = 全局(缓慢重新计算每个方块的光照)
  mode: 1

# 一般的游戏刻限制(对 WorldEdit 来说不必要,但是可以防止滥用)
tick-limiter:
  # 是否启用限制
  enabled: true
  # 限制间隔,单位游戏刻
  interval: 20
  # 在每个间隔间最大的掉落方块数目(每区块)
  falling: 64
  # 每个间隔中最大执行的物理效果数目(每区块)
  physics: 8192
  # 每间隔最大生成的物品数目(每区块)
  items: 256

web:
  # 剪切板的网页接口
  #  - 所有的剪切板都匿名私有储存
  #  - 下载可以被用户删除
  #  - 支持剪切板的上传,下载和保存
  url: "http://empcraft.com/fawe/"
  # 资源的网页接口
  #  - 所有剪切板都是组织好后公开的
  #  - 资源能够被搜索,选择和下载
  assets: "http://empcraft.com/assetpack/"

extent:
  # 当这些插件拖慢了 WorldEdit 的操作速度时不要提示控制台
  #  - 如果你需要改变本选项时你会在控制台收到提示信息
  allowed-plugins: []
  # 第三方延展插件安装后是否应该显示调试信息
  debug: true

# 仍在开发实验中的选项,你可以试着用用
experimental:
  # [不安全] 直接修改区域文件(已过期——请使用Anvil命令)
  #  - 使用不当会导致世界错误!
  anvil-queue-mode: false
  # [安全] 动态增加渲染的区块的数目
  #  - 需要 Paper 服务端: ci.destroystokyo.com/job/PaperSpigot/
  #  - 将你的服务器视距上设置为 1 (spigot.yml, server.properties)
  #  - 取决于服务器的 tps 和玩家的移动
  #  - 请给我们提供反馈信息
  dynamic-chunk-rendering: false

# 队列相关配置,与 FAWE 放置区块的方法相关联
queue:
  # 这个数值应该和你处理器拥有的核数相同
  #  - 如果你需要可信度高的 `/timings` 的话,将此选项设置为1
  parallel-threads: 8
  progress:
    # 显示一位用户的编辑的进度的恒定 title
    #  - false = 禁用
    #  - title = 显示进度title
    #  - chat = 在聊天栏中显示进度
    display: "false"
    # 编辑进度多久显示一次
    interval: 1
    # 发送进度的延迟,单位毫秒(防止编辑进度刷屏的情况发生)
    delay: 5000
  # 在编辑比这数目还多的区块时:
  #  - FAWE 会在所有运算完成之前直接开始放置方块
  #  - 大些的值会些微减少CPU的运算时间
  #  - 小写的值可以减少内存使用
  #  - 太小的值会导致一些命令执行效果变差(例如 deform)
  target-size: 64
  # 不管一项编辑是否计算处理完成,强制 FAWE 开始放置区块
  #  - 大些的值会在一定程度上减少CPU的运算时间
  #  - 小些的值可以减少内存使用
  #  - 太小的值会导致一些操作执行效果变差(例如 deform)
  max-wait-ms: 1000
  # 增加或减少队列强度(毫秒) [-50,50]:
  #     0 = 平衡性能与稳定性
  #     -10 = 为区块放置少分配 10ms
  # 值太大的话会造成卡顿(可能你感觉不到)
  # 值太小的话编辑进度会很慢
  extra-time-ms: 0
  # 在提速操作之前读取多少数量的区块
  #  - 值太小的话会导致FAWE等待主线程的请求
  #  - 值太大的话会占用更多内存,但并不会感觉变快
  preload-chunks: 32
  # 放弃已经闲置了一段时间(ms)的编辑
  #  - 例如:一款插件创建了 EditSession 但没有使用它做任何事
  #  - 这只会对不正确使用 WorldEdit 的旧版 API 的插件起作用
  discard-after-ms: 60000

history:
  # 历史记录是否应储存在硬盘上:
  #  - 空闲大量的内存
  #  - 服务器重启可以存留历史记录
  #  - 可以无限次撤销
  #  - 不会影响编辑的性能,依照 `combine-stages`
  use-disk: true
  # 使用数据库来储存硬盘储存的概要:
  #  - 启用检测和回档
  #  - 不会影响性能
  use-database: true
  # 在分配时记录到历史中:
  #  - 速度更快,因为它避免了重复的方块检查
  #  - 压缩可能会糟糕一些,因为分配顺序不同
  combine-stages: true
  # 大些的压缩等级减少历史记录的大小,但以占用 CPU 使用率为代价
  # 0 = 不压缩字节数组(最快)
  # 1 = 1 级快速压缩(默认)
  # 2 = 2 x 快速
  # 3 = 3 x 快速
  # 4 = 1 x 中速, 1 x 快速
  # 5 = 1 x 中速, 2 x 快速
  # 6 = 1 x 中速, 3 x 快速
  # 7 = 1 x 慢速, 1 x 中速, 1 x 快速
  # 8 = 1 x 慢速, 1 x 中速, 2 x 快速
  # 9 = 1 x 慢速, 1 x 中速, 3 x 快速 (最佳压缩文件)
  # 注意:如果你使用硬盘的话,请最好使用压缩,因为较小的文件可以储存的更快
  compression-level: 3
  # 压缩的缓冲大小:
  #  - 较大 = 更好的比率,但是占用更多内存
  #  - 必须在以下范围中 [64, 33554432]
  buffer-size: 531441
  # 编辑时最大等待一个区块加载的时间,单位是毫秒。
  #  (50ms = 1 游戏刻, 0 = 最快).
  #  默认值 100 应该对大多数情况来说都是安全的。
  # 
  # 需要读取区块的操作(例如:复制)在没有及时读取区块时
  # 会使用上个区块作为过滤器,这会出现大量复制出的方块。
  # 每个读取区块的操作在读取区块时通常都需要25-50ms,在服务器卡顿时甚至更多。
  # 所以即使设置100ms的等待时间,如果区块在10ms内加载完毕了的话,也不需要等待100ms。
  # 
  # 本值也可以作为万一区块无法读取时(不管是什么原因)操作超时的值
  # 如果操作超时了的话,操作就会使用上个区块作为过滤器,
  # 然后显示出一条错误信息,在这种情况下,你需要要么将选区调整的更小,
  # 要么将本项的值设置的大一些。
  # 如果设置为 0,这个值的处理速度会很快,因为它既不会阻止读取区块,也不会等待。
  chunk-wait-ms: 1000
  # 在几天之后删除硬盘上的历史记录
  delete-after-days: 7
  # 在玩家登出时是否删除内存中的历史记录(不影响硬盘存储)
  delete-on-logout: true
  # 对于一些使用 WorldEdit 的插件来说,历史记录是否默认启用:
  #  - 禁用本项速度会更快
  #  - 使用 FAWE API 的插件不会受影响
  enable-for-console: true
  # 是否储存反撤销的相关信息:
  #  - 历史记录文件要大大约 20%
  #  - 允许使用 /redo 命令
  store-redo: true
  # 仅记录所有比 4096x256x256 小的编辑:
  #  - 减少历史记录文件的大小大概10%
  small-edits: false

# 一些路径的文件夹名
paths:
  # 将任何Minecraft或Mod的Jar文件放在这里来使用方块的材质
  textures: "textures"
  heightmap: "heightmap"
  history: "history"
  # 群组服务器可以使用相同的剪切板
  clipboard: "clipboard"
  # 是否分离每个玩家schematic文件的路径
  per-player-schematics: true
# "default" 权限组会影响没有特殊限制权限的用户。
# 要想给某人不同的权限配置,请复制默认限制组
# 然后重新给这个权限组命个名(例如:newbie)。然后给予用户限制的
# 权限节点,使用该限制名(例如: fawe.limit.newbie  )
limits:
  default:
    # 能够最多同时运行的操作(例如:命令)
    max-actions: 1
    # 每次最大改变的方块数量(例如:使用 `//set stone` )。
    max-changes: 50000000
    # 每次最大检测的方块数量(例如:使用 `//count stone` 不会改变方块的命令)
    max-checks: 50000000
    # 一次更改失败的最大次数(例如:玩家没有访问该区域的权限)
    max-fails: 50000000
    # 最大允许的笔刷递归次数(例如: `//brush smooth` )
    max-iterations: 1000
    # 一次操作最大能够允许的实体数目(例如:牛)
    max-entities: 1337
    # 包括 Banner, Beacon, BrewingStand, Chest, CommandBlock, 
    # CreatureSpawner, Dispenser, Dropper, EndGateway, Furnace, Hopper, Jukebox, 
    # NoteBlock, Sign, Skull, Structure 的最大方块状态
    max-blockstates: 1337
    # 玩家历史文件的最大尺寸,单位是MB:
    #  - 超过这个尺寸的历史文件,不管是在硬盘上还是内存中都会被删除
    max-history-mb: -1
    # //calc 能够执行的每次操作的最大时间,单位毫秒 
    max-expression-ms: 50
    # 动画化方块放置:
    #  - 为方块放置增加延迟(ms/方块)
    #  - 使用虚伪的延迟会导致使用更多CPU与内存
    speed-reduction: 0
    # 放置区块,而不是单个方块:
    #  - 禁用本项会大幅度降低性能
    #  - 只有在与动画化方块放置冲突时才禁用本项
    fast-placement: true
    # WorldEdit 应该使用玩家的物品栏放置物品吗?
    # 0 = 不使用物品栏(创造模式)
    # 1 = 移除和放置都使用物品栏(免费建筑区)
    # 2 = 仅放置使用物品栏(生存模式)
    inventory-mode: 0
    # 大型的编辑是否需要确认(需要区块数目大于16384)
    confirm-large: true

Bukkit API

插件开发相关,暂略

参考资料