Commit Graph

363 Commits

Author SHA1 Message Date
Jesse Boyd
3306bd2cdc Performance improvements + Fix packet sending
Async flush the changeset (sync flush for undo when needed)
- Not any faster, but edits will feel significantly faster
Fix incorrect bit mask for fixlighting packet sending
2016-09-26 01:53:13 +10:00
Jesse Boyd
7c96547c68 Separate schem load + url perms 2016-09-25 22:22:40 +10:00
Jesse Boyd
d5e2527150 Fix stack (for real this time) 2016-09-25 22:04:27 +10:00
Jesse Boyd
861b10403d Fix NPE in NMSRelighter 2016-09-25 05:43:42 +10:00
Jesse Boyd
479c6c5172 Adjacent mask range parameter 2016-09-25 05:11:34 +10:00
Jesse Boyd
c676d89aa6 * 2016-09-25 05:02:03 +10:00
Jesse Boyd
fca33e5e87 Fix radius mask 2016-09-25 05:00:47 +10:00
Jesse Boyd
f2e576a14f Fix adjacent mask 2016-09-25 04:50:11 +10:00
Jesse Boyd
cbade2cec0 Superpickaxe + Masks
Add radius mask
Add adjacent mask
Fix superpickaxe error
Fix BFS
2016-09-25 03:37:29 +10:00
Jesse Boyd
d5b7605f5e Allow third parties to register custom masks 2016-09-25 02:31:18 +10:00
Jesse Boyd
4430f14677 Possible fix for packet sending 2016-09-25 00:24:51 +10:00
Jesse Boyd
8d5fc88844 Fix stack being slow 2016-09-25 00:22:45 +10:00
Jesse Boyd
4f6abeaaff Add getClipboard() method to Schematic class 2016-09-24 23:25:15 +10:00
Jesse Boyd
64c00e4c3b Fix flushing on main thread 2016-09-24 17:55:15 +10:00
Jesse Boyd
f9ee91f192 Remove debug message 2016-09-24 15:19:47 +10:00
Jesse Boyd
8461f406cf Fix region caching 2016-09-24 14:57:49 +10:00
Jesse Boyd
d61c21f60e Fix error from flushing on different thread 2016-09-24 14:41:33 +10:00
Jesse Boyd
889efdcc45 Fix lastMask meta (typo) 2016-09-24 13:02:27 +10:00
Jesse Boyd
b202adb2ce Fix progress tracking 2016-09-24 12:52:34 +10:00
Jesse Boyd
8a4c399b53 Fix angle mask 2016-09-24 02:55:00 +10:00
Jesse Boyd
2cb1485553 Various
Fixes #305 //sel extend bug
Translate a few messages
Add option `store-redo: true`, disabling will result in smaller history
but cannot use redo
Add option `small-edits: false` will reduce history by assuming edits <
4096x256x4096
Change FaweStreamChangeSet to use new settings, but be backwards
compatible (uses mode byte)
Add auto generated semantic version (may not be accurate)
Add recursive brush
Optimize undo/redo using mutable change objects
Tweak several classes to implement HasFaweQueue
Fix wrong cancel message for entity/biome changes
Optimized offset mask
Fixed masks not being reset after edit
Added interface ResettableMask used to reset masks after being used for
an EditSession
Added MaskTraverser for traversing and resetting inherited masks after
use
Added angle mask \#,#
Added id,data,combined mask #id #data #iddata (Must match starting block
id/data)
Added x,y,z axis mask #xaxis #yaxis #zaxis
Add mode 4 FAWE format (short location prefix + no combined from bytes)
Fix `/frb` command not respecting regions
Tweak permission for `/frb` -> worldedit.history.rollback
Translated ToolUtil commands
2016-09-23 17:11:41 +10:00
Jesse Boyd
b2ef1cbc50 Fixes #302 2016-09-21 15:01:37 +10:00
Jesse Boyd
07f4f61cc2 Refactor + Fixes #300 2016-09-20 18:46:49 +10:00
Jesse Boyd
87e03f835c Fix region contains 2016-09-18 23:55:10 +10:00
Jesse Boyd
2d67aa5b9d This should work
queue commands if over limit (default = 1)
fix caclulating history size (in memory)
fix relighting in parallel
2016-09-18 23:48:16 +10:00
Jesse Boyd
35b37ac8e9 Allow multiple actions at a time
Closes #287
2016-09-16 17:47:53 +10:00
Jesse Boyd
58a1fb183e Minor tweaks| 2016-09-16 01:30:45 +10:00
Jesse Boyd
f55a58a3f3 Various
Reduce max memory allocation size
- Uses multiple byte arrays instead of one large one for streams
- Faster read/write as less dependent on arraycopy
Remove world compression (it was buggy / there was no interest)\
EditSession can now be used as a world
Fix pos1/pos2 being allowed outside the world
Fixed liquid mask not being thread safe
Fixed plot upload
Reduce packet sending
- Increase delay to being able to see blocks, but more efficient
2016-09-15 19:49:29 +10:00
Jesse Boyd
911e7e7751 Fix downloaded schems + mcedit 2016-09-14 10:12:09 +10:00
Jesse Boyd
6dfea0364a * 2016-09-13 17:37:28 +10:00
Jesse Boyd
36fdbe55fe Various fixe + Restructuring + Possible breakage 2016-09-13 15:43:23 +10:00
Jesse Boyd
c86f556a03 Fix jumpto 2016-09-10 21:24:14 +10:00
Jesse Boyd
ab742e54a0 This is probably the issue 2016-09-09 14:05:52 +10:00
Jesse Boyd
71071998c6 Various
nukkit fixes
add new brushes
some other minor stuff
2016-09-09 03:41:03 +10:00
Jesse Boyd
733f5eabc4 Fix lrbuild 2016-09-08 16:18:45 +10:00
Jesse Boyd
4f21126a76 Possible fix for out of bounds 2016-09-08 13:26:10 +10:00
Jesse Boyd
afddbb9af9 Change no region message 2016-09-06 02:31:27 +10:00
Jesse Boyd
681eac9f33 More MCPE fixes 2016-09-05 23:53:50 +10:00
Jesse Boyd
c9eabe04ec Simplify some commands for MCPE 2016-09-05 21:16:59 +10:00
Jesse Boyd
56384ebba1 Fix history height for MCPE 2016-09-05 16:32:42 +10:00
Jesse Boyd
e610b2fabb FIxes for MCPE
fix fixlighting
fix fixlighting
fix fawe commands not being registered
fix empty configs
fix tile placement
2016-09-05 16:01:39 +10:00
Jesse Boyd
9e297dc34a MCPE port is now async 2016-09-05 12:35:05 +10:00
Jesse Boyd
9f93f56c05 Forgot to flush changeset for VS 2016-09-04 18:14:04 +10:00
Jesse Boyd
dba271ba78 *Forgot these 2016-09-03 16:57:32 +10:00
Jesse Boyd
3d924f22b5 Different message when all queued changes fail 2016-09-03 16:44:34 +10:00
Jesse Boyd
101b01cae9 Permission typo 2016-09-03 16:39:24 +10:00
Jesse Boyd
03b756b4d9 AsyncWorld.java wait for creation to finish 2016-09-03 13:30:38 +10:00
Jesse Boyd
4aeb29ebd3 I suppose this makes it simpler. 2016-09-02 14:33:01 +10:00
Jesse Boyd
b18e53e79f Fix schematic downloading 2016-09-02 13:23:58 +10:00
Jesse Boyd
523f62787b Fixes #269 2016-08-30 18:05:28 +10:00
Jesse Boyd
421b992b67 Accidentally compressed twice 2016-08-29 17:58:18 +10:00
Jesse Boyd
36a1e9f744 Fixes #265 2016-08-29 14:29:36 +10:00
Jesse Boyd
f2d54e6e97 move this to a directory that doesn't get deleted 2016-08-28 23:06:15 +10:00
Jesse Boyd
57fed361f0 My mistake 2016-08-28 21:08:21 +10:00
Jesse Boyd
c0228054ef this might work for mvn 2016-08-28 17:57:47 +10:00
Jesse Boyd
b51d41c0ac NBT streams 2016-08-28 16:44:54 +10:00
Jesse Boyd
de9138b85e Fix /i 2016-08-28 13:33:27 +10:00
Jesse Boyd
062c80e7b3 Send fail message on semi-successful edit. 2016-08-28 02:05:54 +10:00
Jesse Boyd
c5fc8c6ef8 *Forgot vectors weren't mutable 2016-08-28 01:40:23 +10:00
Jesse Boyd
ce140a95c7 Fix rollback
inspect + y-value byte overflow
2016-08-28 01:06:09 +10:00
Jesse Boyd
5baa99ec80 Fix compile issues 2016-08-27 13:47:09 +10:00
Jesse Boyd
ee272053b2 Temp fix for java 7 2016-08-25 18:01:27 +10:00
Jesse Boyd
05125ac664 Chunk deletion through API 2016-08-25 17:21:12 +10:00
Jesse Boyd
b261a5c8b8 Minor tweaks
Fix tile add/remove for anvil commands
Add MCAWorld
2016-08-25 16:36:58 +10:00
Jesse Boyd
b34c534bb0 Add ReplaceAllPattern anvil command 2016-08-25 14:31:05 +10:00
Jesse Boyd
5ed89f9bb6 Forgot to parallelize 2016-08-25 13:03:15 +10:00
Jesse Boyd
0f480b87bc Add replaceall command
/replaceall <world> [from] <to>
2016-08-25 12:54:12 +10:00
Jesse Boyd
151cbf5679 Various
Added first anvil command (countall)
Added parallelized filter for MCAQueue
Start on some optimizations for block queuing (reduce object creation +
casting)
Fix shortcut for set and fastmode
2016-08-25 00:34:07 +10:00
Jesse Boyd
dd181d9378 Various
Reduce object creation (vector) on each block change
Fix getBlock in non allowed region
Fix command block nbt
Start work on anvil commands
2016-08-24 14:56:18 +10:00
Jesse Boyd
2d8020e415 Various
Use ForkJoinPool instead of new threads
Fix shortcut for set and fastmode
Fix relight and semi-transparent blocks
Add thread list command/debugpaste to `/fawe` command syntax
2016-08-23 21:41:19 +10:00
Jesse Boyd
50e11ee1f8 * 2016-08-23 16:27:59 +10:00
Jesse Boyd
3e0852d589 Lighting / MCA changes / Queue
Optimize queue dispatch parallelization
Fix lighting issues
Add MCAFile/Chunk listing to API
2016-08-23 16:25:31 +10:00
Jesse Boyd
eee32ca27a Use FaweException for handled exception
As it's faster not to calculate the stacktrace
2016-08-22 23:30:27 +10:00
Jesse Boyd
46887623bc Allow EditSession construction with no allowed regions
Not sure why WorldEdit creates an EditSession for commands which clearly
do not need one. This change now means players without an allowed region
can use informational and navigation commands without a region.

