Commit Graph

481 Commits

Author SHA1 Message Date
Jesse Boyd
85ac3dff41
preloading chunks is significantly faster
The RegionVisitor loads (default: 32) expected chunks just in time for
the operation.

TODO rewrite operations to use the new RegionVisitor
2017-02-08 14:43:34 +11:00
Jesse Boyd
d5d5b47cdb
tweak the syntax 2017-02-08 12:12:55 +11:00
Jesse Boyd
a3b8f4c917
Add heightmap from imgur 2017-02-08 12:01:44 +11:00
Jesse Boyd
295baa4217
Fixes #418 2017-02-07 19:23:26 +11:00
Jesse Boyd
8fd908232e
Add memory/CPU optimized BlockVectorSet
Which internally it uses a map of LocalBlockVectorSet
2017-02-06 13:13:18 +11:00
Jesse Boyd
0427771b7e
Re-add the forge/sponge modules 2017-02-06 13:09:44 +11:00
Jesse Boyd
1fdc0a59ec
*Use player limit rather than int max 2017-02-02 10:33:07 +11:00
Jesse Boyd
6439f28c0c
Add restrictions to region copy 2017-02-02 10:29:37 +11:00
Jesse Boyd
479d92b573
synchronize NMSRelighter map as switched to fastutil 2017-01-30 20:42:14 +11:00
Jesse Boyd
6408320843
synchronize on block map access 2017-01-30 06:26:47 +11:00
Jesse Boyd
116a1869b1
Fixes #400 2017-01-29 13:31:08 +11:00
Jesse Boyd
ebc7ba43e6
Various
Fix biome change not sending packet
Add optimized biome get and set (AsyncWorld, EditSession etc.)
Add undo for biome changes
Fix tile entities for slow (non NMS) bukkit queue
Translate some stuff
Fix some concurrency issues with autoqueue
cuboid region geChunks() now has fixed memory cost (applies to commands
e.g. //listchunks)
Fix some undo issues
2017-01-29 09:25:53 +11:00
Jesse Boyd
7f1390803f
Override BlockWorldVector 2017-01-16 01:44:34 +11:00
Jesse Boyd
8ac81b51e5
Check if web url is configured before download 2017-01-15 22:38:22 +11:00
Jesse Boyd
a7b29ab82f
Tweak some stuff 2017-01-15 22:15:22 +11:00
Jesse Boyd
55f95e5022
ignore EOF 2017-01-15 20:26:51 +11:00
Jesse Boyd
812c12fce4
Undo/Settings
Fix some disk and undo issues
FaweQueue uses Settings instance
2017-01-15 18:45:12 +11:00
Jesse Boyd
9d2e9212fa
Add option to send packets before relight 2017-01-15 15:50:12 +11:00
Jesse Boyd
5e2d3b2523
Fixes distr region bypass 2017-01-13 16:53:55 +11:00
Jesse Boyd
ef145dbbc4
Fixes #394 2017-01-13 16:45:20 +11:00
Jesse Boyd
90e381a132
Minor vector optimizations
For the MutableBlockVector, use int instead of double
- Should reduce how quickly memory is used/collected
2017-01-13 06:05:32 +11:00
Jesse Boyd
4dc6cadc5d
Fixes #387 2017-01-11 18:08:12 +11:00
Jesse Boyd
de7c0bb013
* 2017-01-11 07:54:07 +11:00
Jesse Boyd
bc677f823e
Various
Fix for Vector/BlockVector
Use optimized LocalBlockVectorSet for various operations
- Ideally I'd like the operations to use O(1) memory, but for now it'll
use substantially reduced O(n)
Some message tweaks
Some minor entity placement optimizations
Refactor set optimization to be in the EditSession class
Fix and minor optimizations for for countBlocks()
Minor optimizations for affine transforms (//rotate etc.)
Optimizations for fuzzy block mask
2017-01-11 07:47:59 +11:00
Jesse Boyd
674d40f19c
Add optimized Set<Vector>
The LocalBlockVectorSet implements Set<Vector>
- Faster than a HashSet and uses 100-800x less memory
- Limited to vectors all within a 2048x256x2048 area
2017-01-11 07:29:34 +11:00
Jesse Boyd
21c77a2fc8
Fixes #391 2017-01-09 14:39:55 +11:00
Jesse Boyd
f6db2cf7d3
I should probably have a perm for that 2017-01-09 04:47:55 +11:00
Jesse Boyd
ea637dbbfd
Allow specifying nbt in block pattern 2017-01-09 04:34:31 +11:00
Jesse Boyd
22c89ce33a
*This should probably also have nbt 2017-01-09 03:41:00 +11:00
Jesse Boyd
ffd3275904
Fixes #320 2017-01-09 03:34:43 +11:00
Jesse Boyd
c0cbe8b4cd
Clean up the brush class 2017-01-08 23:53:46 +11:00
Jesse Boyd
1f83319c8f
Fix FakePlayer error (API usage) 2017-01-08 23:52:44 +11:00
Jesse Boyd
c2dec27fae
LocalSession transform should be transient 2017-01-08 23:51:59 +11:00
Jesse Boyd
b340ebff0f
Fixes #389 2017-01-08 23:50:16 +11:00
Jesse Boyd
0103706ce7
Better block parsing + Fixes #386 2017-01-08 23:49:29 +11:00
Jesse Boyd
08586dc022
Fix compass passthrough 2017-01-03 07:50:43 +11:00
Jesse Boyd
1c30bc6c58
Fixes #381 2017-01-03 07:42:28 +11:00
Jesse Boyd
95715da039
Toggle worldedit /tips 2017-01-03 07:29:14 +11:00
Jesse Boyd
75b0d5512c
Fixes #377 2017-01-01 23:29:52 +11:00
Jesse Boyd
e46613ce02
Fixes #382 2017-01-01 23:23:18 +11:00
Jesse Boyd
6230188646
Minor rollback command changes 2017-01-01 23:23:02 +11:00
Jesse Boyd
3f70fb6585
Add rollback by id 2016-12-31 18:46:55 +11:00
Jesse Boyd
142fad42cd
Rebuild - no changes 2016-12-31 17:46:31 +11:00
Jesse Boyd
ca8b161e4c
Fix fake player inter world teleport 2016-12-31 17:23:01 +11:00
Jesse Boyd
8229fddb5e
Fix debugpaste 2016-12-31 17:22:32 +11:00
Jesse Boyd
270b7986ac
Fix air count calculation error 2016-12-31 17:22:20 +11:00
Jesse Boyd
96cdf1230e
rebuild - no changes 2016-12-30 17:07:16 +11:00
Jesse Boyd
0c14dfdf9a
rebuild - no changes 2016-12-30 02:58:13 +11:00
Jesse Boyd
8a40320a64
Fix changeset NPE 2016-12-29 19:43:27 +11:00
Jesse Boyd
850bb533cb
Fix packet sending for null chunk sections 2016-12-29 11:53:07 +11:00
Jesse Boyd
362067f90d
Use correct time for progress task 2016-12-29 11:52:20 +11:00
Jesse Boyd
04bdec3e76
Optimize set when not region restricted 2016-12-29 10:20:37 +11:00
Jesse Boyd
0c33e84e6b
Tweak some messages 2016-12-29 10:20:11 +11:00
Jesse Boyd
5ffacaaf12
Fix progres tracking spam 2016-12-29 10:18:48 +11:00
Jesse Boyd
77ea4fa37c
Update web installer urls 2016-12-29 10:18:12 +11:00
Jesse Boyd
d43dbab7c5
DL WorldEdit bukkit if they forget 2016-12-27 23:28:43 +11:00
Jesse Boyd
2d295effee
forge installer 2016-12-27 21:56:37 +11:00
Jesse Boyd
32ae0f1d48
Update sponge jar 2016-12-26 18:42:33 +11:00
Jesse Boyd
4ea09c11de
Optimize distr 2016-12-24 17:38:46 +11:00
Jesse Boyd
1987f7c34a
Add direction for logs/stuff + tweak messages 2016-12-24 07:46:52 +11:00
Jesse Boyd
65c0a0e06d
*forgot to set the perm 2016-12-23 16:28:02 +11:00
Jesse Boyd
50ac6c86a0
Add lazycut 2016-12-23 16:25:42 +11:00
Jesse Boyd
4210ec0479
Print failed permissions for commands 2016-12-23 03:10:15 +11:00
Jesse Boyd
025ffcc8e7
Only create an edit session for specific commands
There's no reason why non operations need to create an edit session
2016-12-23 03:08:02 +11:00
Jesse Boyd
94831c6fa2
Vector2D & BlockVector2D are incompatible
BlockVector2D extends Vector2D, yet implements an incompatible hashcode,
making the class unsafe/incompatible.
2016-12-23 02:38:07 +11:00
Jesse Boyd
4434f3d128
Worldedit shouldn't be checking every permission
For some reason worldedit devs thought it was a good idea to
unnecessarily check every permission in a class when executing a
command.
2016-12-23 02:32:39 +11:00
Jesse Boyd
76e037492b
Add speicifying biome/seed for regen command
//regen
//regen forest
//regen desert 5336
2016-12-23 02:31:00 +11:00
Jesse Boyd
dcc0c15c03
BREAKS OLD UNDO FILES + better compression
Reduce block position entropy by encoding coordinates relative to last
position
2016-12-21 06:22:03 +11:00
Jesse Boyd
0e26ce6e1e
Add message prefix to the worldedit commands 2016-12-21 05:56:41 +11:00
Jesse Boyd
f5f326bf89
Better mask parsing + optimize mask union/intersect 2016-12-21 05:44:01 +11:00
Jesse Boyd
ba62563b72
Tweak some default settings 2016-12-21 05:41:34 +11:00
Jesse Boyd
812816e4e4
* 2016-12-15 18:48:35 +11:00
Jesse Boyd
30700559db
Masking changes
Add light related masks
- #opacity
- #brightness
- #blocklight
- #skylight
- #light
- #nolight
- #haslight
Add mask tab completion
Add source masks
- `/gsmask` and `/smask`
- Masking the source instead of the destination (e.g. with //paste)
- if there is no source, the current block/extent will be used
2016-12-15 18:36:04 +11:00
Jesse Boyd
64d7052d5f
Some tweaks to fuzzy region select 2016-12-13 15:02:05 +11:00
Jesse Boyd
f16ebf4f77
fix fastmode set (after refactor) 2016-12-13 15:02:05 +11:00
Jesse Boyd
abb6588c24
use unmasked player location for scripting 2016-12-13 15:02:05 +11:00
Jesse Boyd
23cb3642f1
translate selection commands 2016-12-13 15:02:05 +11:00
Jesse Boyd
84d7da3274
properly reset editsession limit 2016-12-13 15:02:04 +11:00
Jesse Boyd
4044e8772d
Flush regardless of changeset 2016-12-13 15:02:04 +11:00
Jesse Boyd
52c460a32c
Separate lz4/zstd bindings 2016-12-13 15:02:04 +11:00
Jesse Boyd
77be0a3794
Have cancel clear queued actions 2016-12-13 15:02:04 +11:00
Jesse Boyd
67b918b048
Fix relative path 2016-12-13 15:02:04 +11:00
Jesse Boyd
0a3a1c813d
Should probably limit the size, also...
If you want to select some cavity, just use `//sel fuzzy` and `//pos1`
while standing there
2016-12-13 15:02:03 +11:00
hexosse
0faddbc49b Added getWorldSelection.
This is an alias for getSelection.
It enables CraftScripts to get a world selection as it is not possible to use getSelection which have two default implementations.
2016-12-12 15:00:39 +01:00
Jesse Boyd
e7d97d030f
Add fuzzy region selection (with mask support)
`//sel fuzzy` or `//sel fuzzy=<mask>`
- All connected blocks matching the mask (default is same id/data) will
be added.
- Left click to select the region
- Right click to add to the existing region
2016-12-12 20:48:09 +11:00
Jesse Boyd
f0a36ba1fa
Zstd/disk clipboard/version/various
Better compression with Zstd
Fix disk clipboard + minor optimizations
Fix version output
Some various incomplete stuff
2016-12-12 17:41:32 +11:00
Jesse Boyd
9bea95dd22
Configurable tick limiter interval 2016-12-09 22:49:23 +11:00
Jesse Boyd
1e4397c8d1
ChunkListener fixes 2016-12-09 22:37:28 +11:00
Jesse Boyd
502b620bde
*Fix extended tab completion for l3d, linear, mask patterns 2016-12-09 02:03:46 +11:00
Jesse Boyd
551b25baf6
Various (important) changes
Added command tab completion for patterns
Tick limiter:
- Ignore redstone physics
- Per chunk limiting (rather than global)
- Notify console of any limiting
Changes default settings for low memory usage rather than speed:
- Doesn't effect any existing configs, just new installs
- Uses disk and database for undo/redo/clipboard
- Uses compression level 8 instead of 1
Fixes 1.8 queue failing on no isDirty field
Fixes rare chunk skipping
Fixes queue staging issue
Tweak undo/redo failure messages to provide more info
Added sand/gravel sphere message so that people don't ask me "why it no
work!?"
2016-12-09 01:47:50 +11:00
Jesse Boyd
3c75336c9a
Fix delegate changeset logging 2016-12-07 15:57:40 +11:00
Jesse Boyd
57c908bdae
Fix rotate 2016-12-06 18:02:28 +11:00
Jesse Boyd
043da6668d
Fixes #360 2016-12-06 17:04:03 +11:00
Jesse Boyd
1c948cf0ed
Various
Add #clipboard transform
Add #fullcopy pattern
- similar to transform, it pastes the full clipboard at any changed
block
- e.g. //replace <marker> #fullcopy
Async block get optimizations for bukkit by running tasks multiple times
during a single tick
Tweak the OOM message to be more informative
Tweak the max memory config comment to be more informative
Restructured transforms to use resettable extent + reduce code
duplication
Clipboards can now be streamed to a schematic file without significant
memory overhead
- This means you can now load/paste/copy/save arbitrarily large sizes
with fixed memory usage
Optimizations to the various clipboard implementations
Add optimized extent block translation (no additional object creation
for set block)
Optimized forward extent block copy
- use optimized extent transform/translate
- pre calculate required functions/extents outside iterations
- short circuit certain functions depending on input parameters
Use edit session for patterns rather than world (faster/safer)
2016-12-06 15:58:28 +11:00
Jesse Boyd
57d41ae6f7
Add id/data pattern 2016-12-03 16:37:08 +11:00
Jesse Boyd
84fdf8e246
More info in blocks.json 2016-12-03 13:49:07 +11:00
Jesse Boyd
24d61c2ceb
Fixes #357 2016-12-03 13:41:23 +11:00
Jesse Boyd
6b0c2b9ef9
Fix sendBlocks + lever rotation 2016-12-03 12:57:17 +11:00
Jesse Boyd
aa27d01fc4
Tile entity fixes + send block update 2016-12-02 17:03:57 +11:00
Jesse Boyd
5a914513b9
Updating option 2016-12-02 12:49:40 +11:00