Spawn Point

Spawn Point     Spawn Point is special actor which let you easly spawn Actors / Characters / Pawns / Cameras with Advanced Control Points Component.

Spawn Point Details v1.7.11

Spawn Point details panel.


Spawn 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 Control Points.

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

Is Start Spawn on Begin PlayWhether should start spawning instantly on Begin Play.
Otherwise we have the following options to start the Spawn Point:
  • Manually run event Spawn Point->External Called Events->Start Spawning.
  • It can be also started by Trigger with task Start Control Points System.
  • Also Action Trigger to Start/Stop Control Points System has possibility to start Spawn Point.
Is Should ValidateWhether do validation or not.
Validation is done recursively. Every variable in Configuration and Configuration Spline categories are validated.

Control Points listed in this particular Spawn Point are validated recursively. All Control Points in the list run it’s own Validation function which check his variables Actions which recursively run their Validation function.
So at the very end of the validation process we are sure – every elements connected to this particular Spawn Point has fulfilled every mandatory fields and variable are not fulfilled badly in the most obvious way.

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

Spawn Chooser, Spawn Triggerator, Move Order, Occupied Procedure, Rotation Procedure – all of them are validated recursively with their own Validation Function, so we are sure, every of this functions has fullfilled all mandatory fields and their variable are set well in the most obvious way.

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 in spawned Actor can work unpredictely or even crash !!
Spawn ClassesArray of Actor classes to spawn.
List of classes for using in Spawn Chooser function. Actor class for spawn can be chosen sequentially, randomly or by any other way you program your own Spawn Chooser function.

BEWARE: If Actor class in this list don’t have it’s own Advanced Control Point Component, it will be added to Spawned Actors.
Collision on SpawnCollision handling override when spawn.
Parameter used for node “Spawn Actor from Class”.
Life SpanLifespan in seconds of spawned Actors.
When it expires, the spawned Actor will be destroyed.
When 0 then lifespan function will be disabled.
AI Controller ClassAI Controller class for newly spawn Actor.
AI Controller is spawn and possess for spawned Pawn Controller.

BEWARE: AI Controller is spawned only for Pawn children and only if Pawn just doesn’t have one !!
Spawn ChooserSpecial function that determines which class will be selected from Spawn Classes array.

Currently there are two default functions you can choose:
  • Sequentially – get next position from Spawn Classes one by one
  • Random – get random position from the Spawn Classes array
Spawn Chooser function is designed to be easly created for your needs. To create new kind of Spawn Chooser which cover your needs, simply create child from CP_SpawnChooser or duplicate one of existing Spawn Chooser objects and modify. Its structure is simple and intuitive.

More about configuration of Spawn Chooser which is specific for every function and more about create your own Spawn Chooser you can find in Spawn Chooser page.
Spawn TriggeratorSpecial function that determines time between spawns.

Currently there are two default functions you can choose:
  • Randomized Interval – Spawn Actors in random interval in desired range
  • Custom Interval – Spawn Actors in custom intervals written in array
With this special function you can also decide how many times want to spawn and what is a starting delay.

Spawn Triggerator function is designed to be easly created for your needs. To create new kind of Spawn Triggerator which cover your needs, simply create child from CP_SpawnTriggerator_Base or duplicate one of existing Spawn Triggerator objects and modify. Its structure is simple and intuitive.

More about configuration of Spawn Triggerator which is specific for every function and more about create your own Spawn Triggerator you can find in Spawn Triggerator page.
Move OrderSpecial function that determines in which order Control Points will be selected.

There are two default functions you can choose:
  • Sequentially – will select next Control Point according to the filling of the Control Points array in Component.
  • Randomly – will select next Control Point random from the Control Points array.
Move Order function is designed to be easly created for your needs. To create new kind of Move Order which cover your needs, simply create child from CP_MoveOrder_Base or duplicate one of existing Move Order objects and modify. Its structure is simple and intuitive.

More about configuration of Move Order which is specific for every function and more about create your own Move Order you can find in Move Order page.
Occupied ProcedureSpecial function that determines the start and the end of the Occupation of a current Control Point.

Occupation is special state of Control Point. It inform that some specific Actor staying in the Control Point. Is useful when the same Control Point is used by more than one Actor. Control Point has Max Actors parameter which determines maximum Actor concurrently be in the same time on it.

When you have a group of Actors using same Control Points path or paths intersect sharing some Control Points – you can decide how to choose next Control Point or how to behavior when some Actor(s) occupied Control Point to which it is currently going.

Deciding about behavior when chosen Control Point is occupied – you can do in Move Order in configuration parameter Bypass.

There are three default functions you can choose:
  • Stay Occupied until Reach Next CP – current Control Point remain occupied until Actor start occupating Control Point it is going to.
  • Stop Occupied when Start Moving to Next CP – current Control Point will stop being occupied as soon as the Actor starts his movement to the next Control Point.
  • Stop Occupied when Really Leave CP Range or Reach Next CP – current Control Point will stop being occupied when Actor whose going to the next Control Point really leave the Range (Control Point parameter) of current Control Point.
