Lycanites Mobs now features a new Dungeon System powered by json configs. This system is new and is still missing some features and needs some refinement but it stable to use.
Dungeons are currently disabled by default but can be enabled in the general config or with this command: '/lm dungeons enable'
Super Performance: The Dungeon System works by generating a Dungeon Layout, this is incredibly fast and is then put to one side, then whever any chunks are generating, if any Dungeon Layouts use those chunks, then those parts of the dungeon are generated. This removes all possibility of cascading world gen lag making dungeons as efficient as similar world gen such as vanilla forests, regardless as to how large the dungeons are.
All dungeon configs can be found in the dungeons config folder and are split into different types, use the menu to browse each json part that makes up a dungeon.
You can create as many custom dungeons as you like.
All dungeon configs can be found in the "config/lycanitesmobs/dungeons" folder. You can use the command "/lm dungeons reload" when in game to reload all dungeons allowing you to test on the fly! There is also a "Dungeon" debug option in the lycanitesmobs-general.cfg file which will enable a lot of logging to the console if you need it, though errors should always show up in the log and shouldn't crash the game, instead the broken dungeon is ignored.
Dungeons are made up of 4 parts, the Dungeon Schematic, Dungeon Sectors, Dungeon Strucutres and Dungeon Themes. You can find these all stored in each config subfolder.
You can always copy a default dungeon json files and repurpose them instead of writing them from scratch too, just be sure to change the name or only one of the mob events will load!
Each property uses a specific data type, please look up how JSON works if you don't know:
Short for integer, this must be a whole number, can be negative if applicable.
This can be a whole number or a decimal value such as 0.5, and can also be negative if applicable.
Short for boolean, this can be true or false (no quotation marks).
This is text and must be in "quotation marks".
This is a nested JSON object with properties of its own.
This means you can have multiple entries of the data type inside the [brackets].