Control Point

Control Point Icon

Control Points are special actors through which the route of movement is determined.

Control Point details panel.



Control Point has parameters in three categories ConfigurationConfiguration Spline and Configuration Style.

Configuration category has general parameters which are responsible for the essential functionality.

Configuration Spline category has parameters and buttons dedicated to Spline passing through selected Control Point.

Configuration Style category has parameters dedicated to its visual representation when editing and during gameplay. Also LOD settings can be found here.

Is Should ValidateWhether do validation or not.
Validation is done recursively. Every variable in Configuration and Configuration Spline categories are validated.

Actions array is validated recursively, so we are sure, every Actions has fulfilled all mandatory fields and their variable are set well in the most obvious way.

Settings Override is validated recursively only if it’s fulfilled, so every parameter listed inside its configuration is validated or run it’s own Valiadation function. So we are sure every parameter is not fulfilled badly in the most obvious way.
If we decide to do not use Settings Override simply leave this parameter as None.

Validation impact on performance – so this functionality is very useful during level design to catch every obvious mistakes and oversights.
But when we want to build project and need to get the highest performance – this variable should be set to FALSE.

It is safe to leave this value always TRUE. It take a little impact on performance – but if we have reserve e.g. our project is small, we can simply leave this value TRUE (by default).

BEWARE: When this variable is set to FALSE and we forget to fulfill some variables or set them badly then Component can work unpredictely or even crash !!
Max ActorsMaximum Actors concurrently be in the same time on this Control Point.
When -1 then unlimited.

This parameter is important only if you use more than one Actor on the same Control Points path in the same time. Or if this Control Point is shared between more than one path.

Managing the behavior of Actors who try to enter this Control Point, which is currently occupied by the maximum number of Actors specified by this parameter – is performed using Move Order->Bypass parameter (you can found it inside Component or Spawn Point).

Is a reasonable to not let occupied Control Point by too many Actors. Nothing matter if you use simple “Go Next” action or advanced method – when there is too many Actors walking to one point they can stuck, and event Nav Mesh pathfinding or avoidance can’t help with it. So be careful as a designer.
PriorityHigher value mean higher priority of this Control Point.
Move Order can use this value to choosing next Control Point.

By default only Move Order Randomly use this value. You can setup Move Order Randomly to use this value or not and setup how to react on higher priority.

More information about it, you can find in Move Order page.
RangeRange of this Control Point. Value is in centimeters.

Currently Actions “Go Next …” use this parameter to check if Actor achieved the goal when “Go Next …” Action is finished.
You should set this value enaugh big to your character capsule size or if you allow more than one Actor on one Control Point – enaugh big range to hold them all.

Also Occupied Procedure – Stop occupied when really leave CP Range use this parameter. The function keep occupation of Control Point until Actor really leave its range.
ActionsSequentially launched Actions when Actor achieved this Control Point.

Every Action has its own specific configuration when you add it to the list.

Default Actions can be divided into three categories:
  • Character – whose name starts with “[Character]…” and should only be used for children of the class “Character” because they use character specific functions and variables.
  • Pure Actor – whose name start with “[Pure Actor]…” can be used on any kind of Actors also on Characters, Pawn, Emitters, Static Meshes, etc. These Actions don’t use specific functions or variables. In most cases you don’t want to use them for characters because they are designes specially for pure Actors.
  • General – whose name don’t have any prefix. These Actions can be used on any Actor. Some of them have special function which don’t affect on Actor who owns this component e.g. “Back to Action”.
Actions are designed to be easly created for your needs. To create new kind of Action which cover your needs, simply create child from CP_Action_Base or duplicate one of existing Action objects and modify. Its structure is simple and intuitive.

More specific information of Action and more about create your own Action you can find in Action page.
Settings OverrideOverride Component settings.

If you wish to change Control Points path or Rotation Procedure or any other crucial parameter of Component during Actor movement, you should use Settings Override.

Parameters inside Settings Override is validated the same way as Component parameters.

If you leave Settings Override as None, which is by default – you simply don’t use this function.
Button for Validate all parameters and functions recursively in this Control Point.

Validation is useful for check whether parameters and functions are setup well in most obvious way.
The validation result will be shown in the Output Log.

Every objects which has its own parameters are validated recursively for to be sure everything will be checked. This mean that any number of Actions of any kind you setup in this Control Point – all of them will be Validated according to their internal protocol.

