Arma 3 Scripting

Function in Tasks

BIS_fnc_taskCreate

Also available as Markdown and JSON, or read the original wiki page.

Description

Create a task.

Syntax

[owner, taskID, description, destination, state, priority, showNotification, type, visibleIn3D] call BIS_fnc_taskCreate

Parameters:

Returns: Boolean

Examples

Example 1

[civilian, "task1", ["Do this and you get a cookie", "Earn Cookie", "cookiemarker"], [0,0,0], "ASSIGNED", 2, true] call BIS_fnc_taskCreate;

Example 2

[west, "parentTask", ["This is the parent task.", "Parent task", "cookiemarker2"], objNull, 1, 3, true] call BIS_fnc_taskCreate;
[west, ["subTask", "parentTask"], ["This is the subTask.", "subTask", "cookiemarker2"], objNull, 1, 3, true] call BIS_fnc_taskCreate;

Example 3

in Description.ext

class CfgTaskTypes
{
    class my_CfgTaskType
    {
        displayname = "Tank";
        icon = "Tank_MCO.paa";
        icon3D = "Tank_MCO.paa";
    };
};

SQF:

[east, ["taskType_"], ["Setting taskType", "The simple way", "marker2"], objNull, 1, 3, true, "my_CfgTaskType"] call BIS_fnc_taskCreate; // task with a custom icon

Example 4

in Stringtable.xml

<Key ID="STR_CITY_TASK">
    <English>Clear %1 of enemies</English>
    <!-- more languages -->
</Key>

SQF:

[
    _side,
    _taskID,
    [
        // format array, string to be localised, parameters for format %1, %2 ...
        [ "STR_CITY_TASK", _cityName ],
        [ "STR_CITY_TASK", _cityName ],
        ""
    ]
] call BIS_fnc_taskCreate;

See also

Arma 3: Task Framework

Community notes

Lou Montana

You can define a CfgTaskDescriptions part in description.ext, such as:

class CfgTaskDescriptions
{
    class myTask
    {
        title = "$STR_MyTaskTitle";
        description = "$STR_MyTaskDescription";
    };
};

This should allow tasks to be localised for every player in MP if created locally. You can use "myTask" as description (3rd) parameter.

Important

For a proper localisation everywhere, see Hypoxic125's note below.

Hypoxic125

Example of Correct Localization Setup Using CfgTaskDescriptions

class CfgTaskDescriptions
{
    class hyp_infiltrate
    {
        title = "STR_HYP_TASKS_INFILTRATE_TITLE";
        description = "STR_HYP_TASKS_INFILTRATE_DESCRIPTION";
        // requires stringtable key - NOT localized string
        // note the lack of "$" before the stringtable key - if "$" is included, languages will be incorrect
    };
};
// Server Execution
[east, "infiltrate", "hyp_infiltrate", objNull, "ASSIGNED", -1, true, "MOVE", false] call BIS_fnc_taskCreate;