Dungeon Architect for Unreal Engine 2.32 Help

Query Interface

The query interface has various helper functions to query the structure of the dungeon. You can use the query interface in your selector / transform logics or marker emitters for more control

Each builder implements its own query interface.

Access the Query Interface

You can access the query interface from different places

Query interface in the selection rule
Query interface in the transformer rule
Query interface in the marker emitter
Query interface from other blueprints

Grid Query Interface

The Grid Query Interface lets you query the structure of a grid builder based dungeon

Get Cells

Gets a list of all the Cell IDs in the dungeon. A corridor patch or a room is a cell. A cell is always rectangular in shape, with a center and size

Get Cells

Get Cells Of Type

Similar to Get Cells function but filters the cells based on a type (Room, Coordor)

Get Cells Of Type

Get Cell Dimension

Gets the dimension of a cell. This takes in a cell id and will return the center and the size of the cell

Get Cell Dimension

Get Path Between Cells

Gets a valid path between any two cell points. This can be used to create waypoints in your game. There is an example in the quick start guide demonstrating this

Get Path Between Cells
Query path between two cells

Get Furthest Rooms

Find the furthest rooms in the dungeon. This function returns two cell ID. This can be useful for setting the start / end rooms (or spawn / boss rooms)

Get Furthest Rooms

Get Cell At Location

Pass in a world location and get the cell id. This is useful for finding the cell an actor is in. For e.g., if you'd like to check if all NPCs in a room are dead before unlocking a door, you would iterate through all the actors and check if they are in the same room the player is in

Get Cell At Location

Get Cell Type

Find the type of the cell (Room, corridor). There is another category called CorridorPadding, which should also be considered a Corridor

Get Cell Type

Get Random Cell

Gets a random cell from the dungeon.

There also a version that takes in a random stream. You should use the random stream version if you want to guarantee the same dungeon for a particular configuration. The dungeon's random stream is access from within the selector and transform rules

Get Random Cell

Get Random Cell Of Type

Gets a random cell of a particular type from the dungeon.

There also a version that takes in a random stream. You should use the random stream version if you want to guarantee the same dungeon for a particular configuration. The dungeon's random stream is access from within the selector and transform rules

Get Random Cell Of Type

Contains Stair Between

Check if there is a stair connecting the two input cells

Contains Stair Between

Contains Door Between

Check if there is a door connecting the two input cells

Contains Door Between

Get Stair Between

Get the stair information between the two input cells

Get Stair Between

Get Opening Point Between Adjacent Cells

When two cells are adjacent to each other, there might be a constraint on how we can traverse through them. There might be a height variation, or there might be a wall between the cells. In that case, the only valid way to move across is through the stair or a door repectively. This function calculates and returns the correct world position. This position lies in the edge of the two cells. If there is no barrier between the two cells (doors / stairs) a point in the center of the edge is returned

Get Opening Point Between Adjacent Cells

This function is used in the path demo to correctly place the spline through the doors and stairs

Query path between two cells

Get Adjacent Cells On Edge

Get Adjacent Cells On Edge

You can use this function in a selector logic of a marker that is on the edge (e.g. Walls / Fence). This function returns the cells adjacent to the marker. You can use it to decorate your walls / fence selectively. E.g. do no spawn lights on walls of an empty side, or have a different art style when a wall is shared by two rooms

Is Near Marker

Is Near Marker

The function returns true if a marker with the specified name is found nearby. You specify the distance to search and the marker name.

This function is useful if you don't want to place blocking items near doors / stairs.

Query System
Query System
Last modified: 14 September 2024