Jump to content
jandrews

Best practice.... If possible.

Recommended Posts

Hello Arma mission makers.  It's been a while for me.  

 

My question is about starting a mission with editor placed markers.

 

I thought about having three separate types of missions to be spawned based on a specific placed markershape to sort out larger cities, military facilities and smaller towns / industry areas. The thinking is each are different in size, value and strategy.  Therefore, require their own design. However after looking for several hours I am not sure if this is the best way.  What do you think?

 

Quick rundown.  3 different types of missions to be spawned to their specific marker.

 

What's the best way to start this?

Share this post


Link to post
Share on other sites

missions on specific markers are... tasks. You can add what you want, colored areas, briefings...

The thing is: how do you let the choice to the player?

randomly or:

- In SP, you could add three objects (laptop, stand desk..) with different addActions

- in MP, you can let the choice to the leader or the admin, or even add a vote like in BI Combat Patrol missions (see combat patrol modules in Eden). Personally, I diverted the combat patrol init to make it more fun and units Addons compatible (CUP,RHS...)

 

NB: you look tired. Too much exile mod?

  • Like 1
  • Haha 1

Share this post


Link to post
Share on other sites
2 hours ago, pierremgi said:

The thing is: how do you let the choice to the player?

Pierre brought up some good points...you could also consider the use of STRATEGIC MAP.

  • Like 1

Share this post


Link to post
Share on other sites

so its been a while. And am trying to get back in to this coding thing. this is what I have so far. And it certainly feels like i am missing some things. please enlighten me. thanks

 

// Markers defined by type (Triangle,Square,Dot)

_zones = ["marker","marker_1", "Marker_2"];

_zone1 = _zones call Zen_ArrayGetRandom;

while { count _zone1 > 0 } do {
	
sleep 1;

// Which MarkerType is it?

AO (MISSION_TYPE) = 
	{
	params ["_Mission"];
	
	switch (MarkerType _x) do
		{	
			// Triangle 
			case  "mil_triangle":
			{
				[] execVM "City.sqf";// run script
			};

			// Square
			case  "mil_box":
			{
				[] execVM "Military.sqf";// run script
			};

			// Dot	
			case "mil_dot":
			{
				[] execVM "town/industry.sqf";// run script
			};
		};
	};
};

 

Share this post


Link to post
Share on other sites

hmmm, not sure to understand...

Why are you messing around the type of marker?

If you place a marker via 3den, there is no reason to "detect" what kind of marker it is... Just place a trigger and execVM the mission sqf when player is inside the trigger,... or near the marker if you want.

 

I guess you're trying to use another script from Zenophon. So I dug it and discovered that some people like @davidoss  replied to your question on another thread.
Be sure the (late) info between the mix of Zenophon framework and your own attempt to manage a "mission type" along with "marker's type" is just disconcerting. And, it's not the right first thing to do for new scripting.

Share this post


Link to post
Share on other sites

Not sure how to take your reply. I will try to provide you an example. Invade and Annex is based on editor based markers and are randomly chosen for players to go attack. Once said marker / area is cleared another random task is chosen from editor placed marker via loop and spawned again for players to attack. however he uses 1 marker for ALL areas with same parameters. I wanted to know if I could use 3 different types of markers to spawn 3 different types of tasks based on my specifications from editor placed markers. However, the mission needs to know which type of task to load based on 1 of 3 markers on map. Yes I know you can spawn missions from editor placed triggers. I wanted to do this for a more persistent type mission.  This is why i asked if its something that is doable. lastly, you must not of read the thread you linked b/c that was related to something separate.  

Share this post


Link to post
Share on other sites

You can just script lots of different missions and use selectRandom after some condition and execute it passing arguments like position ,marker ,object, location, cities,villages or hills

  • Like 2

Share this post


Link to post
Share on other sites

Now, if you don't want to fully randomize the next mission, but sort it along with markers types you placed in specific locations (say destroy an antenna where there is an antenna near your mil_triangle markers), you can do as you scripted, but slightly different:

 

null = [] spawn {
  _antennaAreas = ["marker","marker_1", "Marker_2"];
  _killOfficerAreas = ["marker_3","marker_4", "Marker_5"];
  _blablaAreas = ["marker_6","marker_7", "Marker_8"];
  private _someTimer = diag_tickTime;
  private _yourOverallDelayForMission = 1200;
  someVariablesetToTrueWhenTaskSucceeded = true;  // for start
  while { true } do {
    waitUntil {sleep 1; someVariablesetToTrueWhenTaskSucceeded or diag_TickTime > _someTimer + _yourOverallDelayForMission};
    someVariablesetToTrueWhenTaskSucceeded = false;
    _missionType =  selectRandom [_antennaAreas,_killOfficerAreas,_blablaAreas];
    _missionLocation = selectRandom _missionType;
    call {
      if (_missionType isEqualTo _antennaAreas) exitWith { _missionLocation execVM "destroyAntenna.sqf"};  // each sqf must have a  someVariablesetToTrueWhenTaskSucceeded set to true on mission completion
      if (_missionType isEqualTo _killOfficerAreas) exitWith { _missionLocation execVM "killOfficer.sqf"};
      if (_missionType isEqualTo _blablaAreas) exitWith { _missionLocation execVM "blabla.sqf"};
    };
    _someTimer = diag_TickTime;
  };
};

 

    

  • Like 2

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

×