FastAsyncWorldEdit — Minecraft中的异步快速世界编辑插件
FastAsyncWorldEdit (FAWE) 是Minecraft经典WorldEdit插件的具有异步处理功能的分支。了解其命令、功能和配置。
FastAsyncWorldEdit (FAWE) 是Minecraft经典WorldEdit插件的具有异步处理功能的分支。了解其命令、功能和配置。
FastAsyncWorldEdit — Minecraft中的异步快速世界编辑插件
FastAsyncWorldEdit(简称FAWE)是Minecraft中经典的WorldEdit插件的一个分支,它重写了内部的编辑处理过程。常规的WorldEdit在服务器的主线程中执行大型命令,因此更改数十万个方块会导致卡顿和超时。FAWE将工作划分为线程,按区块(chunk)对操作进行分组,并并行写入它们——在500x500的区域上执行相同的 //set 命令完成时不会冻结tick。
如果服务器已经有依赖于WorldEdit的插件(领地保护、结构生成器、建筑插件),你只需将WorldEdit替换为FAWE。命令和API保持兼容,但执行速度会提高。

在选定区域执行 //set glass 命令的结果——一个玻璃立方体。背景是周围由白色混凝土构成的空平台。
FAWE在WorldEdit之上添加了什么
基本命令看起来是一样的://pos1、//pos2、//set、//copy、//paste、//undo。根本的区别在于它们在内部是如何被处理的。除此之外,还增加了大约200个新命令:高级蒙版、图案、变换、专用画笔和地形工具。
原版WorldEdit中没有的一些功能:
无限制的
//undo和//redo,历史记录保存在磁盘上。即使在服务器重启后也可以撤销。//lazycopy— 立即复制任何大小的选定区域,而无需将副本完全加载到内存中。CFI (Create From Image) — 从高度图或图像生成世界(
/cfi)。铁砧(Anvil)命令 — 直接在区域文件中进行大规模更改:移除所有箱子、裁剪地图、替换选定区域中的方块。
光照命令 —
/fixlighting、/setlight、/removelight用于手动重新计算而无需重新加载区块。检查和回档 —
//inspect显示谁在何时放置了方块,//history rollback将世界恢复到特定日期之前的状态。

带有 /we help 命令输出的聊天窗口——带有简短描述的FAWE类别列表。
选择和基本命令
使用木斧创建选择。左键单击设置第一个点,右键单击设置第二个点。或者://pos1 和 //pos2 在玩家当前的坐标处设置点,//hpos1 和 //hpos2 设置在你正在看的方块上。
进行选择后,基本的方块操作就变得可用:
命令 | 功能 |
| 用指定的方块填充选择区域 |
| 将一种方块类型替换为另一种 |
| 在周边建造墙壁 |
| 建造墙壁、地板和天花板 |
| 掏空选定的体积 |
| 将选择复制到剪贴板 |
| 复制并删除原始部分 |
| 将剪贴板内容粘贴到玩家的位置 |
| 将剪贴板旋转90/180/270° |
| 翻转剪贴板(镜像) |
| 撤销或重做最后一个操作 |
同样有用的://copy -b 连同生物群系一起复制,//copy -e 跳过实体,//paste -a 忽略schematic中的空气方块(保留目标区域中已有的东西)。
粘贴实体(生物、画作)无法用 //undo 撤销。在粘贴schematic之前检查位置。
画笔和工具
画笔(brushes)是绑定到你手中物品的命令。在 /br <类型> 命令之后,右键单击会在你所看的地方激活操作。最常用的:
/br sphere <方块> <半径>— 在点击的点上生成给定半径的球体。/br cyl <方块> <半径> <高度>— 一个圆柱体。/br smooth <半径>— 地形平滑。/br stencil <图案> <半径> <文件>— 使用高度图或图像进行绘制。/br spline <图案>— 通过多个点创建曲线(道路、隧道、桥梁)。/br sweep— 沿曲线扫过剪贴板的内容。/br scatter <图案> <密度>— 以设定的密度随机散布方块或schematic。/br copy— 左键单击复制一个对象,右键单击粘贴。-r 标志在粘贴时添加随机旋转。

