Transform Rule

Dungeon Architect lets you specify offsets to your visual nodes to move/scale/rotate them from their relative marker locations.

Static node Offset

However, if you want a more dynamic way of applying offsets (based on blueprint or C++ logic), you can do so with a Transform Rule. This can be very useful to add variations to your levels for certain props

Using Transform Rules#

To assing an existing rule into the node, Check the Use Transform Logic property and select the rule you would like to attach to the node from the dropdown list

Assign an existing Transform Rule

Create a new Transform rule by creating a new blueprint class derived from the appropriate DungeonTransformLogic. It should match the builder you are targeting

Create a new Selection Rule

Open up the blueprint and override the Get Node Offset function. This function will be called by the engine and the logic you put here will let you decide on the offset that needs to be applied on this node

Override function to define logic

Example #1#

In this example, a single rock mesh is randomly rotated, and slightly scaled and translated to give a nice cave like look

Rocks randomly rotated, translated and scaled

A different transformation rule is applied to ceiling stone meshes for more variations

Transform rule applied to rock nodes

Cliff Random rotation rule

Example #2#

Here is an example where alternate pipes are rotated by 180 degrees to give a visually appealing look

Alternate meshes are rotated by 180 degrees

This was done by rotating the mesh node by 180 degrees for every alternate cell (similar to the checker rule logic seen previously)

Rule assignment

Example #3#

In this example a small random rotation is applied to orange ground tiles. Useful while creating ruins when laying down broken tile meshes

Transform rule applied to orange ground meshes

Transformation Rule Blueprint