Jump to content
Sign in to follow this  
ikmn

Scripting a Mission For Multiplayer - Help

Recommended Posts

First time poster here and just started out with scripts. I am trying to make a multiplayer mission with tasks in a linear order - simply one task at a time - nothing fancy. I do want it to be JIP and persistent and compatible with running on a DEDI server.

Here are the basics of the script:

Spawn enemy AI near an invisible marker

Assign a task to the invisible marker (using Shuko's taskmaster2)

create a trigger at the maker that activates when BLUE FOR killed not present at trigger. On activation run another script that starts completes the old task and starts the next task, and so forth, 1 task at a time.

It works flawlessly in single player. I have not tried it on DEDI or multiplayer yet but I am sure I am going to have a problem with the server/client trigger locality. I have read and searched for links about TRIGGERS/locality and scripts on this issue but I am having a hard time understanding the concept.

Anyway, here is the code:

// Populate task1marker with enemy
nul = ["task1marker", 1, TRUE, FALSE, 1, 6, 50, FALSE, "group1 = group this;"] execVM "militarize.sqf";
// Pause for AI to Spawn
sleep 10;
// Create Task in Taskmaster
["task1","Task1Title","Task1Desc",true,["task1",getmarkerpos "task1marker","Destroy","ColorRed","Marker Test"],"created","task1marker"]call SHK_Taskmaster_add;
// Create Trigger to Activate When enemy cleared 
_trg1=createTrigger["EmptyDetector",getmarkerpos "task1marker"];
_trg1 setTriggerArea[100,100,0,false];
_trg1 setTriggerActivation["WEST","NOT PRESENT",FALSE];
_trg1 setTriggerStatements["this","nul=[this] execVM 'task2.sqf'; hint 'Done!'; ",""];

So that's it very simple and basic and it works flawlessly in single player. But does anyone know if this will work in multiplayer/persistent/JIP? Am I going to run into issues with the tasks/triggers working properly? not being recognized or what not with people joining. Thank you for any assistance with this.

Share this post


Link to post
Share on other sites

in MP triggers are global (run on all machines) unless you specify a condition like isServer. Taskmaster does work on dedi I have used it myself so you should have no problems. I'm far from an expert on this stuff but your code looks OK to me.

Check the readme stuff for Taskmaster script as well there might be more info there (especially for things like JIP marker updating)

Share this post


Link to post
Share on other sites
in MP triggers are global (run on all machines) unless you specify a condition like isServer. Taskmaster does work on dedi I have used it myself so you should have no problems. I'm far from an expert on this stuff but your code looks OK to me.

Check the readme stuff for Taskmaster script as well there might be more info there (especially for things like JIP marker updating)

Thank you for replying to me. I did some more reading on this and figured out that I needed to have the trigger only run on the server so I changed the code a bit and it works fine on dedi and multiplayer/JIP. Thanks again for taking the time to help me out. I am pretty new to all of this.

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
Sign in to follow this  

×