Custom Structures icon

Custom Structures -----

Generate Structures from schematics. [1.13.2-1.21]




Changes:
  • Allow for multiple loot table fills.
  • Adds a world blacklist for structures. (wiki)
  • Adds a global whitelist and blacklist for worlds.
  • Improved 1.21 support.
----------, Jun 23, 2024

Bug Fixes:
  • Fixed a bug where the ReplaceBlocks property would not function properly.
Previous Changes from 1.8.2:
This is a major new version of CustomStructures. The structure configuration and LootTable format have changed significantly. Be certain to check out the update guide for information on how the plugin automatically updates its configuration file.

New Features:
  • Added the ability to add a target mask to a structure. (Info)
  • <world>, <uuid>, and <structName> placeholders can now be used on Command Signs. (Info)
  • LootTables from vanilla Minecraft and Datapacks can now be used. (Info)
  • Added a command to test LootTables on containers. (Info)
  • Added the ability for SubSchematics to be vertically repositioned. (Info)
Changes:
  • A new structure spawning algorithm has been implemented. (See the details here)
  • The structure configuration files now have a consistent naming convention. All properties are now in PascalCase.
  • Several configuration options have been renamed.
  • Logged Structures are now stored in a SQLite db file instead of a yaml file. (Increases the nearby command speed significantly).
  • You can now specify how many structures you want to find when using the nearby command. (Info)
  • You can now specify what structure to find when using the nearby command. (Info)
  • The level of a mythic mob can now be randomized when using MythicMob signs.
  • Loot Items in configuration loot tables can now have different types. (Standard and Custom come with the plugin by default).

Developer API Updates:

  • Added an API to add custom structure signs. (Info)
  • Added an API to programmatically define a LootTable. (Info)
  • Added an API to create custom Configuration Loot Item types. (Info)
The wiki has also been re-written for this update to add in more details about configuring the plugin.
----------, Mar 22, 2023

This is a major new version of CustomStructures. The structure configuration and LootTable format have changed significantly. Be certain to check out the update guide for information on how the plugin automatically updates its configuration file.

New Features:
  • Added the ability to add a target mask to a structure. (Info)
  • <world>, <uuid>, and <structName> placeholders can now be used on Command Signs. (Info)
  • LootTables from vanilla Minecraft and Datapacks can now be used. (Info)
  • Added a command to test LootTables on containers. (Info)
  • Added the ability for SubSchematics to be vertically repositioned. (Info)
Changes:
  • A new structure spawning algorithm has been implemented. (See the details here)
  • The structure configuration files now have a consistent naming convention. All properties are now in PascalCase.
  • Several configuration options have been renamed.
  • Logged Structures are now stored in a SQLite db file instead of a yaml file. (Increases the nearby command speed significantly).
  • You can now specify how many structures you want to find when using the nearby command. (Info)
  • You can now specify what structure to find when using the nearby command. (Info)
  • The level of a mythic mob can now be randomized when using MythicMob signs.
  • Loot Items in configuration loot tables can now have different types. (Standard and Custom come with the plugin by default).

Developer API Updates:

  • Added an API to add custom structure signs. (Info)
  • Added an API to programmatically define a LootTable. (Info)
  • Added an API to create custom Configuration Loot Item types. (Info)
The wiki has also been re-written for this update to add in more details about configuring the plugin.
----------, Mar 20, 2023

Changes:
- Fixed enchanted books not being created properly in loot tables.
- Improved the default implementation of the bottom space fill feature.
- Added the SameDistanceFrom configuration option. (Wiki)
- Other general improvements.

Thanks to Akiranya and llanox for their contributions.
----------, Dec 9, 2022