运行中的 /br smooth 10 画笔
为画笔设置蒙版(/mask)和图案(/mat)。蒙版决定哪些方块可以被替换:/mask >stone — 仅石头以上的方块,/mask <air — 仅空气以下的方块。图案决定用什么来替换它们:/mat 50%stone,50%cobblestone 产生以50/50比例随机混合的石头和圆石,/mat #surfacespread[3][stone] — 半径为3内的散布图案。
Schematics — 文件中的结构
FAWE支持 .schem 和 .schematic 格式。命令:
//schem save <名称>— 将当前选择保存到plugins/FastAsyncWorldEdit/schematics/。//schem load <名称>— 将文件加载到剪贴板中。//schem list— 可用的schematic列表。//schem delete <名称>— 删除一个schematic。
此外,/download 通过 schem.intellectualsites.com 服务创建一个指向剪贴板的匿名链接。该链接是临时的;你可以将文件发送给其他玩家或服务器,而无需通过FTP手动导出它。这在配置(config)的web部分进行配置。
领地保护和每个玩家的限制
FAWE与WorldGuard和PlotSquared集成。config.yml 中的 region-restrictions: true 选项将编辑限制在添加了该玩家的区域内。
默认情况下,它在MEMBER模式下运行 — 玩家只能在他们是领地成员的地方进行编辑。或者OWNER。管理员可以通过 fawe.bypass 权限绕过限制。对于拥有一些保护区,而在世界其他地方可以自由建筑的服务器,黑名单模式更为实用:allow-blacklists: true 加上 worldguard-region-blacklist: true 允许在保护区以外的任何地方进行编辑。
可以为不同的玩家群体配置不同的限制。复制 default 块并起一个新名字,调整 max-changes、max-brush-radius 和 max-iterations 的值,然后将权限授予玩家。这样,对新手的严格限制和对受信任玩家的扩展限制可以共存在同一服务器上。
配置 (Configuration)
主要文件位于此处:plugins/FastAsyncWorldEdit。大多数默认值适合典型的服务器 — 只有调整几个关键块才有意义。
内存和限制
参数 | 功能 |
| 如果RAM使用率超过此百分比,非管理员的编辑将被取消。通过 |
| 当达到此阈值时,某些操作会变慢 — 例如,异步加载区块。 |
| 玩家每个命令可以更改的最大方块数。 |
| 最大画笔半径。 |
| 大型编辑(超过16384个区块)需要通过 //confirm 进行额外确认。 |
队列和线程 (Queue and threads)
参数 | 功能 |
| 用于并行处理的线程数。建议将其设置为处理器的物理核心数。 |
| 在计算完成之前开始并行放置的区块数量阈值。插件不接受小于 |
| 预加载多少个区块。来自文档的公式:128 × GB RAM / 并发WE用户数。 |
历史和剪贴板
参数 | 功能 |
| 将编辑历史保存到磁盘。提供无限制的 |
| 历史记录的压缩级别,从0(无压缩,最快)到9(最大压缩,对CPU负担重)。大于6的级别需要ZSTD 1.4.8+。 |
| 磁盘上的历史记录在多少天前被删除。 |
| 同样地将剪贴板保存到磁盘——节省RAM。 |
| 保存的剪贴板在多少天前被删除。 |
结论
FastAsyncWorldEdit消除了标准WorldEdit的主要限制,由于该限制,大规模编辑可能会使服务器停止运行。在模组包(modpack)服务器和建筑网络上,玩家同时处理数十万个方块,FAWE消除了超时和卡顿。在很少进行编辑的小型生存服务器上,好处不那么明显,但该插件没有坏处——它通过其API向后兼容。
对于有大规模建筑的服务器来说,FastAsyncWorldEdit是一个实用得多的选择;对于原版世界的偶尔编辑,标准的替代方案就足够了。
安装
一次典型安装大约 5 分钟。流程相同,只是 Loader 和对应构建不同。
- 1Stop your Minecraft server.
- 2Drop the plugin .jar into the server /plugins folder.
- 3Start the server once so the plugin generates its config files.
- 4Edit /plugins/<name>/config.yml as needed, then run /reload confirm or restart.