Occupied Procedure function is designed to be easely created for your needs. To create new kind of Occupied Procedure which cover your needs, simply create child from CP_Occupied_Procedure_Base or duplicate one of existing Occupied Procedure objects and modify. Its structure is simple and intuitive.

More specific information of Occupied Procedure and more about create your own Occupied Procedure you can find in Occupied Procedure page.
Rotation ProcedureSpecial function which determines the rotation of an Actor during a movement.

Rotation procedure adapt every frame direction. It can be instant or smooth, depends on function.
In case of characters, Rotation Procedure can be ignored because Character Movement Component has its own Rotation Procedure which is equivalent to “Look Smoothly in the Direction of Movement”.
Also, if our custom Actor/Pawn has built-it rotation, we can safely set Ignore Rotation.

There are seven default function you can choose:
  • Ignore Rotation – leave rotation as it was when movement start. If Actor has its own rotation support this is the best choice.
  • Look Instantly in the Custom Direction – actor instanly looks at the selected rotation.
  • Look Instantly in the Direction of Movement – actor instantly looks at vector from last frame position to current frame position. You can also lock selected axis of rotation and choose rotation offeset relative to direction of movement.
  • Look Instantly in the Direction of Object – actor instantly looks at the selected object, also when object is in move.
  • Look Smoothly in the Custom Direction – actor smoothly with selected rotation rate looks at the selected rotation.
  • Look Smoothly in the Direction of Movement – actor smoothly with selected rotation rate looks at vector from last frame position to current frame position. You can also choose rotation offset relative to direction of movement.
  • Look Smoothly in the Direction of Object – actor smoothly with selected rotation rate looks at the selected object, also when object is in move.
Rotation Procedure function is designed to be easly created for your needs. To create new kind of Rotation Procedure which cover your needs, simply create child from CP_RotationProcedure_Base or duplicate one of existing Rotation Procedure objects and modify. Its structure is simple and intuitive.

More specific information of Rotation Procedure and more about create your own Rotation Procedure you can find in Rotation Procedure page.
Control PointsControl Points between which the actor moves. Every Action start by “Go Next…” or “Teleport Next…” use Control Points as destination targets.

The order of Control Points has the meaning depends on the Move Order Procedure.

Control Points are objects you should place on the level.

Configuration of Control Points is set inside themselves after you click their instance on the level.

If you leave Control Points array empty – only Begin Actions will be launched for the Actor who owns this component.

More specific information of Control Point you can find in Control Point page.
Begin ActionsSequentially launched Actions when this component start (see Is Start on Begin Play).

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.
Button for Validate all parameters and functions recursively in this Spawn 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 Begin Actions of any kind you setup in this Spawn Point – all of them will be Validated according to their internal protocol.
The same happen with Spawn Chooser, Spawn Triggerator, Move Order, Occupied Procedure, Rotation Procedure, Control Points and all particular parameters in this Spawn Point.

This button is for manually run Validation function on this Spawn Point.
If you set parameter “Is Should Validate” to true – Validation function will run on this Spawn Point when it start spawning. 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 Spawn Point when it start spawning. Also click on this Button Validate always show “Validate passed successfully !” because Validation function will not be fired.
SplineSpline can be used to move an Actor along it. Currently two Actions use Spline for movement. But nothing prevents you to create your own Action for movement or for any other reason using spline. Adding spline reference to your Component through Spawn Point does not obligate you to use it. For example in some Control Points you can move along Spline and on another Control Points you can Teleport or Move normally.

Spline is generated along provided Control Points with additional Spline Points between them. Control Points order in an array is crucial. After Spline is generated, you can modify it by moving both Control Points or Spline Points, and then refresh it by special Button available in Spline itself, concerned Control Points and Spline Points (, , ). If you wish to modify Spline tangent you can select them manually on spline, but after that use only button when refreshing to not loose your tangent modification.

It is also possible to use variable Is Auto Update Spilne which is available in concerned Control Points and Spline Points. Then any move of them enforce soft refreshing only positions of spline points. This is very useful option but its maintance is inside Construction Script what impact a little in performance. Suggest you use this Auto Update Spline option during spline design but after that turn off this functionality by deselect this value.

If any of Begin Actions or any Action in provided Control Points use Spline and you don’t have any in “Spline” field – you will see Validation error when try to start this Spawn Point.

It is safe to leave Spline empty if you don’t want to use it.

