Jump to content

blckeagls' AI Mission - Version 2.0.2 Release (1/2/2015)


blckeagls

Recommended Posts

Please, help!
 
14:00:58 BattlEye Server: Script Log: #0 Oleg (93f458e39d1a6a8ef332858ca6187032) - #0 "cal (_this select 0)) then {[(_this select 0), [], []] call BIS_fnc_unitHeadgear;};"
14:00:58 Player Oleg kicked off by BattlEye: Script Restriction #0
14:00:58 Player Oleg disconnected.
 
15:30:01 BattlEye Server: Script Log: #0 Oleg (93f458e39d1a6a8ef332858ca6187032) - #0 "this select 0)) then {[(_this select 0), "", [], true] call bis_fnc_initVehicle;};"
15:30:01 Player Oleg kicked off by BattlEye: Script Restriction #0
15:30:01 Player Oleg disconnected.
 
P.S. The server has no other mission.
P.P.S. An error occurs at a distance of 1 km from the center of the mission. https://youtu.be/i22GdpZW-gQ
Link to comment
Share on other sites

Try adding this to the first line of scripts.txt in BE filters

 

! "call BIS_fnc_unitHeadgear;};"

 

If that doesn't work, try the one below in the same place.

 

! "cal (_this select 0)) then {[(_this select 0), [], []] call BIS_fnc_unitHeadgear;};"

Now kicks this error #0 "this select 0)) then {[(_this select 0), "", [], true] call bis_fnc_initVehicle;};"

A similar filter is not working.

Link to comment
Share on other sites

Now kicks this error #0 "this select 0)) then {[(_this select 0), "", [], true] call bis_fnc_initVehicle;};"

A similar filter is not working.

Interesting, have you added any vehicles by chance ? I have not seen those BE kicks before.

 

Either way, what filter caused the kick ? If it was scripts.txt, just at this on the first line:

 

!="this select 0)) then {[(_this select 0), "", [], true] call bis_fnc_initVehicle;};"

Link to comment
Share on other sites

Interesting, have you added any vehicles by chance ? I have not seen those BE kicks before.

 

Either way, what filter caused the kick ? If it was scripts.txt, just at this on the first line:

 

!="this select 0)) then {[(_this select 0), "", [], true] call bis_fnc_initVehicle;};"

This filter I added scripts.txt. Helicopter use the one that is on the map.

 

P.S. The problem is resolved. I have updated the client, where the first line Scripts.txt removed. Now the mission is working. Thanks for the help.

Link to comment
Share on other sites

 

dnk_paul, on 07 Jul 2015 - 1:25 PM, said:snapback.png

 

Sorted it, it was caused by this. It was calling the missions twice, so we were getting 2 lots of missions (8, not 4), but only one set were showing the markers. Sorted the init.sqf out now, and it's working as expected.

I've added stationary AT launchers to try to discourage people using vehicles. see how that goes...  ;)

 

Same. I added  a new map for my server a couple days ago to test the new ones out ... just to mess around.  Installed this mod again and was getting 8 vs 4.  Deleted:

if (isServer) then {
[] ExecVM "\q\addons\custom_server\init.sqf";
};

from init as you suggested and it seems to have fixed the issue.  Thanks and good eye on noticing the double call :D

Link to comment
Share on other sites

Same. I added  a new map for my server a couple days ago to test the new ones out ... just to mess around.  Installed this mod again and was getting 8 vs 4.  Deleted:

if (isServer) then {
[] ExecVM "\q\addons\custom_server\init.sqf";
};

from init as you suggested and it seems to have fixed the issue.  Thanks and good eye on noticing the double call :D

Thank you for pointing out these issues.

I will correct the error and upload a corrected start_black.sqf.

Link to comment
Share on other sites

No worries.

Question, can you run this script twice? Australia is a big map, and I think it would be good having more than just 4 missions. If it would run twice, we'd have 8 which would give better map coverage.

 

Would it be a case of running the init.sqf parts twice to fire up 2 sets?

Link to comment
Share on other sites

No worries.

Question, can you run this script twice? Australia is a big map, and I think it would be good having more than just 4 missions. If it would run twice, we'd have 8 which would give better map coverage.

 

Would it be a case of running the init.sqf parts twice to fire up 2 sets?

 

