Commit Graph

2639 Commits

Author SHA1 Message Date
dordsor21
857090bdde
Add meaningful default methods to getMask for region protection 2021-10-21 18:25:36 +01:00
NotMyFault
d4eda78818
refactor: Remove redundant loggers 2021-10-21 17:26:16 +02:00
NotMyFault
c07ba4e88e
Merge branch 'feature/region-blacklist' 2021-10-21 17:13:13 +02:00
NotMyFault
e7a6c3e58c
Merge branch 'chore/main/deprecate-unsafe-utils' 2021-10-19 22:09:01 +02:00
dordsor21
37eb4a1008
Regress to upstream for (Binary)Tags in data fixers 2021-10-19 14:12:02 +01:00
NotMyFault
bd9476a175
refactor: Address .editorconfig violations 2021-10-18 23:09:21 +02:00
NotMyFault
f1e8a1a29a
refactor: Move Unsafe to reflection class 2021-10-18 22:01:54 +02:00
Pierre Maurice Schwang
c7a490fa03
Fix paperweight changes (#1364) 2021-10-18 20:38:43 +01:00
dordsor21
8fe610311d
Comments 2021-10-17 15:53:19 +01:00
dordsor21
7d894228d0
Implement region blacklisting 2021-10-17 15:53:04 +01:00
NotMyFault
f0880a27a0
feat: Paperweight support (#1362)
* Initial work towards paperweight

* feat: Port Fawe classes to paperweight

- Hide UnsafeUtilities in javadocs
- Fix typo in Regenerator
- Create fawe tmp directory for fawe regen

* Update adapters

* chore: Update MiniMessage

* Address todos

* Fix leftover Tuinity loggers
2021-10-17 16:32:36 +02:00
Jordan
9c1c8bfdf2
Implement restoring biomes, entities, and extended world heights (#1316) 2021-10-17 13:40:55 +00:00
NotMyFault
27865dc785
chore: Exchange debug log levels & component-ify a few messages (#1342) 2021-10-17 14:50:42 +02:00
NotMyFault
5db9a601b1
feat: (Re-) Add update notifications (#1361)
* feat: (Re-) Add update notifications

Fixes #1348

* Move update notification to seperate class

- Add a couple of linebreaks to the chat messages
2021-10-17 09:55:25 +02:00
NotMyFault
99b45c13fb
fix: Invalid yaml syntax of new config values
Follow up from 6839fa5567
2021-10-09 17:22:16 +02:00
dordsor21
6839fa5567
Add configurable disallowed states for limits, global disallowed blocks (#1312) 2021-10-09 11:02:26 +00:00
Pierre Maurice Schwang
2eb6451810
fix: Add dummy constructor for CraftBook5 support (Fixes #1334) (#1344)
Co-authored-by: NotMyFault <mc.cache@web.de>
2021-10-07 17:18:10 +00:00
NotMyFault
e2924f4cba
feat: Improve wording of allowed-plugins message (#1341)
Fixes #1319
2021-10-07 17:12:17 +00:00
dordsor21
6895234815
Don't allow edits on plots when owner is offline and player is only added (#1313) 2021-10-04 12:34:40 +00:00
dordsor21
d44f297068
Fully fix #1331 2021-10-01 13:27:05 +01:00
dordsor21
3a45a31e65
Better error message for LocalBlockVectorSet 2021-09-30 13:17:28 +01:00
dordsor21
f886320c44
SurfaceMask should be copied properly.
#1331
2021-09-30 13:17:15 +01:00
dordsor21
7a6a0f68fe
Don't allow area pickaxe outside max y
#1331
2021-09-30 13:16:15 +01:00
dordsor21
0ed98729f8
Allow console to execute commands now that editsessions etc. accept actors
- Fixes #724
 - Fixes #1044
2021-09-28 15:59:52 +01:00
dordsor21
fa2f50dea8
Sometimes an overlay position may not be able to be found. Attempt to resolve or fail nicely. 2021-09-28 14:39:14 +01:00
dordsor21
a3365a12bc
Fix #1327 2021-09-28 14:27:36 +01:00
dordsor21
848eac8623
Fix schematic offset when loaded to clipboard 2021-09-28 13:16:26 +01:00
dordsor21
56999fd1e0
Drain bubble columns as well
Fixes #1326
2021-09-27 14:42:43 +01:00
dordsor21
1cf5899586
Allow deletion of DOC
Fixes #1325
2021-09-27 14:39:21 +01:00
dordsor21
b73db47e01
Add switch to schem loadall to replace existing clipboard(s) 2021-09-27 14:15:26 +01:00
dordsor21
58f231ad12
Slightly improve add clipboard hover message for schematic list 2021-09-27 14:14:24 +01:00
dordsor21
5155055446
Add deprecation message to fawe EditSessionBuilder 2021-09-26 22:10:59 +01:00
dordsor21
e6675f1656
Default per player schematics to false 2021-09-26 22:07:25 +01:00
NotMyFault
ca15e93102
refactor: Remove lz4-stream
LZ4-Java contains a modern version & delegate for lz4-java-stream.
2021-09-26 00:48:50 +02:00
dordsor21
6b5f21d67b
Support old, corrupt, schematics 2021-09-24 16:41:09 +01:00
dordsor21
4e944052cd
un-transitive some dependencies 2021-09-24 15:49:30 +01:00
dordsor21
e97c945b2f
Big fix to clipboards when relogging/restarting server etc.
- Refactor the way FAWE clipboards work slightly with regards to offsets (FAWE-added) and origin (upstream-present)
 - Better error messages when exceptions are thrown attempting to load DOC
 - No longer attempt to resolve old clipboard versions. Attempt to give informative error instead
 - Don't always delete clipboards held in memory on player logout unless configured to do so
 - Go back to fully closing the DOC on logout. We now attempt to lock the file which will hopefully help with debugging shared clipboard folders
2021-09-24 12:22:01 +01:00
dordsor21
bfd9e5b347
Don't stop edits for old clipboards, attempt to load them anyway (for now) 2021-09-24 09:32:49 +01:00
dordsor21
8593c2df9f
Rearrange DOC methods 2021-09-23 12:42:51 +01:00
dordsor21
07c02b5825
Remove import static org.apache.logging.log4j.LogManager.getLogger 2021-09-23 12:34:22 +01:00
dordsor21
6c56fa29aa
Fix #1317 2021-09-22 22:22:39 +01:00
NotMyFault
a5795461f2
Improve a few dependency scopes 2021-09-22 23:00:12 +02:00
dordsor21
663d0139b7
default to a meaningful preload chunk count 2021-09-22 15:58:20 +01:00
dordsor21
3376baa3c5
Remove needless EditSession#getWorld for setting blocks/biomes in a couple of cases
#32 IntellectualSites/FastAsyncWorldEdit-Adapters#7
2021-09-22 15:04:12 +01:00
dordsor21
d25a85e0d4
Fix expression evaluation method used for generatebiome
#32
2021-09-22 15:03:03 +01:00
dordsor21
4400b0f83e
Fix #1114
- Ensure short is correctly cast to int, as we're using it as if it were unsigned
2021-09-22 14:32:49 +01:00
dordsor21
a241e594c1
Slight adjustment to DOC 2021-09-22 13:14:10 +01:00
dordsor21
268d8cff49
Apply list of properties everywhere 2021-09-21 18:53:37 +01:00
dordsor21
b8ec4be95c
Revert "Slightly preferable messages on UsageException thrown by piston"
This reverts commit e9adf0f30d.
2021-09-21 17:30:32 +01:00
dordsor21
c805102819
Fix #1143 2021-09-21 17:18:49 +01:00
NotMyFault
3617a29ba8
Address javadoc violations 2021-09-21 17:40:53 +02:00
dordsor21
1de3a6b54a
Don't return "=" pattern early either 2021-09-21 15:07:58 +01:00
dordsor21
70f7f00abf
Do the same for "=" mask 2021-09-21 15:06:46 +01:00
dordsor21
c26977f578
Fix very specific issue where charmasks (< > $ etc.) are used with other masks, but only the charmask is used 2021-09-21 15:05:43 +01:00
dordsor21
57b47d2451
Use a MaskTraverser to set extent where it will be a WorldWrapper otherwise 2021-09-21 14:59:49 +01:00
dordsor21
23ca345a2e
Don't setextent twice in replace 2021-09-21 14:51:39 +01:00
dordsor21
971977a66a
Fix //sel list 2021-09-21 14:51:05 +01:00
dordsor21
d0056870be
Fix fuzzy region 2021-09-21 14:31:03 +01:00
dordsor21
69ae4a7121
Fix ellipsoid selection 2021-09-21 14:07:10 +01:00
dordsor21
e9adf0f30d
Slightly preferable messages on UsageException thrown by piston 2021-09-20 23:35:04 +01:00
dordsor21
9d26f030dc
Fix some command errors being hidden by a usage message 2021-09-20 23:18:38 +01:00
dordsor21
040edc8fd0
Adjust exception catch slightly 2021-09-20 23:07:58 +01:00
dordsor21
bb06492091
Fix -f flag 2021-09-20 18:10:37 +01:00
dordsor21
017a28b3dd
Implement getAllProperties to code and adapters 2021-09-20 16:00:50 +01:00
dordsor21
17a97f2f19
Fix lack of handling of custom world heights in CharFilterBlock 2021-09-20 14:15:08 +01:00
dordsor21
7a9cbe5d77
Correct description of strip nbt 2021-09-20 01:54:49 +01:00
dordsor21
aba147f787
Minor spring clean 2021-09-19 21:40:15 +01:00
dordsor21
8a4f28a7cc
StripNBT processor rather than extent 2021-09-19 21:39:00 +01:00
dordsor21
b11a67e435
Fix #1311 2021-09-19 21:20:18 +01:00
Matt
4f68fb0e26
Add tracing feature to EditSessions (Upstream 1301) (#1112)
Co-authored-by: Octavia Togami <octavia.togami@gmail.com>
Co-authored-by: dordsor21 <dordsor21@gmail.com>
Co-authored-by: NotMyFault <mc.cache@web.de>
2021-09-19 20:02:41 +00:00
dordsor21
f405994346
Improve fullycopy pattern parsing
- Don't attempt ClipboardFormats#loadAllFromInput if the user is typing #copy or #clipboard to avoid needless "File dialogs are not supported in your environment." message
2021-09-19 20:47:40 +01:00
dordsor21
abaa98d2a9
Fix #403 2021-09-19 20:47:21 +01:00
NotMyFault
5f7411114e
Fixes #1310 2021-09-19 21:42:53 +02:00
dordsor21
0a48765c98
Add //blob command equivalent to //br rock 2021-09-18 17:42:58 +01:00
dordsor21
7d032ba69f
Scattercommand should use the same editsession for all commands, make it "silent" by default and allow players to see output if wanted. 2021-09-18 17:42:40 +01:00
dordsor21
34301b446a
Allow scatter command brush to use FAWE commands. Best for scatter sphere, etc. 2021-09-18 17:08:03 +01:00
dordsor21
51aa500857
move yscale earlier in br height for people that can't work it out themselves 2021-09-18 16:20:28 +01:00
dordsor21
7a0c0d5d41
Fix #990 2021-09-18 16:15:31 +01:00
dordsor21
fad1fcd8ee
Fix RichParser suggestions 2021-09-18 15:07:41 +01:00
dordsor21
54398ebe1c
Add timeout to regex masking 2021-09-18 15:01:09 +01:00
dordsor21
dbbb450172
Flush clipboards before writing schematics.
#1286
2021-09-18 03:19:49 +01:00
dordsor21
bd95d5a86d
Adjust mask managers
- Add list of "exclusive" managers to config to aid users in having some sort of prioritisation.
 - Fixes #960 if PlotSquared is added to exclusive managers, otherwise, there's no particularly sane way of adding prioritisation without requiring a treemap be added to YAML config, or for us to decide upon it ourselves
2021-09-18 03:19:27 +01:00
dordsor21
1cc6ad1481
Fix #1049 2021-09-17 17:26:41 +01:00
dordsor21
90aeb48040
Fix #1297 2021-09-17 17:12:14 +01:00
NotMyFault
07be1c6a44
Remove native libs - lz4-java links them dynamically 2021-09-17 16:22:02 +02:00
dordsor21
5093569ce0
Fix #1303 2021-09-17 14:54:51 +01:00
dordsor21
74697ee312
Fix ZSTD implementation and test-loading. Don't allow disabling of the test on startup 2021-09-17 14:38:28 +01:00
NotMyFault
9fb6ebe7ac
Shift ZSTD bindings check 2021-09-16 21:56:28 +02:00
dordsor21
1dd0dac462
Correct equality check for adding post processor 2021-09-16 17:49:16 +01:00
dordsor21
f10dbe7387
Use an object array for synchronising on internal chunk sections rather than the sections array itself.
- Synchronising on full sections synchronises on the global FULL instance (bad)
- Synchronising on empty sections synchronises on the local empty instance (bad)
- Leads to needless thread locking, and raises the possibility of cyclic locks considerably
2021-09-14 20:20:04 -04:00
dordsor21
635ec0e7a8
Fix #736 2021-09-14 14:44:23 +01:00
dordsor21
8120163f5e
Fix #727 2021-09-14 14:33:20 +01:00
dordsor21
dad991e7aa
synchronise filterBlocks - we shouldn't be able to execute the call method whilst a filter is ongoing and vice versa 2021-09-14 14:32:42 +01:00
dordsor21
09d2996451
Don't accept values smaller than parallel threads for target size
- Smaller than parallel threads implies any time any thread tries to do anything, another thread must cancel its work, and the chunk is submitted.
2021-09-14 14:30:32 +01:00
dordsor21
daa418a287
Fix needless complication of section position methods in CharBlocks children 2021-09-13 18:33:42 +01:00
dordsor21
ce7a97368f
Improve javadocs on BlockArrayClipboard, ensure correct clipboard is used for BlockArrayClipboard's parent clipboard 2021-09-13 15:32:33 +01:00
dordsor21
06d716248e
Flush clipboard rather than close on player disconnect
Addresses #1291
2021-09-13 15:08:03 +01:00
dordsor21
3088b1245c
Simplify flushing of clipboards in ClipboardCommands 2021-09-13 15:07:16 +01:00
dordsor21
f641fc1716
Javadoc 2021-09-13 13:27:47 +01:00
dordsor21
5207981fb2
Make clipboard flushable
#1286
2021-09-13 13:25:11 +01:00
dordsor21
fcbbc72a19
Refactor the try-catch for copy/cut commands, switch to saveDiskClipboard instead of closing the clipboard on error
Address #1291
2021-09-13 13:19:57 +01:00
dordsor21
adf83bdd0a
Use default blockstate internal id for creating blockstates from their serialised form
Fixes #1294
2021-09-13 13:14:49 +01:00
dordsor21
40a4010041
Add loadIfPresent method for use where the section should definitely exist and be FULL 2021-09-13 12:47:00 +01:00
dordsor21
af890cf21d
Fix build
(cherry picked from commit dc2e1bec1eca4d7f8d24bd40e32c385d91af3099)
2021-09-13 12:31:06 +01:00
dordsor21
b6b6ba7265
Improve CachedMask a bit - no need to unwrap/wrap blockvectors, allow extents to be parsed
(cherry picked from commit 41c0ea98f16ecbfadced41e4be277ad6ceda6b1a)
2021-09-13 12:30:58 +01:00
dordsor21
f5d6d4079a
*Actually rename section index everywhere
(cherry picked from commit 3ea3bd2a78e0d8bae239de24beb72f69ac7fe619)
2021-09-13 12:30:49 +01:00
dordsor21
7876ab825e
Make blocking executor a fair policy
Safer if we're submitting lots of chunks for recursive operations. These chunks should be handled in the order they're submitted so we don't handle a chunk that's been submitted twice (possible) in the wrong order

(cherry picked from commit ce915fe04dd83676ae0045b3a675788f486e2cc6)
2021-09-13 12:30:44 +01:00
dordsor21
66b79b4ea2
Remove unneeded IQueueWrapper, clean up some queue classes slightly
(cherry picked from commit 66e22df3f4c505a0a302d47c0c10302275e2a191)
2021-09-13 12:30:39 +01:00
dordsor21
d60d178513
Rename section index to position as it's a more suitable name
(cherry picked from commit 74f1d21f6e3db8970763a080529e3fc1f03fdb81)
2021-09-13 12:30:22 +01:00
dordsor21
d9a8c047a2
don't create chunk set if it doesn't already exist when checking for biomes
It shouldn't ever create the set at this point though

(cherry picked from commit 3ea725a863c148c12884b3f5a94262eb58b5deaa)
2021-09-13 12:30:12 +01:00
dordsor21
da2a846d3d
Don't return null when adding processors to NullExtent
(cherry picked from commit 1a8ad8133ef6feae8fdf40d5317934ee6bf31314)
2021-09-13 12:29:49 +01:00
NotMyFault
cdbbedb662
Update Upstream
6008fe7 Remove class shutter
2021-09-13 10:51:58 +02:00
dordsor21
5d31b7034d
Deprecate sponge schematic reader/writer and tell users why (#1287) 2021-09-13 10:51:58 +02:00
dordsor21
8e214b1232
Javadocs to LocalBlockVectorSet 2021-09-11 16:59:00 +01:00
dordsor21
8c8419a1c5
LocalBlockVectorSet shouldn't actually be used from multiple threads. SparseBitSet is not thread safe 2021-09-11 16:41:42 +01:00
dordsor21
6e586da83e
Some code cleanup
- Simplify MaskFilter slightly
- Improve thread safety of LocalBlockVectorSet
- Simplify if statement in SingleThreadQueueExtent
- Better error in MathMan#tripleSearchCoords for handling of the error in some cases
2021-09-11 16:38:01 +01:00
dordsor21
e85586db80
Only set ParserContext extent to world if null when setting world 2021-09-11 16:25:45 +01:00
dordsor21
a923c112ee
Actually do what I said for min/max Y in HeightmapProcessor 2021-09-11 14:25:47 +01:00
dordsor21
82220ef87e
Move HeightMapType and HeightmapProcessor into own package 2021-09-11 13:37:31 +01:00
dordsor21
f84c98e721
Use given min/max y values in HeightmapProcessor 2021-09-11 12:41:06 +01:00
dordsor21
6cbd9631a0
Improve notes on getting the stored section range/refactor method name 2021-09-11 12:40:39 +01:00
dordsor21
37998ec598
Refactor heightmap classes to math where it makes more sense
(not required by heightmap processor, nor are they processors, used for heightmap brushes etc.)
2021-09-11 12:23:03 +01:00
SirYwell
5fb4434afe Fix indexing and custom world heights in HeightmapProcessor 2021-09-11 10:26:02 +02:00
NotMyFault
f29d68b16e
Update Upstream
fbf61ef Fix raise and lower deform brushes (1889)
2021-09-11 10:15:44 +02:00
dordsor21
db24b429c1
only close clipboard on error during copy
apply to //cut as well
2021-09-11 00:27:26 +01:00
dordsor21
470ba64fe4
Fix #1260 2021-09-10 17:46:21 +01:00
dordsor21
829ddc393f
Fix #1268 2021-09-10 17:14:55 +01:00
dordsor21
88ae6d9e1d
Optimise HeightmapProcessor (around 16x faster) 2021-09-10 16:53:25 +01:00
dordsor21
0e72fa5058
Specify requirement for delay-chunk-unloads-by to be set for preloading 2021-09-10 15:52:46 +01:00
dordsor21
3f182c63bc
Fix #1285 2021-09-10 14:53:07 +01:00
dordsor21
effb94623a
Fix exceptions being squashed RegionVisitor preloading 2021-09-10 14:41:15 +01:00
dordsor21
195a13a23c
some codestyle application 2021-09-08 16:39:43 +01:00
NotMyFault
8aadeb9291
Identify as Fawe when throwing unknown exceptions
Closes #1281
Closes #1279
Closes #1282
2021-09-06 15:28:54 +02:00
NotMyFault
d236470df8
Update Upstream
b1c230d Add conditional checking in help command (1888)
b4fbbc9 Move clearable checks for Bukkit to adapters (1887)
2021-09-04 10:31:31 +02:00
dordsor21
79f4be3941
Adjust some synchronisation 2021-09-02 18:06:36 +01:00
NotMyFault
09c4655be7
Setup allowed-plugins with an example plugin 2021-09-02 18:53:14 +02:00
dordsor21
f8aaf0cae3
Don't set extent to self when cancelling in AbstractDelegateExtent
#749
2021-09-02 17:13:38 +01:00
dordsor21
93dff36ee2
Fix #1265 2021-09-02 14:08:49 +01:00
dordsor21
b9e4b31c68
Clean up ChunkHolder slightly, only trim chunk get if not already present 2021-09-02 12:31:27 +01:00
dordsor21
fb7e95c440
Improve exceptions (#1256)
- Kick more exceptions further up the pipeline to be more likely to be shown to player
- Try to avoid lots of console spamming when it's the same error multiple times
- Allow parsing of FaweExceptions during commands to better give information to players
2021-09-01 16:36:03 +02:00
dordsor21
ebc38a62ad
Should fix #1237 and should fix #1236 2021-08-26 16:44:49 +01:00
dordsor21
cacfcb8c5c
LimitExtent isn't a processor 2021-08-26 16:44:08 +01:00
dordsor21
da8289f8ba
Fix #826 2021-08-25 16:19:51 +01:00
dordsor21
4050cf238f
Fix #1217 2021-08-25 15:48:39 +01:00
dordsor21
29bebcd034
Fully fix #949 2021-08-25 15:32:25 +01:00
dordsor21
4e463af1df
Remove log output from DefaultBlockParser 2021-08-25 14:12:40 +01:00
dordsor21
a66080d803
Fix build, add note 2021-08-25 14:06:12 +01:00
dordsor21
ea6b29f145
Fix up annotations in block classes and slight cleanup 2021-08-25 12:25:33 +01:00
dordsor21
df18fcef92
Fix #1250 2021-08-25 11:16:06 +01:00
dordsor21
012e55e780
Fix links 2021-08-25 11:08:14 +01:00
dordsor21
7d9abc9273
Skip corrupt tile entities in legacy schematics 2021-08-23 21:46:50 +01:00
dordsor21
6301a7adb9
Deprecate and add the warnings for BlockType#getState as it is broken 2021-08-23 21:28:06 +01:00
dordsor21
c0893a404d
Set default number of iterations for snow smooth brush to 1. 2021-08-23 21:27:35 +01:00
dordsor21
0aadef97d0
Quick fix for SnowHeightMap 2021-08-23 21:26:59 +01:00
dordsor21
1a0f7df3f4
Fix #1243 2021-08-23 13:08:10 +01:00
dordsor21
2e0de7b197
Fix nullability issue with SnowHeightMap mask, apply some cleanup and reduce needless object creation 2021-08-23 11:57:00 +01:00
NotMyFault
cf671ad7ff
Update Upstream
ed28089 Don't crash if fields are null in ChunkDeleter (1874)
f049d56 Revert "Use a Guava Cache instead of a ThreadLocal (1859)"
c5a4450 Internally use a negated mask class to prevent russian doll wrapping (1877)
1397ec7 Add Snow Smooth Tools (1580)

Fixes #955
Fixes #858
2021-08-22 11:56:39 +02:00
SirYwell
df8b2802b2 Support custom world min heights when processing heightmaps 2021-08-21 10:52:45 +02:00
dordsor21
cd576a2a87
Fix #1241 2021-08-20 16:33:58 +01:00
dordsor21
563ad7761a
Fix LocalBlockVectorSet
- Fixes #1238
2021-08-19 13:10:09 +01:00
NotMyFault
188e4b6215
Fix unknown direction exception missing key 2021-08-18 14:57:14 +02:00
dordsor21
6a932f2eda
Preloading is paper only. 2021-08-17 22:34:51 +01:00
dordsor21
1d9b1a3d5e
Remove hardcoding of world limits (#1199)
* Remove hardcoding of world limits
 - seems to be working fine without the datapack for world height changing
 - particular attention should be given to LocalBlockVectorSet and MathMan changes

* update adapters

* Override getMinY in various classes and ensure selections have a world attached to them

* no message

* Address comments
 - Fix for lighting mode 1

* A few more changes

* Fix LocalBlockVectorSet

* Fix range statement

* Various fixes/comment-addressing
- There's not much point in having a different file name now for history. We've broken it before...
- Fix history read/write
- Fix range on for loops in CharBlocks

* undo bad CharBlocks change

* Fix history y level

* Fix biome history

* Fix lighting

* Fix /up

* Make regen fail not because of these changes

* Fixes for y < 0

* Fix isEmpty where only the uppermost chunksection is edited

* Fix javadocs/FAWE annotations

* Better explain why BiomeMath is removed

* If history task throws an error, it should only be caught and printed if not completing now.

* Min|max world heights for new patterns

* Load biomes from NMS instead of bukkit (#1200)

* Update adapters

* Update adapters

* Don't initialise BlockTypes when biomes aren't set up yet so all BiomeTypes.BIOME are no longer null thanks.

* Address some comments.

* rename layer -> sectionIndex to imply inclusivity

* Javadoctored.

Co-authored-by: NotMyFault <mc.cache@web.de>
Co-authored-by: Hannes Greule <SirYwell@users.noreply.github.com>
2021-08-17 22:13:51 +01:00
dordsor21
664cd4e33d
Preloader is null for spigot users 2021-08-17 18:06:57 +01:00
dordsor21
347bd04065
Fix initialisation 2021-08-17 17:09:52 +01:00
dordsor21
4cae37fbbf
Add back extra angle mask prefixes 2021-08-17 17:07:37 +01:00
dordsor21
569fdc3861
Reimplement radius mask, fix wall mask 2021-08-17 17:03:25 +01:00
dordsor21
46f6395279
Improve mask parsing
- Fixes #1230
2021-08-17 17:02:11 +01:00
NotMyFault
f6676cf6a3
Follow up to 1ee4de0edf 2021-08-17 16:57:35 +02:00
dordsor21
0ffab8ee69
Add null check to preloader 2021-08-17 15:38:47 +01:00
dordsor21
8c11ba7fea
Preload chunks up to the configured limit, cancel preloading on EditSession complete 2021-08-17 12:07:48 +01:00
dordsor21
da7aca8ef8
Add basic preloading (#1221) 2021-08-16 20:47:09 -04:00
dordsor21
d4d98708f9
Re-implement richer mask and transform parsing (#1223)
Co-authored-by: dordsor21 <dordsor21@gmail.com>
Co-authored-by: Hannes Greule <SirYwell@users.noreply.github.com>
2021-08-16 09:03:06 +00:00
dordsor21
3e4f1d5cd8
Better Mathman#isInteger 2021-08-11 20:38:52 +01:00
dordsor21
00a6a2d917
Fix stash failure 2021-08-11 15:03:59 +01:00
dordsor21
3ba42df321
Use more MutableBlockVector3s 2021-08-11 14:56:10 +01:00
dordsor21
6f5430a940
Some cleanup of mutables 2021-08-11 14:00:12 +01:00
dordsor21
8928556c1d
Minor improvement to MathMan#isInteger 2021-08-11 12:32:46 +01:00
Pierre Maurice Schwang
7d3a9ff36d
Fixed Unit Tests (BlockVector3.isLongPackable) (#1168)
* Fixed Unit Tests (BlockVector3.isLongPackable)

* Re-enable tests for ci

* Address gh action dependency complaints

* Fix "invalid usage of tag &" for MinecraftVersion.java

* Simple StubServer for BukkitWorldTest.java

* Add parallelgzip to test runtime, fixed javadoc encoding, make gradlew executable and patch StubServer for latest spigot / paper release

* Move Javadoc UTF-8 to PlatformConfig.kt

* Revert "make gradlew executable"
Was required for act to run, but not required for GH actions - Weird behavior

* Mark upstream changes, move class + apply editorconfig

Co-authored-by: NotMyFault <mc.cache@web.de>
Co-authored-by: Matt <4009945+MattBDev@users.noreply.github.com>
2021-08-10 09:31:37 +01:00
Maddy Miller
e2b2feb7c5
Use MethodHandle for faster event bus (#1865)
* Use MethodHandle for faster event bus

* Implement hashCode/equals

* Apply review comments

* Bind to the object directly
2021-08-09 10:21:42 +01:00
dordsor21
57f7c93033
Fix history rollback
- Fixes #959
2021-08-08 19:35:57 +01:00
Maddy Miller
f06ba41f91
Fix Cycler tool not using full block data (#1868)
(cherry picked from commit 8ee45137aa5d7a3b80b661601ab14e48f13756ec)
2021-08-08 17:33:45 +01:00
Joseph Thomas
d10b038e84
Create SurfaceAngleMask (#1215) 2021-08-08 09:59:42 +00:00
dordsor21
2376ce8d9d
Add thickness to //hcyl and //br cylinder -h
- Closes #753
2021-08-08 10:02:58 +01:00
NotMyFault
75b888a9f0
Add missing translation keys 2021-08-08 01:52:28 +02:00
dordsor21
9af77c06b8
Fix ParallelQueueExtent#setBlocks(Region, <B extends BlockStateHolder>)#
- Fixes removeabove/removebelow
2021-08-07 17:38:09 +01:00
dordsor21
346223977d
Add javadoc comments to generateTree 2021-08-07 16:28:41 +01:00
dordsor21
e90b261196
Trees should be generated on the main thread
- Also remove warning when using tree tool
2021-08-07 16:19:41 +01:00
Aurélien
abaa347ad4
Fix major security bugs (3 brushes + superpickaxe)! (#1213)
* Fix major security bugs (3 brushes + superpickaxe)!
- Due to some recent changes, FAWE could edit everything in the world, no matter other plugin protections such as PS or WG.
- Fix superpickaxe allow to bypass protections => Fix SurvivalModeExtent not taking into account protections plugins due to breaking blocks naturally to get drops.

* Adress requests
- Revert some unsuitabe changes
- Add FAWE diff comments

* Clean imports

* Adress requests

Co-authored-by: NotMyFault <mc.cache@web.de>
2021-08-07 11:09:33 +02:00
NotMyFault
14fc2dbf9b
Fix fawe-deprecation javadoc linking 2021-08-05 18:33:19 +02:00
NotMyFault
3ccb5e0aed
Use translation message for brush assignment 2021-08-04 22:44:24 +02:00
NotMyFault
2bcf3eedf1
Add //br snow
Apparently an upstream addition we forgot to pull.
2021-08-04 22:29:43 +02:00
NotMyFault
45a8030aeb
Update Upstream
b9f0416 Use a Guava Cache instead of a ThreadLocal (1862)
2021-08-02 22:10:21 +02:00
NotMyFault
a5e84dcfea
Switch to version catalogs
- Closes #1204
- Switch to security advisory
- Move fawe-tests to fawe packages
2021-08-01 19:28:51 +02:00
NotMyFault
9f3a451ef6
Fixes #756 2021-07-31 14:18:04 +02:00
dordsor21
d62a1b5ad3
Always trim chunk GET in ChunkHolder
- Possibly something to do with #1169
2021-07-29 20:37:10 +01:00
NotMyFault
84b9dce6be
Move debug notes to logger factory 2021-07-29 21:11:23 +02:00
NotMyFault
69067fe8c8
Leave a note about (temporary) not undoable tree tools 2021-07-27 19:45:31 +02:00
NotMyFault
b4f9ade5bd
Fixes #1071 2021-07-26 17:05:54 +02:00
NotMyFault
92b4524dd6
Update Upstream
f414af5 Fix the offset mask forcing negation of itself (1656)
2021-07-26 00:48:38 +02:00
NotMyFault
f479e32b5f
Update contributing url 2021-07-24 19:28:28 +02:00
dordsor21
8c0195970b
Add and apply .editorconfig from P2 (#1195)
* Consistenty use javax annotations.
 - Unfortunately jetbrains annotations seem to be exposed transitively via core somewhere, but with the correct IDE settings, annotations can be defaulted to javax
 - Cleaning up of import order in #1195
 - Must be merged before #1195

* Add and apply .editorconfig from P2
 - Does not rearrange entries

* Address some comments

* add back some javadoc comments

* Address final comments

Co-authored-by: NotMyFault <mc.cache@web.de>
2021-07-24 16:34:05 +01:00
dordsor21
3b4beba7d6
Improve performance of various commands/actions
- Add chunk preloading to RegionVisitor if supplied with a suitable Extent
 - Where extents are used in masks, set EditSession as the extent as they are otherwise initialised with WorldWrapper that is very slow
 - Fixes #1073
2021-07-24 15:47:22 +01:00
dordsor21
f2ee2248e0
Consistenty use javax annotations. (#1197)
- Unfortunately jetbrains annotations seem to be exposed transitively via core somewhere, but with the correct IDE settings, annotations can be defaulted to javax
 - Cleaning up of import order in #1195
 - Must be merged before #1195

Co-authored-by: NotMyFault <mc.cache@web.de>
2021-07-24 15:52:08 +02:00
dordsor21
41f4aadf40
Update to 1.17.1 texture jar 2021-07-24 12:19:44 +01:00
dordsor21
d46af0136b
Fix nullable world in regions 2021-07-24 10:04:04 +01:00
dordsor21
0be8746c11
Add more directionals
- Fixes #1122
 - Levers and buttons can be flipped/rotated vertically
2021-07-23 20:15:22 +01:00
renovate[bot]
0d26dad397
Update dependency com.github.luben:zstd-jni to v1.5.0-4 (#1189)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-07-23 20:17:43 +02:00
NotMyFault
50ab8ad5c7
Feature/propagate diff and object cleanup (#1190)
* Feature/main/propagate diff annotations (#1187)

* 25% done

* More work

* More work

* 50%

* More work

* 75%

* 100% & cleanup

* Update adapters

* Squish squash, applesauce

commit 275ba9bd84
Author: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Date:   Sat Jul 17 01:10:20 2021 +0200

    Update dependency com.comphenix.protocol:ProtocolLib to v4.7.0 (#1173)

    Co-authored-by: Renovate Bot <bot@renovateapp.com>

commit 9fd8984804
Author: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Date:   Sat Jul 17 01:09:29 2021 +0200

    Update dependency org.checkerframework:checker-qual to v3.16.0 (#1184)

    Co-authored-by: Renovate Bot <bot@renovateapp.com>

commit 861fb45e5c
Author: dordsor21 <dordsor21@gmail.com>
Date:   Fri Jul 16 19:07:02 2021 +0100

    Fix #1075

commit 420c45a29a
Author: dordsor21 <dordsor21@gmail.com>
Date:   Fri Jul 16 18:48:21 2021 +0100

    Entity removal should be on the main thread as we're just passing through rather than doing chunk operations
     - Fixes #1164
     - Not working: butcher/remove history

commit 4d4db7dcd0
Author: SirYwell <hannesgreule@outlook.de>
Date:   Fri Jul 16 17:52:44 2021 +0200

    Make sure leaves category is loaded for heightmaps (fixes #1176)

commit c98f6e4f37
Author: dordsor21 <dordsor21@gmail.com>
Date:   Fri Jul 16 10:44:52 2021 +0100

    Do not allow generation commands to generate outside selection

commit 2485f5eccc
Author: dordsor21 <dordsor21@gmail.com>
Date:   Fri Jul 16 10:43:15 2021 +0100

    EditSession needs to override some Extent methods to ensure block changes are correctly set through the various extents
    Fixes #1152

commit d9418ec8ae
Author: dordsor21 <dordsor21@gmail.com>
Date:   Fri Jul 16 09:52:44 2021 +0100

    Undo part of 41073bb1a0
    Fixes #1178

* Update Upstream

fb1fb84 Fixed typo and grammar

* We don't support custom heights yet

* Casing inconsistency

* Address a few comments

* Address comments

* Don't refactor to AP classpath

* Document annotation style

* Refactoring & shade cleanup

* Address a few comments

* More work

* Resolve comments not being resolved yet

* Feature/main/propagate diff annotations (#1187) (#1194)

* Remove beta package, fix history packages, move classes out of object package

* Resolve comments not being resolved yet

* Remove beta package, fix history packages, move classes out of object package

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

* brushes should be under brush

* More refactoring
 - Filters/processors should be in the same place and are related to extents
 - Transforms are in `extent.transform` in upstream

* Move history classes under history

* Update adapters

Co-authored-by: dordsor21 <dordsor21@gmail.com>
2021-07-23 17:48:51 +02:00
dordsor21
ad102ab7a9
clipboard brush is supposed to be -o not -p 2021-07-23 11:27:14 +01:00
dordsor21
8e16acde1d
Fix error in clipboard brush switches 2021-07-23 09:54:30 +01:00
dordsor21
1e49f59001
Much better hinge handling 2021-07-21 20:00:39 +01:00
dordsor21
1ec927f30c
Add check when obtaining BlockState from id to prevent edits losing large amounts of data 2021-07-20 20:49:47 +01:00
dordsor21
5f8addbb5b
Fix #1185
TODO: fix door hinge placement on rotate/flip sometimes
2021-07-20 20:49:13 +01:00
dordsor21
ca1744aa97
Likely fix for rotation issue
fixes #996
2021-07-19 20:33:50 +01:00
dordsor21
6ab927fa4d
Fix #1167 2021-07-19 20:28:36 +01:00
dordsor21
861fb45e5c
Fix #1075 2021-07-16 19:07:02 +01:00
dordsor21
420c45a29a
Entity removal should be on the main thread as we're just passing through rather than doing chunk operations
- Fixes #1164
 - Not working: butcher/remove history
2021-07-16 18:48:21 +01:00
SirYwell
4d4db7dcd0 Make sure leaves category is loaded for heightmaps (fixes #1176) 2021-07-16 17:54:18 +02:00
dordsor21
c98f6e4f37
Do not allow generation commands to generate outside selection 2021-07-16 10:44:52 +01:00
dordsor21
2485f5eccc
EditSession needs to override some Extent methods to ensure block changes are correctly set through the various extents
Fixes #1152
2021-07-16 10:43:15 +01:00
dordsor21
d9418ec8ae
Undo part of 41073bb1a0
Fixes #1178
2021-07-16 09:52:44 +01:00
NotMyFault
bcceadee6b
Propagate FAWE diff annotations down the bukkit module
- Minor upstream merge
2021-07-14 14:40:20 +02:00
NotMyFault
d7763c8542
Fixes #1181 2021-07-13 17:20:37 +02:00
NotMyFault
3cf283a65b
Update Upstream
954210d Fix //outline for non-cuboid regions (1827)
2021-07-13 10:59:04 +02:00
dordsor21
41073bb1a0
More exact testing for scaling/flipping in AffineTransform and only combine transforms when not equal in ForwardExtentCopy
- Fixes #1162
 - Also fixes rotation in x/z axes
2021-07-10 19:47:39 +01:00
dordsor21
338be0ff31
Undo/redo should not be allowed outside allowed regions by default.
Fixes #949
2021-07-10 14:14:34 +01:00
NotMyFault
0434b86d8e
Feature/1.17.1 (#1172)
* Update adapters for 1.17.1

* Fixes #1074

* fd10efa56b51d915302d616302145c74c3f079ee

* Fix `//chunkinfo` message

* 9fc85704e9570304f1b336612039afc85bb17064

* 03b4437023

* JitPack decided to work again
2021-07-09 16:07:48 +02:00
NotMyFault
a183425642
Update Upstream
40ded93 Fix loading legacy invalid blocks
2021-07-06 13:13:54 +02:00
NotMyFault
22f11abce8
Remove unneeded maven repos 2021-07-05 22:26:14 +02:00
NotMyFault
35b1202951
Mitigate logger spam introduced in 256d7c4e5d
Touches #1122, #1166
2021-07-04 00:43:57 +02:00
renovate[bot]
af1a3c3ddb
Update dependency net.kyori:adventure-nbt to v4.8.1 (#1161)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-07-01 22:57:52 +02:00
NotMyFault
876d84aec0
Fix typo 2021-07-01 22:49:10 +02:00
dordsor21
aa3ae63682
Feature/1.17 (#1120)
* start v6

* Update classes to v6 method signatures

* change rootVersion to signify p2v6 compat

* Use 16 as toolchain version but target 11 for build output

* add minimessage as api

* Require v6 and don't attempt to "setup" hook from FAWE

* Address comments

* *address /all/ comments

* FAWE classes should only act as a delegate

* Uppercase logger

* Settings for v6-hook have moved to P2-v6, remove unneeded if statements

* Rename classes to Delegate

* add whenDone task to setCuboids

* Remove bad spaces

* Fix plot swap

* Initial work on 1.17 support

* Remove data versions from the Bukkit adapters (#1507)

* Remove data versions from the Bukkit adapters

* Don't allow saving schematics without an adapter in place on Bukkit.

* Removed confusing line

(cherry picked from commit 2056218b4a8644836b1d127105dfa289e9cdbc1c)

* More progress

* Fix chunk sending

* Repackage from com.boydti to com.fastasyncworldedit.<module> (#1119)

* Preliminary work on repackaging

* Rename build artifacts matching our pattern

* Finish up repackaging

* Fix a few field accesses and old imports

* Dirty fix for chunks container ChunkSections outside of 0-15

* Correctly read from NibbleArrays for lighting

* Fix getSections and BlockMaterial for 1.17

* Fix writing blocks to the world.
 - The issue isn't the presence of a "-1" chunk, it's the constructor for ChunkSection requiring the layer (0 to 15) rather than the y chord

* Fix more field accesses

* More work towards 1.17

* Update Upstream

a57f66f Fix watchdog, add negative y support. (1782)

* Add azalea tree to `/tool tree`

* Don't define toolchain twice

* Repackage GriefDefender

* Relocate under new namespace

* Bye bye ecma left overs

* Add 1.17 to issue templates and instructions

* Move to adventure-nbt (#918)

* Initial work for adventure-nbt

* Some more FAWE specific stuff

* Fix erroneous deprecation check

* Workflow change

* Continued merging all adventure NBT related changes

* Continued merging all adventure NBT related changes

* Made a constructor public again

This needs to be public for BlockTransformExtent.java

* Finished converting all NBT data to adventure.

* Make this compile

* Fix conflicts

Co-authored-by: Matt <4009945+MattBDev@users.noreply.github.com>

* Update adapters to 1.17

* Change build prefix to 1.17

* Move more nms classes to adapters

* Move left over nms classes

* Move Spigot 1.17 class

* Remove unneeded adapter loader code
The loader will find the appropriate class now itself

* Update adapters

* Update adapters

* Lazy fix tests

* Update adapters

* Update Upstream

43da91a Remove method reflection for getMinHeight in BukkitWorld. (1796)

* Relocate adventure-nbt under proper namespace

* Add LazyCompoundTag as a non-version-specific class to be used by adapters

* Better integration between old NBT and Adventure NBT - begin fixing the issues seen recently

* Correctly NBT conversion method

* LazyCompoundTags should actually be overriding and correctly returning a CompoundBinaryTag.

* Update worldedit-adapters
Fixes #1141

* Remove unnecessary massive lag machine

* Refactor apply to applyBlock in subclasses

* applyBlock should be overriden by all subclasses.
Default apply to applyBlock

* Closes #1130 Closes #1132

* Squashed commit of the following:

commit a9bfa1a07c77083c844a0c3ba62f4bd94bed107c
Author: NotMyFault <mc.cache@web.de>
Date:   Sun Jun 27 21:53:21 2021 +0200

    [ci skip] Update gradle wrapper validation

commit aa7471f95317d28a16f62e4b200de8d0fea2fa95
Author: Matthew Miller <mnmiller1@me.com>
Date:   Sat Oct 10 15:49:13 2020 +1000

    Add ^x,y,z relative offset support to the offset parser (#1545)

    * Add ^x,y,z relative offset support to the offset parser

    * Wrap in a try-catch

    (cherry picked from commit 28bdf7ff9254bbc85bb4f5f792b303943a3930a8)

* Add `fawe.error.schematic.not.found` translation key

* Update Upstream

728a152 Skip notify if chunk section doesn't exist (1794)

* Fixed #1157

* Add a null check to prevent NPE in nbt code

* Update adapters

* Update Upstream

fbb047a Optimize legacy schematic loading (1808)

* Hurr durr I don't want to update Java

* Update Upstream

0790e6e Fix CLI Mess (1811)

* Fixes #1160

* Expose minimessage transitively thru PlotSquared

Touches #32

* [ci skip] Remove unneeded maven repository

* Steal tab completion from PlotSquared for P2 related commands

* Don't error on startup when building locally

Co-Authored-By: goldfishapp <8278196+goldfishapp@users.noreply.github.com>

* [ci skip] Update gh actions to Java 16

* Update textures to grab 1.17 jar

Co-authored-by: NotMyFault <mc.cache@web.de>
Co-authored-by: SirYwell <hannesgreule@outlook.de>
Co-authored-by: Matthew Miller <mnmiller1@me.com>
Co-authored-by: Matt <4009945+MattBDev@users.noreply.github.com>
Co-authored-by: goldfishapp <8278196+goldfishapp@users.noreply.github.com>
2021-07-01 22:16:25 +02:00
NotMyFault
78acb857da
Closes #1129 Closes #1128 2021-06-19 10:17:43 +02:00
dordsor21
a0e84d7a44
Fix superpickaxe item dropping
Fixes #1079
2021-06-18 23:48:23 +01:00
NotMyFault
7af06a533b
Split up worldedit.anyblock and worldedit.anyblock.nbt for specific nbt operations 2021-06-18 20:58:10 +02:00
dordsor21
391869cf3a
Fix up LimitExtent
- Correctly handle block state limit checks.
- Don't quash exceptions thrown in a region operation by having a "max-fails" check that can only be hit once....
Fixes #1127
2021-06-18 18:00:42 +01:00
dordsor21
256d7c4e5d
Temporary fix for #1122 2021-06-14 06:34:05 +01:00
dordsor21
b796106dd7
Add directionals for chests and slabs "type" block state
Fixes #987
2021-06-11 15:25:52 +01:00
dordsor21
da264b52e1
Fix #1116 2021-06-11 15:05:52 +01:00
dordsor21
f6c87b6726
Add null check to creating default NBT data 2021-06-10 19:59:17 +01:00
dordsor21
717a1b5db4
Replace ImmutableBaseBlock with BlanketBaseBlock
- ImmutableBaseBlock is no longer needed as NBT was made immutable previously
 - BlanketBaseBlock represents to masks that the block has NBT, but does not need to match a specific state
 - Allow FuzzyBlockState to create BaseBlocks without NBT data (fixed tab completion issues)
2021-06-10 19:47:34 +01:00
renovate[bot]
e11a2d7f6d
Update dependency com.github.luben:zstd-jni to v1.5.0-2 (#1113)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-06-10 17:37:15 +02:00
dordsor21
1fa5f4d725
Begin fixing layer brush
- Required new argument parser, which should ultimately be made into a singe blockstate parser for best results, and proper tab-completion
 - The layer brush itself is broken because of the changes to internal block retrieval from legacy
2021-06-10 16:19:23 +01:00
dordsor21
7ef8b2f95e
Create default TileEntity data where required.
Fixes #1093
Fixes #1042
2021-06-10 13:39:36 +01:00
dordsor21
71130025e8
Allow ^ mask to be used between blocks that may have different properties, only keeping the shared properties
Fixes #1092
2021-06-10 12:46:19 +01:00
renovate[bot]
75935f91e9
Update dependency com.github.luben:zstd-jni to v1.5.0-1 (#1106)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-06-08 23:46:46 +02:00
dordsor21
f6af9925e8
Char block null check (#1030)
**Add a null-check to CharBlocks FULL section layer-retrieval.**
 - It is possible to trim CharBlocks whilst it is attempting to read data due to the batching of chunks to help reduce memory
 - This is done when the number of chunks sitting loaded in memory with having been "submitted" to the queue for writing to disk becomes high
 - Seconday operations such as heightmap processing and lighting will quickly load chunks, meaning many chunks are submitted early
 - This leads to much higher chances of the chunk being submitted and subsequently trimmed given heightmap and light processing is done layer-by-layer over many chunks, rather than chunk-by-chunk - thus leading to NPEs.
 - By adding synchronisation to and around only the specific sections when loading/updating, and not blocking the whole chunk, many access can still be thread-safe without causing deadlocks
 - This allows removal of lots of the needless and very-slowing synchronisation on get**Block** methods

**Remove much of the synchronisation from ChunkHolder**
 - We shouldn't be synchronising with call() and safety should be added elsewhere. (plus it's making edits very very slow when queue target size is hit)
 - Also remove much of synchronisation because we've added the null-check and section-specific synchronisation to CharBlocks
 
**Some QOL/thread-safe data access changes**
- Replaces the Array#clone seen in the get blocks classes with System#arraycopy as deep cloning is not required, and is also slower than arraycopy
- Add System#arraycopy when accessing chunk section data via history to ensure it is not altered whilst being written
- Renaming EMPTY to empty means it is not implied to be a static variable

Fixes https://github.com/IntellectualSites/FastAsyncWorldEdit/issues/1028
Fixes https://github.com/IntellectualSites/FastAsyncWorldEdit/issues/1025
Fixes https://github.com/IntellectualSites/FastAsyncWorldEdit/issues/1089
Fixes https://github.com/IntellectualSites/FastAsyncWorldEdit/issues/1091
Fixes https://github.com/IntellectualSites/FastAsyncWorldEdit/issues/1097
2021-06-08 14:28:16 +00:00
dordsor21
1cd2d8d121
Send before history is acttually safer at the moment
- avoids deadlocks
2021-06-08 14:15:43 +01:00
NotMyFault
ef5211d5b5
Update Wiki link 2021-06-06 21:17:24 +02:00
NotMyFault
75fbe654ee
Update Upstream
0036e06 Alter the CUI lifecycle to be more consistent and reliable (1633)
2021-06-05 11:27:27 +02:00
NotMyFault
d1af6c38e7
Update Upstream
9516002 Register platforms and commands in a more proper way (1766)
2021-06-05 10:27:38 +02:00
MattBDev
6bfc3ceb95 Removed cast to ResettableExtent in for loop.
I have no idea why we were casting it when all objects in the loop were ResettableExtents in the first place.
2021-06-03 17:59:51 -04:00
MattBDev
7f51d8374b Merge remote-tracking branch 'origin/main' 2021-06-02 17:27:46 -04:00
MattBDev
930b9b07d5 Fixed raw class usage in DistrFilter 2021-06-02 17:27:37 -04:00
NotMyFault
46ed9a2d67
Include classloader in extend debug message 2021-06-02 17:27:18 +02:00
NotMyFault
b599769f8c
Fixes #1098 2021-05-30 23:49:46 +02:00
Hannes Greule
53681ccc59
Feature/unsafe over reflections (#1082)
* Use Unsafe to replace Lock

* Start cleaning up everything that has to do with CleanableThreadLocal

* Make cancellation work

Co-authored-by: NotMyFault <mc.cache@web.de>
2021-05-28 18:47:46 -04:00
NotMyFault
cbe5cd4eb3
Move Fawe commands to Captions 2021-05-24 11:36:37 +02:00
NotMyFault
d2dee87ab9
Update Upstream
5a7cbfd Fix selecting at 0,0,0 or radius 0 cyl/ellipse (1734)
2021-05-24 10:52:58 +02:00
NotMyFault
b7f595cc50
Remove redundant tab from translation file 2021-05-23 23:39:00 +02:00
NotMyFault
8d35963171
Address dead Component imports 2021-05-23 23:35:08 +02:00
NotMyFault
106f9aed79
Address requested changes
- 4534154894 (r50694638)
- 4c1d0bc9a6 (r50694886)
2021-05-23 23:24:18 +02:00
NotMyFault
d48808f111
Fixes #1072 2021-05-22 17:33:42 +02:00
NotMyFault
a7cbf1dd0a
Elaborate where config changes can be applied to 2021-05-19 23:51:42 +02:00
SirYwell
71f7103edd Always use Unsafe to clean ByteBuffer 2021-05-15 15:27:28 +02:00
Matt
aa0ad16a1b
Update to Gradle 7 (#1078) 2021-05-14 23:42:37 +02:00
NotMyFault
9aa25ce109
Update Upstream
876108f Prepare for Gradle 7, but due to FG only get to 6.9
Touches #1020
2021-05-14 10:31:32 +02:00
NotMyFault
44fe51826f
Remove nashorn scripting engine (#1068)
- Remove the ScriptTranspiler as es6 is no longer supported
2021-05-13 20:19:55 +02:00
Hannes Greule
ff728478c6
Relight using starlight engine on Tuinity & perform heightmap updates (#1023)
* Relight using starlight engine on Tuinity

* Make use of invokeExact

* Cache MethodHandle

* Address some requested changes

* Remove random *

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

* Simplify and clean up sendChunk
Hopefully, that doesn't cause any issues

* Add naive HeightmapProcessor

* Make HeightmapProcessor more efficient

* Remove heightmap code from NMSRelighter

* Recognize fluid for waterlogged blocks

* Remove config option for heightmaps as they should always be updated

* Batch relighting for Starlight

* Dirty workaround for CharBlocks blocks NPE

* Revert "Dirty workaround for CharBlocks blocks NPE"

This reverts commit 737606a7
It only caused the heightmap to be wrong again and didn't help much with the original issue

* Adapt better chunk sending on older versions

* Adapt requested changes for HeightMapType

* Relight all changed chunks, batched
Also, address some requested changes

* Avoid deadlocks

* Clean up tuinity relighter and add some comments

* Minor changes to HeightmapProcessor

Co-authored-by: BuildTools <unconfigured@null.spigotmc.org>
Co-authored-by: NotMyFault <mc.cache@web.de>
Co-authored-by: Aurora <21148213+aurorasmiles@users.noreply.github.com>
2021-05-13 11:29:11 -04:00
NotMyFault
9ff47d3404
Relocate zstd 2021-05-12 18:04:21 +02:00
MattBDev
46fae22de4 Fixed annoying capitalization issue. 2021-05-11 20:24:52 -04:00
MattBDev
6f2e4c0cf3 Simplify logic 2021-05-11 20:16:53 -04:00
MattBDev
4534154894 Throw error instead of returning null on a boolean return 2021-05-11 20:16:32 -04:00
MattBDev
bdd3bc26af Replaced hardcoded values of Pi with Math.PI 2021-05-11 20:15:24 -04:00
MattBDev
4c1d0bc9a6 Removed redundant null checks and fixed a potential file separator issue 2021-05-11 20:01:11 -04:00
NotMyFault
2b0ab1a084
Fixes #1046
Also remove option to shorten urls for schematic upload. This option does not work with self hosted interfaces, nor is it really safe to use, as per-design.
2021-05-11 20:16:54 +02:00
NotMyFault
00d689a238
Clarify why mcedit is discontinued 2021-05-08 14:55:25 +02:00
PureGero
1c9015531f
Keep order of block properties (#1053) 2021-05-07 13:12:58 +02:00
NotMyFault
22be7410fc
Add Pattern#applyBlock in favor of Pattern#apply
As Fawe extends into its own Filter class, this will need a Fawe-suitable solution at some point when removing the deprecated method.
This is a compatibility-layer workaround for plugins calling the WorldEdit method `Pattern#applyBlock`.
2021-05-06 11:54:22 +02:00
NotMyFault
5dafa5f62b
Update Wiki link 2021-04-28 14:04:02 +02:00
NotMyFault
207d029def
Anvil commands are currently not implemented 2021-04-22 20:36:36 +02:00
Hannes Greule
57773765d7 Prevent exceptions from being thrown endlessly 2021-04-16 20:32:23 +02:00
Aurélien
e4331844ac
Fix performance issues getting next file ids (#1027)
* Greetly optimize disk history

* Greetly optimize disk cfi changeset

* Remove wildcard import.

* Improve performance fix

* Improved performance fix
2021-04-13 16:55:12 +02:00
NotMyFault
ae647dadfb
Fix /fawe threads output 2021-04-12 19:32:17 +02:00
NotMyFault
88764d8d46
Update Upstream
98adde2 Allow toggleplace to work on any Actor + Locatable
2021-04-10 11:15:41 +02:00
Hannes Greule
19592df1f6 Don't cache location for circle brush, fix #970
Also, allow filled circles (very cool feature)
2021-04-10 01:07:51 +02:00
Hannes Greule
911d3a00eb Don't paste biomes out of bounds, fix #1009
Also some preparations for variable world heights
2021-04-09 22:59:31 +02:00
Hannes Greule
4b371e2c3f Fix latest.log not contained in debugpaste, fix #1017 2021-04-09 22:14:27 +02:00
NotMyFault
4d77771ea1
Increase cui limit based on game limits 2021-04-07 19:54:44 +02:00
NotMyFault
6e8cc06637
Address a few deprecations 2021-04-06 18:30:29 +02:00
NotMyFault
01dff32597
Fine tuning captions
Fix listchunks throwing component error
2021-04-06 14:01:04 +02:00
NotMyFault
dc51379e8f
Update upstream
acf9c3b Change oak stair shape to straight in legacy.json.
c7da4c0 Swap out logback for log4j2
2021-04-05 23:14:20 +02:00
NotMyFault
5e534ff9e2
Finalize Captions
Follow up to a9d1202ce1
2021-04-05 19:54:49 +02:00
NotMyFault
a9d1202ce1 Finish up transition to captions 2021-04-05 19:52:13 +02:00
renovate[bot]
7b9e8a0d79
Update dependency com.plotsquared:PlotSquared-Core to v5.13.11 (#1010)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-04-04 13:31:14 +02:00
Aurélien
e40d3e3c19
Fixes LongRangeBuildTool tool (#1005) 2021-04-02 23:03:59 +02:00
NotMyFault
b96cea75b8
Update Upstream
609c7b8 Scrapped Logging Framework 4 Java

Closes #997
Closes #998
Closes #999
Closes #1000
Closes #1001
Closes #1002
2021-03-29 15:29:16 +02:00
NotMyFault
2dc89f735d
Add missing translation key 2021-03-27 14:22:04 +01:00
NotMyFault
c689b4e5d2
Update Upstream
acd63daddf7b45ce2b7699bc85ae88e0aa4433e9: Slightly improve usability of LocalSession#getSelection.
Co-Authored-By: wizjany <568161+wizjany@users.noreply.github.com>
2021-03-26 10:11:26 +01:00
NotMyFault
4af7316118
Remove freebuild regions (#991)
* Remove freebuild regions

* Remove configuration option of freebuild

Co-authored-by: Matt <4009945+MattBDev@users.noreply.github.com>
2021-03-25 08:40:09 +01:00
NotMyFault
51487135bb
Adding a try-catch for some edge scenario Fawe failing to grab Mojang assets 2021-03-22 18:17:46 +01:00
dordsor21
d224d6ea32
Add synchronization to CharBlocks (#963)
similar to ChunkHolder, it represents an internal chunk for which operations should not be accepted by multiple threads at once.

Co-authored-by: NotMyFault <mc.cache@web.de>
2021-03-15 18:33:21 +00:00
Hannes Greule
20424b081c Allow none as image in height brush, fixes #969 2021-03-14 22:00:05 +01:00
Hannes Greule
d974164204
Switch from PropertyKey enum to class (#971)
* Switch from PropertyKey enum to class

* Fix generic toArray
2021-03-14 19:38:11 +00:00
NotMyFault
bc64eaff1c
Merge upstream 2021-03-13 10:59:17 +01:00
NotMyFault
6476345e44
Implement missing methods 2021-03-12 12:23:44 +01:00
NotMyFault
5acd1d7b95
Improve note about loading invalid schematics via FSR and SSR 2021-03-08 16:34:16 +01:00
NotMyFault
99ea64fa4e
Add a couple of permissions 2021-03-06 20:22:39 +01:00
dordsor21
7a0dc39eb7
Apply a lot of synchronization to ChunkHolder (#941)
This is basically the main "chunk" class for internal FAWE. Chunk operations should (and are) almost always single-threaded operations, however, under certain circumstances it is possible for the chunk to be "called" (flushed: written to the world and sent to the player) from a separate thread. This would specifically occur from SingleThreadQueueExtent when there are a lot of chunks being loaded in memory by FAWE (where the chunk would then be submitted to a multi-threaded queue). It would therefore be possible for a thread accessing the chunk to attempt to access it in the middle of the call, which can lead to a number of issues, and it is my opinion that the most frequent of these is the NPE seen during lighting operations, where new chunks can be accessed/loaded very quickly, increasing the likelihood for the aforementioned synchronisation issue to occur.

Co-authored-by: Matt <4009945+MattBDev@users.noreply.github.com>
2021-03-03 15:26:00 +01:00
NotMyFault
6bd866bdf7
Making renovate happy
Closes #940
Closes #933
Closes #931
2021-02-27 15:52:50 +01:00
NotMyFault
0b65533294
Show a message with install instructions when running the jar file
Co-Authored-By: Matthew Miller <mnmiller1@me.com>
2021-02-25 22:58:17 +01:00
NotMyFault
4af3cc6e4c
Closes #929 2021-02-22 11:13:08 +01:00
NotMyFault
4a6af7182a
Improve per-player schematic declaration 2021-02-22 10:47:34 +01:00
Aurora
e550189cb8
Add more debug output to find a error (#924) 2021-02-19 20:19:19 +01:00
NotMyFault
80b6a100e8
Switch to vanity url 2021-02-16 23:49:04 +01:00
NotMyFault
0a721b18ce
Implement methods 2021-02-14 19:56:05 +01:00
MattBDev
20304bf7ad Cherry-pick build-script changes from upstream 2021-02-11 12:00:28 -05:00
MattBDev
8981a5c484 Merge remote-tracking branch 'origin/main' 2021-02-11 11:45:11 -05:00
NotMyFault
eead11f32a
Fixes #265 2021-02-08 13:20:56 +01:00
dordsor21
5f83643d88
Couple of command fixes
fixes #899
2021-02-05 23:20:15 +00:00
NotMyFault
3df080abe4
Add note if clipboard >= Integer.MAX_VALUE 2021-02-05 13:21:15 +01:00
Octavia Togami
8b1f043dc5 Update so many dependencies, merge Forge/Fabric for final jar (#1651)
* Update so many dependencies, merge Forge/Fabric for final

* Clean up contrib docs for Gradle change

* Fix setting compat flags while using toolchain

* Fix deprecation in doc printer

* Restore proper forge JAR name

* Add dist classifier for mod jar

* Properly relocate new bStats

* Fix jar used from fabric

* Fix fabric bom

* Dup the shaded classes for consistency

* Sync Forge/Fabric log4j versions, de-dup

* Downgrade both log4j. This will work

* Update some plugins as well

* Drop the fabric force stuff

* Use duplicate strategy to directly merge jar
2021-02-04 17:45:49 -05:00
MattBDev
f3d4621589 Minor build script changes 2021-02-04 17:06:49 -05:00
NotMyFault
ac16c9a2ba Minor upstream merge 2021-02-03 23:08:39 +01:00
NotMyFault
3e37a66a12
Leave a better note about EOL versions 2021-02-01 22:40:27 +01:00
NotMyFault
818a75b809
Update dependency com.github.luben:zstd-jni to v1.4.8-2 2021-01-28 15:48:01 +01:00
dordsor21
287aa9dd8b
Remove bad default copy method in AbstractMask 2021-01-28 14:23:00 +00:00
dordsor21
485781f711
Merge branch 'main' of github.com:IntellectualSites/FastAsyncWorldEdit 2021-01-28 13:13:10 +00:00
dordsor21
781f39f71a
Properly define /ore arguments
Fix #885
2021-01-28 12:54:55 +00:00
N0tMyFaultOG
9cfcaa7605
Improve texture util if version is missing
This could defo be done cleaner, but it works for now.
2021-01-21 20:20:09 +01:00
N0tMyFaultOG
487d817542
Merge branch 'main' into renovate/com.google.code.gson-gson-2.x 2021-01-21 16:59:18 +01:00
Renovate Bot
e9da3daf9e
Update dependency it.unimi.dsi:fastutil to v8.4.4 2021-01-21 12:53:43 +00:00
Renovate Bot
692a844759
Update dependency com.google.code.gson:gson to v2.8.6 2021-01-21 12:53:35 +00:00
N0tMyFaultOG
c35ebd7b53
Only scan used repositories 2021-01-21 13:07:17 +01:00
N0tMyFaultOG
1c4339ce1c
Replace dead links 2021-01-20 13:56:19 +01:00
MattBDev
06dc92b7ce Merge branch 'main' of https://github.com/IntellectualSites/FastAsyncWorldEdit
 Conflicts:
	worldedit-bukkit/build.gradle.kts
2021-01-18 15:59:51 -05:00
MattBDev
2ce493ae68 Miscellaneous improvements to build scripts. 2021-01-18 15:58:50 -05:00
dordsor21
c218743fa8
Fix some coordinate errors
- Fixes WorldGuard weirdness
 - Fixes #860
2021-01-18 15:37:14 +00:00
dordsor21
798b4cdd4e
Fix #806 2021-01-15 20:16:46 +00:00
dordsor21
b450a0af80
Fix confirm for some commands that give AutoValue_CommandParametersImpl from the getgo 2021-01-14 20:08:43 +00:00
dordsor21
b18c646bce
AbstractExtentMasks should have the correct extent.
- Fixes #843
2021-01-14 16:54:38 +00:00
dordsor21
fa69c79160
lock when editing the chunks cache in SingletThreadQueueExtent
- Long2ObjectLinkedOpenHashMap is not thread-safe and should not be used from multiple threads at once
 - Fixes #851
2021-01-14 15:42:38 +00:00
dordsor21
3034419918
Send before history is safe 2021-01-14 14:48:13 +00:00
dordsor21
3136fb460b
Revert "actually delegate in AbstractDelegateExtent"
This reverts commit 761d05ac19.
2021-01-14 14:39:50 +00:00
dordsor21
761d05ac19
actually delegate in AbstractDelegateExtent
fixes #843
2021-01-14 14:38:37 +00:00
dordsor21
af34bd4e57
the material seems to hold state data for some reason.
- This requires a more complicated fix. Reverting this change for now
2021-01-14 13:42:37 +00:00
dordsor21
5e1289494e
Delegate to blocktype for obtaining a BlockState's material 2021-01-14 12:45:11 +00:00
dordsor21
ac73478827
Fix bad/needless code
- Fixes #852
2021-01-14 12:39:57 +00:00
dordsor21
fd1ed63703
Don't confirm twice every time
- I channelled my inner Jesse on this one.
2021-01-13 23:50:29 +00:00
dordsor21
05d7558873
Don't print stack trace of FaweExceptions from submitted chunks
Addresses #353
2021-01-13 20:30:22 +00:00
dordsor21
be9866ddb3
Fix a lot of FAWE-freezing properly
- Add a "loadPrivately" method to be used when GetChunks are called to avoid synchronocity issues with super classes being used on different threads
 - Synchronise the call method so we're not attempting to call whilst also loading/updating
2021-01-13 19:02:51 +00:00
dordsor21
e94e3b7b05
Only forcefully submit a chunk if we hold the monitor.
- Properly ensures we don't try to submit chunks that already have a monitor (prevent the FAWE-freezing)
 - We can't detect if "no" threads hold the chunk's monitor, but equally that would also be kinda very bad practice.
2021-01-13 18:18:25 +00:00
dordsor21
eaa9872294
Revert this for now as it had unintended consquences 2021-01-13 17:36:50 +00:00
dordsor21
97209d5680
better locking of lighting and use correct method for relight without removing first
Fixes #847
2021-01-13 17:24:14 +00:00
dordsor21
b066ca8349
only relight blocks that have light 2021-01-13 17:10:08 +00:00
dordsor21
b1e8c6c3ba
Synchronizing on accessing a lock is pointless. 2021-01-13 17:09:44 +00:00
dordsor21
b4d7562b87
Looks like automagical relighting (#838)
Fixes #686
2021-01-11 19:29:16 +00:00
dordsor21
74a2f02003
put MCEdit before sponge and query by file extension.
Massively reduces loading time a few addon plugins that are literally only trying to get the format of a schematic
2021-01-11 16:02:50 +00:00
dordsor21
ddb41a9669
With "queueing" enabled, FAWE may start attempting to place chunks before the operation is finished.
This is unnacceptable for recursive operations, thus the queue should be disable in these cases
Fixes #842
2021-01-11 15:06:55 +00:00
dordsor21
fa8660c7a9
More verbosely check for "scaled" in AffineTransform and override all required methods in BlockTransformExtent
- fixes #462
2021-01-11 14:21:56 +00:00
dordsor21
5903178c53
Fix rotate/flip applying in the wrong order
- pretty cheat fix, but it reverts to legacy FAWE behaviour
2021-01-11 13:18:24 +00:00
dordsor21
ae6a1f1be4
Correct rounding bevhaviour for Vector3 -> BlockVector3
- fixes #512
2021-01-10 20:49:38 +00:00
dordsor21
0b727d9760
Fix for OPs when "not in a region" 2021-01-10 18:51:07 +00:00
dordsor21
831c6f6854
fix NPE with null sourcemask on move 2021-01-10 17:36:41 +00:00
dordsor21
846443291f
allowed regions can be null 2021-01-10 17:14:40 +00:00
dordsor21
278e9d5991
Set source masks that include the editsession's allowed regions to ForwardExtentCopies
Fixes #710
2021-01-10 14:59:21 +00:00
dordsor21
edc7e9028b
disableQueue stops buffering, switch to enableQueue to buffer when "//move"ing
fixes #738
2021-01-10 13:22:47 +00:00
dordsor21
aab9958932
Fixes #221
If WE wants to add it as well, it's up to them. I asked but wiz was hostile about it.
2021-01-09 21:52:50 +00:00
dordsor21
6bc3dd2293
Fix wna when used internally 2021-01-09 21:27:55 +00:00
dordsor21
6f0180447f
Don't ParallelQueueExtent if the editsession is created on the main thread. 2021-01-09 17:48:57 +00:00
dordsor21
31542ed4fa
Add 3D biomes to clipboards properly
- Also fix disk clipboard's size check, allowing for larger clipboards but with disabled biomes
2021-01-09 16:40:41 +00:00
dordsor21
3accbb84dd
Don't talk about CP 2021-01-08 14:38:41 +00:00
dordsor21
febcf5f76f
display potentially unsafe extent message in console if no Actor 2021-01-08 14:28:09 +00:00
dordsor21
6b3fe20c61
revert to upstream slf4j so it's present in IDE 2021-01-08 14:24:58 +00:00
dordsor21
9d2c631035
**BaseBlocks are immutable 2021-01-06 21:13:32 +00:00
dordsor21
8f74186e14
*BaseBlocks are immutable 2021-01-06 18:15:59 +00:00
dordsor21
7afddcc411
Fix more NBT mutability issues 2021-01-06 18:00:40 +00:00
Aurora
1b870c5d78
Upstream/add missing y variable to generate biome (#824)
* Add the missing y variable to generate biome

* Remove unused imports

Co-authored-by: Octavia Togami <octavia.togami@gmail.com>
Co-authored-by: NotMyFault <mc.cache@web.de>
2021-01-06 16:57:59 +00:00
dordsor21
e40e86df5f
Add some more __internal__ <-> air logi
Fixes #831
2021-01-06 16:40:28 +00:00
dordsor21
336b90be15
Also fix CPUOptimizedClipboard 2021-01-06 13:39:25 +00:00
dordsor21
280ade9994
fix NBT in memory optimized clipboard 2021-01-06 13:29:52 +00:00
dordsor21
91de441403
No need to check WorldEdit schematics for bad entities 2021-01-05 17:21:35 +00:00
dordsor21
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
dordsor21
89cc2f9d9f
Large memory use reduction when PostProcessing history 2021-01-05 15:03:47 +00:00
dordsor21
7c174ee6b3
Return to static "sections" in CharBlocks.
- Synchronise (lock) outside the static object
 - Reduces object creation
2021-01-05 13:51:26 +00:00
Hannes Greule
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
dordsor21
bfd04e4155
Revert "~1/3 faster history writing with small caching"
This reverts commit 836b7a9750.
2021-01-05 00:50:26 +00:00
dordsor21
836b7a9750
~1/3 faster history writing with small caching 2021-01-04 21:25:29 +00:00
dordsor21
916c080310
5000th commit: Fix //download 2021-01-04 19:10:10 +00:00
Alexander Söderberg
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
dordsor21
39b0da2b99
we do want to synchronise across the chunk when loading sections 2021-01-01 17:19:14 +00:00
dordsor21
42346b429b
Don't synchronise across the entire edit for a single ChunkSection load (speed boost) 2021-01-01 16:48:17 +00:00
dordsor21
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
dordsor21
82f640d132
fix loading Fawe.properties 2020-12-31 17:45:07 +00:00
dordsor21
df48b7e81d
stop bottling clipboard sizes for no reason 2020-12-31 15:01:54 +00:00
dordsor21
b60d9ef6d5
Fix #787 2020-12-23 17:26:26 +00:00
N0tMyFaultOG
7236f1d6fa
Update zStandard jni 2020-12-22 11:57:12 +01:00
Renovate Bot
bbc0ea0f35
Update dependency com.github.luben:zstd-jni to v1.4.8-1 2020-12-21 20:06:43 +00:00