Jump to content
EricJ

Multiplayer tasks

Recommended Posts

Okay I've seen that using the task modules for MP is not good. The question is what works then? Is it the task modules work for an MP mission? I'm trying to create an MP specific mission and since I don't script, I figured that doing the modules would work for the mission, but it creates issues? Need some help as I'd like to make a mission and see how it goes, and the like.

Share this post


Link to post
Share on other sites

Nice to read you @EricJ , and thanks for your well-known mods about Taliban fighters.

It seems to me the MP issues are gone for a while on task modules. Usually, edited tasks are revealed/assigned/completed... by edited triggers and this could be tricky to manage, especially if you need specific tasks for specific players.
The scripted tasks are probably easier to set for due players at due time but the syntax is not really simple and you need to script your scenario. If you have more details about your project, what you did, and what you would like to fix...
 

Share this post


Link to post
Share on other sites

Thanks about the Taliban Fighters, nice to hear feedback.

 

What I'm doing is a basic kill the HVT mission. The first is that they start on USS Liberty (that's all taken care of), and then go to a house in Altis to get a briefing by a freedom fighter/operative, etc. and the trigger shows them the next mission, which I have setup as the players kill and then they grab some intel from a car (I have that set up I'm sure pretty well) and make it back to the boat. Nothing fancy as it's my first mission I'm actually making instead of porting like some of the missions that I have done.

 

I found a video on tasks, and I'm trying to get the notification to show that the task is assigned (It is, but no notification), and the player has to assign the task in the Task on the map. I don't know how to do this, and I think it's bugged,as the Intel task shows up, but not the other tasks, so I don't know what I'm doing wrong.

Share this post


Link to post
Share on other sites
6 hours ago, EricJ said:

Okay I've seen that using the task modules for MP is not good. The question is what works then? Is it the task modules work for an MP mission? I'm trying to create an MP specific mission and since I don't script, I figured that doing the modules would work for the mission, but it creates issues? Need some help as I'd like to make a mission and see how it goes, and the like.

Use scripts 🙂

  • Like 3

Share this post


Link to post
Share on other sites

Yes.

For example, I'm using:

BIS_fnc_setTask

BIS_fnc_taskSetState

BIS_fnc_taskState

 

See also Arma_3:_Task_Framework (you'll find a tutorial)

 

That looks like (part of script):
 

Spoiler

 

private _tsk1 = ["task1", true, ["You must clear this area first, iot get a DZ","Establish your FOB",""], getMarkerPos (_extrem select 0), "ASSIGNED", 1, true, true,"attack",true] call BIS_fnc_setTask;
sleep 1;
[_extrem select 0,"task1"] spawn XXX_fnc_success;
waitUntil {sleep 0.5; ([_tsk1] call BIS_fnc_taskState) == "Succeeded"};

 

.....

other tasks to follow

.....

 

in SQF, or simple embedded function like here:
XXX_fnc_success = {
  private _mkrName = _this select 0;
  private _radius = markersize _mkrName select 0;
  private _tsk = _this select 1;
  private "_mkr_nbr";
  params [["_distSqr",worldsize],["_ennemies",0]];
  private ["_radius2","_FOB_DZ"];
  while {true} do {
    _ennemies = {side _x == east && (_x distance getMarkerPos _mkrName < _radius)} count allUnits;
    _distSqr = ([(units Group1 + units Group2) select {isPlayer _x},getMarkerPos _mkrName] call XXX_fnc_distanceGrpSqr) select 0;
    _radius2 = if (_tsk == "task1" or _tsk == "task11") then [{75},{_radius}];
    if (_distSqr < _radius2^2 && _ennemies == 0) exitWith {
      [_tsk,"Succeeded",true] call BIS_fnc_taskSetState;
      [] spawn XXX_spwnBlues;
    };
    sleep 5;
  };
};

 

 

 

Now, if you don't want to script, your MP scenario will be basic. Place task modules and triggers for revealing tasks, making them succeeded or failed or canceled...
Choose for hosted or dedicated server (harder) Test your scenario with JIP.
As you need, at least, to set some conditions and that's little codes, you should have a look at:
Locality

Multiplayer_Scripting

and perhaps some other Arma_Scripting_Tutorials

  • Like 2

Share this post


Link to post
Share on other sites

Okay thanks man, I tried the mission (with modules) as LAN and so far no issues, I'll try it with the Internet setting and see how it goes, but I'm lost with scripts so far, so if it works internet wise I'll consider uploading it with a warning that it's very much beta, yadda yadda.

 

Anyway it's not intended as a fairly complex mission and gonna have to see how the public feels about it. I may reduce some enemies though, nearly got blown out of the sky when I tried it.

Share this post


Link to post
Share on other sites

For MP edited scenario, don't forget the dynamic simulation. A common error is to fill up the map with enemies, as you could spawn them via scripts. The BI spawn system by modules is not really powerful. The dynamic simulation can help.

If you're not afraid by mods (mandatory for all players) you could have a look at my modules (so no script). I have done them for make the edited scenario far easier.

Share this post


Link to post
Share on other sites

Okay thanks. One problem I'm having with the modules is that I click on Assigned and it's not assigning the tasks... Is there something I'm missing then? Because I open the map and can assign the task, so how do I get the module to assign the task, and show the notification at the top of the screen? EDIT: it sometimes shows, and sometimes doesn't, which I guess means that it's sensitive to changes. Another issue I'm having is that the secondary objective is showing, even though the players are supposed to find that out when they meet the operative. So I don't know what to do to hide it and so when they meet the operative, they get the mission assigned to them and complete the task.

 

I'll look into the modules though, the list is pretty cool and can serve my mission I'm sure.

Share this post


Link to post
Share on other sites

It's hard to say what occurs in your scenario. The fact is there are plenty of reasons for missing something.
As example:

- triggers must be triggered by due conditions and synced to modules (create task to make it appear in diary, setTaskState for modifying its status...).

- all createTask modules must be synced to players,  group leaders (or not if you choose a side). If you are not among the owners of the task, you will neither see it and nor notification.
- task can be delayed (so hidden) if synced to one trigger (no more). When activated, the task appears with the status you decided.... or the status of setTaskState synced to its own trigger and the task.

 

If sometimes, the notification doesn't show, the first thing to do is to schedule what happens by triggers (all) and avoid too many events at the same time. (triggers can be delayed, especially for task notification on completion).
 

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

×