Jump to content
YDrogen

setTask with new A3 Task Enhancement

Recommended Posts

Hi !

 

I wanna create a new task using the Task Enhancement, with 3D markers ...

 

So here is the thing : 

["fDIN", true, ["Get in","Get in","hostel"], ([], "ASSIGNED", 1, false, true, "GetIn", true)] call BIS_fnc_setTask;
[params, target, desc, (dest, state, priority, showNotification, isGlobal, type, shared)] call BIS_fnc_setTask;

My syntax is correct, the marker "hostel" is there in the editor. No error, but not working.

There is no example to refer in the BIKI (here)so..

 

Thanks in advance !

Share this post


Link to post
Share on other sites

The parenthesis around the:

(dest, state, priority, showNotification, isGlobal, type, shared)

in the wiki mean that those arguments are optional. You don't actually put them in the code.

 

So try with:

["fDIN", true, ["Get in","Get in","hostel"], [], "ASSIGNED", 1, false, true, "GetIn", true] call BIS_fnc_setTask;

And see how it goes.

Share this post


Link to post
Share on other sites

So I can even use

["fDIN", true, ["Get In","Get In","Get In"], [poloCar, true], "ASSIGNED", 1, true, true, "GetIn", true] call BIS_fnc_setTask;

Thanks ! I didn't knew that parenthesis must not be there when it's optional and actually means that what's inside them, it's optional only.

 

But now, my 2D/3D markers don't work

I have this in my description.ext :

class CfgTaskEnhancements
{
   enable       = 1;            //0: disable new task features (default), 1: enable new task features & add new task markers and task widgets into the map
   3d           = 1;            //0: do not use new 3D markers (default), 1: replace task waypoints with new 3D markers
   3dDrawDist   = 10000;        //3d marker draw distance (default: 2000)
   share        = 1;            //0: do not count assigned players (default), 1: count how many players have the task assigned
   propagate    = 1;            //0: do not propagate (default), 1: propagate shared tasks to subordinates
};

class CfgTaskTypes
{
   class GetIn
   {
       icon     = \markers\GetIn\GetIn.paa;
       icon3D   = \markers\GetIn\GetIn3D.paa;
   };
};

And I still have the default Arma 3 marker instead of this

Share this post


Link to post
Share on other sites

The wiki example may have an error. I think icons should have quotes around them:

class CfgTaskTypes
{
class GetIn
{
icon = "\markers\GetIn\GetIn.paa";
icon3D = "\markers\GetIn\GetIn3D.paa";
};
};

Share this post


Link to post
Share on other sites

I have tried that too, but still not working.

I'm using 64x64 white icon with transparent background and 4px on each border (.png to .paa) for the 2D icon, and 128x128 white icon with transparent background and 4px on each border too (from .png to .paa) for the 3D icon.

Share this post


Link to post
Share on other sites

Have you tried without the first backslash:

icon = "markers\GetIn\GetIn.paa";
icon3D = "markers\GetIn\GetIn3D.paa";

 

Share this post


Link to post
Share on other sites

Update :

 

My new syntax :

 

In description.ext :

class CfgTaskTypes
{
   class Getin
   {
       icon     = \markers\GetIn\GetIn.paa;
       icon3D   = \markers\GetIn\GetIn3D.paa;
   };
};

In .sqf :

[playersteam, ["getinpoloCar"],["Monter dans le Tout-terrain", "Monter dans le Tout-terrain", "Monter dans le Tout-terrain"], [poloCar, true], "ASSIGNED", 1, true, "Getin", true] call BIS_fnc_taskCreate;

Icons actually works. But not mine, only the defaults ones (Attack / Defend / ... ).

I respect all the required conditions, texture size, .paa format, centered, white, transparent background, 100% aplha.. I don't understand.

You can see them here : http://imgur.com/a/dfR1p

Share this post


Link to post
Share on other sites

Hmm. Wonder what I'm missing. I tried your example above off a radio trigger and can't get it working with the default attack for love nor money.

[west, ["getinpoloCar"],["Monter dans le Tout-terrain", "Monter dans le Tout-terrain", "Monter dans le Tout-terrain"], [poloCar, true], "ASSIGNED", 1, true, "Attack", true] call BIS_fnc_taskCreate;

Description.ext

 

author = magicpanda;
onLoadName = SPAWN COMPOSITIONS TEST;


class Header
{
gameType = SP;
minPlayers = 1;
maxPlayers = 1;
};


