Blazingly fast world manipulation for artists, builders and everyone else. Modified for Plexus.
Go to file
Jordan 198c6b7800
Some fixes and improvements to internal queuing (#1715)
* the set array given in NMSAdapter should have get data written to it
 - Fixes #1664
 - May fix #1700

* Having target size >= 2* parallel threads allows for adjacent chunks to be loaded with issues

* "empty" chunk section doesn't need to be localised to the chunk and may be static

* Switch to slightly more performant stream method for testing for non-empty sections

* Implement lock into ChunkHolder preventing any modification to occur whilst the edit is being applied to the world
 (when ChunkHolder is called)

* Add config note about target-size

* set ordinal equal to air if both set and get are `__reserved__`

* Add note to checkAndWaitOnCalledLock method of its use

* Don't print exception and throw

* Switch to a wrapped StampedLock allowing reentrant behaviour
 - StampedLock is not reentrent
 - Allow unlock from a different thread only if it provides the correct stamp
 - This stamp can only be retrieved by the thread owning the lock

* Avoid some "doubling-up" of using checkAndWaitOnCalledLock

* Unbloat `checkAndWaitOnCalledLock`

* Add since tags
2022-06-05 20:52:28 +02:00
.github [ci skip] Attach assets to GH releases (#1754) 2022-05-19 16:17:45 +02:00
.idea [ci skip] feat: Update Readme SVG (#1763) 2022-05-30 13:47:36 +02:00
buildSrc chore: Update PaperMC repository URL (#1756) 2022-05-21 12:08:10 +02:00
contrib/craftscripts style: Fix spelling mistake of 'FastAsyncWorldEdit' in craftscript readme (#1431) 2021-11-20 12:02:25 +01:00
gradle [ci skip] build: Update dependency com.github.TownyAdvanced:Towny to v0.98.2.2 (#1766) 2022-05-31 18:13:02 +02:00
worldedit-bukkit Some fixes and improvements to internal queuing (#1715) 2022-06-05 20:52:28 +02:00
worldedit-cli Implement getNameUnsafe method to allow an unloaded world's name to be accessed (#1712) 2022-05-05 21:39:45 +02:00
worldedit-core Some fixes and improvements to internal queuing (#1715) 2022-06-05 20:52:28 +02:00
worldedit-fabric Feature/propagate diff and object cleanup (#1190) 2021-07-23 17:48:51 +02:00
worldedit-forge Feature/propagate diff and object cleanup (#1190) 2021-07-23 17:48:51 +02:00
worldedit-libs build: Update core dependencies 2021-11-22 13:47:59 +01:00
worldedit-mod Update so many dependencies, merge Forge/Fabric for final jar (#1651) 2021-02-04 17:45:49 -05:00
worldedit-sponge [ci skip] build: Update dependency org.mockito:mockito-core to v4.6.0 (#1765) 2022-05-30 13:59:56 +02:00
.editorconfig style: Don't use spaces before colons in yaml files 2021-11-17 17:58:42 +01:00
.git-blame-ignore-revs Ensure CRLF stays out of the repo 2020-08-24 12:41:26 -04:00
.gitattributes Fix gitattributes 2021-02-22 11:08:45 +01:00
.gitconfig java based merging? 2019-11-19 15:10:36 +00:00
.gitignore Ignore .DS_Store files (#1746) 2022-05-15 12:30:39 +02:00
Annotation-Explanation.adoc docs: Document a few undocumented annotations 2022-01-04 21:15:45 +01:00
build.gradle.kts build: Back to snapshot for development 2022-05-18 21:58:07 +02:00
COMPILING.adoc [ci skip] docs: Update documentation for Java 17 2022-01-27 21:04:22 +01:00
crowdin.yml Update Crowdin configuration file 2020-01-20 11:30:00 +01:00
gradle.properties build: Closes #1365 2021-10-18 22:08:07 +02:00
gradlew Update dependency gradle to v7.2 (#1229) 2021-08-17 16:21:09 +02:00
gradlew.bat Updated Gradle 2020-09-08 15:34:53 -04:00
HEADER.txt Officially propagate GPL downwards to all files 2020-09-01 16:30:43 -04:00
LICENSE.txt Officially propagate GPL downwards to all files 2020-09-01 16:30:43 -04:00
NOTICE.txt Update build files and NOTICE.txt 2020-08-14 15:29:15 -04:00
README.adoc [ci skip] feat: Update Readme SVG (#1763) 2022-05-30 13:47:36 +02:00
renovate.json [ci skip] chore: Update renovate schedule 2022-05-31 00:28:11 +02:00
settings.gradle.kts feat: Support for 1.18.2 (#1641) 2022-03-07 15:20:05 +01:00

image::https://raw.githubusercontent.com/IntellectualSites/Assets/main/plugins/FastAsyncWorldEdit/FastAsyncWorldEdit.svg[200,200,align=center]

'''

FastAsyncWorldEdit is a fork of WorldEdit that has huge speed and memory improvements and considerably more features

== A Minecraft Map Editor... that runs in-game!

* With selections, schematics, copy and paste, brushes, and scripting!
* Use it in creative, survival in single player or on your server.
* Use it on your Minecraft server to fix grieving and mistakes.

Java Edition required. FastAsyncWorldEdit is compatible with Bukkit, Spigot and Paper.

=== Download FastAsyncWorldEdit
* Snapshot builds: https://ci.athion.net/job/FastAsyncWorldEdit/
* Spigot: https://www.spigotmc.org/resources/fast-async-worldedit.13932/
* Older, unsupported, versions: https://intellectualsites.github.io/download/fawe.html

=== Links

* link:https://discord.gg/intellectualsites[Discord]
* link:https://intellectualsites.github.io/fastasyncworldedit-documentation/[Wiki]
* link:https://github.com/IntellectualSites/FastAsyncWorldEdit/issues[Report Issue]
* link:https://intellectualsites.crowdin.com/fastasyncworldedit[Crowdin (Translations)]
* link:https://javadoc.io/doc/com.fastasyncworldedit/FastAsyncWorldEdit-Bukkit/latest/index.html[JavaDocs for the -bukkit module]
* link:https://javadoc.io/doc/com.fastasyncworldedit/FastAsyncWorldEdit-Core/latest/index.html[JavaDocs for the -core module]

=== Edit The Code

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, see link:COMPILING.adoc[COMPILING.adoc].

=== Submitting Your Changes
FastAsyncWorldEdit is open source (specifically licensed under GPL v3), so note that your contributions will also be open source. The best way to submit a change is to create a fork on GitHub, put your changes there, and then create a "pull request" on our FastAsyncWorldEdit repository.

Please read link:https://github.com/IntellectualSites/.github/blob/main/CONTRIBUTING.md[CONTRIBUTING.md] for important guidelines to follow.

=== YourKit
image::https://www.yourkit.com/images/yklogo.png[200,200,align=left]

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 link:https://www.yourkit.com/java/profiler/[YourKit Java Profiler], link:https://www.yourkit.com/.net/profiler/[YourKit .NET Profiler], and link:https://www.yourkit.com/youmonitor/[YourKit YouMonitor].