Jump to content
Sign in to follow this  
trini scourge

Secondary Ops Manager Module Discussion

Recommended Posts

Use my settings, those should work. Make sure you synch the module (F5), do not group it (F2). Make sure the file is loaded during the first 1 or 2 seconds of the mission. To make sure, put it at the top of the init.sqf file. Double check everything for typos.

I'm trying to understand the code.

Do your missions usually come every 300 seconds or so?

Share this post


Link to post
Share on other sites
I'm trying to understand the code.

Do your missions usually come every 300 seconds or so?

Well, I set the secopspacing on ((random 300) + 300), which means minimum of 5 and maximum of 10. But the _randomactivation variable decides whether a mission will start or not. I set that pretty low, so usually the missions don't start until like half an hour later. Then again, sometimes they start after 10 minutes. Just keep in mind that the (random 300) will only be chosen once. After it's loaded into SOM, it will be a fixed time. That is why I set the randomactivation variable pretty low, so that it's more random and unpredictable.

Edited by BlackAlpha

Share this post


Link to post
Share on other sites

hi guys, i am new to the world of Arma 2 and getting confused with the editing side of the game. i am currently trying to crate a mission where i can call in an air strike. ive already used the method of playing as a scout/spotter with the laser and having a jet fly over, what i noticed was the jet would either crash, be shot down or it would go off on holiday and never come back. recently i ve read people suggesting using Secondary Ops Manager to call an air strike, how on earth do i go about this? there was one tutorial on youtube but i couldn't get it to work, all got was random missions and no option for air strike.

many thanks in advance for suggestions

Share this post


Link to post
Share on other sites
hi guys, i am new to the world of Arma 2 and getting confused with the editing side of the game. i am currently trying to crate a mission where i can call in an air strike. ive already used the method of playing as a scout/spotter with the laser and having a jet fly over, what i noticed was the jet would either crash, be shot down or it would go off on holiday and never come back. recently i ve read people suggesting using Secondary Ops Manager to call an air strike, how on earth do i go about this? there was one tutorial on youtube but i couldn't get it to work, all got was random missions and no option for air strike.

many thanks in advance for suggestions

Hello....

Well the way i do it is like this

1: put a player (ie: you) on the map

2: put down a Secondary Ops Manager and give it a name som1

3: Sync the Secondary Ops Manager to the player (ie:you)

4: create a Trigger and make it Radio Alpha (or what ever radio channel you want)

5: In the condition field put: som1 getVariable "initDone"

in the act on field put: [["tactical_airstrike"], player] call BIS_SOM_addSupportRequestFunc;

what this does is if you hit "0" then chose "Radio" you should see "Alpha" (or what ever channel you picked) and if you select "Alpha" you will get a message say the Air strike is ready. Now you can select Communication and see a option for "Tactical Air Strike". If you selected it you will hear HQ and just follow the instruction that they gives you. You will be able to open your map and click on you map where you want the air strike to hit. Then once its done you can just repeat the steps over again to get another air strike.

Hope this helps

Darkone

Edited by darkone12

Share this post


Link to post
Share on other sites

Blackalpha,

I copied and pasted your text into my .sqf, and the missions still spawn right on top of me, plus they come within 30 seconds. Any ideas? I feel like I'm missing something really basic.

execVM "somsettings.sqf"; is the only thing in my init.sqf , named my SOM BIS_SOM, synched (not grouped) to me, the sqd leader.

Edited by arthur666

Share this post


Link to post
Share on other sites
Darkone,

I copied and pasted your text into my .sqf, and the missions still spawn right on top of me, plus they come within 30 seconds. Any ideas? I feel like I'm missing something really basic.

execVM "somsettings.sqf"; is the only thing in my init.sqf , named my SOM BIS_SOM, synched (not grouped) to me, the sqd leader.

Well, I'm not sure what could be wrong. This is how I tested it:

I go to the editor. I save the empty mission under the name "test". I go to F1 and place one soldier as the player. I go to F7 and create one SOM module. I double click the module and change it's name in the top to BIS_SOM. I go to F5 and synch it to the player.

