Commit Graph

2706 Commits

Author SHA1 Message Date
91de441403 No need to check WorldEdit schematics for bad entities 2021-01-05 17:21:35 +00:00
6db588a19f Don't allow FAWE to "deadlock" itself when post-processing history by switching to the primary ForkJoinPool
- With enough chunks waiting to write to history, it's possible to fill the secondary fork pool up with locked threads, and thus prevent any threads from actually writing their history.
2021-01-05 16:42:53 +00:00
89cc2f9d9f Large memory use reduction when PostProcessing history 2021-01-05 15:03:47 +00:00
7c174ee6b3 Return to static "sections" in CharBlocks.
- Synchronise (lock) outside the static object
 - Reduces object creation
2021-01-05 13:51:26 +00:00
aece0229c4 Properly repeat extents for negative coordinates (#825)
An extent's content was returned flipped when applied for negative positions, as e.g. `Math.abs(-2) % 3` returns 2 instead of 1 (as 1 + -1 * 3 = -2)

(cherry picked from commit b0cf5dd2bf1b9bcbf1c7efff0fe25de7ee9a2090)
2021-01-05 14:01:11 +01:00
bfd04e4155 Revert "~1/3 faster history writing with small caching"
This reverts commit 836b7a9750.
2021-01-05 00:50:26 +00:00
836b7a9750 ~1/3 faster history writing with small caching 2021-01-04 21:25:29 +00:00
916c080310 5000th commit: Fix //download 2021-01-04 19:10:10 +00:00
3f0b9a2a92 Reorder BuildInClipboardFormat and document changed JNBT classes (#807)
* Get rid of FastSchematicReader/Writer and document changed JNBT classes

This commit includes changes from upstream to the schematic classes
(`com.sk89q.worldedit.extent.clipboard.io`). It also documents the JNBT
classes, specifying what has been changed in FAWE. This was done in preparation
for the upcoming move to adventure-nbt.

The PlotSquared schematic handler classes will now use SpongeSchematicReader/Writer rather than FastSchematicReader/Writer.

This is yet untested and the entire branch is a W.I.P.

* Fix JNBT mutability misuse in FAWE

FAWE previously had mutable compound and list tags. The previous commit changed that, and this commit will fix misuse of the tag API.

I've tried to identify the places where mutability was assumed, but I might have missed something. This needs quite extensive testing.

This is yet another change which increases upstream compatibility in FAWE.

* Fix FAWE_Spigot_<..>#getEntity

* Fix JNBT usage in the AsyncBlockState code

* Readd FastSchematicReader/Writer and add a new schematic format (`FAST`)

* Update dead repository

* Implement missing AsyncChunk#getTileEntities

* handle entities properly and add "brokenentity" format

* Fix fast schematic reader
lazily reading means it's read in order of appearance in the inputstream so we need to read schematic version first (skip past everything) and then reset the stream

* Fix p2 FAWE

* Go back to fast schematics in P2/CompressedSchematicTag (#819)

* Fix compile

Co-authored-by: N0tMyFaultOG <mc.cache@web.de>
Co-authored-by: Alexander Söderberg <Sauilitired@users.noreply.github.com>
Co-authored-by: dordsor21 <dordsor21@gmail.com>
Co-authored-by: Aurora <aurora@relanet.eu>
2021-01-04 19:18:23 +01:00
39b0da2b99 we do want to synchronise across the chunk when loading sections 2021-01-01 17:19:14 +00:00
42346b429b Don't synchronise across the entire edit for a single ChunkSection load (speed boost) 2021-01-01 16:48:17 +00:00
fbfe3221d7 Fix fast schematic reader/writer
- Have both sponge and fast r/w available but default to "fast"
 - Correctly "offset" entities in the schematic, and add a legacy mode for loading old FAWE schematics with entities required.
 - Lazily reading means it's read in order of appearance in the inputstream so we need to read schematic version first (skip past everything) and then reset the stream. Fixes #740
 - Add an FAWEVersion to the metadata
 - Correctly actually return a BlockArrayClipboard when required. Fixes #454
2021-01-01 15:01:35 +00:00
82f640d132 fix loading Fawe.properties 2020-12-31 17:45:07 +00:00
df48b7e81d stop bottling clipboard sizes for no reason 2020-12-31 15:01:54 +00:00
b60d9ef6d5 Fix #787 2020-12-23 17:26:26 +00:00
7236f1d6fa Update zStandard jni 2020-12-22 11:57:12 +01:00
bbc0ea0f35 Update dependency com.github.luben:zstd-jni to v1.4.8-1 2020-12-21 20:06:43 +00:00
44f15da5a3 Update Paster 2020-12-21 15:57:57 +01:00
be05ae9230 Update dependency net.java.truevfs:truevfs-profile-default_2.13 to v0.12.2 (#796)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2020-12-21 11:40:00 +01:00
7928479046 Update dependency de.schlichtherle:truezip to v6.8.4 (#793)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2020-12-21 10:55:46 +01:00
2f23643635 Update dependency org.slf4j:slf4j-api to v1.7.30 (#803)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2020-12-21 10:47:07 +01:00
f6cbde6386 Update dependency org.yaml:snakeyaml to v1.27 (#804)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2020-12-21 10:44:31 +01:00
2eb4f14724 Update dependency com.plotsquared:PlotSquared-Core to v5.13.3 (#791)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2020-12-20 23:35:57 +01:00
7444c643a1 Switch to IncendoPaster "library" 2020-12-19 16:18:57 +00:00
e8f0c0e6ea allow count to access "full" chunks if counting air 2020-12-17 22:05:32 +00:00
d379b0af9b fix //image ane image brush
fixes #208 and fixes #698
2020-12-17 20:19:54 +00:00
94a14b03b6 fix brush size 0/1 2020-12-17 15:26:17 +00:00
236e3c3f6f correctly set changes to editsession for line/spline
fixes #696
2020-12-17 15:02:49 +00:00
b57c472b86 Save the get blocks to the set chunk after history is written when post-processing 2020-12-17 14:09:54 +00:00
f347e0f5f5 update some utility commands
fixes #557
2020-12-16 19:23:41 +00:00
d5005a04e3 Return air if attempt to retrieve block from outside range
Fixes #682
2020-12-16 19:08:00 +00:00
aeccce24a9 fix #550 2020-12-16 17:38:15 +00:00
3a3bf7382d Update block NBT to include the coordinates when saving to history
fixes #708 and fixes #655
2020-12-16 16:59:16 +00:00
e4709eb6dc idk why I did &3
half fixes #769
2020-12-16 12:34:54 +00:00
6676d77aaa Stop writing corrupt tile entities to schematics
also make some stuff definitely immutable.
2020-12-13 21:06:36 +00:00
04ba545aa2 NullPointer fix for /schematic list (#781)
* fixed null pointer

* fixed rest of similarly caused null pointers

* checkstyle
2020-12-13 15:20:10 +01:00
bfc657d3f6 Schem file limits (#773)
* added filesize/file count checks for /schematic save

* fixed /schematic save, added filesize component to /schematic list

* improved /schematics list total filesize output
need to add automatic conversion into Mb in the future

* temporary fix for page wrap from MessageBox

* reverted changed to MessageBox

* applied FAWE's checkstyle where applicable

* crude fix for worldedit MessageBox line wrapping happening sometimes

* small visual adjustments

* Update worldedit-core/src/main/java/com/boydti/fawe/config/Settings.java

Co-authored-by: NotMyFault <mc.cache@web.de>

* Update worldedit-core/src/main/java/com/boydti/fawe/config/Settings.java

Co-authored-by: NotMyFault <mc.cache@web.de>

* Update worldedit-core/src/main/java/com/sk89q/worldedit/command/SchematicCommands.java

Co-authored-by: NotMyFault <mc.cache@web.de>

* Update worldedit-core/src/main/java/com/boydti/fawe/config/Settings.java

Co-authored-by: NotMyFault <mc.cache@web.de>

* Update worldedit-core/src/main/java/com/sk89q/worldedit/command/SchematicCommands.java

Co-authored-by: NotMyFault <mc.cache@web.de>

* Update worldedit-core/src/main/java/com/sk89q/worldedit/command/SchematicCommands.java

Co-authored-by: NotMyFault <mc.cache@web.de>

* Update worldedit-core/src/main/java/com/sk89q/worldedit/command/SchematicCommands.java

Co-authored-by: NotMyFault <mc.cache@web.de>

* Update worldedit-core/src/main/java/com/sk89q/worldedit/command/SchematicCommands.java

Co-authored-by: NotMyFault <mc.cache@web.de>

* Update worldedit-core/src/main/java/com/sk89q/worldedit/command/SchematicCommands.java

Co-authored-by: NotMyFault <mc.cache@web.de>

* Update worldedit-core/src/main/java/com/sk89q/worldedit/command/SchematicCommands.java

Co-authored-by: NotMyFault <mc.cache@web.de>

* Update worldedit-core/src/main/java/com/sk89q/worldedit/command/SchematicCommands.java

Co-authored-by: NotMyFault <mc.cache@web.de>

* Update worldedit-core/src/main/java/com/sk89q/worldedit/command/SchematicCommands.java

Co-authored-by: NotMyFault <mc.cache@web.de>

* Update worldedit-core/src/main/java/com/sk89q/worldedit/command/SchematicCommands.java

Co-authored-by: NotMyFault <mc.cache@web.de>

* Update worldedit-core/src/main/java/com/sk89q/worldedit/command/SchematicCommands.java

Co-authored-by: NotMyFault <mc.cache@web.de>

* Update worldedit-core/src/main/java/com/boydti/fawe/config/Settings.java

Co-authored-by: NotMyFault <mc.cache@web.de>

* fixed settings variable names

* Improved `/schematic save` success/error notifications
fixed local variable names

* removed unneeded comment

* fixed typo

* made schematics in subdirectories count towards file limit

Co-authored-by: NotMyFault <mc.cache@web.de>
2020-12-12 23:38:44 +01:00
26e3e56988 Don't allow blocks as brushes
fixes #748
2020-12-11 17:02:54 +00:00
ae39f7bba3 use full chunks for distr and account for __RESERVED__ blocks
fixes #759
2020-12-11 16:13:09 +00:00
3717351d61 //setbiome should be 3D as well 2020-12-11 12:55:49 +00:00
ff7c972ea6 Don't try to be clever with bitwise
Fixes #769
2020-12-11 12:55:38 +00:00
be44e1449c remove mutability in clipboards (particularly clipboard pattern)
fixes #776
2020-12-11 11:34:56 +00:00
11f50f8b53 Add 1.16 tree types (#757) 2020-11-23 18:04:34 +00:00
2ccc234608 Correct typo from max world height of 265 to 256 2020-11-17 21:06:03 +13:00
2a5b385578 Fix missing stacker tool message 2020-11-16 13:31:49 +01:00
60f3224318 Deprecate the non-Pattern methods in EditSession and fix a recursion loop
eca310cf8f16240fabc0259f4f615cfa2d37909a

Co-Authored-By: Matthew Miller <mnmiller1@me.com>
2020-11-13 22:42:03 +01:00
5d283e1a17 Fix variable argument functions in expressions
204ef7a708466d8739e5dcbfbc4794b57cabab0f

Co-Authored-By: Octavia Togami <2093023+octylFractal@users.noreply.github.com>
2020-11-13 22:35:53 +01:00
a32b4a1345 Fixed undo/redo not working from console/commandblock
65fbe09c35e9affa71d0ce7c20fa5ebd0f1c8365

Co-Authored-By: Matthew Miller <mnmiller1@me.com>
2020-11-13 22:25:47 +01:00
cb088ff3e5 Remove Y limits if a region has no world
0cb1eea55b311473c9468f608a0090b93cf5de91

Co-Authored-By: Octavia Togami <2093023+octylFractal@users.noreply.github.com>
2020-11-13 22:10:43 +01:00
197389bd32 Improve requireTag exception messages
e15d7993ada7b26784471bdb0e9550228724d900

Co-Authored-By: Octavia Togami <2093023+octylFractal@users.noreply.github.com>
2020-11-13 22:09:36 +01:00