Commit Graph

173 Commits

Author SHA1 Message Date
3bc692ff11 Part 1 of upstream merge and format 2020-07-13 22:50:59 -04:00
9e25c736a0 Add new blocks to BlockTypes 2020-07-03 14:12:43 +01:00
56972ee40b Trim performance (#451)
* Increase performance slightly when trimming.
If the chunk section is all one blocks (common in plotworlds) it'll be a nice little boost.

* Cache whether blocks are ticking or not. Greatly reduces the time required to create a palette

* collapse 5 lines to 2.

* Also apply to 14 and 15 for the numpties

* Cleanup
Actually ignore the exception - remove my debug print.
Remove double semi-colon

* Apparently 1.14/15 matter too still.
2020-05-07 23:00:13 +01:00
0c539b4e84 Fix replace patterns
Fixes #445 #440 #372
2020-05-06 15:50:57 +01:00
e7df3177cc Upstream merge 2020-03-23 20:47:30 -04:00
9f07894f28 Performance improvement based on case study by @me4502 2020-03-19 13:08:25 -04:00
df60e50c96 Revert more changes 2020-01-29 15:32:51 -05:00
8078cf077a consistency changes 2020-01-26 13:01:16 -05:00
88359f0215 More Kotlin 2020-01-21 14:30:13 -05:00
e69ea37665 Merge branch '1.15' of https://github.com/IntellectualSites/FastAsyncWorldEdit-1.13 into 1.15 2020-01-07 00:09:49 +00:00
27ec3cdc66 idk why we need a lazy reference for an integer here
when null would work better
2020-01-05 16:17:17 +11:00
b292416496 Upstream and some refactoring
Note: Maybe this doesn't compile, ij is broken af smh, let's give it a try...
2020-01-04 18:34:30 +01:00
88a95221a8 Make masks more stateless 2020-01-04 10:11:13 +00:00
39faa740a2 Fix some adapter issues
regen 1.13, tile get npe, null block type values
2019-12-21 09:45:59 +00:00
c2cc4f5aeb Fix craftbook 2019-12-20 05:54:03 +00:00
c9c602470f fix indexoutofbounds 2019-12-19 16:48:14 +00:00
053b1a20d6 More 1.15 wip 2019-12-11 14:45:27 +01:00
144ea2ef34 Lazy tags + get / set tiles
Lazy tags means tiles/ents are not translated into the nms NBTBase until it is needed. Should be faster in cases where getFullBlock is called, but nbt is not always needed.
Commands like Copy and Paste, where the input/output are both nms worlds, can entirely bypass WorldEdit translating to and from the WorldEdit JNBT classes.
2019-11-20 03:40:52 +00:00
60759934a3 Fix some merge issues 2019-11-20 00:11:54 +00:00
2c9f192baf Merge remote-tracking branch 'upstream/master' into merge 2019-11-19 21:23:47 +00:00
1b07846746 some adapter refactoring 2019-11-19 04:40:40 +00:00
a23a4e5496 misc changes. 2019-11-11 16:02:28 -05:00
930dfb7f7c Various minor
thread local cleans on close
remove unnecessary loop on set
remove unnecessary get on set
clean CFI cache on generate
2019-11-03 16:59:11 +00:00
32d837414b static blocktype initialization
instead of using hacky reflection
2019-11-02 20:35:51 +01:00
df9e9e510a Limit processing 2019-11-02 12:13:42 +01:00
e1b9b9e3e8 Revert "Like this @mattbdev ?"
This reverts commit bddf92cd9b.
2019-10-31 00:41:36 +01:00
ef47ea74df Revert "Or this?"
This reverts commit 558144696a.
2019-10-31 00:41:15 +01:00
558144696a Or this? 2019-10-30 20:03:38 +01:00
bddf92cd9b Like this @mattbdev ? 2019-10-30 20:01:18 +01:00
2080e9786b commanding-pipeline diff 2019-10-23 05:23:52 +01:00
8b96cdc9a5 *
A tribute to Jesse
2019-09-20 21:52:35 -04:00
c926cddbd6 Item Registry Test is now functional 2019-09-19 14:56:03 -04:00
16e24a2400 Created an Item Registry Test (non-functional) 2019-09-19 11:30:22 -04:00
68eea925e1 update adapter and platform manager 2019-08-29 13:57:03 +01:00
edb626a961 merge 2019-08-26 05:49:00 +01:00
4e49d16505 fix dependencies 2019-08-26 05:45:03 +01:00
1eec4884c8 Attempt at fixing NamespacedRegistry 2019-08-19 14:12:28 -04:00
f472c20bfb Memory optimizations (#505)
* Remove LocatedBlock overhead in LBL map

* Add new space-efficient block map, with thourough testing

* Drop ordering property, add full insertion test

* Add licenses

* Fix mocked platform conflicts

* Disable full block map testing for faster builds

* Re-implement BlockMap with fastutil maps

* Re-write chunk batching to be memory efficient

* Make MultiStageReorder use BlockMap

* Increase LBL load factor, fix long-pack limit detection

* Fix infinite loop in chunk batching

* Save memory in history by cleaning up MSR

* Re-implement LocatedBlockList in BlockMap

* Fix data race with BlockType lazy fields

* Make IDs ALWAYS present, only runtime-consistent. Use for memory efficiency in BlockMap

* Remap inner structure of BlockMap for smaller maps

* Remove containedBlocks fields, not very efficient

* Fix minor de-optimizing bug in stage reorder

* Make long packed y signed

* Add extended Y limit configuration option

* Add licenses

* Store 3 ints for unoptimized BV list

* Add final to BitMath

* Correct int-cast for long-packing
2019-08-12 22:06:40 +10:00
a476ab1ea0 merge 2019-08-07 01:29:49 +10:00
df9d766eb3 Merge pull request #513 from EngineHub/bugfix/reloadable-internal-state-ids
Re-load internal state IDs when WORLD_EDITING cap is re-loaded
2019-08-03 09:59:10 -04:00
f848d3114f Re-load internal state IDs when WORLD_EDITING cap is re-loaded 2019-08-02 15:47:29 -07:00
9d9e3ea065 Remove overrides. 2019-07-28 22:50:42 -04:00
6631b6bdf0 Make BlockStateHolder extend Pattern.
Removes the need for wrapping them in BlockPattern.
2019-07-28 18:20:00 -04:00
46f5b12b36 Convert tabs to whitespace. 2019-07-22 16:42:40 -04:00
6e13b44f84 resolve issues with 2e67425d8131a2b1eb7ff752335bccf371801b8b 2019-07-18 20:12:23 +10:00
1bc35eb59a add missing method to baseblock 2019-07-18 17:00:33 +10:00
be8213d8ee resolve conflicts 2019-07-18 16:56:57 +10:00
dd38cbe750 . 2019-07-18 04:30:02 +10:00
ff94a1e5ed 8108d0a9 2019-07-18 04:24:21 +10:00
905fbf5a0b 8108d0a9 2019-07-18 02:31:13 +10:00