Skip to content

Theme Properties

kobewi edited this page Dec 27, 2024 · 6 revisions

The theme has a long list of properties, divided into sections.

Main properties

  • Center Texture: The most important texture. It draws as a base of your cells, but also defines their size and shape. The texture should be grayscale (preferably white), because it will be modulated.
  • Empty Space Texture: Optional. Texture that draws in empty or undiscovered coordinates when drawing cells. Also drawn in Map Editor.
  • Player Location Scene: Optional. The scene instantiated when using add_player_location() method. The root must be Node2D-derived. If not provided, drawing player location using MetSys methods is not possible.
  • Show Exact Player Location: If enabled, the player location scene will be drawn at the exact position in the cell (player position is remapped to relative position inside a cell). If disabled, the player location is always drawn in the center of the cell.
  • Mapped Display: Defines how mapped rooms are displayed as a bit mask of options.
    • Center - If disabled, center texture will not be drawn.
    • Outline - If disabled, room walls will not be drawn.
    • Borders - If disabled, walls will be drawn instead of passages.
    • Symbol - If disabled, symbols will not be visible.
  • Separator Mode: Defines how separator textures are drawn, when available. Has no effect in shared borders mode. It has 2 parity sub-modes and 2 rule modes. Single parity mode makes the separator drawn only on right and bottom side of the cell. In Double parity mode, the separator is drawn on all sides, which might make it appear too thick. In Empty rule mode the separators are drawn only when there is no border between cells. In Full mode, separators will be drawn together with non-wall borders (so they will also appear in passages etc.). Default is Full Single.
  • Use Shared Borders: If enabled, borders will be shared between adjacent cells (i.e. placed at the middle of the edge between cells). Otherwise borders are drawn fully inside the cells. This option makes drawing the map more expensive in terms of performance.

Colors

  • Default Center Color: Modulation of the center texture when it's not overriden by custom color.
  • Mapped Center Color: Modulation of the center texture when the cell is mapped.
  • Default Border Color: Modulation of the border textures when it's not overriden by custom color.
  • Mapped Border Color: Modulation of the border textures when the cell is mapped.

Symbols

  • Symbols: The list of available symbols. The symbol texture will always appear centered at the cell. It can be bigger than the center texture, but it's not recommended.
  • Uncollected Item Symbol: Symbol automatically displayed when calling register_storable_object_with_marker(). The number must be within the array defined in Symbols. -1 is no symbol.
  • Collected Item Symbol: Symbol assigned when using store_object() on a marked object. -1 is no symbol.

Border Textures

Note that all border textures should be grayscale, preferably white, because they are colorized.

  • Wall: The texture used for a wall, i.e. the default impassable border. The texture is facing east (right), so it should be thin line with the same height as the center texture. Don't make it too thick, to prevent overlaps.
  • Passage: The default texture used for passage, i.e. passable border. Same rules as above.
  • Separator: Optional. The texture used to draw fake border between cells (based on Separator Mode). It draws inside rooms and separates them into grid. If the height is lower than center texture's, the separator will be centered. Unlike other textures, the separator is not modulated - it always has the original color. It's recommended to make it least prominent possible, otherwise it might hurt map readability and cause confusion.
  • Borders: A set of alternate borders that can be set in addition to the default wall and passage. They can be anything; usually used for doors, barriers etc.

If your theme has rectangle shape (as determined by the center texture), the above border properties are instead split into vertical and horizontal variants.

  • Vertical Wall/Passage/Separator/Borders: The vertical texture for borders, which draws on sides. The height should match center texture's height, just like above.
  • Horizontal Wall/Passage/Separator/Borders: The horizontal texture for borders. For drawing simplicity it's also oriented vertically, but its height should match the width of the center texture.

Corner Textures

Corners draw at the connection point of borders and will overlap the border textures. They can't be colored explicitly, instead their color is average color of the adjacent borders.

  • Outer Corner: The texture that draws at the outer bounds of the room, oriented to bottom-right.
  • Inner Corner: This texture only appears in concave (non-rectangle) rooms and draws at the corners inside the room, oriented to bottom-right.

When using shared borders mode, the above corner textures are instead replaced by this set. The coloring rules are a bit different - if multiple borders meet at the same corner, the resulting color will favor custom colors instead of the default one. You can assign the same texture to all fields or leave them empty.

  • U Corner: Corner of a single border that divides a U-shaped room.
  • L Corner: Corner of 2 perpendicular borders.
  • T Corner: Corner of 3 borders connecting at one point.
  • Cross Corner: Corner of 4 borders.