Tileset Behavior

Introduction

Tiles often have an implicit relationship to one another in the context of map editing and generation. For example, multiple tiles may make up a single object when drawing maps, while individual tiles in this group may not make sense when drawn alone.

In Tilesetter, Relations are used to describe how tiles relate to others.

Defining Relations

Relations are assigned to tiles through operations performed on them. Some types of relationships link tiles in both generation and map editing contexts, while others are only used for the latter. A tile’s Relations can be viewed in the Tile Properties View under the ‘Relations’ tab.

_images/relations.png

Several different types of Relations, each with its own purpose, are supported by Tilesetter. Below are detailed descriptions for each of them.

Blob Relations

Blob relations group several tiles into a Blob tileset, specifying a role in the set for each one. This Relation is required for auto-tiling as it describes what tile to use for each border scenario, but it is also used when generating tileset visuals.

A Blob relation is created by generating a Blob Set, where all newly created tiles are assigned a role within the relationship. Each generated tile’s role dictates how Tilesetter should generate border graphics for it, however, these tiles can be swapped out for pre-drawn ones.

Managing

By selecting a centerpiece tile in the set, you’re able to view the details of the Relation in the Tile Properties View. Here, the left side shows all neighboring tiles which the set has borders for connecting to, and the right side shows what border tiles are used for each neighbor formation.

_images/blob-rel.png

By clicking the smaller slots around the center display on the right, you can cycle through possible neighbors, making the center slot show the tile that serves as a border for that scenario.

_images/blob-rel-cycle.gif

Clicking the center slot allows you to swap that specific border tile for any other. This allows pre-drawn tiles to be used for auto-tiling in the map editor.

_images/blob-swap.gif

Wang Relations

Similar to Blob relationships, Wang relations are used to designate a role for each border tile when auto-tiling, as well as for generating tile visuals.

They’re created when generating Wang Sets, and these relations can be managed in the same way as described above for Blob ones.

Prop Relations

Props ‘glue’ several tiles together by considering multiple tiles as a single object during map editing. This type of relation guarantees a tile formation is not broken, as placing a single tile from the group will place the whole formation, and removing any of its tiles will remove all of them.

Tiles can be grouped together as Props by selecting a formation in the Set View, right clicking and choosing ‘Group as Prop’.

_images/prop-rel-create.gif

Managing

Any of the Prop’s tiles can be viewed in the Tile Properties View to reveal the whole formation. Here the Prop can be dismantled by clicking the ‘x’ icon at the top right, or an optional ‘Prop Medium’ parameter can be specified.

_images/prop-rel.png

The Prop Medium option ensures the Prop always lies inside terrain made from the tile specified, creating borders with adjacent terrains if necessary. The tile selected here is also used to fill in cells where the prop’s tiles were when it is removed during map editing.

_images/prop-medium.gif

Proxy Relations

Proxies allow for tile variations. Tiles can act as variants to others through this type of relationship, allowing for any of a tile’s variants to be picked at random as a replacement when map editing.

By selecting at least two tiles, right clicking and choosing ‘Set Proxy’, the last tile in the selection, or the tile with an already existing relation, will now have all other tiles as its variants through a Proxy relation.

_images/proxy-rel-create.gif

Managing

Viewing the base tile in the Tile Properties View lets you edit the probabilities in which its variants replace it when map editing. By default, all variants have a 0% chance of appearing, but relative weights can be specified to fine-tune these chances.

_images/proxy-rel.gif

Dismissing a tile as a variant is done by viewing it in the Tile Properties View, clicking the main slot and picking an empty cell in the Set View.

_images/proxy-dismiss.gif