# Character Helper

The **Character Helper** actor (**BP\_QuestMapPro\_CharacterHelper**) is used by Quest Map Pro to manage character interaction with world actors. It is added to the player pawn during runtime initialization and contains several overlap volumes. It should never be placed in the world or added to the character manually, though if this is done it will destroy itself upon initialization.

{% hint style="danger" %}
This actor should never be manually added to player pawns/characters or maps. The Systems Manager will add this to your player character as part of the Quest Map Pro initialization process.
{% endhint %}

## Implementation <a href="#h.zd3jjrklm9hs" id="h.zd3jjrklm9hs"></a>

The Character Helper is a pretty simple helper actor. Its primary function is to manage overlap events between the character and other actors utilized by Quest Map Pro such as landmark actors, waypoint actors, etc. This is done through a number of overlap volumes. These volumes are set up using settings from the [Systems Manager](https://dapper-raptor.gitbook.io/quest-map-pro/systems/systems-manager). Settings in the Systems Manager that pertain to the Character Helper are:

* Configuration: Character Helper Offset
* Configuration: Discover Radius:
* Configuration: Landmark Activation Radius
* Configuration: POI Activation Radius
* Configuration: Hidden Object Activation Radius
* Configuration: NPC Activation Radius
* Configuration: Player Class
* Debugging: Show Player Overlap Volumes

Additionally, during initialization the Systems Manager will attempt to get the size of the capsule component from the player character actor to set the correct Capsule Size in the character helper. In the case that a value cannot be retrieved, a default value if *x=96.0*, *y=42.0* will be used (reflecting the default capsule size used in the Unreal Engine templates).

Upon initialization, the character helper will check to see if the boolean “**Added Manually**” is set to *false* (default state is *true*). If it is *true*, the character helper will destroy itself. This is to ensure the character actor is unlikely to be accidentally added to actors or the world.

## Functionality <a href="#h.x0nca1y9kl07" id="h.x0nca1y9kl07"></a>

The Character Helper actor contains several events that handle all character interactions with overlap events. This facilitates functionality such as discovering landmark locations, detecting enemies, clearing waypoints and similar actions.

## Considerations <a href="#h.xjy1kqw7zey1" id="h.xjy1kqw7zey1"></a>

Due to the number of overlap volumes, the Character Helper actor may need significant integration effort made when being added to a project with projectile weaponry. Additionally, there may be some performance cost incurred when using Quest Map Pro in a project with scenes with a large number of actors. Both scenarios can be addressed by configuring Quest Map Pro to work with custom collision channels (tutorial coming soon).