This button is for manually run Validation function on this Control Point.
If you set parameter “Is Should Validate” to true – Validation function will run on this Control Point when the Component or Spawn Point using it calls its own Validation function. Also click on this Button Validate will do normal Validation process.
If you set parameter “Is Should Validate” to false – Validation function will not run on this Control Point when the Component or Spawn Point using it call its own Validation function. Also click on this Button Validate always show “Validate passed successfully !” because Validation function will not be fired.
Is Auto Update SplineWhen moving this Control Point on the level and Spline passing through it – this spline will be updated realtime in Editor (function Refresh Spline only Positions).

Auto updating function is implemented in Construction Script. Also is as heavy as big Spline is. This mean you when you set it true – it will impact on performance a little.
The best choice is to set it true when design Spline passing through this Control Point – and set it false when finish design.
Button for refresh Spline fully.
Function remove spline and create it again based on existing BP_ControlPoints and BP_SplinePoints. Every tangens of spline will be back to default.
Button for refresh Spline only positions.
Function only adapt positions of of spline point according to positions of BP_SplinePoints and BP_ControlPoints. Do not change any tangents.
Buttor for regenerate Spline.
Function completly remove Spline and all BP_SplinePoints. Then interpolate new position of BP_SplinePoints, spawn them and create new Spline between BP_SplinePoints and BP_ControlPoints.
Is Show Billboard in GameWhether to show billboard as graphical representation of Control Point during play.
Is Center to BottomWhether to vertically center billboard at bottom of sprite.
If true then vertical center of Control Point is on billboard bottom.
If false then vertical center of Control Point is exactly in the middle of billboard.
Is only relevant if Is Show Billboard in Game is set true.

The value is useful when one time use Control Points to create path for walking or driving and second time use Control Points to create path for flying.
Also create your custom style of Control Point billboard give you opportunity to set up center where you wish.

More Specific information about Styles and how to create your custom styles, you can find in Styles page
Is Show Occupied IconWhether to show animated arrow when Control Point is occupied by any Actor.
If true flying arrow indicates that the Control Point is occupied.
Is Show Targeted IconWhether to show animated target when Control Point is target for someone.
If true flying target indicates when someone try to achieve this Control Point.
Style Billboard ScaleScale of billboard.
Is only relevant if Is Show Billboard in Game is set true.
Is Show Occupators NameWhether to show occupator names.
If true flying list of blueprint name of current occupators is visible above arrow – occupied icon.

BEWARE: this will be working ONLY when Is Show Occupied Icon is set true.
Is Show Targeters NameWhether to show targetter names.
If true flying list of blueprint name of current targetters is visible above target – targeted icon.

BEWARE: this will be working ONLY when Is Show Targeted Icon is set true.
Occupator Name ColorText color of occupator names.
Is only relevant if Is Show Occupators Name is set true.
Targeter Name ColorText color of targeter names.
Is only relevant if Is Show Targeters Name is set true.
Style OutsideBillboard style of outside part.
Is only relevant if Is Show Billboard in Game is set true.
Style InsideBillboard style of inside part.
Is only relevant if Is Show Billboard in Game is set true.
Style IconBillboard style of icon part.
Is only relevant if Is Show Billboard in Game is set true.
LOD Max – BillboardMaximum distance to camera in centimeters for rendering Billboard of this Control Point.
When 0 then always render.
Is only relevant if Is Show Billboard in Game is set true.
LOD Max – Arrow & TargetMaximum distance to camera in centimeters for rendering Arrow and Target Icons of this Control Point.
When 0 then always render.
Is only relevant if Is Show Occupied Icon or Is Show Targeted Icon are set true.
LOD Max – NamesMaximum distance to camera in centimeters for rendering Occupator Names and Targeter Names of this Control Point.
When 0 then always render.
Is only relevant if Is Show Occupators Name or Is Show Targeters Name are set true.
Button to approve changes in the Configuration Style category.

Some parameters in Configuration Style category must be manually confirmed and implemented by click this button.
Simply rememeber to always click this button when change anything in Configuration Style category.
It is safe to click this button anytime you wish.

Event Dispatchers

Control Point has event dispatchers you can bind when need to design some special functionality.

Actor ReachedEvent fired when any Actor start occupy this Control Point.
As output variable you get Actor Concerned which is a reference to occupies Actor.
Actor LeftEvent fired when any Actor stop occupy this Control Point.
As output variable you get Actor Concerned which is a reference to leaving Actor.