SARGE AI Framework - Public Release

Status
Not open for further replies.
In the cfg_gprs file in the map_config for your map e.g for taviana it is cfg_gprs_tavi.sqf :D
Yeah but how do i use those grids? And could i just add more by doing this for example
Code:
// x coordinate of the first, bottom left grid center point
_startx=2500;
 
// y coordinate of the first, bottom left grid center point
_starty=2800;
 
// gridsize x (how many single squares in the grid) for the x-axis
_gridsize_x=6;
 
// gridsize y (how many single squares in the grid) for the y-axis
_gridsize_y=6;
 
// distance from the center of one square of the grid to the border of that square. so overall size of a square in the grid is 2x gridwidth / 2x gridwidth
_gridwidth = 1000;
 
// x coordinate of the first, bottom left grid center point
_startx=XXXX;
 
// y coordinate of the first, bottom left grid center point
_starty=XXXX;
 
// gridsize x (how many single squares in the grid) for the x-axis
_gridsize_x=6;
 
// gridsize y (how many single squares in the grid) for the y-axis
_gridsize_y=X;
 
// distance from the center of one square of the grid to the border of that square. so overall size of a square in the grid is 2x gridwidth / 2x gridwidth
_gridwidth = XXXX;
 
Yeah but how do i use those grids? And could i just add more by doing this for example
Code:
// x coordinate of the first, bottom left grid center point
_startx=2500;
 
// y coordinate of the first, bottom left grid center point
_starty=2800;
 
// gridsize x (how many single squares in the grid) for the x-axis
_gridsize_x=6;
 
// gridsize y (how many single squares in the grid) for the y-axis
_gridsize_y=6;
 
// distance from the center of one square of the grid to the border of that square. so overall size of a square in the grid is 2x gridwidth / 2x gridwidth
_gridwidth = 1000;
 
// x coordinate of the first, bottom left grid center point
_startx=XXXX;
 
// y coordinate of the first, bottom left grid center point
_starty=XXXX;
 
// gridsize x (how many single squares in the grid) for the x-axis
_gridsize_x=6;
 
// gridsize y (how many single squares in the grid) for the y-axis
_gridsize_y=X;
 
// distance from the center of one square of the grid to the border of that square. so overall size of a square in the grid is 2x gridwidth / 2x gridwidth
_gridwidth = XXXX;

You are in the wrong file. This one defines the overlay grid that is put over the map. So this only describes the grid.

do NOT add anything like you have shown above, it will NOT work.

Go to the grps file instead and make your adjustments there.
 
Maybe this question was asked before... but are the AI-skill influenced by things like light, daytime, fog etc. ?

There is no logic implemented for this, so the default Arma functions are applied. I know a couple of mods have changed that in Arma (e.g. ASR_AI), reducing spot distance and things like this depending on the weather / day/night.
 
Do I comment out the spawns I want AIs not to spawn at in the config_gprs? So if I wanted AIs not to spawn at "ASH" would i just add "//" to the code?

Code:
// KNIN, 0 bandit groups, 2 soldier groups, 1 survivor groups - spawn probability ba,so,su - maximum group members ba,so,su
    _check = [["max_grps","rnd_grps","max_p_grp"],[[0,2,1],[0,75,100],[0,4,3]],"SAR_area_0_0"] call SAR_AI_mon_upd;
 
    // ASH, 0 bandit groups, 0 soldier groups, 1 survivor groups - spawn probability ba,so,su - maximum group members ba,so,su
    _check = [["max_grps","rnd_grps","max_p_grp"],[[0,0,1],[0,0,80],[0,0,3]],"SAR_area_1_0"] call SAR_AI_mon_upd;
 
    // TOPOLKA, 2 bandit groups, 0 soldier groups, 3 survivor groups - spawn probability ba,so,su - maximum group members ba,so,su
    _check = [["max_grps","rnd_grps","max_p_grp"],[[2,0,3],[75,0,75],[4,0,4]],"SAR_area_2_0"] call SAR_AI_mon_upd;
 
    // SEVEN, 1 bandit groups, 0 soldier groups, 3 survivor groups - spawn probability ba,so,su - maximum group members ba,so,su
    _check = [["max_grps","rnd_grps","max_p_grp"],[[1,0,3],[50,0,50],[4,0,2]],"SAR_area_3_0"] call SAR_AI_mon_upd;
 
    // WATER, 0 bandit groups, 0 soldier groups, 0 survivor groups - spawn probability ba,so,su - maximum group members ba,so,su
    _check = [["max_grps","rnd_grps","max_p_grp"],[[0,0,0],[0,0,0],[0,0,0]],"SAR_area_4_0"] call SAR_AI_mon_upd;
 