The error will be instead thrown when the EditSession is first used.
2016-08-22 23:10:51 +10:00
Jesse Boyd
814ac60823 Fixes #253 + other stuff
Fixes clipboard on disk
Fixed hybrid MCAQueue hybrid get (tile/block/refresh)
Fixed no NMS queue messages
2016-08-22 22:18:59 +10:00
Jesse Boyd
5f87599292 Various
Optimize disk IO
Add `/fawe debugpaste`
Fix some lighting issues
Fix database insertion
Fix some rollback issues
Add database import /frb #import 0 0
Fix some typos
2016-08-22 14:43:59 +10:00
Jesse Boyd
9db51fbbc4 Add world compression option 2016-08-21 20:22:46 +10:00
Jesse Boyd
5a3182ea55 Fixes #250 2016-08-21 17:22:32 +10:00
Jesse Boyd
91b2347b96 Allow for plugins/mods to register a clipboard format
*Use reflection to add new enum instances
2016-08-21 15:47:44 +10:00
Jesse Boyd
b32b633248 Fixes for anvil queue 2016-08-21 01:07:20 +10:00
Jesse Boyd
3618007052 Add new option:
Option : Default

EXPERIMENTAL_UNSTABLE_DO_NOT_ENABLE_ULTRA_SUPER_FAST_WORLD_CORRUPTING_AWESOME_DIRECT_ANVIL_QUEUE_MODE:
false
2016-08-20 22:01:43 +10:00
Jesse Boyd
4ddffb197b Various
More work on anvil API
Fix IO exception with history on disk
Optimize chunk index caching
2016-08-20 13:33:56 +10:00
Jesse Boyd
4267bf1c27 Fix biome masking 2016-08-17 15:01:32 +10:00
Jesse Boyd
a2589d4493 More work on optimized MCA reader
+ Fix for 1.7.10 gson import error
2016-08-17 12:10:03 +10:00
Jesse Boyd
aeb13960a4 *Will work on this later 2016-08-16 20:55:26 +10:00
Jesse Boyd
08f35d420a Fix strange schem load issue + start work on MCRExtent 2016-08-16 18:49:56 +10:00
Jesse Boyd
424bcc5d05 Fix 1.8 tile sending 2016-08-16 16:41:29 +10:00
Jesse Boyd
fb33ecf71e *Fix for other clipboard implementations 2016-08-15 11:39:44 +10:00
Jesse Boyd
fb9bdeca7d Fix writing tiles to schematics 2016-08-15 10:09:05 +10:00
Jesse Boyd
8ab28115a4 Fixes #236 2016-08-15 09:20:56 +10:00
Jesse Boyd
eb62377c0f Optimizations for BukkitQueue_All
This queue is used to place blocks when no (fast) NMS one is found.
- Exploits a bug in vanilla relight algorithm for faster placement
2016-08-14 20:55:17 +10:00
Jesse Boyd
80045cfa6c Properly wait for queue to flush
- Ensuring the queue is flushed may wait slightly longer than necessary
2016-08-14 14:26:46 +10:00
Jesse Boyd
3a3fcca8b0 Various
Remove numerical versioning
Fix queue relighting concurrency
Fixed fixlighting async error
Fixes for 1.7.10 + thermos
Fixed non disk schematic loading
2016-08-14 10:26:51 +10:00
Jesse Boyd
4ccfab5908 Use original prefix for system messages 2016-08-12 15:14:47 +10:00
Jesse Boyd
9519fde6bd Fixes #209 2016-08-12 11:28:51 +10:00
Jesse Boyd
600219eb08 Fixes #214 2016-08-12 10:57:09 +10:00
Jesse Boyd
d0b5dab2a0 Various
Rename Favs jar and print error on failed load
LocalSession history on disk size limit per player (in MB)
Possible fix for ForgeEssentials incompatibility
2016-08-11 21:34:56 +10:00
Jesse Boyd
35883cfb16 Fixes #228 2016-08-10 17:32:05 +10:00
Jesse Boyd
5c0ae62b17 Various
Keep chunks loaded for at least 10s
Optimizations for 1.10
Fix cast for 1.8
Memory/Disk Optimizations for relighting large areas in unloaded chunks
Fix for clipboard entities
2016-08-10 17:18:55 +10:00
Jesse Boyd
1ed87eabbc Various
Per world session history index when using disk
Configurable clipboard/history save locations
Fixed and optimized packet sending
History caching optimizations (instant now)
2016-08-09 14:32:51 +10:00
Jesse Boyd
7cf334d881 Fixes #224 2016-08-07 17:19:08 +10:00
Jesse Boyd
514b28caa4 Rollback changes 2016-08-07 07:19:02 +10:00
Jesse Boyd
c98d07039d Buffered random access clipboard compression + schematic -> clipboard streaming
Also adds CPUOptimizedClipboard which has no extra compression
Note: Performance degrades if access is actually random (the buffering
optimizes sequential r/w)
Removing stream in favor of clipboard compression / disk
- In order to stream a schematic, it would need to be fully read 3 times
as  tags are not ordered (dimensions -> block ids -> data + tiles +
entities)
- Much faster just using disk / memory as an intermediate step
2016-08-06 16:42:40 +10:00
Jesse Boyd
c11087334f Fix inspect alias 2016-08-05 17:37:17 +10:00
Jesse Boyd
8e5e2ccafa Don't wrap null player 2016-08-05 10:39:20 +10:00
Jesse Boyd
bde226e7cd Fix NPE 2016-08-05 10:31:16 +10:00
Jesse Boyd
5eff53f1f8 Remove duplicate method 2016-08-04 20:01:47 +10:00
Jesse Boyd
5725e3bdd3 * Wrong limit used 2016-08-04 19:48:11 +10:00
Jesse Boyd
895de11a09 Fix entity mask + More work on rollback 2016-08-04 19:46:38 +10:00
Jesse Boyd
e5ebccd053 All commands translatable + Start on inspect brush
+ Disable AWE if present as otherwise both don't load
2016-08-03 19:23:31 +10:00
Jesse Boyd
1ca5798e9d Begin rollback optimizations + other
Store rollback summary in database (option)
API improvements
Load before AWE
2016-08-03 14:43:27 +10:00
Jesse Boyd
39acae08aa Minor API changes 2016-08-02 17:00:01 +10:00
Jesse Boyd
7c06899111 Fix fixliquid. 2016-08-01 16:41:21 +10:00
Jesse Boyd
ffc23f4020 Minor PS fix + undo fastmode error 2016-07-31 09:58:28 +10:00
Jesse Boyd
1835748d85 1 seems to have issues right now 2016-07-27 08:29:59 +10:00
Jesse Boyd
3d15022167 *remove debug msg 2016-07-27 08:04:56 +10:00
Jesse Boyd
ff60177dcc Working async relighting 2016-07-27 08:03:51 +10:00
Jesse Boyd
23b67b3f56 [BREAKING] Is it breaking if it's already broken? 2016-07-26 10:08:32 +10:00
Jesse Boyd
06275e8d3d [Bleeding] Lighting changes + broken 2016-07-26 10:04:19 +10:00
Jesse Boyd
4bde477206 Various
Fix forge multiworld
Add NMS setLight (sky/block)
Fix clipboard on disk start index
Fix cmd block data
2016-07-25 08:25:07 +10:00
Jesse Boyd
d562b6cf66 Update forge classes 2016-07-23 08:57:15 +10:00
Jesse Boyd
0849948f77 Minor change to relight chunk load 2016-07-16 04:38:45 +10:00
Jesse Boyd
c52c1bee27 Relight improvements + ports
6 lighting modes (0-5), see config
forge194
forge110
bukkit1710
(untested)
2016-07-15 09:53:30 +10:00
Jesse Boyd
ef06ca3b19 Proper NBT streaming + random access optimizations 2016-07-13 19:00:15 +10:00
Jesse Boyd
342c106e8c Increase default history size 2016-07-12 18:08:26 +10:00
Jesse Boyd
87f79f9fa6 Various fixes
Fix undo
Fix blockshub hook
API improvements
Added worldedit from console
Fixed async world loading for paperspigot
Some minor optimizations
Added some extra translations
2016-07-12 17:54:00 +10:00
Jesse Boyd
9ed6880d1d Various 2016-07-10 23:37:18 +10:00
Jesse Boyd
f202a563fc Tweak no region message 2016-06-30 22:40:19 +10:00
Jesse Boyd
227ac22d15 Fix data for id=9 2016-06-30 22:11:58 +10:00
Jesse Boyd
51a8b41399 Translate navigation 2016-06-29 20:44:04 +10:00
Jesse Boyd
af6c80901a Update some classes 2016-06-29 15:25:27 +10:00
Jesse Boyd
b56a6d4b7c Fixes #168 2016-06-29 03:15:06 +10:00
Jesse Boyd
1867a41d8a Fixes #166 2016-06-29 03:03:27 +10:00
Jesse Boyd
ff59a61046 *Fix history limit 2016-06-29 01:56:56 +10:00
Jesse Boyd
a521cb9ac3 Prevent chunk unload during async relight + delay tasks 2016-06-28 22:09:47 +10:00
Jesse Boyd
478cbbf393 Per player history size (in MB) 2016-06-28 20:22:31 +10:00
Jesse Boyd
e8ae5ca119 Fixes #166 2016-06-27 23:56:11 +10:00
Jesse Boyd
a21390c9cf Minor fix 2016-06-27 18:40:19 +10:00
Jesse Boyd
3f6abb1c6f Close after write 2016-06-24 16:22:38 +10:00
Jesse Boyd
2c0a47c60f Fix chunk listener items and tweak p2 mask. 2016-06-24 15:38:30 +10:00
Jesse Boyd
cf397524ff Fix other forge compile issues 2016-06-22 16:02:50 +10:00
Jesse Boyd
27d5e9e1aa Add cmd brush 2016-06-21 23:47:40 +10:00
Jesse Boyd
2e0a37c1de * 2016-06-21 22:28:22 +10:00
Jesse Boyd
615c51d948 Add voxel shortperm 2016-06-21 21:38:58 +10:00
Jesse Boyd
e4b1cc376b Document some stuff 2016-06-21 20:35:09 +10:00
Jesse Boyd
52024b4c2e Compression tweak 2016-06-21 17:03:43 +10:00
Jesse Boyd
8555276a78 Various
Fixed slow bukkit api placer (if no NMS placer exists) (it will try to
stay above 18.5 TPS)
Added more messages to translations
Added copy brush
Added resizable clipboard builder (API)
Added image download
2016-06-21 15:53:52 +10:00
Jesse Boyd
990d2fcbb0 Fix logging 2016-06-20 15:36:10 +10:00
Jesse Boyd
598928053d Fix rollback 2016-06-20 14:57:39 +10:00
Jesse Boyd
0d7c0474cc Various fixes 2016-06-20 14:06:14 +10:00