skript-worldedit

Addon skript-worldedit 1.1.6

  • Welcome to skUnity!

    Welcome to skUnity! This is a forum where members of the Skript community can communicate and interact. Skript Resource Creators can post their Resources for all to see and use.

    If you haven't done so already, feel free to join our official Discord server to expand your level of interaction with the community!

    Now, what are you waiting for? Join the community now!

Important Changes​

  • skript-worldedit works on Skript 2.16+ again! Skript 2.16 added its own treetype type, which clashed with skript-worldedit's and stopped the addon's syntax from loading at all (#23, #24). Thanks to @Toni4819, whose fork found the same fix.
  • skript-worldedit 1.1.6 still requires Skript 2.12.0+, and runs on Java 17+ again.
  • This version was tested on Paper 1.19.4, 1.21.8, 1.21.10 and 26.3, using Skript 2.12.2, 2.14.1 and 2.17.1, with both WorldEdit (7.3.16 and 7.4.6) and FAWE (2.6.2, 2.13.1, 2.15.0 and 2.16.1).
  • There was no 1.1.5 release, so this version also includes what would have been in it (the player selection expression).
Download 1.1.6 from Modrinth!

Fixes​

  • Fixes masks not working at all on WorldEdit (they did work on FAWE). This also affected the mask entry when saving and pasting schematics, and smoothing with a mask.
  • Fixes the forest effect always throwing an error, as the density wasn't being converted from a percentage.
  • Fixes the sphere and pyramid effects throwing an error when no radius or size was given.
  • Fixes cylinder regions stored in variables losing their y level after a restart.
  • Fixes regenerating with a non-whole seed (like 2.5) throwing an error.
  • Fixes regenerating doing nothing on WorldEdit with Minecraft 26.1+. WorldEdit doesn't support custom seeds there, so a custom seed now falls back to the world's seed, with a warning.
  • Fixes setting blocks in more than one region at once throwing an error.
  • Fixes pasting a schematic keeping the file open, which stopped it from being deleted afterwards on Windows.
  • Fixes straight line drawing a curve instead of a straight line (rigid line was fine).
  • Fixes the block count expression not being able to be set to a variable when given multiple regions.

Additions​

  • Player selection expression: gets a player's current WorldEdit selection as a region, e.g. set {region} to current selection of player. The returned region is a copy, so changing it won't change the player's actual selection.
  • Biome effect: a new use worldedit to set biome of {region} to plains pattern. On older Skript versions (like 2.12), Skript's own biome syntax can take over the plain set biome of {region} to plains when the region is stored in a variable, so use this form there.

Changes​

  • Cylinder regions are now exactly as tall as the height given (with height 10 used to make one 11 blocks tall). Cylinder regions already saved in variables keep their old size.
  • The tree type used by the forest effect is now called worldedit tree type, so it doesn't clash with Skript's. The forest syntax hasn't changed, but if you used tree type as a type anywhere (e.g. a function parameter), change it to worldedit tree type.

Other (pretty boring) stuff​

  • Types that clash with one already registered by Skript or another addon are now skipped with a message, instead of stopping the rest from registering.
  • The update check now runs asynchronously, so it no longer holds up server startup.
  • The build now compiles with --release 17, so newer Java APIs can't be used by accident.
Full Changelog: https://github.com/cheeezburga/SkWE/compare/1.1.4...1.1.6
1.1.4 - Bug Fixes and Runtime Errors
Important Changes
- skript-worldedit 1.1.4 now requires Skript 2.12.0+! This version of Skript should continue to work on 1.19.4+, for anyone still running this server version.
- skript-worldedit is now on Modrinth! This will be the primary spot to download the addon from going forward.

Download 1.1.4 from Modrinth!

Fixes
- Fixes an error that could be thrown by saving schematics via the section (#15, #20). The addon would throw a stack trace due to an unhandled oversight in the logic. This has now been fixed.
- Fixes CondSchematicExists's syntax, which was missing a whole word, and differed from what the example showed. Also makes some minor changes to the syntax of other elements, for ease (backwards compabatible, no changes necessary).

Additions
- Runtime errors: added in some basic runtime errors and warnings to better show when certain expressions aren't valid when using skript-worldedit syntax. For anyone wondering, this is why Skript 2.12.0+ is now required.

Other (pretty boring) stuff
- Renamed most ambiguously-named Utils classes to be more direct.

Full Changelog: https://github.com/cheeezburga/SkWE/compare/1.1.3...1.1.4
Important Changes
- This version of the addon was coded on a Paper 1.21.8 server using Skript 2.12.2 and FAWE 2.13.1.
- While it should continue to work on versions of Skript back to 2.10.0, this hasn't been verified. Please report any issues regarding this.
- skript-worldedit is now on Modrinth! This will be the primary spot to download the addon from going forward.

Download 1.1.3 from Modrinth!

Fixes
- Fixes a number of errors and bugs surrounding schematics specifically (#6, #7, #8). There were a few areas where the addon would throw a stack trace due to an unhandled exception in the schematic save/paste logic. These have now been fixed.
- Fixes a bug where pasting a schematic wouldn't respect the mask supplied.

Additions
- Schematic exists condition: a new condition to check if a schematic exists. This follows the same logic when determining which directory it should look in as the save/paste effects.

Other (pretty boring) stuff
- Swap most toString methods to use SyntaxStringBuilders (or the Blocking variant).
- Add documentation for schematic syntax.

Full Changelog: https://github.com/cheeezburga/SkWE/compare/1.1.2...1.1.3

Additions​

  • Delete schematic effect - deletes a schematic (this can't be undone!)
  • Forest effect - generates a forest in a region, with a specific tree species and density

Other (pretty boring) stuff​

  • Internally changes how versioning is done. Now only needs to be changed in the gradle build file, instead of in all three files where the version was included.
Full Changelog: 1.1.1...1.1.2

Fixes​

  • Fixed an issue where trying to paste a non-Sponge schematic would throw an error in the console. Before, skript-worldeditwould assume this format, but it should now be able to accurately identify the format of any given schematic.
    • Note that trying to paste schematics created before Minecraft 1.13.2 might not work. If this happens to you, try loading and pasting the schematic using WorldEdit or FAWE commands in-game before making an issue on the GitHub.

Changes​

  • The string in the schematic paste effect/section which used to denote the name can now be given a whole path. This means that you can now use stuff like "plugins/NotWorldEdit/someSchematics/example.schem"!
    • If a path is entered, but no file is found at it's destination, skript-worldedit will assume the path is actually the name, and will look for a schematic named the path.
    • If a name is entered, skript-worldedit will still look in WorldEdit/FAWE's default schematics folder, just like before.
Full Changelog: 1.1.0...1.1.1
This is the first big update that skript-worldedit has had, and it brings an important feature that's been missing since the initial release: schematics!

Additions​

  • Schematics - save and paste schematics with ease! There is both an effect and a section for each, the latter of which is recommended, as you can take full advantage of all the configurable options they offer. For more information on this new feature, check out the dedicated wiki page, which takes a slightly deeper dive!

Other (pretty boring) stuff​

  • The EmptyAnnotationAdder will now work with sections
Full Changelog: 1.0.4...1.1.0

Additions​

  • Block count expression - gets the number of blocks in a region that match a certain mask or itemtype
  • Expand/contract effect - expands or contracts a region in a given direction by a given amount. Also optionally can expand in the opposite direction
  • Inset/outset effect - insets or outsets a region by a given amount. Can optionally only perform the operation vertically or horizontally

Other (pretty boring) stuff​

  • The RegionWrapper#getDistribution method now returns a map with String keys instead of BlockData
  • Adds SimpleExpression as a target class in the EmptyAnnotationAdder
Full Changelog: 1.0.3...1.0.4

Additions​

  • Biome effect - an effect to change the biome in a region
  • Spline effect - an effect which takes a set of locations and creates a line (rigid) or spline (curved) between them all using a given pattern. Can take a hollow and thickness parameter

Changes​

  • Updated the dimensions expression to avoid conflicts with Skript's length expression

Other (pretty boring) stuff​

  • Changes and adds some new BlockVector3 util methods
  • Adds an EmptyAnnotationAdder gradle task and class
Full Changelog: 1.0.2...1.0.3

Additions​

  • A region dimensions expression - can be used to get the height, width, and length of a given region.

Changes​

  • Patterns - updated some of the patterns to be more flexible
  • Pattern prefix - updated the pattern prefix (the use we to bit at the start of some patterns) to now allow for FAWE as well

Other (pretty boring) stuff​

  • Removed the star imports from some effects, which will be the standard moving forward
  • Changes some of the colour codes in the onEnable method
  • The jar for this release also contains some early schematic save implementations, which do not work, and shouldn't be used
Full Changelog: 1.0.1...1.0.2

Changes​

  • How effects are executed - in the initial release, any effect calls would just let Skript continue in the file, without waiting for the effect to be completed. This is no longer the case, and Skript should now finish executing a given effect before moving on. This is how Skript itself handles effects, and should be more familiar, however if you'd like to continue using the effects in a non-blocking way, you can! The patterns for all the effects now include an optional lazily word at the end, which will do just that.

Other (pretty boring) stuff​

  • All syntax now includes the Skript doc annotations for better and easier documenting
  • This version also includes a commit which fixes EffReplace only registering on FAWE servers. This was committed after 1.0.0, but the jar was updated to include this anyway.
Full Changelog: 1.0.0...1.0.1