Do I comment out the spawns I want AIs not to spawn at in the config_gprs? So if I wanted AIs not to spawn at "ASH" would i just add "//" to the code?

Code:
// KNIN, 0 bandit groups, 2 soldier groups, 1 survivor groups - spawn probability ba,so,su - maximum group members ba,so,su
    _check = [["max_grps","rnd_grps","max_p_grp"],[[0,2,1],[0,75,100],[0,4,3]],"SAR_area_0_0"] call SAR_AI_mon_upd;

I just set all the values to zero ;)
 
In theory there is, but not with any solution i know of. what you can try to do is define an area that covers the tower only, and then try to spawn in numbers of AIs that you increase each try. At some point you should have AI in every possible position in the tower.

Explanation: Buildings have predefined "slots" for potential AI in Arma - so you can try to fill these up the way i described above.
 
Hey,

Been using this a while now and have really grown to love it thanks! I have notice a problem tonight though in my rtp log if anyone can shed some light.

17:48:55 "CLEANUP: KILLING A HACKER Sarge SAR_leader_3 IN ParachuteG"
17:48:55 "CLEANUP: KILLING A HACKER Rincewind R 1-1-B:3 IN ParachuteG"
17:48:55 WARNING: Function 'name' - Sarge is dead
17:48:55 WARNING: Function 'name' - Rincewind is dead
17:48:56 "CLEANUP: KILLING A HACKER Rincewind R 1-1-B:4 IN ParachuteG"
17:48:56 WARNING: Function 'name' - Rincewind is dead

I have edited my server_cleanup.fsm with " if ((count units _x==0) && !(_x getVariable[""SAR_protect"",false])) then {" \n

" if (!(vehicle _x in _safety) && ((typeOf vehicle _x) != ""ParachuteWest"") && (vehicle _x getVariable [""Sarge"",0] != 1) ) then {" \n

So im supprised to see this.
 
lols :)

The AI seems to have jumped out of the heli .... And since they (what i never tested) use a different type of parachute, they got insta killed .-)

if you want them to be able to jump, add the parachute to the cleanup -

Code:
" if (!(vehicle _x in _safety) && ((typeOf vehicle _x) != ""ParachuteWest"")  && ((typeOf vehicle _x) != ""ParachuteG"") && (vehicle _x getVariable [""Sarge"",0] != 1) ) then {" \n
 
The ai are full of surprises! Would love to see them parachute, easy targets just hanging there in the sky lol
 
Hello Everyone,

Sarge I wanted to thank you for this, I have been very excited to get this on my private server. However I am running Crosires Dayzcc and I cannot figure out what I am doing wrong (or if I did something wrong). I havent seen any NPC's yet at all. I used PBOManager to unpbo dayz_2.chernarus and I edited the files as outlined in the installation, here is how they look (I just copied the last few lines to keep it simple).

init;
if (serverCommandAvailable "#kick") then { (findDisplay 46) displayAddEventHandler ["keyDown", "_this call fnc_keyDown"]; };
#endif
};
call compile preprocessFileLineNumbers "addons\UPSMON\scripts\Init_UPSMON.sqf";

call compile preprocessFileLineNumbers "addons\SHK_pos\shk_pos_init.sqf";

[] execVM "addons\SARGE\SAR_AI_init.sqf";

and description;
colorText[] = {0.543,0.5742,0.4102,1.0};

};

};

};

#include "addons\SARGE\SAR_define.hpp"

I then added the "addons" folder to the dayz_1.chernarus (Because server wouldnt boot when I had "addons" only in the root of mpmissions).

Server is now running, but I havent seen a single thing, have I missed some steps? or does it take a long time for things to start spawning? any advice on specific installs for use with dayzcc PLEASE share.

Again, thanks EVERYONE!! I hope to have this working very soon!
 
I dont know if it is me, or the scripts but i cant seem to get certain few scripts to work correctly,