The issue I forsee is that there are a few global variables referenced by each mission timer. When a second instance of that mission timer is called it will overwrite some of the global variables. This will have two effects. Any mission spawned by the first instance of the timer will see values for the second instance of the timer. Thus, when the first mission is complete, the cleanup routines will be executed for the mission spawned by the second instance of the timer. When that happens, all alive AI spawned by the two timers will be cleaned up and the map marker for the second instance of the timer will be set to completed. The marker for the first instance of the timer will not be changed. The one exception will be dead bodies which currently are cleaned up by the Epoch cleanup routines.. The issue with the AI cleanup is probably easily resolved by moving the code for this into SM1.sqf and using local rather than global variables; the same goes for issues with the markers. You raise a good point about Australia however, and I can see that it might be worthwhile to add additional, optional timers in a forthcoming update.  I will keep this issue in mind for the next update (Build 3.5, now in testing on our servers).

 

All of that being said, if you want to give it a try, there is a cleaner way to do this that avoids defining global variables and functions twice. Open \custom_server\init.sqf.

 

copy this block of code:

 

//Start the mission timers

[] execVM "\q\addons\custom_server\AIMission\Major\majorTimer.sqf"; //Starts major mission system (Orange Map Markers)

[] execVM "\q\addons\custom_server\AIMission\Major2\major2Timer.sqf";//Starts major mission system 2 (Green Map Markers)

[] execVM "\q\addons\custom_server\AIMission\Minor2\minor2Timer.sqf";//Starts minor mission system 2 (Red Map Markers)

[] execVM "\q\addons\custom_server\AIMission\Minor\minorTimer.sqf";//Starts minor mission system (Blue Map Markers)

 

Paste it in a second time as shown below:

 

//Start the mission timers

[] execVM "\q\addons\custom_server\AIMission\Major\majorTimer.sqf"; //Starts major mission system (Orange Map Markers)

[] execVM "\q\addons\custom_server\AIMission\Major2\major2Timer.sqf";//Starts major mission system 2 (Green Map Markers)

[] execVM "\q\addons\custom_server\AIMission\Minor2\minor2Timer.sqf";//Starts minor mission system 2 (Red Map Markers)

[] execVM "\q\addons\custom_server\AIMission\Minor\minorTimer.sqf";//Starts minor mission system (Blue Map Markers)

 

//Start the second set of mission timers

[] execVM "\q\addons\custom_server\AIMission\Major\majorTimer.sqf"; //Starts major mission system (Orange Map Markers)

[] execVM "\q\addons\custom_server\AIMission\Major2\major2Timer.sqf";//Starts major mission system 2 (Green Map Markers)

[] execVM "\q\addons\custom_server\AIMission\Minor2\minor2Timer.sqf";//Starts minor mission system 2 (Red Map Markers)

[] execVM "\q\addons\custom_server\AIMission\Minor\minorTimer.sqf";//Starts minor mission system (Blue Map Markers)

 

Repack and start the server.

 

Link to comment
Share on other sites

You raise a good point about Australia however, and I can see that it might be worthwhile to add additional, optional timers in a forthcoming update.

 

Is having a definable mission # variable possible? For instance I remember on Stratis and Esseker thinking only 2 missions at a time would be better than 4 for a map that size. The person above wants 8 misisons for Australia. Would something like a config option for number of missions to spawn at a time (with a possible max of 8 if needed) be possible?

Link to comment
Share on other sites

Yes, that should be quite smiple to implement. I will include this setting in the next release. In the interim just comment out the lines for any missions you do not wish to have running.

 

In custom_server\init.sqf, comment out the [] execVM .... for the mission you wish to inactivate. The example below turns off Blue and Green missions.

 

//Start the mission timers
[] execVM "\q\addons\custom_server\AIMission\Major\majorTimer.sqf"; //Starts major mission system (Orange Map Markers)
//[] execVM "\q\addons\custom_server\AIMission\Major2\major2Timer.sqf";//Starts major mission system 2 (Green Map Markers)
[] execVM "\q\addons\custom_server\AIMission\Minor2\minor2Timer.sqf";//Starts minor mission system 2 (Red Map Markers)
//[] execVM "\q\addons\custom_server\AIMission\Minor\minorTimer.sqf";//Starts minor mission system (Blue Map Markers)
 

Link to comment
Share on other sites

Hi, Ghostrider.  I had some friends completely new to arma 3 epoch play the missions last night and they had some issues that never occurred to me as a veteran player:

 

1) They couldn't find the loot crates and had trouble differentiating them from the normal props around the missions.  Is it possible to add a smoke grenade over them on mission success? or perhaps this:

 

150px-Arma3_CfgVehicles_Sign_Arrow_F.jpg Sign_Arrow_F

