Skip to content

Creating Map Points

Cromha edited this page Mar 26, 2024 · 13 revisions

Introduction

Map points are specific map locations store in the map.yaml file that are displayed as two coordinates: x and y. Where x is the east/west axes and y the south/north axes. Map points required 4 attributes to work, but there are other that are optional. Map points are considered to be 1 square mile by the game engine.

Creating full maps from a text editor can be demanding and long. It's why I've created the Bane Of Wargs Map Editor, which uses a simple-to-use Libre Office Calc .ods document and a python script to parse that .ods file and generate a map.yaml file from that.

A generic map point:

Snap(4)

Map points should be named point<number> otherwise, it will not work, where number is an integer. All points in the map.yaml file should be store by numerical order (starting from 0 to any number). Two map points shouldn't be named the same.

        y+1
         N           x: 1 // means it is 1 time to the east
         ^
        / \          x: -1 // means it is 1 time to the west
x-1 W <     > E x+1
        \ /          y: 1 // means it is 1 time to the north
         v          
         S           y: -1 // means it is 1 time to the south
        y-1         

Map zones are content that are stored in the zone.yaml file. It is used in the map legend, but also to define if the zone/map point is a generic zone (river, plains, forest, fields...) or a village, an hostel, a stable...

Full Explanation

Here is a full example of a map point definition:

point<digit(int)>:
  x: <x coordinates(int)>
  y: <y coordinates(int)>
  map zone: <zone name(str)>
  blocked
  - <South | North | West | East | North-East | North-West | South-East | South-West(str)>
  item: # not required
  - <item id(str)>
  key: # not required
    remove key: <true | false(bool)>
    required keys:
    - <key item id(str)>
  enemy type: <enemy type(str)> # not requied
  dialog: <dialog id(str)> # not requied
  npc: # not requied
  - <npc id(str)>

Full explanation of all attributes:

  • x // Here you will enter the x coordinates.
  • y // Here you will enter the x coordinates. // X and Y coordinates must be specific to only one map point.
  • map zone // Here you will put the id of the map zone.
  • blocked // Here you will list all blocked directions at this location of the map.
  • items // Here you will list all items that the player will found on the ground and will be able to pick them up.
  • key
    • remove key // Here you will enter either true or false, depending on if you want the key to be removed from the player inventory after using it.
    • required keys // Here you will list every key that are required to enter this location
  • enemy type // What is the type of the enemies that will spawn here. (Enemy Categories)
  • dialog // The dialog that will be shown when entering this location if the player has the right conditions.
  • npc // Here you will list the npcs that the player will encounter at this location.
Clone this wiki locally