Module Tasking.Task
Tasking - A task object governs the main engine to administer human taskings.
Features:
- A base class for other task classes filling in the details and making a concrete task process.
- Manage the overall task execution, following-up the progression made by the pilots and actors.
- Provide a mechanism to set a task status, depending on the progress made within the task.
- Manage a task briefing.
- Manage the players executing the task.
- Manage the task menu system.
- Manage the task goal and scoring.
1) Tasking from a player perspective.
Tasking can be controlled by using the "other" menu in the radio menu of the player group.
1.1) Command Centers govern multiple Missions.
Depending on the tactical situation, your coalition may have one (or multiple) command center(s). These command centers govern one (or multiple) mission(s).
For each command center, there will be a separate Command Center Menu that focuses on the missions governed by that command center.
In the above example menu structure, there is one command center with the name [Lima]
.
The command center has one Tasking.Mission, named "Overlord"
with High
priority.
1.2) Missions govern multiple Tasks.
A mission has a mission goal to be achieved by the players within the coalition. The mission goal is actually dependent on the tactical situation of the overall battlefield and the conditions set to achieve the goal. So a mission can be much more than just shoot stuff ... It can be a combination of different conditions or events to complete a mission goal.
A mission can be in a specific state during the simulation run. For more information about these states, please check the Tasking.Mission section.
To achieve the mission goal, a mission administers #TASKs that are set to achieve the mission goal by the human players. Each of these tasks can be dynamically created using a task dispatcher, or coded by the mission designer. Each mission has a separate Mission Menu, that focuses on the administration of these tasks.
On top, a mission has a mission briefing, can help to allocate specific points of interest on the map, and provides various reports.
The above shows a mission menu in detail of "Overlord"
.
The two other menus are related to task assignment. Which will be detailed later.
1.2.1) Mission briefing.
The task briefing will show a message containing a description of the mission goal, and other tactical information.
1.2.2) Mission Map Locations.
Various points of interest as part of the mission can be indicated on the map using the Mark Task Locations on Map menu. As a result, the map will contain various points of interest for the player (group).
1.2.3) Mission Task Reports.
Various reports can be generated on the status of each task governed within the mission.
The Task Overview Report will show each task, with its task status and a short coordinate information.
The other Task Menus will show for each task more details, for example here the planned tasks report. Note that the order of the tasks are shortest distance first to the unit position seated by the player.
1.2.4) Mission Statistics.
Various statistics can be displayed regarding the mission.
A statistic report on the progress of the mission. Each task achievement will increase the % to 100% as a goal to complete the task.
1.3) Join a Task.
The mission menu contains a very important option, that is to join a task governed within the mission. In order to join a task, select the Join Planned Task menu, and a new menu will be given.
A mission governs multiple tasks, as explained earlier. Each task is of a certain task type. This task type was introduced to have some sort of task classification system in place for the player. A short acronym is shown that indicates the task type. The meaning of each acronym can be found in the task types explanation.
When the player selects a task type, a list of the available tasks of that type are listed...
In this case the SEAD
task type was selected and a list of available SEAD
tasks can be selected.
A new list of menu options are now displayed that allow to join the task selected, but also to obtain first some more information on the task.
1.3.1) Report Task Details.
When selected, a message is displayed that shows detailed information on the task, like the coordinate, enemy target information, threat level etc.
1.3.2) Mark Task Location on Map.
When selected, the target location on the map is indicated with specific information on the task.
1.3.3) Join Task.
By joining a task, the player will indicate that the task is assigned to him, and the task is started. The Command Center will communicate several task details to the player and the coalition of the player.
1.4) Task Control and Actions.
When a player has joined a task, a Task Action Menu is available to be used by the player.
The task action menu contains now menu items specific to the task, but also one generic menu item, which is to control the task. This Task Control Menu allows to display again the task details and the task map location information. But it also allows to abort a task!
Depending on the task type, the task action menu can contain more menu items which are specific to the task. For example, cargo transportation tasks will contain various additional menu items to select relevant cargo coordinates, or to load/unload cargo.
1.5) Automatic task assignment.
When we take back the command center menu, you see two additional Assign Task menu items. The menu Assign Task On will automatically allocate a task to the player. After the selection of this menu, the menu will change into Assign Task Off, and will need to be selected again by the player to switch of the automatic task assignment.
The other option is to select Assign Task, which will assign a new random task to the player.
When a task is automatically assigned to a player, the task needs to be confirmed as accepted within 30 seconds. If this is not the case, the task will be cancelled automatically, and a new random task will be assigned to the player. This will continue to happen until the player accepts the task or switches off the automatic task assignment process.
The player can accept the task using the menu Confirm Task Acceptance ...
1.6) Task states.
A task has a state, reflecting the progress or completion status of the task:
- Planned: Expresses that the task is created, but not yet in execution and is not assigned yet to a pilot.
- Assigned: Expresses that the task is assigned to a group of pilots, and that the task is in execution mode.
- Success: Expresses the successful execution and finalization of the task.
- Failed: Expresses the failure of a task.
- Abort: Expresses that the task is aborted by by the player using the abort menu.
- Cancelled: Expresses that the task is cancelled by HQ or through a logical situation where a cancellation of the task is required.
1.6.1) Task progress.
The task governor takes care of the progress and completion of the task goal(s). Tasks are executed by human pilots and actors within a DCS simulation. Pilots can use a menu system to engage or abort a task, and provides means to understand the task briefing and goals, and the relevant task locations on the map and obtain various reports related to the task.
1.6.2) Task completion.
As the task progresses, the task status will change over time, from Planned state to Completed state. Multiple pilots can execute the same task, as such, the tasking system provides a co-operative model for joint task execution. Depending on the task progress, a scoring can be allocated to award pilots of the achievements made. The scoring is fully flexible, and different levels of awarding can be provided depending on the task type and complexity.
A normal flow of task status would evolve from the Planned state, to the Assigned state ending either in a Success or a Failed state.
Planned -> Assigned -> Success
-> Failed
-> Cancelled
The state completion is by default set to Success, if the goals of the task have been reached, but can be overruled by a goal method.
Depending on the tactical situation, a task can be Cancelled by the mission governor. It is actually the mission designer who has the flexibility to decide at which conditions a task would be set to Success, Failed or Cancelled. This decision all depends on the task goals, and the phase/evolution of the task conditions that would accomplish the goals.
For example, if the task goal is to merely destroy a target, and the target is mid-mission destroyed by another event than the pilot destroying the target, the task goal could be set to Failed, or .. Cancelled ... However, it could very well be also acceptable that the task would be flagged as Success.
The tasking mechanism governs beside the progress also a scoring mechanism, and in case of goal completion without any active pilot involved in the execution of the task, could result in a Success task completion status, but no score would be awarded, as there were no players involved.
These different completion states are important for the mission designer to reflect scoring to a player. A success could mean a positive score to be given, while a failure could mean a negative score or penalties to be awarded.
Developer Note
Note while this class still works, it is no longer supported as the original author stopped active development of MOOSE Therefore, this class is considered to be deprecated
Author(s): FlightControl
Contribution(s):
Global(s)
Global TASK |
Governs the main engine to administer human taskings. |
Governs the main engine to administer human taskings.
A task is governed by a Tasking.Mission object. Tasks are of different types. The #TASK object is used or derived by more detailed tasking classes that will implement the task execution mechanisms and goals.
1) Derived task classes.
The following TASK_ classes are derived from #TASK.
TASK
TASK_A2A
TASK_A2A_ENGAGE
TASK_A2A_INTERCEPT
TASK_A2A_SWEEP
TASK_A2G
TASK_A2G_SEAD
TASK_A2G_CAS
TASK_A2G_BAI
TASK_CARGO
TASK_CARGO_TRANSPORT
TASK_CARGO_CSAR
1.1) A2A Tasks
- Tasking.Task_A2A#TASK_A2A_ENGAGE - Models an A2A engage task of a target group of airborne intruders mid-air.
- Tasking.Task_A2A#TASK_A2A_INTERCEPT - Models an A2A ground intercept task of a target group of airborne intruders mid-air.
- Tasking.Task_A2A#TASK_A2A_SWEEP - Models an A2A sweep task to clean an area of previously detected intruders mid-air.
1.2) A2G Tasks
- Tasking.Task_A2G#TASK_A2G_SEAD - Models an A2G Suppression or Extermination of Air Defenses task to clean an area of air to ground defense threats.
- Tasking.Task_A2G#TASK_A2G_CAS - Models an A2G Close Air Support task to provide air support to nearby friendlies near the front-line.
- Tasking.Task_A2G#TASK_A2G_BAI - Models an A2G Battlefield Air Interdiction task to provide air support to nearby friendlies near the front-line.
1.3) Cargo Tasks
- Tasking.Task_CARGO#TASK_CARGO_TRANSPORT - Models the transportation of cargo to deployment zones.
- Tasking.Task_CARGO#TASK_CARGO_CSAR - Models the rescue of downed friendly pilots from behind enemy lines.
2) Task status events.
The task statuses can be set by using the following methods:
- TASK.Success() - Set the task to Success state.
- TASK.Fail() - Set the task to Failed state.
- TASK.Hold() - Set the task to Hold state.
- TASK.Abort() - Set the task to Aborted state, aborting the task. The task may be replanned.
- TASK.Cancel() - Set the task to Cancelled state, cancelling the task.
The mentioned derived TASK_ classes are implementing the task status transitions out of the box. So no extra logic needs to be written.
3) Goal conditions for a task.
Every 30 seconds, a Task.Goal trigger method is fired. You as a mission designer, can capture the Goal event trigger to check your own task goal conditions and take action!
3.1) Goal event handler OnAfterGoal()
.
And this is a really great feature! Imagine a task which has several conditions to check before the task can move into Success state. You can do this with the OnAfterGoal method.
The following code provides an example of such a goal condition check implementation.
function Task:OnAfterGoal()
if condition == true then
self:Success() -- This will flag the task to Success when the condition is true.
else
if condition2 == true and condition3 == true then
self:Fail() -- This will flag the task to Failed, when condition2 and condition3 would be true.
end
end
end
So the TASK.OnAfterGoal() event handler would be called every 30 seconds automatically, and within this method, you can now check the conditions and take respective action.
3.2) Goal event trigger Goal()
.
If you would need to check a goal at your own defined event timing, then just call the TASK.Goal() method within your logic.
The TASK.OnAfterGoal() event handler would then directly be called and would execute the logic.
Note that you can also delay the goal check by using the delayed event trigger syntax :__Goal( Delay )
.
4) Score task completion.
Upon reaching a certain task status in a task, additional scoring can be given. If the Mission has a scoring system attached, the scores will be added to the mission scoring. Use the method TASK.AddScore() to add scores when a status is reached.
5) Task briefing.
A task briefing is a text that is shown to the player when he is assigned to the task. The briefing is broadcasted by the command center owning the mission.
The briefing is part of the parameters in the TASK.New() constructor, but can separately be modified later in your mission using the TASK.SetBriefing() method.
Type(s)
Fields and Methods inherited from TASK | Description |
---|---|
FSM Abort synchronous event function for TASK. |
|
A group aborting the task. |
|
Gets the SET_GROUP assigned to the TASK. |
|
TASK:AddProgress(PlayerName, ProgressText, ProgressTime, ProgressPoints) |
Add Task Progress for a Player Name |
Assign the #TASK to a Wrapper.Group. |
|
Assign the #TASK to an alive Wrapper.Unit. |
|
FSM Cancel synchronous event function for TASK. |
|
Clear the Wrapper.Group assignment from the #TASK. |
|
A group crashing and thus aborting from the task. |
|
FSM Fail synchronous event function for TASK. |
|
Gets the #TASK briefing. |
|
Get goal of a task |
|
Gets the SET_GROUP assigned to the TASK. |
|
Gets the ID of the Task |
|
Gets the Mission to where the TASK belongs. |
|
Gets the Name of the Task |
|
Create a count of the players in the Task. |
|
Create a list of the players in the Task. |
|
Get the default or currently assigned Core.Fsm#FSM_PROCESS template with key ProcessName. |
|
Gets the Scoring of the task |
|
Gets the FiniteStateMachine of #TASK with key Wrapper.Unit. |
|
Gets the #TASK status. |
|
Returns the #TASK briefing. |
|
Get Task Control Menu |
|
Gets the Task Index, which is a combination of the Task type, the Task name. |
|
Returns the #TASK name. |
|
Gets the Type of the Task |
|
Get the Task FSM Process Template |
|
Goal Trigger for TASK |
|
Returns if the #TASK has still alive and assigned Units. |
|
Checks if there is a FiniteStateMachine assigned to Wrapper.Unit for #TASK. |
|
Init Task Control Menu |
|
Returns if the #TASK is assigned to the Group. |
|
Is the #TASK status Aborted. |
|
Is the #TASK status Assigned. |
|
Is the #TASK status Cancelled. |
|
Is the #TASK status Failed. |
|
Is the #TASK status Hold. |
|
Is the #TASK status Planned. |
|
Is the #TASK status Replanned. |
|
Is the #TASK status Success. |
|
Add a PlayerUnit to join the Task. |
|
Report the task status. |
|
Report the task status. |
|
Report the task status. |
|
Send a message of the #TASK to the assigned Wrapper.Groups. |
|
TASK:New(Mission, SetGroupAssign, TaskName, TaskType, TaskBriefing) |
Instantiates a new TASK. |
Goal Handler OnAfter for TASK |
|
FSM PlayerAborted event handler prototype for TASK. |
|
FSM PlayerCrashed event handler prototype for TASK. |
|
FSM PlayerDead event handler prototype for TASK. |
|
Goal Handler OnBefore for TASK |
|
Remove the menu option of the #TASK for a Wrapper.Group. |
|
Refresh Task Control Menu |
|
A group rejecting a planned task. |
|
Remove the assigned menu option of the #TASK for a Wrapper.Group. |
|
Remove the menu options of the #TASK to all the groups in the SetGroup. |
|
Remove FiniteStateMachines from #TASK with key Wrapper.Unit. |
|
Remove Task Control Menu |
|
FSM Replan synchronous event function for TASK. |
|
Create a detailed report of the Task. |
|
Create an overiew report of the Task. |
|
Create a summary report of the Task. |
|
Send the briefing message of the #TASK to the assigned Wrapper.Groups. |
|
Set the assigned menu options of the #TASK. |
|
Sets a #TASK briefing. |
|
Set detection of a task |
|
Set dispatcher of a task |
|
Set goal of a task |
|
The Set of Groups assigned to the Task |
|
Set Wrapper.Group assigned to the #TASK. |
|
Sets the ID of the Task |
|
Set the menu options of the #TASK to all the groups in the SetGroup. |
|
Set the Menu for a Group |
|
Sets the Name of the Task |
|
Set the planned menu option of the #TASK. |
|
Set a penalty when the A2A attack has failed. |
|
Set a score when progress has been made by the player. |
|
Set a score when all the targets in scope of the A2A attack, have been destroyed. |
|
Add a FiniteStateMachine to #TASK with key Wrapper.Unit. |
|
Sets the TimeOut for the #TASK. |
|
Sets the Type of the Task |
|
Sets the Task FSM Process Template |
|
Sets a #TASK to status Aborted. |
|
Sets a #TASK to status Assigned. |
|
Sets a #TASK to status Cancelled. |
|
Sets a #TASK to status Failed. |
|
Sets a #TASK to status Hold. |
|
Sets a #TASK to status Planned. |
|
Sets a #TASK to status Replanned. |
|
Sets a #TASK to status Success. |
|
FSM Success synchronous event function for TASK. |
|
UnAssign the #TASK from a Wrapper.Group. |
|
UnAssign the #TASK from the Wrapper.Groups. |
|
UnAssign the #TASK from an alive Wrapper.Unit. |
|
FSM Abort asynchronous event function for TASK. |
|
FSM Cancel asynchronous event function for TASK. |
|
FSM Fail asynchronous event function for TASK. |
|
Goal Asynchronous Trigger for TASK |
|
FSM Replan asynchronous event function for TASK. |
|
FSM Success asynchronous event function for TASK. |
|
FSM function for a TASK |
|
FSM function for a TASK |
|
FSM function for a TASK |
|
TASK:onenterAssigned(Event, From, To, PlayerUnit, PlayerName) |
FSM function for a TASK |
FSM function for a TASK |
|
FSM function for a TASK |
|
FSM function for a TASK |
|
FSM function for a TASK |
|
FSM function for a TASK |
Fields and Methods inherited from FSM_TASK | Description |
---|---|
Creates a new FSM_TASK object. |
|
Field(s)
Function(s)
FSM Abort synchronous event function for TASK.
Use this event to Abort the Task.
Defined in:
TASK
A group aborting the task.
Defined in:
TASK
Parameter:
Wrapper.Group#GROUP PlayerGroup
The group aborting the task.
Return value:
Gets the SET_GROUP assigned to the TASK.
Add Task Progress for a Player Name
Defined in:
TASK
Parameters:
#string PlayerName
The name of the player.
#string ProgressText
The text that explains the Progress achieved.
#number ProgressTime
The time the progress was achieved.
ProgressPoints
Return value:
Assign the #TASK to a Wrapper.Group.
Assign the #TASK to an alive Wrapper.Unit.
FSM Cancel synchronous event function for TASK.
Use this event to Cancel the Task.
Defined in:
TASK
Clear the Wrapper.Group assignment from the #TASK.
A group crashing and thus aborting from the task.
Defined in:
TASK
Parameter:
Wrapper.Group#GROUP PlayerGroup
The group aborting the task.
Return value:
FSM Fail synchronous event function for TASK.
Use this event to Fail the Task.
Defined in:
TASK
TODO: Obsolete? - Fail processes from #TASK with key Wrapper.Unit. @param #TASK self @param #string TaskUnitName @return #TASK self
Defined in:
TASK
Parameter:
TaskUnitName
Gets the #TASK briefing.
Defined in:
TASK
Return value:
#string:
The briefing text.
Gets the SET_GROUP assigned to the TASK.
Gets the Mission to where the TASK belongs.
Create a count of the players in the Task.
Defined in:
TASK
Return value:
#number:
The total number of players in the task.
Create a list of the players in the Task.
Defined in:
TASK
Return value:
#map<#string,Wrapper.Group#GROUP>:
A map of the players
Defined in:
TASK
Parameter:
PlayerName
Get the default or currently assigned Core.Fsm#FSM_PROCESS template with key ProcessName.
Gets the Scoring of the task
Gets the FiniteStateMachine of #TASK with key Wrapper.Unit.
Returns the #TASK briefing.
Defined in:
TASK
Return value:
#string:
Task briefing.
Get Task Control Menu
Defined in:
TASK
Parameters:
Wrapper.Unit#UNIT TaskUnit
The Wrapper.Unit that contains a player.
TaskName
Return value:
TaskControlMenu The Task Control Menu
Gets the Task Index, which is a combination of the Task type, the Task name.
Defined in:
TASK
Return value:
#string:
The Task ID
Get the Task FSM Process Template
Goal Trigger for TASK
Defined in:
TASK
Parameters:
Wrapper.Unit#UNIT PlayerUnit
The Wrapper.Unit of the player.
#string PlayerName
The name of the player.
Returns if the #TASK has still alive and assigned Units.
Defined in:
TASK
Return value:
#boolean:
Checks if there is a FiniteStateMachine assigned to Wrapper.Unit for #TASK.
Init Task Control Menu
Defined in:
TASK
Parameter:
Wrapper.Unit#UNIT TaskUnit
The Wrapper.Unit that contains a player.
Return value:
Task Control Menu Refresh ID
Returns if the #TASK is assigned to the Group.
Add a PlayerUnit to join the Task.
For each Group within the Task, the Unit is checked if it can join the Task. If the Unit was not part of the Task, false is returned. If the Unit is part of the Task, true is returned.
Defined in:
TASK
Parameters:
Wrapper.Unit#UNIT PlayerUnit
The CLIENT or UNIT of the Player joining the Mission.
Wrapper.Group#GROUP PlayerGroup
The GROUP of the player joining the Mission.
Return value:
#boolean:
true if Unit is part of the Task.
Report the task status.
Defined in:
TASK
Parameters:
TaskGroup
Flash
Report the task status.
Send a message of the #TASK to the assigned Wrapper.Groups.
Defined in:
TASK
Parameter:
Message
Instantiates a new TASK.
Should never be used. Interface Class.
Defined in:
TASK
Parameters:
Tasking.Mission#MISSION Mission
The mission wherein the Task is registered.
Core.Set#SET_GROUP SetGroupAssign
The set of groups for which the Task can be assigned.
#string TaskName
The name of the Task
#string TaskType
The type of the Task
TaskBriefing
Return value:
self
Goal Handler OnAfter for TASK
Defined in:
TASK
Parameters:
#string From
#string Event
#string To
Wrapper.Unit#UNIT PlayerUnit
The Wrapper.Unit of the player.
#string PlayerName
The name of the player.
FSM PlayerAborted event handler prototype for TASK.
Defined in:
TASK
Parameters:
Wrapper.Unit#UNIT PlayerUnit
The Unit of the Player when he went back to spectators or left the mission.
#string PlayerName
The name of the Player.
FSM PlayerCrashed event handler prototype for TASK.
Defined in:
TASK
Parameters:
Wrapper.Unit#UNIT PlayerUnit
The Unit of the Player when he crashed in the mission.
#string PlayerName
The name of the Player.
FSM PlayerDead event handler prototype for TASK.
Defined in:
TASK
Parameters:
Wrapper.Unit#UNIT PlayerUnit
The Unit of the Player when he died in the mission.
#string PlayerName
The name of the Player.
Goal Handler OnBefore for TASK
Defined in:
TASK
Parameters:
#string From
#string Event
#string To
Wrapper.Unit#UNIT PlayerUnit
The Wrapper.Unit of the player.
#string PlayerName
The name of the player.
Return value:
#boolean:
Remove the menu option of the #TASK for a Wrapper.Group.
Refresh Task Control Menu
Defined in:
TASK
Parameters:
Wrapper.Unit#UNIT TaskUnit
The Wrapper.Unit that contains a player.
MenuTime
The refresh time that was used to refresh the Task Control Menu items.
MenuTag
The tag.
A group rejecting a planned task.
Defined in:
TASK
Parameter:
Wrapper.Group#GROUP PlayerGroup
The group rejecting the task.
Return value:
Remove the assigned menu option of the #TASK for a Wrapper.Group.
Remove the menu options of the #TASK to all the groups in the SetGroup.
Remove FiniteStateMachines from #TASK with key Wrapper.Unit.
Remove Task Control Menu
FSM Replan synchronous event function for TASK.
Use this event to Replan the Task.
Defined in:
TASK
Create a detailed report of the Task.
List the Task Status, and the Players assigned to the Task.
Create an overiew report of the Task.
List the Task Name and Status
Defined in:
TASK
Parameter:
ReportGroup
Return value:
#string:
Create a summary report of the Task.
List the Task Name and Status
Send the briefing message of the #TASK to the assigned Wrapper.Groups.
Defined in:
TASK
Set the assigned menu options of the #TASK.
Sets a #TASK briefing.
Set detection of a task
Defined in:
TASK
Parameters:
Functional.Detection#DETECTION_BASE Detection
DetectedItem
Return value:
Set dispatcher of a task
Set goal of a task
Set Wrapper.Group assigned to the #TASK.
Set the menu options of the #TASK to all the groups in the SetGroup.
Set the Menu for a Group
Set the planned menu option of the #TASK.
Defined in:
TASK
Parameters:
Wrapper.Group#GROUP TaskGroup
#string MenuText
The menu text.
#number MenuTime
Return value:
self
Set a penalty when the A2A attack has failed.
Defined in:
TASK
Parameters:
#string PlayerName
The name of the player.
#number Penalty
The penalty in points, must be a negative value!
Wrapper.Unit#UNIT TaskUnit
Return value:
Set a score when progress has been made by the player.
Defined in:
TASK
Parameters:
#string PlayerName
The name of the player.
#number Score
The score in points to be granted when task process has been achieved.
Wrapper.Unit#UNIT TaskUnit
Return value:
Set a score when all the targets in scope of the A2A attack, have been destroyed.
Defined in:
TASK
Parameters:
#string PlayerName
The name of the player.
#number Score
The score in points.
Wrapper.Unit#UNIT TaskUnit
Return value:
Add a FiniteStateMachine to #TASK with key Wrapper.Unit.
Sets the TimeOut for the #TASK.
If #TASK stayed planned for longer than TimeOut, it gets into Cancelled status.
Sets the Task FSM Process Template
Defined in:
TASK
Parameters:
Core
Fsm#FSM_PROCESS
FsmTemplate
FSM Success synchronous event function for TASK.
Use this event to make the Task a Success.
Defined in:
TASK
UnAssign the #TASK from a Wrapper.Group.
UnAssign the #TASK from an alive Wrapper.Unit.
FSM Abort asynchronous event function for TASK.
Use this event to Abort the Task.
Defined in:
TASK
FSM Cancel asynchronous event function for TASK.
Use this event to Cancel the Task.
Defined in:
TASK
FSM Fail asynchronous event function for TASK.
Use this event to Fail the Task.
Defined in:
TASK
Goal Asynchronous Trigger for TASK
Defined in:
TASK
Parameters:
#number Delay
Wrapper.Unit#UNIT PlayerUnit
The Wrapper.Unit of the player.
#string PlayerName
The name of the player.
FSM Replan asynchronous event function for TASK.
Use this event to Replan the Task.
Defined in:
TASK
FSM Success asynchronous event function for TASK.
Use this event to make the Task a Success.
Defined in:
TASK
FSM function for a TASK
Defined in:
TASK
Parameters:
#string From
#string Event
#string To
FSM function for a TASK
Defined in:
TASK
Parameters:
#string Event
#string From
#string To
FSM function for a TASK
Defined in:
TASK
Parameters:
#string From
#string Event
#string To
FSM function for a TASK
Defined in:
TASK
Parameters:
#string Event
#string From
#string To
PlayerUnit
PlayerName
FSM function for a TASK
Defined in:
TASK
Parameters:
#string From
#string Event
#string To
FSM function for a TASK
Defined in:
TASK
Parameters:
#string From
#string Event
#string To
FSM function for a TASK
Defined in:
TASK
Parameters:
#string Event
#string From
#string To
FSM function for a TASK
Defined in:
TASK
Parameters:
#string Event
#string From
#string To
FSM function for a TASK
Defined in:
TASK
Parameters:
#string Event
#string From
#string To
Field(s)
Function(s)
Creates a new FSM_TASK object.
Defined in:
Parameter:
#string TaskName
The name of the task.