Automatically Generate a Dungeon by setting up parameters and choosing rooms/paths compositions
or
Manually place Rooms and Paths inside the level to build your own Dungeon with more precision
Of course the first option works at Runtime so you can generate entire Dungeons while the game is running.
And you can combine both options : Automatically generate the Dungeon and then modify the generated elements (you can freely remove/modify/add rooms and path).
RoomGraphComponent : Handles connections between rooms. These connections will lead to path creations. Note that the one which is attached to DungeonGenerator handles the inter-floors paths wherease the one attached to the DungeonFloor handles the paths which resides inside the floor.
RoomPlacementComponent : Handles how the rooms will be spawned and disposed when you choose to automatically generate the Dungeon
DungeonAgentHandler : Its only purpose is to work pair to pair with the DungeonAgentComponent and the DungeonAgentControllerComponent to handle the masking of walls and objects in top down mode