I alt-tab and go to the mission folder. There I create two new txt files. Here comes the important part. I rename both files and remove their extensions. Then I name them "init.sqf" and "somsettings.sqf". I open them both. I go to this topic and copy the init line from my previous post and I paste it into init.sqf. Then I do the same for somsettings.sqf. For testing purposes I set the initial delay to 30 and randomactivation to 1.

I go back into the editor and I save the mission. I start the game and wait 30 seconds. HQ calls me and gives me an objective at least 1 KM away.

To quickly check whether the files are actually being loaded, add the following into both files on an empty line.

player globalchat "Check 1";

Put one at the top and bottom of init.sqf and do the same for somsettings.sqf. Just change the number to something else, so you know which part got triggered. You'll see something in the chat if they get triggered.

I have a feeling that your files aren't being loaded for some reason. Did you remove the .txt file extension before adding the .sqf extension to the text files? What is your game version? Have you ever successfully created and loaded scripts before?

Share this post


Link to post
Share on other sites

BlackAlpha,

It worked! I followed your instructions exactly. The problem had something to do with the text format I was saving the .sqf files under! That's probably why my ACM stuff has not been working as well. I really appreciate your help and patience.

So, I've created a mission where I have control over a 7 man squad + a Mi-24. Now the SOM missions are far enough away that helo transport actually makes sense. We load up into the Hind, and I look at the map to find a good LZ. The randomness of the SOM is great. Every mission I must decide from where and how close to approach, whether or not to use the Hind for air support or just transport etc. Throw in a FARP for repair/rearming/healing, and I've got a fun open ended mission. Good stuff.

Edited by arthur666

Share this post


Link to post
Share on other sites

You can call in any secops mission you want by using these in a radio trigger:

["ambush", true, som1] call BIS_SOM_requestSecOpFunc;

["attack_location", true, som1] call BIS_SOM_requestSecOpFunc;

["rescue", true, som1] call BIS_SOM_requestSecOpFunc;

["defend_location", true, som1] call BIS_SOM_requestSecOpFunc;

["patrol", true, som1] call BIS_SOM_requestSecOpFunc;

["escort", true, som1] call BIS_SOM_requestSecOpFunc;

["destroy", true, som1] call BIS_SOM_requestSecOpFunc;

["search", true, som1] call BIS_SOM_requestSecOpFunc;

["trap", true, som1] call BIS_SOM_requestSecOpFunc;

Under the SOM Module put this in the init line:

this setVariable ["settings", [[], true, nil, nil, false]];

Oh and make sure you name the SOM Module - som1

Edited by cobra4v320

Share this post


Link to post
Share on other sites

Place into the init line of the SOM Module Explanations below:

this setVariable ["settings", [["ambush", "attack_location", "destroy", "escort", "patrol", "rescue", "search", "trap"], "true", ["Razor", ["Razor"], "H.Q.", ["HQ"]], "30", "true", "180", "0.3", [300, 700]]];

I have a mission almost complete with the SOM and ACM on Utes if anyone is interested???

//Configure SOM module with custom settings. Must run during the first 2 seconds of a mission.

private ["_pool", "_hq", "_callsigns", "_initialDelay", "_autoReinforce", "_secOpSpacing", "_randomActivation", "_secOpDistances", "_settings"];

//List of secops.
//Default: ["ambush", "attack_location", "defend_location", "destroy", "escort", "patrol", "rescue", "search", "trap"]
_pool = ["ambush", "attack_location", "destroy", "escort", "patrol", "rescue", "search", "trap"];

//Enable or disable HQ.
//Default: true
_hq = true;

//Team text, team speech, H.Q. text, H.Q. speech.
//Default: ["ALPHA", ["Alpha"], "H.Q.", ["HQ"]]
_callsigns = ["Razor", ["Razor"], "H.Q.", ["HQ"]];

//Delay in seconds before starting random SecOps selection. Only seems to affect the first secops.
//Default: 30
_initialDelay = ((random 300) + 300);

//Should an automatic Reinforce be triggered when there are casualties?
//Default is true.
_autoReinforce = true;

//??? Delay between sec ops?
//Default: 30
_secOpSpacing = ((random 300) + 300);