Changes:
- Adds advanced sub-schematics (wiki)
- Adds the WorldHeightRestriction limitation (wiki)
- Fixes [#;#] for simple sub-schematics.
----------, Jul 2, 2022

Changes:
  • The plugin now requires Java 16 or above.
  • Mob signs can now spawn multiple mobs. (Wiki)
  • The sub-schematic recursion limit is now customizable. (Wiki)
  • Air blocks under a structure can now be filled depending on the biome the structure is in. (Wiki)
  • Loot tables can now be defined on a per container basis. (Wiki)
  • Fixed a bug with the latest version of MythicMobs.
  • SpawnY out of bounds errors are handled in a nicer way.
  • The plugin now silently fails if a structure tries to spawn before initialization. (A common issue on Spigot forks).
  • Enhanced 1.19 support.
  • Other general improvements.
Please report any bugs on github. If you have any issues feel free to join the support discord for assistance (or use the discussion section).
----------, Jun 12, 2022

Changes:
- Fixed a major bug that affected structure spawning.
----------, Jan 23, 2022

Changes:
- Added support for PAPI placeholders in sign commands and Citizen NPC names. (Contributed by marcelschoen).
- Snow will now be ignored by structures when spawning.
- Blocks can now be blacklisted to prevent structures from spawning on them.
- LootTable items can now have lore.
- The minecraft: prefix will now be ignored when biomes are listed.
----------, Jan 23, 2022

Changes:
- Added the ability to spawn custom NPCs using Citizens. For more information view the documentation. (Implemented by Marcelschoen)
- Added the ability to execute commands when a structure spawns. For more information view the documentation. (Implemented by Marcelschoen)
- Added the StructureSectionProvider to the developer API. (Implemented by sunarya-thito)
- Fixed a bug where the SpawnYHeightmap would not be correctly set when creating a structure.
- Plugin confirmed working on 1.18.
----------, Dec 4, 2021

Changes
- Added the ability for LootItems to have a randomized amount.
- Added the ability for LootItem enchantments to have a randomized level.
- Split the /cstructure menu into two separate menus.
- Official addons will be labeled as such when using the /cstructure addons command.
- Fixed a bug where structures were not created properly when using the command.
- Fixed a bug where the height map of new structures were not correct.
- Fixed a bug where the Shulker Box was not considered a valid container for loot tables.
----------, Sep 1, 2021

This is a major update with changes to structure configuration files.

Please see the update guide for more information.

Changes:
  • Explicit support for 1.17.x.
  • Updated the config version.
  • Added 1.17 materials to the ignore list.
  • Added an auto-updater for the new version.
  • Fixed an error when comparing structures in different worlds.
  • Implemented a new SpawnY format for the structure spawning.
  • Distributed jars will now include apache commons-io.
  • Added the ability for structures to have custom height maps which details how the plugin finds the top block of a chunk.
  • Changed the location of where the structure spawns in a chunk from (0, 0) to (8, 8) aka the center of the chunk.
  • Updated the Test Spawn Command to include more information when debug mode is enabled.
  • Removed the config option for spawning in the void as it is now redundant.
  • Improved console error messages.
  • Bstats will now track what addons a server is using (if bstats is enabled).
----------, Jul 19, 2021

Changes:
- Added the ability for developers to create addons which allows for custom spawning capabilities.
- Loot Tables now support Shulkers.
- Subcommands are no longer case sensitive.
- Subcommands can now have aliases.
----------, Jun 3, 2021

Changes:
- Added the ability for structures to spawn in the void. (See the wiki for more info)
----------, May 21, 2021

Changes:
- Fixed a NoMethodFoundException on startup for some Spigot installations.
----------, May 19, 2021

Changes:
- Added loot table support for Droppers, Dispensers, Blast Furnaces, and Smokers.
- Added events to the developer API. (Some commits by sachingorkar102).
- Updated shaded dependencies.

Note: The plugin may require Java 11 in future updates when Minecraft updates to 1.17. Please consider updating your server to use Java 11 if it doesn't already.
----------, May 19, 2021

Changes:
  • Added the option to control the distance structures spawn away from each other. (More Info)
  • Added the ability to save structures to a storage file. (This allows additional functionality, like the nearby command).
  • Added the ability to set the base rotation of a structure using the developer API.
  • Added the testspawn command to allow debugging of the plugin's internal spawning logic.
  • Added the nearby command to find structures close to player. (The
    logStructures config option must be set to true.)
  • Fixed a bug where the origin of a schematic created using /cstruct createschem would be the corner instead of where the player is standing.
  • Removed unused API classes.
  • Removed old configuration options
  • Fixed typo with the list and test commands. (Contributed by rikusen0335)
  • Improved the developer documentation.
  • Other internal changes to make development easier.
----------, Mar 21, 2021

Bug Fixes:
The plugin will now work on 1.13, 1.14, and 1.15.
----------, Jan 30, 2021

Changes:
- Fixed an NPE with loot tables.
- Updated dependencies.
----------, Dec 30, 2020

The update from 1.5.5 to 1.5.6 requires an update of the structure configuration files (This will be done automatically by the plugin so please backup before updating). Please see the migration guide here for more information.
Changes:
  • Changed the system that loot tables use. (This allows the multiple container types without interfering with probability).
  • Added a system to automatically update to the new config version.
  • Added the ability to control if the 'SpawnY' should be calculated before or after other conditions.
  • Add the 'flat_error' mode to the BlockLevelLimit.
  • Improved the error handling for structures.
  • Improved the API for loot tables.
Bug Fixes:
  • Fixed a bug where the plugin would not properly ignore plants and trees.
  • Fixed a bug where the BlockLevelLimit did not work as intended.
  • Fixed a bug where the new_chunk limitation did not work as intended.
----------, Dec 20, 2020

Changes:
- Fixed a bug where wall signs in a structure would cause an error.
- Significantly improved error handling.
- Added the ability to disable the new chunk generation requirement.
- Added the ability for a loot table to have more than one type.
- Implemented the ability to control the level of Mythical Mobs.
----------, Dec 10, 2020

Changes:
- Added the ability to for sub schematics to rotate base upon the rotation of the [schem] sign.
- Loot table enchantments now uses the same names as minecraft. Note: This will require you to update your loot tables.
----------, Oct 29, 2020

Bug Fixes:
- Fixed a bug where loot tables would not work properly due to errors in the matrix rotation code.
- Fixed a bug where compiled schematics did not take into account rotation.
- Fixed a bug where sub schematics would not replace the sign with air.

Small Additions:
- Added auto complete for the /cstructure test command.
- Added the /cstruct alias for the /cstructure command.
----------, Oct 29, 2020

Changes:
- Added the ability to use WorldEdit masks with structures (more info).
- Added the ability for schematics to be compiled as a way to make large structures spawn faster when containing containers and signs (more info).
- Added the ability to choose how far away from (0,0) a structure must be to spawn (more info).

Changes for Developers:
- Improved the Javadoc with better comments.
- The plugin now completely uses Maven. (More Info)
- Improved the Developer API.
----------, Oct 20, 2020

Bug Fix:
- Patched a bug where the replacement delay would not work.
----------, Sep 19, 2020

Changes:
- Added the ability to use sub schematics in a structure. The feature is similar to the Jigsaw block in vanilla Minecraft. (See here and here on how to use it)
- Added the ability to add a delay between the structure spawning and the replacement of signs and blocks.
- Loot tables can now be limited to specific container types. (For example: chests, trapped chest, hopper, brewing stand, and barrel.) ( See this page for more information).
----------, Sep 19, 2020

Bug Fixes:
- Fixed a bug with the Biome property of a structure.


Check out the wiki on how to properly use the Biome property.
----------, Aug 20, 2020

Bug Fixes:
- The structure chance system now works as expected. (1/500 is a 0.2% chance of spawning per chunk.)
- The BlockLevelLimit now works properly.
- Updated the BlockLevelLimit configuration in the demo structure to actually work.
----------, Jul 1, 2020

This update introduces a brand new structure system. Please read this migration guide before updating your plugin.

This is just a basic overview of the update. For full details including examples see the github release.

Changes:
- The structure system has been changed. See the wiki for the new way to create structures.
- You can now replace blocks inside of structures.
- Loot tables now support custom items.
- Schematics can be created from in-game.
- Structures can be created from in-game. (You still need to open the structure file to configure it).
- You can force structure to only spawn on flat terrain.
- Significantly improved the developer api.

Bug Fixes:
- Mobs will no longer despawn the moment they are spawned in.

The wiki has been overhauled with all of the new information from this update!
----------, Jun 29, 2020

Recompiled the jar to work with Java 8+. Sorry about the inconvenience.
----------, Jun 18, 2020

Fixed the error when the plugin starts up.
----------, Jun 13, 2020

This patches the bug that causes the plugin to crash when it tries to spawn a structure in a chunk with no ground.

This is just a quick bug fix update. A major plugin recode is still coming out soon.
----------, Jun 13, 2020

Thank you to Iniquit for this update!

Bug Fixes:
- Fixed chest containers and mobs not spawning when the structure is randomly rotated.
- Fixed mythical mobs not spawning in.
----------, Apr 12, 2020

Changes:
- Added official support for 1.15.2.
- Added the ability to spawn structures on the ocean floor.
- Added the ability to ignore plants when spawning structures.
- Added debug mode (Thanks Iniquit)
- Added better error handling with schematics.
- Fixed structures not randomly spawning in the correct location. (Thanks Iniquit)

Sorry it took so long to get this out.
----------, Apr 8, 2020

Change Log:
  • Fixed bug where the /cstructure test command would not work.
  • Fixed bug where an error would be given if a loot table item did not have a custom name.
Thank you to everyone who reported these bugs. If you have any issues please report them over on github.
----------, Jul 27, 2019

Notice: The config file was changed in this version. You must re-configure the config.

Changes:
  • Changed how SpawnY works in the config.
    • Added ability to spawn structure x blocks above ground.
    • Added ability to randomly pick a y location
    • Added ability to randomly pick x blocks below the ground.
    • Added ability to randomly pick x blocks above the ground.
    • Changed the surface value from -1 to 'top'
  • Added in random rotation feature. (Does not work with mobs and Loot Tables. This is a bug and will be fixed)
  • Added in whitelist spawn blocks. (Structures can only spawn on those blocks)
  • Added in Loot Tables (Works with chests, brewing stands, and furnaces)
  • Added in the ability to spawn mobs when a structure spawns. (Vanilla mobs and MythicalMobs)
  • Enhanced the Developer API.
For help using these new features check out the wiki.

Big thanks to
Chusca for contributing to the project and adding in the Mobs / LootTables.
----------, Jul 22, 2019

This update is for 1.13.2 - 1.14.2 only. Use 1.3.3 for 1.11 - 1.12.
Bug Fixes:
- Prevents the server from crashing when it is trying to load a schematic.
- Removed typos in the config.
- Fixed reload command.

Thanks to @tamellen for reporting this bug.
----------, Jun 21, 2019

The plugin has finally been updated!

This version only supports 1.13.2 and 1.14.2!

Changes:

- Added support for 1.13.2 - 1.14.2
- Added a config option to toggle if a structure can spawn in water.
- Removed the List from the config. (It is no longer needed to put new structures in the list)
- Added an API to the plugin for developers.

Report any bugs to GitHub or the discussion section.
----------, Jun 21, 2019

- Added support for multiple biomes. To add multiple biomes just use the comma (,).
Ex:
Code (YAML):
  #What biome this a schematic can spawn in. Change to all for all.
Biome
: 'DESERT,FOREST'
(Note: make sure to not add any spaces)
----------, May 3, 2018

Fixed a bug where the server would crash.
----------, Mar 9, 2018

Fixed a bug where a structure would not spawn due to some unused imports in the class.
----------, Feb 6, 2018

New features:
- Added the test command. (/cs test [schematic name])
- Added safety features to check for bad configuration of the plugin.
- Added the option to sink structures into the ground.
- Added option to get rid of the air.
- Fixed permissions
- Added list command to list the active structures. (/cs list)
----------, Jan 28, 2018

- Added support for 1.12.
----------, Jun 29, 2017

You are now able to choose which y cord your structure spawns one. Note: this feature was not tested so report bugs please.

Updated saving type for config to show comments.
----------, Apr 13, 2017

Fixed an error when the plugin started up. The plugin now loads and commands work.
----------, Mar 24, 2017

Resource Information
Author:
----------
Total Downloads: 74,222
First Release: Mar 21, 2017
Last Update: Jun 23, 2024
Category: ---------------
All-Time Rating:
78 ratings
Find more info at github.com...
Version -----
Released: --------------------
Downloads: ------
Version Rating:
----------------------
-- ratings