2) They didn't realize what the map markers were.  Is it possible to add text to them? Doesn't have to be mission specific ... just something like "Side Mission" on the minor ones and "Side Mission (Hard)" on the major ones?

 

Thanks again for all the effort you put into this.

Link to comment
Share on other sites

Hi, Ghostrider.  I had some friends completely new to arma 3 epoch play the missions last night and they had some issues that never occurred to me as a veteran player:

 

1) They couldn't find the loot crates and had trouble differentiating them from the normal props around the missions.  Is it possible to add a smoke grenade over them on mission success? or perhaps this:

 

150px-Arma3_CfgVehicles_Sign_Arrow_F.jpg Sign_Arrow_F

2) They didn't realize what the map markers were.  Is it possible to add text to them? Doesn't have to be mission specific ... just something like "Side Mission" on the minor ones and "Side Mission (Hard)" on the major ones?

 

Thanks again for all the effort you put into this.

 

Improved map markers are finished. I have a routine to spawn smoke at crates that worked until I added on some addditional flexibility to spawn temporary vehicles at missions. I should have this all sorted in the next few days.

Link to comment
Share on other sites

Improved map markers are finished. I have a routine to spawn smoke at crates that worked until I added on some addditional flexibility to spawn temporary vehicles at missions. I should have this all sorted in the next few days.

 

Nice. Just wanted to say we all really appreciate all this work you're putting into the mod. You're amazingly responsive too. thanks man :D

Link to comment
Share on other sites

Hey Ghostrider really looking forward to trying this out.

 

Can you or anyone else take a look at my init.sqf and make sure it looks correct?

 

execVM "start_blck.sqf";

if (isServer) then {
    execVM "\q\addons\traderATMs\init.sqf";
execVM "\q\addons\custom_server\init.sqf";
//If anything but server execute this script
} else {
[] spawn {
//This is to spawn the markers when players enter after server has started
[] execVM "debug\addmarkers.sqf";
[] execVM "debug\addmarkers2.sqf";
[] execVM "debug\addmarkers75.sqf";
[] execVM "debug\addmarkers752.sqf";
//Event handler to show messages to players // this can be used for other scripts to send messages to players -- see AIM.sqf
"blck_Message" addPublicVariableEventHandler {titleText[format["%1",_this select 1],"PLAIN DOWN",1];};
};
}; 
if(hasInterface) then{
[] execVM "semClient.sqf";
[] execVM "addons\Status_Bar\init_statusBar.sqf";
[] execVM "addons\service_point\service_point.sqf";
[] execVM "custom\halo_out.sqf";
waitUntil{!isNil "Epoch_my_GroupUID" && cameraView == "INTERNAL" && cameraOn isEqualTo player};
player switchCamera "EXTERNAL";
};
[] execVM "custom\HALV_takegive_crypto_init.sqf";
[] execVM "addons\messages\init.sqf";
[] execVM "trader\init.sqf";
[] execVM "trader\resetvehicleammo.sqf";
[] execVM "addons\halv_spawn\init.sqf";
[]spawn{
if(isServer)exitWith{};
waitUntil{!isNil "Epoch_my_GroupUID"};
[]execVM "addons\halv_spawn\credits.sqf";
};

 
2 instances of if(isServer) are causing me grief and I'm not sure how to combine them.
Link to comment
Share on other sites

@READTHESCROLL,

 

There are a few things you should change. Take a look at the edited version below:

 

execVM "start_blck.sqf";


[] execVM "custom\HALV_takegive_crypto_init.sqf";
[] execVM "addons\messages\init.sqf";
[] execVM "trader\init.sqf";
[] execVM "trader\resetvehicleammo.sqf";
[] execVM "addons\halv_spawn\init.sqf";

if (isServer) then {
execVM "\q\addons\traderATMs\init.sqf";
execVM "\q\addons\custom_server\init.sqf";
};

if(hasInterface) then{
[] execVM "semClient.sqf";
[] execVM "addons\Status_Bar\init_statusBar.sqf";
[] execVM "addons\service_point\service_point.sqf";
[] execVM "custom\halo_out.sqf";
waitUntil{!isNil "Epoch_my_GroupUID" && cameraView == "INTERNAL" && cameraOn isEqualTo player};
player switchCamera "EXTERNAL";
};

if(isServer)exitWith{};

[]spawn{

waitUntil{!isNil "Epoch_my_GroupUID"};
[]execVM "addons\halv_spawn\credits.sqf";
};

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Advertisement
×
×
  • Create New...