here is my log rpt
Code:
1:37:36 Warning Message: Script z\addons\dayz_server\init\server_functions.sqf not found
1:37:36 "--------------------------------"
1:37:36 "UPSMON started"
1:37:36 "----------------------------------------"
1:37:36 "Starting SAR_AI version 1.1.0"
1:37:36 "----------------------------------------"
1:37:36 "SAR_AI: Area & Trigger definition Started"
1:37:36 "Setting up SAR_AI for : chernarus"
1:37:36 "SAR_AI: Area & Trigger definition finalized"
1:37:36 "SAR_AI: Static Spawning for Helicopter patrols started"
1:37:36 Warning: z\addons\dayz_communityassets\models\compass.p3d:0 Error while trying to generate ST for points: 863, 853, 852
1:37:37 "SAR_EXTREME_DEBUG: AI Heli patrol spawned in: SAR_patrol_NWAF"
1:37:37 Warning Message: Script z\addons\dayz_server\system\server_monitor.sqf not found
1:37:37 "SAR_EXTREME_DEBUG: AI Heli patrol spawned in: SAR_patrol_NEAF"
1:37:37 "SAR_EXTREME_DEBUG: AI Heli patrol spawned in: SAR_patrol_soutcoast"
1:37:37 "SAR_EXTREME_DEBUG: AI Heli patrol spawned in: SAR_patrol_soutcoast"
1:37:38 "SAR_EXTREME_DEBUG: AI Heli patrol spawned in: SAR_patrol_eastcoast"
1:37:38 "SAR_EXTREME_DEBUG: AI Heli patrol spawned in: SAR_patrol_eastcoast"
1:37:38 "SAR_AI: Static Spawning for Helicopter patrols finished"
1:37:38 "SAR_AI: Static Spawning for infantry and heli patrols finished"
1:37:58 "1: New instance 1 "
1:37:59 "2: New instance 2 "
1:38:00 "3: New instance 3 "
1:38:01 "4: New instance 4 "
1:38:02 "5: New instance 5 "
1:38:03 "6: New instance 6 "
1:39:13 Client: Remote object 2:4 not found
1:39:13 Client: Remote object 2:5 not found
1:39:13 Client: Remote object 2:6 not found

but this line has popped up more than once, that and server_monitor
Code:
1:37:36 Warning Message: Script z\addons\dayz_server\init\server_functions.sqf not found
 
Hi, Thanks for all this, great fun playing with it so far. I'm trying to get bandits only to spawn and I wanted to check that I'm doing it right.

I'm running with SAR_dynamic_spawning = true;

I've edited the SAR_cfg_grps_chernarus.sqf to only have bandits:

Code:
/ grid definition for the automatic spawn system
//
 
// Kamenka, 1 bandit groups, 0 soldier groups, 0 survivor groups - spawn probability ba,so,su - maximum group members ba,so,su
_check = [["max_grps","rnd_grps","max_p_grp"],[[1,0,0],[80,0,0],[1,0,0]],"SAR_area_0_0"] call SAR_AI_mon_upd;
 
// Balota, 1 bandit groups, 0 soldier groups, 0 survivor groups - spawn probability ba,so,su - maximum group members ba,so,su
_check = [["max_grps","rnd_grps","max_p_grp"],[[1,0,0],[80,0,0],[2,0,0]],"SAR_area_1_0"] call SAR_AI_mon_upd;
 
// Cherno, 2 bandit groups, 0 soldier groups, 0 survivor groups - spawn probability ba,so,su - maximum group members ba,so,su
_check = [["max_grps","rnd_grps","max_p_grp"],[[2,0,0],[75,0,0],[3,0,0]],"SAR_area_2_0"] call SAR_AI_mon_upd;

Is this all I need to do go make it bandits only?

Many thanks and Kind Regards Sarge

Mac
 
Hi, Thanks for all this, great fun playing with it so far. I'm trying to get bandits only to spawn and I wanted to check that I'm doing it right.

I'm running with SAR_dynamic_spawning = true;

I've edited the SAR_cfg_grps_chernarus.sqf to only have bandits:

Code:
/ grid definition for the automatic spawn system
//
 
// Kamenka, 1 bandit groups, 0 soldier groups, 0 survivor groups - spawn probability ba,so,su - maximum group members ba,so,su
_check = [["max_grps","rnd_grps","max_p_grp"],[[1,0,0],[80,0,0],[1,0,0]],"SAR_area_0_0"] call SAR_AI_mon_upd;
 
// Balota, 1 bandit groups, 0 soldier groups, 0 survivor groups - spawn probability ba,so,su - maximum group members ba,so,su
_check = [["max_grps","rnd_grps","max_p_grp"],[[1,0,0],[80,0,0],[2,0,0]],"SAR_area_1_0"] call SAR_AI_mon_upd;
 
