8efb1aa533
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> |
||
---|---|---|
.github | ||
.idea | ||
buildSrc | ||
contrib/craftscripts | ||
gradle | ||
worldedit-bukkit | ||
worldedit-cli | ||
worldedit-core | ||
worldedit-fabric | ||
worldedit-forge | ||
worldedit-libs | ||
worldedit-mod | ||
worldedit-sponge | ||
.editorconfig | ||
.git-blame-ignore-revs | ||
.gitattributes | ||
.gitconfig | ||
.gitignore | ||
Annotation-Explanation.adoc | ||
build.gradle.kts | ||
COMPILING.adoc | ||
crowdin.yml | ||
gradle.properties | ||
gradlew | ||
gradlew.bat | ||
HEADER.txt | ||
Jenkinsfile | ||
LICENSE.txt | ||
NOTICE.txt | ||
README.md | ||
settings.gradle.kts |
FastAsyncWorldEdit
What is FAWE and why should I use it?
FAWE is designed for efficient world editing.
- Simple to set up and use
- Extremely configurable
- Uses minimal CPU/Memory
- Safe for many players to use
- Insanely fast, when using the slowest mode
FastAsyncWorldEdit is a fork of WorldEdit that has huge speed and memory improvements and considerably more features.
If you use other plugins which depend on WorldEdit, simply having FAWE installed will boost their performance.
Downloads
Downloads are available either on SpigotMC, Modrinth or on CurseForge.
Snapshots are available on Jenkins.
Features
- Over 200 Commands
- Style and translate messages and commands
- (No setup required) Clipboard web integration (Clipboard)
- Unlimited //undo, per world history, instant lookups/rollback and cross server clipboards
- Advanced per player limits (entity, tiles, memory, changes, iterations, regions, inventory)
- Visualization, targeting modes/masks and scroll actions
- Adds lots of powerful new //brushes and //tools.
- Adds a lot more mask functionality. (new mask syntax, patterns, expressions, source masks)
- Adds a lot more pattern functionality. (a lot of new pattern syntax and patterns)
- Adds edit transforms (apply transforms to a source, e.g. on //paste)
- Adds support for new formats (e.g. Structure Blocks)
- Instant copying of arbitrary size with
//lazycopy
- Auto repair partially corrupt schematic files
- Biome mixing, in-game world painting, dynamic view distance, vanilla cui, off axis rotation, image importing, cave generation, multi-clipboards, interactive messages, schematic visualization, lag prevention, persistent brushes + A LOT MORE
Performance
There are several placement modes, each supporting higher throughput than the previous. All editing is processed asynchronously, with certain tasks being broken up on the main thread. The default mode is chunk placement.
- Blocks (Bukkit-API) - Only used if chunk placement isn't supported. Still faster than any other plugin on spigot.
- Chunks (NMS) - Places entire chunk sections
- World (CFI) - Used to generate new worlds / regions
Protection Plugins
The following plugins are supported with Bukkit:
Logging and Rollback
By default you can use //inspect
and //history rollback
to search and restore changes. To reduce disk usage, increase the
compression level and buffer size. To bypass logging use //fast
.
Developer API
FAWE maintains API compatibility with WorldEdit, so you can use the normal WorldEdit API asynchronously. FAWE also has some asynchronously wrappers for the Bukkit API. The wiki has examples for various things like reading NBT, modifying world files, pasting schematics, splitting up tasks, lighting etc. If you need help with anything, hop on discord (link on the left bar).
Documentation
Contributing
Want to add new features to FastAsyncWorldEdit or fix bugs yourself? You can get the game running, with FastAsyncWorldEdit, from the code here:
For additional information about compiling FastAsyncWorldEdit, read the compiling documentation.
Special thanks
JetBrains, creators of the IntelliJ IDEA, supports us with their Open Source Licenses.
Thank you to YourKit for supporting our product by providing us with their innovative and intelligent tools for monitoring and profiling Java and .NET applications. YourKit is the creator of YourKit Java Profiler, YourKit .NET Profiler, and YourKit YouMonitor.