Commit Graph

394 Commits

Author SHA1 Message Date
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
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
eead11f32a
Fixes #265 2021-02-08 13:20:56 +01: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
6bc3dd2293
Fix wna when used internally 2021-01-09 21:27:55 +00:00
dordsor21
6676d77aaa
Stop writing corrupt tile entities to schematics
also make some stuff definitely immutable.
2020-12-13 21:06:36 +00:00
Hannes Greule
428f8e201d
Upstream changes (#717)
* Perform part of the move of //fast to //perf (#1377)

This re-adds a deprecated `//fast` and moves the current logic to
`//perf`. Later `//perf` will have its syntax reworked, when Piston
finally supports sub-commands properly!

* Names via Translation (#1268)

* Deprecate BiomeRegistry, etc.

* Update some libraries, e.g. text

* Move to new translation renderer

* Revert "Deprecate BiomeRegistry, etc."

This reverts commit 59a5d6c92aec52739a8dc68ac3d23898af7593dd.

This was not a good idea for potential mod shenanigans.

* Move BiomeData#getName to BiomeRegistry, use i18n

* Use getRichName instead of getName

* Implement getRichName for NullBiomeRegistry

* Add getRichName for blocks

* Relocate net.kyori.minecraft

* Update adapters for getRichBlockName

* Add getRichName for items

* Update adapters for getRichItemName

* Update adapters JAR for merge

(cherry picked from commit cfd26253b6fb59ff6c65a0157a6780be7db4ea5a)

* Follow-up fixes for 92f877679622a27b16b9e5cd61cfec1a6545be33

* Don't send deprecation warning and improve info message

* Fix click command for perf box

(cherry picked from commit 7ee60060c31df2f8b41212b430a0875312189339)

* update R3 adapter§

Co-authored-by: Octavia Togami <octavia.togami@gmail.com>
Co-authored-by: NotMyFault <mc.cache@web.de>
Co-authored-by: Aurora <21148213+aurorasmiles@users.noreply.github.com>
Co-authored-by: Aurora <aurora@relanet.eu>
2020-11-09 10:38:10 +01:00
IronApollo
e6b083554b Implement biome-specific regen
- initial biome-specific regen implementation
- RegenOptions modified to include biomeType option (null if not specified)
- Matched upstream's regen command
2020-10-13 22:43:11 -04:00
Aurora
3c6280b11e
Re-Implement //regen (#598)
* start reimplementing regen command

* start reimplementing regen command

* Formatting and logic tweaks.

Regen will now throw exceptions but they are not caught yet.
ConversionSessions will now be closed when no longer being used instead of left open.

* fix //regen crashing server

* added //regen support for 1.16.1 and 1.15.2

* cleanup

* Update the issue template

* improve performance of regen by a factor of 40, approx 1.2 millon blocks/second

* Update the issue template

* Update the issue template & add a config (#640)

* Update the issue template

* Add a config.yml to the issue template

* improve performance of regen by a factor of 40, approx 1.2 millon blocks/second

* Fix entity rotation (#642)

* fix entity rotation
fixes #577 
Co-authored-by: wea_ondara <wea_ondara@alpenblock.net>

* Fix toggle permission (#644)

* Fixes #529
* fix superperms perm toggling

Co-authored-by: @weaondara <wea_ondara@alpenblock.net>

* Fix #647

* Squash errors and debug to aid fixing #652 properly

* cleanup imports

* cleanup imports 2

* cleanup imports 3

* cleanup imports 4

* add patch by @SirYwell

* aysnc world gen with features and stuff and some minor issues

* optimizations, full chunkstatus, block populators

* optimizations, cleanup

* optimizations

* fix feature regeneration, fix temp folder deletion

* cleanup

* make chunk gen multithreaded

* fix precomputation of chunk lists for RegionLimitedWorldAccess again

* added regenerator abstraction, fix aioobe while running through chunk stati

* remove override for getChunkAt in freshnmsworld

* don't use concurrent chunk gen if custom chunk generators do not support it

* distinct between generator types

* improve regen speed for overworlds

* mix

* Add message that regen might take a while

* use a shared map for FastAreaLazy, cleanup imports

* use custom concurrency levels for chunk stati and process accordingly

* implement new regen in 1.15.2 and 1.16.1 as well

Conflicts:
	worldedit-bukkit/src/main/java/com/sk89q/worldedit/bukkit/adapter/impl/FAWE_Spigot_v1_15_R2.java
	worldedit-bukkit/src/main/java/com/sk89q/worldedit/bukkit/adapter/impl/FAWE_Spigot_v1_16_R1.java

* woops

* further abstraction, finalized regen impl

* Formatting

* Fix some typos, remove debug

* replace wildcard imports

* cleanup debug

* braces

* serr -> logger

* move regen impls to seperate classes

* fix world init for 1.16.1

* fix world init for 1.15.2

* fix world init for 1.15.2 #2

* use original world name for regeneration

* Update Regen_v1_15_R2.java

* Update worldedit-bukkit/src/main/java/com/sk89q/worldedit/bukkit/adapter/impl/FAWE_Spigot_v1_15_R2.java

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

* Update worldedit-bukkit/src/main/java/com/sk89q/worldedit/bukkit/adapter/impl/FAWE_Spigot_v1_15_R2.java

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

* Update worldedit-bukkit/src/main/java/com/sk89q/worldedit/bukkit/adapter/impl/FAWE_Spigot_v1_16_R1.java

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

* improve documentation, use parallel task count for fawe settings

* fix compile

Co-authored-by: wea_ondara <wea_ondara@alpenblock.net>
Co-authored-by: MattBDev <4009945+MattBDev@users.noreply.github.com>
Co-authored-by: dordsor21 <dordsor21@gmail.com>
2020-10-10 11:57:12 +02:00
MattBDev
f5a42c63a7 Better logger support 2020-10-06 14:44:33 -04:00
Matt
96dcb95b7c
Javadoc and Formatting fixes. (#619)
Javadoc and Formatting fixes.

Also, extremely minor code changes which have been tested.
This commit is only part one of two commits that aim to fix problems with formatting in our project. In part two I will modify the Google Java Style Guide (since it closely matches our code style) for our project so there is guidance on how to format and document. 

* Updated PlotSquared URL
* Removed plugin acronyms
* Fixed a typo
* Fixed grammar
* Use modern block id's
* Update YouTube video URL
2020-10-05 13:41:41 -04:00
dordsor21
7375827844
implement getBiome(BlockVector3)
fixes #622
2020-09-18 11:52:49 +01:00
Matt
2e73746abe
Remove Kotlin (#625)
Shrinks the jar size since we no longer must bundle the Kotlin library. The downside is that some classes grew in size compared to their Kotlin versions.
Many contributors didn't care for Kotlin either.
2020-09-17 16:31:55 -04:00
N0tMyFaultOG
241e85e491 Strip 1.14 2020-09-16 16:01:49 +02:00
Matt
d00899e177
More support for 3D biomes (#608)
* More support for 3D biomes

* Resolved merge conflicts
2020-09-12 15:31:42 +02:00
Matt
de199a0e59
More work on masks (#607)
* Add a #air mask, the opposite of #existing (#1511)

(cherry picked from commit 84fa2bbbc63de7bece01f41c0d5cb7d85cf129e6)

* Remove unused methods in Mask.java

* Remove `test(Extent, BlockVector3)` from Masks.

This was a poorly planned idea. This should save some memory too.

Authored-by: Matthew Miller <mnmiller1@me.com>
2020-09-11 21:13:31 +02:00
Octavia Togami
1d05da75d8 Regenerate list classes from MCUtils
(cherry picked from commit da4d70fab5c5e5efe242260b5d09ca273f944c55)
2020-09-03 12:46:17 +01:00
Octavia Togami
f7e1f70e19 Replace BlockStates reading with new 1.16 logic (#1413)
* Replace BlockStates reading with new 1.16 logic

* Account for running on older platforms

Splits out the new reading to AnvilChunk16, uses data version to detect
the appropriate version.

* Move data versions to Constants

Also fixes some logic hiccups that become obvious with the new names.

* Fix LegacyMapper DFU handling

* Fix factor indexing

(cherry picked from commit 8c171f0929e8530aab1731d122649adc58c5161f)
2020-09-02 11:25:50 -04:00
Octavia Togami
28767d6e0f Officially propagate GPL downwards to all files
(cherry picked from commit f2ce020da059718e34342c149172944dfd02b775)
2020-09-01 16:30:43 -04:00
MattBDev
a9d37fc6e5 Added BiomeMask.java and updated minor parts of miscellaneous files 2020-08-24 22:04:56 -04:00
MattBDev
02886b0387 Updated the WorldEdit license using find and replace 2020-08-24 21:31:47 -04:00
MattBDev
fd336feb46 Upstream merge of TranslationManager and ResourceLoader 2020-08-24 12:38:30 -04:00
N0tMyFaultOG
6cb8352686 1.16.2
- My IJ is broke but this should work. Dunno if I got all nms changes, but we will see.
2020-08-23 17:18:29 +02:00
MattBDev
79b5612311 Upstream merge of the region package and things that may have broken with it. 2020-08-18 15:48:31 -04:00
MattBDev
3bc692ff11 Part 1 of upstream merge and format 2020-07-13 22:50:59 -04:00
MattBDev
6d6de61560 Updated missing biomes, entities, and categories. 2020-07-06 23:54:55 -04:00
dordsor21
9e25c736a0
Add new blocks to BlockTypes 2020-07-03 14:12:43 +01:00
Matthew Miller
4604aa5920 Additional work towards 1.16 compatibility
- Very basic implementation of the SideEffects system. Will definitely need fine tuning for it to be functional, but is not considered a priority in my opinion.
- Minor changes to the World interface and World implementations related to the SideEffects system. Shouldn't be the cause of any new bugs but be on the lookout.
- Included debug in BukkitImplLoader.java to assist contributors in understanding what needs to be implemented for the adapter to load properly.

Still very WIP but we're a few steps closer. So far, this is coming along better than I anticipated. Hopefully we can keep the momentum.
2020-06-29 22:08:16 -04:00
dordsor21
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
dordsor21
0c539b4e84 Fix replace patterns
Fixes #445 #440 #372
2020-05-06 15:50:57 +01:00
Octavia Togami
415e91b519 Re-apply 374ad99
Accidentally fixed the EntryMaker issue before I pulled 374ad99. Should reflect upstream now.
2020-04-16 20:41:59 -04:00
Octavia Togami
ff47e6f717 Cherry-pick to fix EntryMaker issue 2020-04-16 20:26:55 -04:00
Octavia Togami
374ad992a2 Properly close all files when dealing with archives (#1274)
* Properly close all files when dealing with archives

* Move file utils to SafeFiles class

* Licenses

(cherry picked from commit a600266d41151eec4f2239cf90e202bb99fa3a8b)
2020-04-10 13:38:14 -04:00
MattBDev
e7df3177cc Upstream merge 2020-03-23 20:47:30 -04:00
MattBDev
9f07894f28 Performance improvement based on case study by @me4502 2020-03-19 13:08:25 -04:00
MattBDev
2f8c2666df Removed LightingExtent and organized some classes. 2020-03-18 12:58:18 -04:00
MattBDev
8e97b3b4b1 Revert "Lighting and Database changes"
This reverts commit 39dfc244
2020-02-18 18:06:19 -05:00
MattBDev
39dfc2444b Lighting and Database changes 2020-02-18 17:21:09 -05:00
MattBDev
df60e50c96 Revert more changes 2020-01-29 15:32:51 -05:00
MattBDev
cb6359f010 Removed 1.13.2 support. 2020-01-27 18:54:31 -05:00
MattBDev
8078cf077a consistency changes 2020-01-26 13:01:16 -05:00
MattBDev
88359f0215 More Kotlin 2020-01-21 14:30:13 -05:00
MattBDev
0d2fff2cd2 Upstream Merge 2020-01-10 22:32:12 -05:00
NotMyFault
3ee920f9e6 Update upstream 2020-01-08 19:36:12 +01:00
Jesse Boyd
e69ea37665
Merge branch '1.15' of https://github.com/IntellectualSites/FastAsyncWorldEdit-1.13 into 1.15 2020-01-07 00:09:49 +00:00
Jesse Boyd
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
NotMyFault
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
Jesse Boyd
c05cdd8faa
Merge branch '1.15' of https://github.com/IntellectualSites/FastAsyncWorldEdit-1.13 into 1.15 2020-01-04 10:12:33 +00:00
Jesse Boyd
88a95221a8
Make masks more stateless 2020-01-04 10:11:13 +00:00
MattBDev
0d1e32efcb Upstream and debugging changes. 2020-01-02 16:30:44 -05:00
Jesse Boyd
39faa740a2
Fix some adapter issues
regen 1.13, tile get npe, null block type values
2019-12-21 09:45:59 +00:00
Jesse Boyd
c2cc4f5aeb
Fix craftbook 2019-12-20 05:54:03 +00:00
Jesse Boyd
2bd65f6423
Update LegacyMapper.java 2019-12-19 16:58:00 +00:00
Jesse Boyd
c9c602470f
fix indexoutofbounds 2019-12-19 16:48:14 +00:00
Jesse Boyd
6a49b71cf2
Fix compile 2019-12-19 16:19:46 +00:00
NotMyFault
053b1a20d6 More 1.15 wip 2019-12-11 14:45:27 +01:00
NotMyFault
39b60aa742 Fix legacy id conversion 2019-12-09 22:36:52 +01:00
NotMyFault
b0208e06cd More updates 2019-12-09 21:59:51 +01:00
Jesse Boyd
1f19b92b0b
1.13? 2019-11-24 00:57:29 +00:00
Jesse Boyd
37b6c406ac
reduce diff 2019-11-21 07:57:32 +00:00
Jesse Boyd
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
Jesse Boyd
60759934a3
Fix some merge issues 2019-11-20 00:11:54 +00:00
Jesse Boyd
2c9f192baf
Merge remote-tracking branch 'upstream/master' into merge 2019-11-19 21:23:47 +00:00
Jesse Boyd
1b07846746
some adapter refactoring 2019-11-19 04:40:40 +00:00
Jesse Boyd
601890fe64
Fix biome sending 2019-11-14 19:21:28 +00:00
MattBDev
630245bb9f Attempt to fix compile and other small changes 2019-11-11 16:22:03 -05:00
MattBDev
a23a4e5496 misc changes. 2019-11-11 16:02:28 -05:00
Jesse Boyd
240b2de90c
Update to PlotSquared-we branch 2019-11-06 09:29:20 +00:00
Jesse Boyd
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
Jesse Boyd
32d837414b
static blocktype initialization
instead of using hacky reflection
2019-11-02 20:35:51 +01:00
Jesse Boyd
df9e9e510a
Limit processing 2019-11-02 12:13:42 +01:00
Jesse Boyd
2f3c6769c8
Legacy clipboards 2019-11-02 07:15:56 +01:00
Jesse Boyd
e1b9b9e3e8
Revert "Like this @mattbdev ?"
This reverts commit bddf92cd9b.
2019-10-31 00:41:36 +01:00
Jesse Boyd
ef47ea74df
Revert "Or this?"
This reverts commit 558144696a.
2019-10-31 00:41:15 +01:00
Jesse Boyd
558144696a
Or this? 2019-10-30 20:03:38 +01:00
Jesse Boyd
bddf92cd9b
Like this @mattbdev ? 2019-10-30 20:01:18 +01:00
Jesse Boyd
72951cdf23
Various
fake chunk packet
aliases
cfi wip
2019-10-30 12:26:52 +01:00
Jesse Boyd
8356004ec9
chunk sending / cfi 2019-10-26 14:21:49 +01:00
Jesse Boyd
2080e9786b
commanding-pipeline diff 2019-10-23 05:23:52 +01:00
MattBDev
da3019ae3d More compile fixes and upstream mergesa 2019-10-09 16:15:26 -04:00
MattBDev
51a5c22677 I hope these are the last few errors 2019-10-03 20:37:19 -04:00
MattBDev
8b96cdc9a5 *
A tribute to Jesse
2019-09-20 21:52:35 -04:00
MattBDev
c926cddbd6 Item Registry Test is now functional 2019-09-19 14:56:03 -04:00
MattBDev
16e24a2400 Created an Item Registry Test (non-functional) 2019-09-19 11:30:22 -04:00
MattBDev
3bcfcd3008 Fixed bug with wands and updated tests 2019-09-18 15:09:04 -04:00
MattBDev
cafb4120ef More upstream compatibility fixes 2019-09-03 15:21:53 -04:00
MattBDev
06a92d29b1 Merge branch 'commanding' of https://github.com/IntellectualSites/FastAsyncWorldEdit-1.13 into commanding
# Conflicts:
#	worldedit-bukkit/src/main/java/com/sk89q/worldedit/bukkit/adapter/BukkitImplAdapter.java
#	worldedit-core/src/main/java/com/sk89q/worldedit/command/ApplyBrushCommands.java
#	worldedit-core/src/main/java/com/sk89q/worldedit/extension/platform/PlatformCommandManager.java
#	worldedit-libs/core/build.gradle.kts
2019-09-02 15:24:53 -04:00
MattBDev
c20f4c6b7f Fixed a null pointer. Merged in a bunch of CLI stuff. 2019-09-02 15:22:43 -04:00
Jesse Boyd
68eea925e1
update adapter and platform manager 2019-08-29 13:57:03 +01:00
Jesse Boyd
edb626a961
merge 2019-08-26 05:49:00 +01:00
Jesse Boyd
4e49d16505
fix dependencies 2019-08-26 05:45:03 +01:00
Matthew Miller
0620478763
feature(cli): Added a CLI version of WorldEdit, and allowed most commands to be run from console (#508)
* Re-do commits to avoid awful rebase

* You can load and save a schematic file now. Still gotta setup ability to use commands as a console actor.

* Add a world override concept to LocalSession, and allow a lot more commands to be performed by actors.

* Fixed commands, and set the loaded schematic as the world override in CLI

* Properly load tags

* Added 1.14.4 data values

* Allow a majority of commands to be performed by the console.

* Fixed a lot of PR requested changes

* Added a Locatable interface and use that for getting the location of the player in commands.

* Added script support. Currently requires a newline at the end of the script.

* Shade everything to allow this to run locally - should probably minimize this to an extent later.

* Actually hook up the version

* Added a //world command to set the override

* Fixed a missed checkstyle issue

* Added CommandBlock support to Bukkit

* Make command block support configurable

* Minor cleanup and implementing a few of the final functions

* Fixed most issues from PR

* Improve UX, saving is now automatic and unknown command messages show

* Better save docs and support any clipboard format

* Include the entire formats list

* Arrays.copyOf

* Clear the world override if the selector is called on another world.

* Update logging extent to allow basic logging with non-player actors
2019-08-25 19:58:28 +10:00
Jesse Boyd
ae89c16390
merge 2019-08-23 08:36:33 +01:00
MattBDev
135c12b650 More compile fixes 2019-08-22 13:14:27 -04:00
MattBDev
1eec4884c8 Attempt at fixing NamespacedRegistry 2019-08-19 14:12:28 -04:00
Jesse Boyd
d434dfcfdd
some minor refactoring 2019-08-18 02:09:09 +01:00
MattBDev
cbbe8b5dfa upstream changes 2019-08-15 15:24:18 -04:00
Kenzie Togami
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
Jesse Boyd
7a57a5dd8c
minor
idk it compiles now
2019-08-10 16:01:42 +10:00