promotional bannermobile promotional banner
premium banner
This is an example of how you can make and design RougeCraft Dungeon Packs.

Description

This is an example of how you can make and design Rougecraft Dungeon Packs.

 

Dungeon packs are made through a combination of config files and a datapack with structures.
Let's start with some basic rules of the dungeons. Roguecraft's dungeons are divided in to grids of rooms 19 x 19 big with the edge blocks been shared between any neighboring rooms. Rougecraft's Keystones use Minecraft functions to generate rooms so anything that you can do through a function should be possible to generate, check out the Example Pack for an idea of how it works.

 

In the center of each grid at Y:118 once a room has been generated there is a block called "room_active" which is how the mod indicates if a room is active or not, it turns in to a "room_deactive" block once the dungeon ends/stops.
Rooms can be larger than 1 grid if desired but in that case make sure to follow the grid format "ex: 19x38" and to manually put a "room_active" block in the center of the extended grid.

 

Now on to how to design a Dungeon Pack. Here is an example Dungeon Pack I threw together where you can see how they're designed.
The template provided has the namespace "testpack" and the basic rooms and boss rooms are named this "level_1_room" & "level_1_boss_room" (excluding room number and direction) so what you enter under "Dungeon Pack" is: "testpack:level_1_room" for the regular rooms & "testpack:level_1_boss_room" for the boss rooms. The Keystone generates 4 different rooms per direction (North, South, West & East) meaning you'll have to make sure your room generates correctly in these different directions by adjusting the placement in the function for that direction. The name for a function when creating it should then be something like this: "testpack" for the namespace "level_1_room" for the room set's name which should be the same for all of them and then after that you HAVE to add "_<number>_<direction>" at the end for the mod to know what function to get at what time. The name for the functions should then be: "testpack:level_1_room_<number>_<direction>" (Example: "testpack:level_1_room_2_south" or "testpack:level_1_boss_room_1_south" for the boss rooms). Then make sure to ender how many basic & boss rooms you have in this case, which is 2 & 1 for this example pack.

A picture of the grid & room active layouts(This image shows the Grid Layout and where/how the "room_active" & "room_deactive" blocks are placed)