More specific information of Spline you can find in Spline page.
Button - Create New SplineButton for creating new Spline based on provided Control Points in this Spawn Point.
Between every provided Control Points one Spline Point is created.
A reference to a freshly created spline is used to fill in the “Spline” field.
Button - Remove SplineButton for removing Spline and all its Spline Points.
After removing, field “Spline” is clearing.
Is Show Billboard in GameWhether to show billboard as graphical representation of Spawn Point during play.
Is Center to BottomWhether to vertically center billboard at bottom of sprite.
If true then vertical center of Spawn Point is on billboard bottom.
If false then vertical center of Spawn 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 Spawn Points to spawn Actors for walking or driving and second time use Spawn Points to spawn Actors for flying.
Also create your custom style of Spawn 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.
Style Billboard ScaleScale of billboard.
Is only relevant if Is Show Billboard in Game 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.
Desired Max Draw Distance – Main BillboardMaximum distance to camera in centimeters for rendering Billboard of this Spawn Point.
When 0 then always render.
Is only relevant if Is Show Billboard in Game is set true
Button - Style UpdateButton 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

SpawnedEvent fired when any Actor is spawn by this Spawn Point.
As output variable you get:
  • Spawn Point which is reference to spawned Spawn Point
  • Actor Class which is a spawned Actor Class
Spawn Triggerator try to spawn all the time as it is configured. If Max Number of Concurrent Actors or Max Spawn Number don’t let to spawn more Actors then this event is not fired.
Spawning StartEvent fired when Spawn Point start spawning.
As output variable you get Spawn Point which is a reference to spawned Spawn Point.
Spawning StopEvent fired when Spawn Point stop spawning.
As output variable you get Spawn Point which is a reference to spawned Spawn Point.

External Called Events

Spawn Point has dedicated Graph External Called Events which hold events for managing selected Spawn Point manually.

Start SpawningEvent Start Spawning gives you possibility to start this Spawn Point manually.
Stop SpawningEvent Stop Spawning gives you possibiilty to stop this Spawn Point manually.
Run Action on All Actors Belonging ToEvent Run Action on All Actors Belonging to gives you possibility to run Concurrent Action on all Actors spawned by this Spawn Point.
Parameter Action should be properly created Action object by node Construct Object from Class.
Concurrent Action run on these Actors parallel with their normal Actions.

Be aware that not all Action can be run safely as Concurrent Action. Especially every “Go Next …” Actions it is usually not practical to run as a Concurrent Action.

Be aware also that after Concurrent Action finished on Actor, nothing more will happen – in opposite to normal Action when next one start from the list.
Stop Control Points System on All Actors Belonging ToEvent Stop Control Points System on All Actors Belonging to gives you possibility to stop Advanced Control Points Component on all Actors spawned by this Spawn Point.

Be aware that instantly stop every Actions currently run on all Actors. Every default Action has overriden and configured event Do Stop Action which reacts appropriately in case of immediately stop order. But in some cases stopping Action in the middle of working can be unpredictable.
Start Control Points System on All Actors Belonging ToEvent Start Control Points System on All Actors Belonging to gives you possibility to start Advanced Control Points Component on all Actors spawned by this Spawn Point.
Parameter Is First Start when is set to true then Component will start from Begin Actions. It is safe to always set this parameter true. But sometimes you would continue movement or Actions where they finished before – in this case set this parameter as false.

Be aware that instantly stop every Actions currently run on all Actors. Every default Action has overriden and configured event Do Stop Action which reacts appropriately in case of immediately stop order. But in some cases stopping Action in the middle of working can be unpredictable.
Stop Spawn Point and Stop Control Points System on All Actors Belonging ToEvent Stop Spawn Point and Stop Control Points System on All Actors Belonging to gives you possibility to stop this Spawn Point manually and stop Advanced Control Points Component on all Actors spawned by this Spawn Point.

Be aware that instantly stop every Actions currently run on all Actors. Every default Action has overriden and configured event Do Stop Action which reacts appropriately in case of immediately stop order. But in some cases stopping Action in the middle of working can be unpredictable.
Destroy All Actors Belonging ToEvent Destroy All Actors Belonging to gives you possibility to instantly destroy all Actors spawned by this Spawn Point.
Stop Spawn Point and Destroy All Actors Belonging ToEvent Stop Spawn Point and Destroy All Actors Belonging to gives you possibility to stop Spawn Point manually and instantly destroy all Actors spawned by this Spawn Point.
Increase Action Index If Possible on All Actors Belonging ToEvent Increase Action Index if Possible on All Actors Belonging to gives you possibility to increase current index in Actions (or Begin Actions) so that when the Component start again, the next Action in the list is executed. The index is increased on all Actors spawned by this Spawn Point.

Be aware that when current Index of Action list is the last one – then nothing happen and the index remains at it was originally.
Do Settings Override on All Actors Belonging ToEvent Do Settings Override on All Actors Belonging to gives you possibility to change all settings of Advanced Control Points Component on all Actors spawned by this Spawn Point.
Parameter Settings Override should be properly created Settings Override by node Construct Object from Class.

Be aware that run this event and change all settings of Advanced Control Points Component instantly stop every Actions currently run on all Actors. Every default Action has overriden and configured event Do Stop Action which reacts appropriately in case of immediately stop order. But in some cases stopping Action in the middle of working can be unpredictable.