LevelGenerationConfig

Class in ChivalrousGames.DungeonMaster

Description

Holds configuration for Level generation.

Fields

generationStartType LevelGenerationStartType Configure the starting point for the generation of the Level.
If you choose “Specified Starting Rooms”, you have to use the “Preset Room wizard” once this Level is created to add the starting Rooms.
startingRoomCoordinate Point This is the coordinate where the first Room of the Level will be created.
Useful if you want to set the first Room at the Level limit or right in the center.
presetRoomsFULL version only PresetRoomList A list of PresetRooms that are always included in the Level.
generationFillType LevelGenerationFillType Configure how the Level is filled with Rooms during the generation.
“Ordered Rooms And Ordered Directions” usually gives more linear levels.
“OrderedRoomsAndRandomDirections” gives a little more random shape to the Level.
levelCoordinateFULL version only Point Where this Level is located in relation to other Levels.
levelMarginFULL version only Vector3 The level margin.
The X value is the minimum margin in Unity units between this level and the next level on the X axis (applies to right side of the level)
The Y value is the minimum margin in Unity units between this level and the next level on the Y axis (applies to up side of the level)
The Z value is the minimum margin in Unity units between this level and the next level on the Z axis (applies to front side of the level)
Negative values are considered zeroes
rooms List<Room> Each Room in this list can be used by this Level will use to generate itself.
roomSize Vector3 The size of each Room in Unity units. A Level will only accept Rooms that fit with its configured size.
use2dPhysics bool If true, the Level will use 2d physics to detect Dungeon Character.
dynamicNavMesh bool If true, the Rooms of this Level will generate and maintain a dynamic NavMesh.
roomTriggerPlane Plane The Plane on which the RoomTrigger will be drawn to detect the Dungeon Character. Should be identical to your Dungeon layout: so XZ for overhead, Xy for SideScroller, etc.
maxWidth int Max size in number of Rooms for this Level along the X Axis.
Should probably be 1 if you use 2d Physics and a ZY Plane.
maxHeight int Max size in number of Rooms for this Level along the Y Axis.
Should probably be 1 if you use 2d Physics and a XZ Plane.
maxDepth int Max size in number of Rooms for this Level along the Z Axis.
Should probably be 1 if you use 2d Physics and a XY Plane.
minRoomAmount int The minimum Room amount this Level has to contain to be considered valid.
randomGenerationSeed bool If true, the Level will randomize generation seed prior to each level generation rather than take the specified generation seed.
generationSeed String The seed used to generate this Level at random. Can be any text.
randomSpawnSeed bool If true, the Level will randomize spawn seed prior to each level generation rather than take the specified spawn seed.
spawnSeed String The seed used to fill this Level with Spawnables at random. Can be any text.
maxGenerationAttempts int The maximum attempts the Dungeon has to generate this Level before giving up for each Dungeon generation attempt.
wallConnectorType ConnectorType The type of connector that is considered a wall for this Level.
Default walls are supplied (based on the map orientation) in “ChivalrousGames\DungeonMaster\Tools\DefaultConnectorTypes”.