Jump to content

Recommended Posts

Mod support guide added to front page under Guides:

 

Working on a possible hotfix release to address some issues caused by RHS v0.4.3 update.

Share this post


Link to post
Share on other sites

Base code, RHS Tanoa and RHS Malden versions updated on github. Can any one confirm or refute crashes on these versions?

Share this post


Link to post
Share on other sites

Hello @Jigsor can we get the mission's packed in .pbo format. Is easier to distribute!

Just a suggestion. Thx!

Share this post


Link to post
Share on other sites

So I updated to 1.47 yesterday and now when I try to load Takistan or Altis with RHS, I get this error

 

mpmissions\_cur_mp.takistan\mission.sqm/mission/entities/item693.type: vehicle class rhs_melb_ah6m_H no longer exists

 

It sticks me at the map screen that says "no access point" or something.  Basically shows a yellow satellite with a blank map behind it.  With vanilla settings, it works fine.  Possible solution?

Share this post


Link to post
Share on other sites

Mission pack updated with fixes + additions pertaining to RHS v0.4.3 changes.

Mission version remains 1.47 as code base is the same except for a few RHS class names and one new scripted dynamic loadout for RHS A-10.
Also fixed is a dynamic loadout error occurring on little bird in FFAA.lythium version. Not sure when this one snuck in..

Hotfixed version mission pack in dropbox link on first page.

 

  • Like 1

Share this post


Link to post
Share on other sites

Love the mission mate, 1 of the first coop missions I played online, still have the :eyeheart: for it ;-) Good to see you keep updating!

  • Thanks 1

Share this post


Link to post
Share on other sites

Is their a way to make vehicles remain? Just point to the direction. It is fine with MHQ's (They remain in the field). Everything else disappears after xx seconds.

Share this post


Link to post
Share on other sites

Every dead unit disappears in ~3 minutes at my dedicated. Headed to init_server.sqf, found there // Clean up Maintenance // paragraph, changed those settings - didn't worked

Headed to scripts\repetitive_cleanup.sqf, but eeeeh, im far away from coding, so that was like a dark forest as for me

Any tips, how to make those bodies/items/vehicles/etc stay for a longer time?

Thanks

 

UPD:

At the "INSfncs\server_fncs.sqf" lines:

 

    if (not (_unit isKindOf "Man")) then {
        {_x setPos position _unit} forEach crew _unit;
        sleep 1800;  <- Amount of seconds before dead bodies will disappear


    if (_unit isKindOf "Man") then {
        if(not ((vehicle _unit) isKindOf "Man")) then {_unit setPos (position vehicle _unit)};
        sleep 1800; <- Amount of seconds before vehicles will disappear

 

Default ones were different, so i've picked 1800 aka 30 minutes

Phew

Share this post


Link to post
Share on other sites
On 11/2/2017 at 2:20 PM, COLDSTEEL COHEN said:

Is their a way to make vehicles remain? Just point to the direction. It is fine with MHQ's (They remain in the field). Everything else disappears after xx seconds.

Did Bean Bonder's solution answer your question? Or are you referring to abandoned vehicles from base?
M.Mosely, looks like there is a problem with CUP mods installation/missing mods..

Share this post


Link to post
Share on other sites

The air patrol will not spawn for me. I have it set at 45 seconds and it won't spawn

 

I'm using RHS/CBA/ASR AI/TFAR/FA18

 

Any ideas?

 

It used to spawn fine before I started using ASR AI; could that be the issue?

Share this post


Link to post
Share on other sites
3 hours ago, M.Mosley said:

The air patrol will not spawn for me. I have it set at 45 seconds and it won't spawn

 

I'm using RHS/CBA/ASR AI/TFAR/FA18

 

Any ideas?

 

It used to spawn fine before I started using ASR AI; could that be the issue?

Not sure what the problem is, its working fine on my end with and without ASR AI. Any errors in rpt or modifications done to support aircraft for air patrol from the mentioned mods?

Share this post


Link to post
Share on other sites

Haven't modified anything. 

 

The only thing that stands out in the logs is this

 

Quote

14:44:35 "BMR Insurgency Mission Parameters:"
14:44:35 "INS_Dum_Param1 = 0"
14:44:35 "INS_p_time = 12"
14:44:35 "JIPweather = 0"
14:44:35 "ambRadioChatter = 1"
14:44:35 "ambCombSound = 1"
14:44:35 "Remove_grass_opt = 0"
14:44:35 "INS_environment = 1"
14:44:35 "Brighter_Nights = 0"
14:44:35 "INS_Dum_Param2 = 0"
14:44:35 "INS_p_rev = 1"
14:44:35 "INS_p_rev_time = 600"
14:44:35 "INS_Dum_Param3 = 0"
14:44:35 "INS_op_faction = 6"
14:44:35 "INS_Dum_Param4 = 0"
14:44:35 "InfPb = 50"
14:44:35 "MecArmPb = 75"
14:44:35 "AI_SpawnDis = 300"
14:44:35 "Max_Act_Gzones = 15"
14:44:35 Error in expression <e","_ins_debug"];

_airCenter = [] call RandomAirCenterOp4;

if (count _airCente>
14:44:35   Error position: <RandomAirCenterOp4;

if (count _airCente>
14:44:35   Error Undefined variable in expression: randomaircenterop4
14:44:35 File mpmissions\__cur_mp.Tanoa\scripts\AirPatrolEast.sqf, line 11
14:44:35 Performance warning: SimpleSerialization::Write 'pd_19' is using type of ',SCRIPT' which is not optimized by simple serialization, falling back to generic serialization, use generic type or ask for optimizations for these types
14:44:35 Performance warning: SimpleSerialization::Read 'pd_19' is using type of ,'SCRIPT' which is not optimized by simple serialization, falling back to generic serialization, use generic type or ask for optimizations for these types
14:44:35 "DeAct_Gzone_delay = 2"
14:44:35 "EnableEnemyAir = 5"
14:44:35 "AirRespawnDelay = 45"
14:44:35 "PatroleWPmode = 1"
14:44:35 "INS_Dum_Param5 = 0"
14:44:35 "BTC_p_skill = 1"
14:44:35 "BTC_AI_skill = 5"
14:44:35 "INS_Dum_Param6 = 0"
14:44:35 "CiviMobiles = 0"
14:44:35 "CiviFoot = 0"
14:44:35 "CivProbability = 100"
14:44:35 "SuicideBombers = 0"
14:44:35 "INS_Dum_Param7 = 0"
14:44:35 "INS_play_op4 = 0"
14:44:35 "INS_logistics = 2"
14:44:35 "Fatigue_ability = 0"
14:44:35 "EOS_DAMAGE_MULTIPLIER = 200"
14:44:35 "INSpDamMul = 100"
14:44:35 "JigHeliExtraction = 1"
14:44:35 "INS_GasGrenadeMod = 0"
14:44:35 "limitPOV = 0"
14:44:35 "INS_Player_Markers = 1"
14:44:35 "max_ai_recruits = 10"
14:44:35 "AI_radio_volume = 0"
14:44:35 "INS_full_loadout = 1"
14:44:35 "INS_Dum_Param8 = 0"
14:44:35 "EnemyAmmoCache = 1"
14:44:35 "Intel_Loc_Alpha = 1"
14:44:35 "Intel_Count = 4"
14:44:35 "INS_Dum_Param9 = 0"
14:44:35 "DebugEnabled = 0"
14:44:35 "tky_perfmon = 0"

 

Share this post


Link to post
Share on other sites
2 hours ago, M.Mosley said:

Haven't modified anything. 

 

The only thing that stands out in the logs is this

 

 

One of the first things done in AirPatrolEast.sqf is generate a position by calling function
RandomAirCenterOp4 located in AirPatrole_Fncs.sqf.
Air patrol functions are loaded server side in init.sqf before AirPatrolEast.sqf is initialized in init_server.sqf.
So error implies this function is not defined or loaded into memory.
Worth noting but maybe unrelated is that this function depens on markers "Respawn_West","airWhiteList1","airWhiteList2","airWhiteList3" and object center existing on the map.

"Haven't modified anything."
Do you mean absolutely no modification to the mission has been done in any way. If so wich version has the problem?.
You say it worked before adding ASR AI? Did you add the ASR AI userconfig to the server? Did you save the mission in editor with ASR AI enabled? If so that will make it a requirement.

Share this post


Link to post
Share on other sites

The only dependency I see for ASI AI is the ASRAI cfg vehicles - althought I can't figure out what that is in the editor

 

I just added the @ASRAI to the launch parameters and have it loaded on the server. 

 

I added some vehicles and other playable infantry but that's it really. 

 

Does ASR affect the airpatrol script somehow?

 

It's weird - the air patrol works fine in the editor MP mode, but when it's on the server it doesn't work

Share this post


Link to post
Share on other sites

This is the airpatroleast.sqf thats running

 

Quote

// AirPatrolEast.sqf by Jigsor
// runs from init_server.sqf
// nul = [] execVM "scripts\AirPatrolEast.sqf";

if (!isServer) exitWith {};
waitUntil{!(isNil "BIS_fnc_init")};
waitUntil {time > 10};

private ["_airCenter","_currMkr","_eaLogicPos","_eaMkrPos","_aire1","_aire2","_mrkUpdate","_ins_debug"];

_airCenter = [] call RandomAirCenterOp4;

if (count _airCenter > 0) then
{
    air_pat_pos setPos _airCenter;
    sleep 0.1;
    _mrkUpdate = false;
    _mrkUpdate = call Air_Dest_fnc;
    waitUntil {sleep 1; _mrkUpdate};

    airhunterE1 = ObjNull;
    airhunterE2 = ObjNull;
    _ins_debug = if (DebugEnabled isEqualTo 1) then {TRUE}else{FALSE};

    if (_ins_debug) then {
        // show initial spawn position
        if !(getMarkerColor "curAEspawnpos" isEqualTo "") then {deleteMarker "curAEspawnpos";};
        _currMkr = createMarker ["curAEspawnpos", getMarkerPos "spawnaire"];
        _currMkr setMarkerShape "ELLIPSE";
        "curAEspawnpos" setMarkerSize [2, 2];
        "curAEspawnpos" setMarkerShape "ICON";
        "curAEspawnpos" setMarkerType "mil_dot";//"Empty"
        "curAEspawnpos" setMarkerColor "ColorOrange";
        "curAEspawnpos" setMarkerText "Initial Air Spawn";
        publicVariable "curAEspawnpos";
        sleep 2;
        _eaLogicPos = getPos EastAirLogic;
        _eaMkrPos = getMarkerPos "curAEspawnpos";
    };

    // Helicopter
    if ((EnableEnemyAir isEqualTo 1) || (EnableEnemyAir isEqualTo 3) ||    (EnableEnemyAir isEqualTo 4) ||    (EnableEnemyAir isEqualTo 6)) then
    {
        _aire1 = [_ins_debug] spawn {
            params ["_ins_debug","_delay","_loop"];
            if (INS_Op4_helis isEqualTo []) exitWith {};
            _delay = AirRespawnDelay;
            airhunterE1 = ObjNull;
            random_w_player2 = ObjNull;
            "airhunterE1" addPublicVariableEventHandler {call compile format ["%1",_this select 1]};
            "random_w_player2" addPublicVariableEventHandler {call compile format ["%1",_this select 1]};

            for [{_loop=0}, {_loop<1}, {_loop=_loop}] do
            {
                if ((isNull airhunterE1) || (not(alive airhunterE1))) then {
                    private ["_speed","_apeDir","_randAlts","_height","_randomTypes","_type","_vehicle","_veh","_vehgrp","_vel","_VarHunterName","_wp0","_spawnDir","_poscreate","_vehCrew"];

                    sleep _delay;
                    //call AirEast_move_logic_fnc;

                    if (PatroleWPmode isEqualTo 1) then {
                        random_w_player2 = ObjNull;
                        publicVariable "random_w_player2";
                        sleep 3;
                        call find_me2_fnc;
                        sleep 3;
                        if (_ins_debug) then {diag_log text format ["airhunterE1 West Human Target2: %1", random_w_player2];};
                    };

                    _poscreate = getMarkerPos "spawnaire";
                    _speed = 65;
                    _apeDir = getDir air_pat_east;
                    _spawnDir = [getPosATL air_pat_east, getPosATL air_pat_pos] call BIS_fnc_dirTo;
                    _randAlts = [70,80,90];
                    _height = selectRandom _randAlts;
                    _type = selectRandom INS_Op4_helis;

                    _vehicle = [getPosATL air_pat_east, _apeDir, _type, EAST] call bis_fnc_spawnvehicle;
                    sleep jig_tvt_globalsleep;
                    _veh = _vehicle select 0;

                    _vel = velocity _veh;
                    _veh setpos [(_poscreate select 0) + (sin (_spawnDir -180)), (_poscreate select 1) + (cos (_spawnDir -180)), _height];
                    _veh setVelocity [(_vel select 0)+(sin _apeDir*_speed),(_vel select 1)+(cos _apeDir*_speed),(_vel select 2)];

                    _vehgrp = _vehicle select 2 ;// group of vehicle
                    if (BTC_p_skill isEqualTo 1) then {[_vehgrp] call BTC_AI_init;};
                    //_vehCrew = (group (crew _veh select 0)); {_x setVariable ["asr_ai_exclude",true];} foreach _vehCrew;

                    _veh addeventhandler ["killed","[(_this select 0)] spawn remove_carcass_fnc"];
                    {_x addeventhandler ["killed","[(_this select 0)] spawn remove_carcass_fnc"]} forEach (units _vehgrp);
                    _veh addeventhandler ["HandleDamage", {if (((_this select 4) isKindOf "MissileCore") || ((_this select 4) isKindOf "rocketCore")) then { 1; } else { _this select 2; }; }];// Destroy This Air Vehicle With 1 Missile or Rocket

                    _VarHunterName = "airhunterE1";
                    _veh setVehicleVarName _VarHunterName;
                    _veh Call Compile Format ["%1=_This ; PublicVariable ""%1""",_VarHunterName];

                    // Initial Waypoint
                    _wp0 = _vehgrp addWaypoint [getPosATL air_pat_east, 200];
                    _wp0 setWaypointType "MOVE";
                    _wp0 setWaypointBehaviour "AWARE";
                    _wp0 setWaypointCombatMode "GREEN";
                    _wp0 setWaypointStatements ["true", ""];

                    if (_ins_debug) then {[airhunterE1] spawn {[airhunterE1] call air_debug_mkrs;};};

                    if (!isNull random_w_player2) then {
                        // Hunt Player / Seek and Destroy
                        nul = [airhunterE1,5000,random_w_player2] call find_west_target_fnc;
                    }else{
                        // Guard Towns
                        nul = [airhunterE1] call east_AO_guard_cycle_wp;
                    };

                    waitUntil {sleep 1; (!alive _veh) || ((count crew _veh) < 1) || (!canmove _veh)};
                    if (((count crew _veh) < 1) && (alive _veh)) then {_veh setDamage 1};
                    {
                        if (alive _x) then {_x setDamage 1; sleep 0.1}
                    } forEach (crew _veh);
                    if (!alive _veh) then {
                        {
                            if (alive _x) then {_x setDamage 1; sleep 0.1}
                        } forEach (units _vehgrp);
                    };
                    if (alive _veh) then {
                        _veh setDamage 1;
                        {
                            if (alive _x) then {_x setDamage 1; sleep 0.1}
                        } forEach (units _vehgrp);
                    };
                };
                if (_ins_debug) then {sleep 10;} else {sleep (3 + random 597);};
            };
        };
    };
    if (_ins_debug) then {sleep 10;} else {sleep (3 + random 597);};

    // Fixed Wing
    if ((EnableEnemyAir isEqualTo 2) || (EnableEnemyAir isEqualTo 3) || (EnableEnemyAir isEqualTo 5) || (EnableEnemyAir isEqualTo 6)) then
    {
        _aire2 = [_ins_debug] spawn {
            params ["_ins_debug","_delay","_loop"];
            _delay = AirRespawnDelay;
            airhunterE2 = ObjNull;
            random_w_player3 = ObjNull;
            "airhunterE2" addPublicVariableEventHandler {call compile format ["%1",_this select 1]};
            "random_w_player3" addPublicVariableEventHandler {call compile format ["%1",_this select 1]};

            for [{_loop=0}, {_loop<1}, {_loop=_loop}] do
            {
                if ((isNull airhunterE2) || (not(alive airhunterE2))) then {
                    private ["_speed","_apeDir","_randAlts","_height","_randomTypes","_type","_vehicle","_veh","_vehgrp","_vel","_VarHunterName","_wp0","_spawnDir","_poscreate"];

                    sleep _delay;
                    //call AirEast_move_logic_fnc;

                    if (PatroleWPmode isEqualTo 1) then {
                        random_w_player3 = ObjNull;
                        publicVariable "random_w_player3";
                        sleep 3;
                        call find_me3_fnc;
                        sleep 3;
                        if (_ins_debug) then {diag_log text format ["airhunterE2 West Human Target3: %1", random_w_player3];};
                    };

                    _poscreate = getMarkerPos "spawnaire";
                    _speed = 180;
                    _apeDir = getDir air_pat_east;
                    _spawnDir = [getPosATL air_pat_east, getPosATL air_pat_pos] call BIS_fnc_dirTo;
                    _randAlts = [275,375,475,575];
                    _height = selectRandom _randAlts;
                    _type = selectRandom INS_Op4_fixedWing;

                    _vehicle = [getPosATL air_pat_east, _apeDir, _type, EAST] call bis_fnc_spawnvehicle;
                    sleep jig_tvt_globalsleep;
                    _veh = _vehicle select 0;

                    _vel = velocity _veh;
                    _veh setpos [(_poscreate select 0) + (sin (_spawnDir -180)), (_poscreate select 1) + (cos (_spawnDir -180)), _height];
                    _veh setVelocity [(_vel select 0)+(sin _apeDir*_speed),(_vel select 1)+(cos _apeDir*_speed),(_vel select 2)];

                    _vehgrp = _vehicle select 2 ;
                    if (BTC_p_skill isEqualTo 1) then {[_vehgrp] call BTC_AI_init;};

                    _veh addeventhandler ["killed","[(_this select 0)] spawn remove_carcass_fnc"];
                    {_x addeventhandler ["killed","[(_this select 0)] spawn remove_carcass_fnc"]} forEach (units _vehgrp);
                    _veh addeventhandler ["HandleDamage", {if (((_this select 4) isKindOf "MissileCore") || ((_this select 4) isKindOf "rocketCore")) then { 1; } else { _this select 2; }; }];// Destroy This Air Vehicle With 1 Missile or Rocket

                    _VarHunterName = "airhunterE2";
                    _veh setVehicleVarName _VarHunterName;
                    _veh Call Compile Format ["%1=_This ; PublicVariable ""%1""",_VarHunterName];

                    // Initial Waypoint
                    _wp0 = _vehgrp addWaypoint [getPosATL air_pat_east, 200];
                    _wp0 setWaypointType "MOVE";
                    _wp0 setWaypointBehaviour "AWARE";
                    _wp0 setWaypointCombatMode "GREEN";
                    _wp0 setWaypointStatements ["true", ""];

                    if (_ins_debug) then {[airhunterE2] spawn {[airhunterE2] call air_debug_mkrs;};};

                    if (!isNull random_w_player3) then {
                        // Hunt Player / Seek and Destroy
                        nul = [airhunterE2,5000,random_w_player3] call find_west_target_fnc;
                    }else{
                        // Guard Towns
                        nul = [airhunterE2] call east_AO_guard_cycle_wp;
                    };

                    waitUntil {sleep 1; (!alive _veh) || ((count crew _veh) < 1) || (!canmove _veh)};
                    if (((count crew _veh) < 1) && (alive _veh)) then {_veh setDamage 1};
                    {
                        if (alive _x) then {_x setDamage 1; sleep 0.1}
                    } forEach (crew _veh);
                    if (!alive _veh) then {
                        {
                            if (alive _x) then {_x setDamage 1; sleep 0.1}
                        } forEach (units _vehgrp);
                    };
                    if (alive _veh) then {
                        _veh setDamage 1;
                        {
                            if (alive _x) then {_x setDamage 1; sleep 0.1}
                        } forEach (units _vehgrp);
                    };
                };
                if (_ins_debug) then {sleep 10;} else {sleep (3 + random 597);};
            };
        };
    };
};

 

 

Share this post


Link to post
Share on other sites

Thats the original version of AirPatrolEast.sqf. nothing wrong with it. working AOK here.. the error indicates that the variable representing the function RandomAirCenterOp4 called from this script does not exist/is undefined. the following staement after function call expects a position returned from that function , an [x,y,z] if it the array count is greater thatn 0 the script will fexecute the rest uf code underneath..

Not exactly sure what you mean by
"The only dependency I see for ASI AI is the ASRAI cfg vehicles - althought I can't figure out what that is in the editor "
ASR_AI3 requires CBA mod. If installing ASR AI on server and you wish to have custom settings or use a special optional config designed for RHS for example then you must install the editable config script that comes with ASR AI in A3_Installation_folder\userconfig\asr_ai3\asr_ai3_config.sqf.
Though its not reaaly required and will just use default internal settings if that config is not installed. server rpt will relect the following message -
"ASR AI3: Loading default settings for AI skills, launch the game with -filePatching to enable loading from userconfig\asr_ai3\asr_ai3_config.sqf"
ASR AI does not affect air patrol except only maybe sharing radio awareness.
Its mainly geared for ground units.
I suspect there is something else going but can't pinpoint it. maybe pastebin and share link to entire server rpt.
Note you should only edit mission with the required mods to avoid any problems. Note editing with asr ai enabled makes it a requirement and for some shity reason editing with cba enabled adds call{already exiting code..} to code contained in init fields if you open object editor for that object and will have to manually be removed.
So many possible variables as why why this behavior but not enough info. Have you tried to see if this behavior exists with an unedited version from dropbox?
Maybe also pastebin an unbinerized version of your edited mission.sqm.

 

Share this post


Link to post
Share on other sites

Here is a pastebin of the most recent server rpt

 

https://pastebin.com/Av6dGxjX

 

https://pastebin.com/bdhg5LX2

 

I don't know how to remove the ASR AI dependency in order to check to see what went wrong. I unfortunately saved over my most recent version of the mission which did not have ASR AI on it. 

 

I'm sorry i'm so clueless about this stuff

Share this post


Link to post
Share on other sites

Enable mods required to edit mission, save as unbinerized then manually remove the asr ai entries from mission.sqm.
Also mod folders cannot contain spaces @ASR AI3,
"-mod=@CBA_A3;@RHS_USAF;@RHS_AFRF;@RHS_GREF;@RHS_SAF;@FA18;@task_force_radio;@ASR AI3"
rpt also says Warning Message: You cannot play/edit this mission; it is dependent on downloadable content that has been deleted.
js_jc_fa18   ...wich mean you made that mod a requirement but for some reason its not loading.. Anyways the original version does not have this problem and were running 3 servers with this mission and all is working. the problem is with your edit and or server setup..

Share this post


Link to post
Share on other sites

Yeah I'm just going to start over lol

I don't know what went wrong and I can much just remake the mission.

 

 

Thank you though!

 

For future reference though, do NOT edit the mission with ASR AI enabled? Will that allow me to make it a server only mod so players don't need to run it client side?

Share this post


Link to post
Share on other sites
4 minutes ago, M.Mosley said:

Yeah I'm just going to start over lol

I don't know what went wrong and I can much just remake the mission.

 

 

Thank you though!

 

For future reference though, do NOT edit the mission with ASR AI enabled? Will that allow me to make it a server only mod so players don't need to run it client side?

yes , and if cba is required by mod combo then be aware and edit the call{} that it adds to init fields. if mission is working on local hosted server then there is obviously a problem with server installation.. probabaly mods. So yeah, rename that @ASR AI mod folder on server to @ASR_AI for example (no spaces or punctuation in server mod folders).

Share this post


Link to post
Share on other sites

@Jigsorthanks for the great mission, I've been looking for a good old insurgency for days!

And sorry to bother you with a request, but on the next update could you add:
- option to change/load the AI loadout in VA; 

Spoiler

Using Spyder addons (mod) to modify all AI units. I'm trying to fully integrate it in the mission. It's a small script (184kb). Any ideas?


- parameter option to enable CAF Agressors units (@CAF_AG1.5)?

Spoiler

Tried adding it myself, but it's not working.

 

Edited by n. rodrigues
Added possible solutions

Share this post


Link to post
Share on other sites

Been meaning to reply but forums have been having issues for many days lately.  I don't know anything about Using Spyder addons, but it appears to be an enhancement or support mod/script for Alive mod. BMR has nothing to do with alive mod as mentioned in the first page or two.  BMR Insurgency uses it own scripted framework. For loadout transers to AI you might check out the mod version of S. Crowe's Loadout Transfer. (Script version was removed from this mission because it was broken and I could not fix..). As for CAF, I dropped support for this a few versions back . This mod is deprecated and abandoned by it author for years now. There are many things broken in this mod now because the author has not made the necessary changes provoked by Arma 3 updates. ie: broken sound. broken armor, broken zeus, etc.. The are several working alternative supported mod options in BMR Insurgency for middle Eastern units such as Masi, CUP, and Project Opfor. There is a tutorial and first page for adding mod support yourself to this mission if you insist on CAF

  • 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

×