// Cherno, 2 bandit groups, 0 soldier groups, 0 survivor groups - spawn probability ba,so,su - maximum group members ba,so,su
_check = [["max_grps","rnd_grps","max_p_grp"],[[2,0,0],[75,0,0],[3,0,0]],"SAR_area_2_0"] call SAR_AI_mon_upd;

Is this all I need to do go make it bandits only?

Many thanks and Kind Regards Sarge

Mac

Hi mate, great you like it!

If you want absolutely no survivor and soldier AI, you need to edit the default settings for grids as well - the entries in the grps file do not cover all 36 grids in chernarus.

look for

Code:
// -----------------------------------------------
// default values for dynamic grid spawning
// -----------------------------------------------
 
// maximum number of groups / grid
SAR_max_grps_bandits = 1;
SAR_max_grps_soldiers = 1;
SAR_max_grps_survivors = 1;
 
// chance for a group to spawn (1-100)
SAR_chance_bandits = 50;
SAR_chance_soldiers = 30;
SAR_chance_survivors = 50;
 
// maximum size of group (including Leader)
SAR_max_grpsize_bandits = 3;
SAR_max_grpsize_soldiers = 3;
SAR_max_grpsize_survivors = 3;

and change to

Code:
// -----------------------------------------------
// default values for dynamic grid spawning
// -----------------------------------------------
 
// maximum number of groups / grid
SAR_max_grps_bandits = 1;
SAR_max_grps_soldiers = 0;
SAR_max_grps_survivors = 0;
 
// chance for a group to spawn (1-100)
SAR_chance_bandits = 100;
SAR_chance_soldiers = 0;
SAR_chance_survivors = 0;
 
// maximum size of group (including Leader)
SAR_max_grpsize_bandits = 3;
SAR_max_grpsize_soldiers = 0;
SAR_max_grpsize_survivors = 0;
 
I dont know if it is me, or the scripts but i cant seem to get certain few scripts to work correctly,

here is my log rpt
Code:
1:37:36 Warning Message: Script z\addons\dayz_server\init\server_functions.sqf not found
1:37:36 "--------------------------------"
1:37:36 "UPSMON started"
1:37:36 "----------------------------------------"
1:37:36 "Starting SAR_AI version 1.1.0"
1:37:36 "----------------------------------------"
1:37:36 "SAR_AI: Area & Trigger definition Started"
1:37:36 "Setting up SAR_AI for : chernarus"
1:37:36 "SAR_AI: Area & Trigger definition finalized"
1:37:36 "SAR_AI: Static Spawning for Helicopter patrols started"
1:37:36 Warning: z\addons\dayz_communityassets\models\compass.p3d:0 Error while trying to generate ST for points: 863, 853, 852
1:37:37 "SAR_EXTREME_DEBUG: AI Heli patrol spawned in: SAR_patrol_NWAF"
1:37:37 Warning Message: Script z\addons\dayz_server\system\server_monitor.sqf not found
1:37:37 "SAR_EXTREME_DEBUG: AI Heli patrol spawned in: SAR_patrol_NEAF"
1:37:37 "SAR_EXTREME_DEBUG: AI Heli patrol spawned in: SAR_patrol_soutcoast"
1:37:37 "SAR_EXTREME_DEBUG: AI Heli patrol spawned in: SAR_patrol_soutcoast"
1:37:38 "SAR_EXTREME_DEBUG: AI Heli patrol spawned in: SAR_patrol_eastcoast"
1:37:38 "SAR_EXTREME_DEBUG: AI Heli patrol spawned in: SAR_patrol_eastcoast"
1:37:38 "SAR_AI: Static Spawning for Helicopter patrols finished"
1:37:38 "SAR_AI: Static Spawning for infantry and heli patrols finished"
1:37:58 "1: New instance 1 "
1:37:59 "2: New instance 2 "
1:38:00 "3: New instance 3 "
1:38:01 "4: New instance 4 "
1:38:02 "5: New instance 5 "
1:38:03 "6: New instance 6 "
1:39:13 Client: Remote object 2:4 not found
1:39:13 Client: Remote object 2:5 not found
1:39:13 Client: Remote object 2:6 not found

but this line has popped up more than once, that and server_monitor
Code:
1:37:36 Warning Message: Script z\addons\dayz_server\init\server_functions.sqf not found

Check that you do have either the extracted missions pbo OR the compiled pbo in your missions folder - both together will not work.

PBOmanager had some issues for me here, i am using cpbo to compile back to a pbo file.
 
Status
Not open for further replies.
Back
Top