//??? From 0 to 1. 0 means no secops starting. With 1 they do start. Some kind of chance variable?
//Default: 0.7
_randomActivation = 0.4;

//Min Max distance of sec ops.
//Default: [300, 700]
_secOpDistances = [1500, 2000];

_settings = [_pool, _hq, _callsigns, _initialDelay, _autoReinforce, _secOpSpacing, _randomActivation, _secOpDistances];

//BIS_SOM is module name.
BIS_SOM setVariable ["settings", _settings];

Edited by cobra4v320

Share this post


Link to post
Share on other sites

If I link the SOM to the commander, and group people to him...

Why is it only the command can view the Sec Op Tasks?

Bit silly.

Especially if I reconnect as commander, because then the tasks arent setup anymore.

Is this a bug or a really stupid idea someone in BI had?

-----------

Also...

Im using this in a trigger to add artillery support to a player:

[["aerial_reconnaissance","artillery_barrage"], player, [[RIPPER, [2,3,4,9]]]] call BIS_SOM_addSupportRequestFunc;

However, once used it goes away ( cool ok, thats what I want )...so then, using the trigger I add it again..

This adds twice as many "Notes" to the map screen and a few other things.

Is there a way to BIS_SOM_delSupportRequestFunc ? Something along those lines.

All I wanted to do was allow the player to use the arty again later in the mission.

Share this post


Link to post
Share on other sites

@nullsystems

Put this into a trigger activation none

[["aerial_reconnaissance","artillery_barrage"], player, [[RIPPER, [2,3,4,9]]]] call BIS_SOM_addSupportRequestFunc

Condition

som1 getVariable "initDone"

some1 being the name of your SOM Module

The above will load on start and give you a single list with the two items in it. After you use them that's it.

Put this into a radio trigger

[["artillery_barrage"], player, [[RIPPER, [2,3,4,9]]]] call BIS_SOM_addSupportRequestFunc;

condition

som1 getVariable "initDone"

some1 being the name of your SOM Module

The above will allow you to continue to call only on your artillery piece.

You also said you wanted to use it later in the mission again you can do this in the condition field instead:

som1 getVariable "initDone" and triggerActivated t1

t1 is the name of another trigger that you created. Once that trigger is activated it will allow you to call on the artillery piece.

Edited by cobra4v320

Share this post


Link to post
Share on other sites

Hi,

Im not entirely too sure you understood what im trying to say...

I can get the arty to work.

I can get it to appear again in my "communication" options.

This is all fine, however...

If I want it to show up again after using all my "artillery" the first time...the "Notes" will be spammed with another set of instructions for "Spec op" and "Artillery".

This is very annoying if you have Arty several times in one mission.

Is there any way around this?

Also, is there a way to detect if the arty commands are already setup for the player? So that you dont activate it twice, thus having twice as many commands.

Edited by nullsystems

Share this post


Link to post
Share on other sites

The modules continue to work but it seems after 2 to 3 spawns it still has the action menu but it will not heal the player.

Share this post


Link to post
Share on other sites
Place into the init line of the SOM Module Explanations below:

this setVariable ["settings", [["ambush", "attack_location", "destroy", "escort", "patrol", "rescue", "search", "trap"], "true", ["Razor", ["Razor"], "H.Q.", ["HQ"]], "30", "true", "180", "0.3", [300, 700]]];

I have a mission almost complete with the SOM and ACM on Utes if anyone is interested???

//Configure SOM module with custom settings. Must run during the first 2 seconds of a mission.

private ["_pool", "_hq", "_callsigns", "_initialDelay", "_autoReinforce", "_secOpSpacing", "_randomActivation", "_secOpDistances", "_settings"];

//List of secops.
//Default: ["ambush", "attack_location", "defend_location", "destroy", "escort", "patrol", "rescue", "search", "trap"]
_pool = ["ambush", "attack_location", "destroy", "escort", "patrol", "rescue", "search", "trap"];

//Enable or disable HQ.
//Default: true
_hq = true;

//Team text, team speech, H.Q. text, H.Q. speech.
//Default: ["ALPHA", ["Alpha"], "H.Q.", ["HQ"]]
_callsigns = ["Razor", ["Razor"], "H.Q.", ["HQ"]];