class CfgTaskEnhancements
{
   enable       = 1;            //0: disable new task features (default), 1: enable new task features & add new task markers and task widgets into the map
   3d           = 1;            //0: do not use new 3D markers (default), 1: replace task waypoints with new 3D markers
   3dDrawDist   = 10000;        //3d marker draw distance (default: 2000)
   share        = 1;            //0: do not count assigned players (default), 1: count how many players have the task assigned
   propagate    = 1;            //0: do not propagate (default), 1: propagate shared tasks to subordinates
};
class CfgTaskTypes
{
   class Attack
   {
       icon     = \A3\UI_F_MP_Mark\Data\Tasks\Types\Attack_ca.paa;
       icon3D   = \A3\UI_F_MP_Mark\Data\Tasks\Types3D\Attack_ca.paa;
   };
   class Defend
   {
       icon     = \A3\UI_F_MP_Mark\Data\Tasks\Types\Defend_ca.paa;
       icon3D   = \A3\UI_F_MP_Mark\Data\Tasks\Types3D\Defend_ca.paa;
   };


};

Share this post


Link to post
Share on other sites

You need to spawn an object named "poloCar" or change the name in the function param #3 [NAME, true].

class CfgTaskTypes
{
   class Attack
   {
       icon     = \A3\UI_F_MP_Mark\Data\Tasks\Types\Attack_ca.paa;
       icon3D   = \A3\UI_F_MP_Mark\Data\Tasks\Types3D\Attack_ca.paa;
   };
   class Defend
   {
       icon     = \A3\UI_F_MP_Mark\Data\Tasks\Types\Defend_ca.paa;
       icon3D   = \A3\UI_F_MP_Mark\Data\Tasks\Types3D\Defend_ca.paa;
   };


};

It's useless if you are using presets like "Attack", "Defend" or anything else listed in the BIKI.

 

 

Now I'm using this in the description.ext It works better I think.

taskManagement_markers3D = 1;
taskManagement_markers2D = 1; //0: do not use new 2D markers (default), 1: replace task markers with new 2D markers 
taskManagement_propagate = 1; //0: do not propagate (default), 1: propagate shared tasks to subordinates 
taskManagement_drawDist = 10; //3D marker draw distance as UNASSIGNED (default: 2000)

Share this post


Link to post
Share on other sites

Hi there, sorry for the confusion, it is all on me.

 

The wiki documentation (https://community.bistudio.com/wiki/Arma_3_Task_Enhancements) describes the next version of the task enhancements. Unfortunatelly release of the new version had to be postponed. I have updated the version info on wiki from 1.48 to 1.54 to reflect the current situation.

 

As you found out, the current system uses (the older) definition that looks like this:

taskManagement_markers3D = 1;
taskManagement_markers2D = 1; //0: do not use new 2D markers (default), 1: replace task markers with new 2D markers 
taskManagement_propagate = 1; //0: do not propagate (default), 1: propagate shared tasks to subordinates 
taskManagement_drawDist = 10; //3D marker draw distance as UNASSIGNED (default: 2000)

With A3 1.54 you should switch to the definition described in the wiki:

class CfgTaskEnhancements
{
   enable       = 1;            //0: disable new task features (default), 1: enable new task features & add new task markers and task widgets into the map
   3d           = 1;            //0: do not use new 3D markers (default), 1: replace task waypoints with new 3D markers
   3dDrawDist   = 10000;        //3d marker draw distance (default: 2000)
   share        = 1;            //0: do not count assigned players (default), 1: count how many players have the task assigned
   propagate    = 1;            //0: do not propagate (default), 1: propagate shared tasks to subordinates
};

However the both version of task enhancements look same and players won't notice a difference, the new version is much more optimized (CPU load and network traffic wise) and provides more control over the different system parts.

 

If you want to prevent any issues when the new system will kick in, I suggest to you to have both definitions in the description.ext. When the new system replaces the old system, it will automatically search for the CfgTaskEnhancements class and ints attribute - will need the definitio in the new format and will ignore the old definition. You can then safely remove the old definition you use now. The transition should be totaly smooth for both you and players.

 

And one more thing, if you use the predefined task types, you dont need the definition of CfgTaskTypes in your description.ext. The default task definition is already in the A3 data (ui_f_mp_mark.ebo).

 

Sorry for the troubles.

  • Like 1

Share this post


Link to post
Share on other sites

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now

×