Grid Path Steps

From PMDOWiki
(Redirected from GridPathBranch)

The Grid Path Steps are a family of floor generation steps. They are used exclusively in GridFloorGen. Their typical priority is -4.

Usage

Grid path steps are used to generate a path of rooms and hallways in grid floors. Each different variant of the step does so through different methods.

Variants

The following different grid path steps exist in PMDO.

Example Variation Description
Beetle One large room is generated in the middle. Then, other rooms are generated connecting to this large room.
Branch The rooms and hallways are spawned in a continuous path, which is calculated by the minimum spanning tree algorithm.
Branch Spread The rooms and hallways are spawned in a continuous path, which is calculated by the minimum spanning tree algorithm. It is prioritized to spread them apart as much as possible, in which cells have the least adjacent cells are preferred to be traversed to.
Circle A ring of rooms is generated on the outer cells of the grid.
Cross One center room with hallways and rooms coming off of it in the four cardinal directions (north, south, west, east) is generated.
Edge All rooms are placed on one side of the map.
Grid A perimeter of rooms is formed on the outside cells, while hallways are formed inside the cells.
Tiered The floor is generated in tiers of different rooms. Then, a random value of hallways connect each tier together.
Treads Two large "treads" of rooms are generated on the sides of the grid, with smaller rooms and hallways generating in between them.
Two Sides A path consisting of rooms on the far right and far left of the grid are generated.

Special Variations

These variations are unique in that they are not meant to be used in the editor, and have several different odd properties about them.

Pyramid

A very specific path step for generating the pyramid in Forsaken Desert. It places a giant room in the center of the floor and a connecting room below it. From that connecting room, it behaves like Grid. It is recommended to not use this step, as it is complex and will likely be broken down into separate generators in the future.

Specific

This populates a room by creating a specific path of rooms. It is editor unfriendly.