Compass System

Documentation for BP_QuestMapPro_Component-Compass

The compass system is one of the core systems included with Quest Map Pro and facilitates player navigation within the game world via an on-screen compass widget. This widget includes built-in support for showing multiple types of markers as well as displaying different player states that are updated in real time.

Features

Navigation

The compass system in Quest Map Pro includes support for cardinal directions (North, East, South and West), intercardinal directions (NE, SE, SW and NW) and secondary intercardinal directions (NNE, ENE, ESE, SSE, SSW, WSW, WNW and NNW) that update in real-time to align with the player rotation. Each direction type is toggleable in the settings, allowing for maximum control over your desired experience. Additionally compass marks can be toggled on to provide heading information between the directions that are enabled, or simply to add visual flair to the overall UI.

World Feature Markers

Several types of markers are used to represent world features on the compass. These can be adapted to different uses and come in a few different categories.

Landmarks are used to represent in world locations of some importance. These may be used to represent dedicated areas such as cities and towns, mines and bandit camps or player starting locations.

Points of Interest (POIs) meanwhile represent smaller locations that the player may want to know about when they are in the vicinity, but may not necessarily be unique locations. This system could be used to represent material or harvesting nodes, or smaller locations that do not necessarily warrant a full landmark-status marker.

NPC markers are pseudo-dynamic markers that can be used to represent all sorts of non-playable characters (including other players) and are colorized based on their relationship to the player. By default, support for four different AI NPC states is included, being Friendly, Neutral, Suspicious and Aware In the case of other players, markers are colored based on whether they are “Team Mates” or not. This allows for a dynamic system that represents allied NPCs, as well as enemies in multiple states. NPC markers will update to represent NPC movement.

Dynamic Markers

As well as world feature markers, Quest Map Pro includes several dynamic markers that the player is able to have some level of control over or interaction with.

Waypoints are used to display locations the player has marked to travel to. By default this behavior expects that the Map System has been set up and configured to work in tandem with the compass, but it can easily be hooked up to other systems if desired.

Quest Markers represent locations in the world that are tied to quests. By default, support for a single “main quest” and several “side quests” is built in.

Player State Feedback

If desired, the compass can be configured to display several different states to the player via colorization of the widget. States included in Quest Map Pro are neutral, in combat, in quest location and a separate state to indicate nearby hidden objects (within a configurable range). Colors for each state are exposed within the compass settings.

Compass System Settings

Settings on the Compass System are documented on their own page for easier readability.

Setting Up Directions

Setting up directions is quick and easy. By default all cardinal, intercardinal and secondary intercardinal directions are already populated in the directions array. This makes it a simple process of using the various toggles to turn on and off each type.

However, in the case that you might want to build your own direction data, the Directions array makes this process easy. Each array entry, defined by Str_QuestMapPro_DirectionData, contains 3 fields.

In the case above, the direction text “North” defines the name of the direction. Note that this text will also determine how the direction appears on the compass. In the case of North, as it is a cardinal direction, it will be represented simply as “N”. For cardinal directions, one character (the first letter in Direction Text) will be used. For Intercardinal Directions, the first two characters will be used. Similarly, for Secondary Intercardinal Directions, the first three characters will be used. This should be taken into consideration when naming your directions.

The WorldRotation defines the rotation that matches this direction. In the above case, 0 is used for North, meaning that we would then use 180 for South, 90 for East and -90 for West.

Finally, the Direction Type defines the direction type. This is used for culling the name of the direction, toggling the direction on or off based on the direction toggles, and similar logic.

A note on offsetting all directions

In most cases, the Directions array should not be edited. However, it might be desired to rotate all directions by a specific offset. By default Quest Map Pro is configured to have North align with a rotation of 0, which would have it appearing as “up” in the editor when viewing the top orthographic view. If you wish to rotate all directions relative to this, rather than editing the Directions array, it is recommended to simply add the offset you wish to use via the Compass Offset value (under the Compass section of settings). Setting this value to 90, for instance, will move North to 90 degrees, East to 180, South to -90 and West to 0, effectively rotating the compass 90 degrees in the clockwise direction.

Last updated