Commit Graph

289 Commits

Author SHA1 Message Date
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