Skip to main content

Settlement Layout

This page discusses the available parameters in the settlement layout section of the create settlement form. It's useful to have a basic understanding of the overall algorithm before reading this.

Generation stages

The road network is generated in configured stages. Each of these stages can be configured in the create settlement form, under the settlement layout settings, under generation stages:

road network stages

There are two distinct types of stages: district stages and the suburb stage. District stages create large lots that are used to form distinct districts. The suburb stage creates small lots at the edge of the settlement as the last stage of the generation.

The main building blocks of these stages are roads. There are two main types of roads created in the settlement - main roads and normal roads.

Main roads originate from the settlement center (or are branched from other main roads). Normal roads branch from main roads, and other normal roads. Between each stage, any unconnected normal roads are pruned, and main roads are trimmed back to the current perimeter of the settlement.

In action, the overall road network generation can look like:

road network generation

In the animation above we see three types of roads: main roads (in black), normal roads (in grey), and proposed roads (in green). Proposed roads are roads that haven't been placed, but are in the queue waiting to be processed.

Each stage can be customised - to enable this, change the layout preset to custom, which will enable the buttons in each of the rows. Each row has an edit button which takes you to the customisation menu for that stage.

District road stages

These stages correspond to the numbered stages in the create settlement form:

stages in form

Their goal is to create larger district lots, which form the outline of districts. Here's an animation of one of these stages:

animated road generation

And here is what that lot looks like after it was given to a district and the buildings were placed - note that the district added more roads to divide the district lot further.

actually created district

Buildings

Building material

The building material used by default during this stage. May be overridden by districts and individual buildings (e.g. temples will always be stone brick). For example:

dense buildings
Wood

dense buildings
Red tile

dense buildings
Slate

Building placement

How basic buildings are placed during this stage (i.e. buildings that don't have a dedicated layout, like castles or temples). There are three options:

  • Dense: buildings are placed in a compact, wall-to-wall arrangement.
  • Gaps: buildings are placed in a compact, wall-to-wall arrangement, and then shrunk so that the buildings do not touch.
  • Individually placed: specific building shapes (e.g. L shaped, rectangle) are fitted into the available plots.

dense buildings Dense

gaps buildings Gaps

individual buildings Individually placed

Roads & district shapes

Road branch type

How roads branch during this stage. Roads will continually expand and branch at random points until the desired area for the stage is met.

  • Continue: roads will be created at right angles to the origin road, and then continue in a straight line (with random bends according to the max angle).
  • Curve around origin: roads pointing away from the center will branch left and right, and the branched roads will stay a fixed distance away from the center of the settlement (with random bends according to the max angle), resulting in ringed settlements.

continue roads Continue

curve around origin roads Curve around origin

Max road angle

How much a road can be rotated in one direction when placing. If 0, will result in straight lines, and the higher this is, the more the roads wiggle.

max angle of 0 Max angle of 0

max angle of 30 Max angle of 30

Road segment length

How long each individual road segment is. A road segment is a line with a start and an end, and is what you interact with when editing roads in a settlement.

District size

Branch after # of segments

How many segments of a road to create before proposing a left and right branch. This (in combination with the road segment length) affects how big the created district lots are. For example:

branch after 2 segments Branch segments = 2

branch after 5 segments Branch segments = 5

On average, more segments will create larger lots - but as you can see in the second image, this isn't guaranteed.

Minimum district area

If a district lot is created with an area less than this, it will be merged into an adjacent district. For example, for the branch segments = 5 image above, the resulting districts looked like:

merged districts

Main roads

As main roads form the backbone of settlements, more can be created to give settlements different shapes. You can configure the chance of creating a new main road when branching from an existing main road, as well as limit the number of new main roads in the stage.

Misc

Place wall after

If a wall should be created around the lots generated in the stage.

Suburb stage

This stage corresponds to the suburb stage in the create settlement form:

suburb stage

This stage takes any remaining unplaced buildings, and organically grows roads out from the main roads leaving the settlement, as well as the settlement perimeter. In action, this can look like:

suburb generation

There are two types of lots created during suburb generation:

  • Main roads lots
    • created parallel to main roads
  • Offshoot lots
    • roads are created that 'offshoot' from the perimeter, as well as main road / other offshoots

main road lots Main road lots

offshoot road lots Offshoot road lots

Buildings

Building material

See district building material

Building placement

See district building placement

Density

The percentage chance that a plot will be used to place a building.

Roads

Offshoot section length

How many road segments to place while placing an offshoot. Branches will be proposed after this many segments.

Branch probability

The percentage chance to create a new offshoot (from a main road, or after processing a section of an offshoot).

Max road angle

See district max road angle.

Main road priority increase

When a main road spoke completes, this is the priority increase of the next main road spoke to propose. e.g. nextSegmentPriority = currPriority + mainSpokePriorityIncrease. Offset roads always increase by 1, and the element with the lowest priority will be processed next. Increasing this number makes suburbs wider, as they process more offshoots than main roads, while decreasing makes settlement longer and narrower, as more buildings will be placed along the main road.

priority increase of 0 Priority increase = 0

priority increase of 10 Priority increase = 10

Decoration

You can configure if a lawn background should be placed behind the lots created during this stage.

Trees, wall type

The tree settings allow you to enable and disabled trees in specific parts of the settlement, as well as controlling how many are generated.

In the main settlement, trees are generated next to roads in certain districts. In farmland, trees are generated between fields. In forests, trees are generated randomly in the forest lots.

You can also configure the type of wall that is used, wherever walls are configured to be placed. This will include walls at the end of a generation stage, as well as walls in castle districts.