//Delay in seconds before starting random SecOps selection. Only seems to affect the first secops.
//Default: 30
_initialDelay = ((random 300) + 300);

//Should an automatic Reinforce be triggered when there are casualties?
//Default is true.
_autoReinforce = true;

//??? Delay between sec ops?
//Default: 30
_secOpSpacing = ((random 300) + 300);

//??? From 0 to 1. 0 means no secops starting. With 1 they do start. Some kind of chance variable?
//Default: 0.7
_randomActivation = 0.4;

//Min Max distance of sec ops.
//Default: [300, 700]
_secOpDistances = [1500, 2000];

_settings = [_pool, _hq, _callsigns, _initialDelay, _autoReinforce, _secOpSpacing, _randomActivation, _secOpDistances];

//BIS_SOM is module name.
BIS_SOM setVariable ["settings", _settings];

To avoid confusion. In the above example I posted earlier, I removed the "defend_location" mission from the missions list. If you would like to receive that mission, you will need to add it into the list.

Share this post


Link to post
Share on other sites

@BlackAlpha: here the same, i copied exactly your Scripts. The same Result like the others, no Chance . Dont works for me : (((. Any other Ideas ?

Greetings Thunder

Share this post


Link to post
Share on other sites
@BlackAlpha: here the same, i copied exactly your Scripts. The same Result like the others, no Chance . Dont works for me : (((. Any other Ideas ?

Greetings Thunder

Try this, make sure you actually save the file as a .sqf file.

BlackAlpha,

It worked! I followed your instructions exactly. The problem had something to do with the text format I was saving the .sqf files under! That's probably why my ACM stuff has not been working as well. I really appreciate your help and patience.

So, I've created a mission where I have control over a 7 man squad + a Mi-24. Now the SOM missions are far enough away that helo transport actually makes sense. We load up into the Hind, and I look at the map to find a good LZ. The randomness of the SOM is great. Every mission I must decide from where and how close to approach, whether or not to use the Hind for air support or just transport etc. Throw in a FARP for repair/rearming/healing, and I've got a fun open ended mission. Good stuff.

If it still doesn't work, post all the steps you've taken when trying to get it to work. I'm sure there's something you are missing because like arthur666 said, it does work.

Share this post


Link to post
Share on other sites

Now it works fine with

"this setVariable ["settings", [["ambush", "attack_location", "destroy", "escort", "patrol", "rescue", "search", "trap"], "true", ["Razor", ["Razor"], "H.Q.", ["HQ"]], "30", "true", "180", "0.3", [300, 700]]];"

in init Line of the Module and rename Module as "Som1"

I tried to use ur way BlackAlpha, but if i rename the SOM module to BIS_SOM i cant get nothing, i mean no Orders from HQ !

Other Problem: if i die as Leader, i cant get no more Orders from HQ. Any Solutions ???

Greetings Thunder

Share this post


Link to post
Share on other sites
Now it works fine with

"this setVariable ["settings", [["ambush", "attack_location", "destroy", "escort", "patrol", "rescue", "search", "trap"], "true", ["Razor", ["Razor"], "H.Q.", ["HQ"]], "30", "true", "180", "0.3", [300, 700]]];"

in init Line of the Module and rename Module as "Som1"

I tried to use ur way BlackAlpha, but if i rename the SOM module to BIS_SOM i cant get nothing, i mean no Orders from HQ !

Other Problem: if i die as Leader, i cant get no more Orders from HQ. Any Solutions ???

Greetings Thunder

Try changing the initialDelay to 30. secOpSpacing to 30. randomActivation to 1. Then when you use the same module name in the script and your mission, you should be able to see the effects pretty quickly. For the name you could choose whatever you'd like, as long as your scripts will reference to that name. So, if you want you can even call it ILIKEBUNNIES, it doesn't really matter, as long as your scripts reference to the correct name.

My settings should only give you a secops every 30 - 60 minutes. So, you'd have to be very patient if you want to see if it works. That is why I provided the default settings as well, so you get an idea of how it usually works and you can use the default settings for testing purposes.

Edited by BlackAlpha

Share this post


Link to post
Share on other sites

Hi,

can anyone please explain this Option

>> //Should an automatic Reinforce be triggered when there are casualties?

//Default is true.

_autoReinforce = true; <<

and how i can use this ?

TXH and Greetings Thunder666

Share this post


Link to post
Share on other sites

if you want the default behavior, you don't need to do anything. when a squad member dies, HQ will radio you that reinforcements are available. If you want them, "accept" that just like any other mission HQ sends, your map will be marked, and you go there to meet them.

Share this post


Link to post
Share on other sites

hi guys

can anyone confirm if the SOM works on a dedicated server ... i cant seem to load mission when i try on server ....

works fine if i host ...

Share this post


Link to post
Share on other sites

I have created an in game menu with all of the different SOM Missions. It is located here: http://www.armaholic.com/page.php?id=7197

@thunder666

You can call in reinforcements using the SOM, however you have to have at least one other person in your group. When the helicopter comes in to reinforce it will only drop off one soldier if all you had in your group was one soldier, if you had more than one it will drop off however many soldiers were in your group. The helicopter also drops off an ammo box.

put this into a trigger:

["reinforce", true, nameofyourSOM] call BIS_SOM_requestSecOpFunc

activation would be radio alpha repeatedly.

Also I have posted the script for the SOM Reinforcments below:

/*
File: create_briefing_assets.sqf
Author: Joris-Jan van 't Land

Description:
Creating all dynamic assets required for the briefing of the SecOp.

Parameter(s):
_this select 0: SecOp ID (Number)
_this select 1: SecOp scope (Object)
_this select 2: SOM main scope (Object)
*/

private ["_id", "_scope", "_mainScope"];
_id = _this select 0;
_scope = _this select 1;
_mainScope = _this select 2;

//Your phase content goes here:
private ["_mainGrp", "_leader", "_hq", "_grpComp"];
_mainGrp = _mainScope getVariable "group";
_leader = _mainScope getVariable "leader";
_hq = _mainScope getVariable "HQ";
_grpComp = _mainScope getVariable "grpComposition";

//Wait until the death was registered.
waitUntil {(count (units _mainGrp)) != (count _grpComp)};

//Wait a bit longer.
sleep (3 + (random 3));

//Register the conversation topic.
_hq kbAddTopic ["reinforce", BIS_SOM_stdPath + "kbs\secops\reinforce\reinforce.bikb", ""];


//Make sure the current leader has the correct topic.
private ["_install", "_uninstall"];
_install = 
{
player kbAddTopic ["reinforce", BIS_SOM_stdPath + "kbs\secops\reinforce\reinforce.bikb", ""];
};

_uninstall = 
{
player kbRemoveTopic "reinforce";
};

private ["_installID"];
_installID = [_mainScope, _install, _uninstall] call BIS_SOM_addLeaderInstallFunc;
_scope setVariable ["radio_topic_install", _installID];


//Find insertion point.
private ["_pos"];
_pos = [position _leader, 50, 500, 20, 0, 45 * (pi / 180), 0] call BIS_fnc_findSafePos;
_scope setVariable ["targetPos", _pos];

//Create marker.
private ["_markerName", "_code"];
_markerName = format ["BIS_SOM_Marker_%1_1", _id];
_code = 
{
private ["_marker"];
_marker = createMarkerLocal [_this select 1, _this select 0];
_marker setMarkerColorLocal "ColorGreen";
_marker setMarkerTypeLocal "mil_join";
_marker setMarkerTextLocal (localize "STR_SOM_REINFORCE_MARKER_PICKUP");
};

[[_leader], [_pos, _markerName], _code] call BIS_SOM_sendCodeFunc;

//We may need a dummy marker on the server to be able to delete it later.
if ((markerType _markerName) == "") then {private ["_dummy"]; _dummy = createMarkerLocal [_markerName, _pos]};

[_markerName, 1, _id, _mainScope] call BIS_SOM_addDynFunc;

//Telling the system to go to the next phase.
[_id, _mainScope] call BIS_SOM_nextSecOpPhaseFunc;

true

Edited by cobra4v320

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  

×