Editing ai skin and custom marker static spawn distance

Zeehond23

Valued Member!
Hi,

After getting tired of the fps drops using sarge, I decided to give Dzai a try. So far, not disappointed!

I have 2 questions about setting it up though.

1. I have tried to change the skin used to reflect namalsk soldiers ie. Nac_soldier_1 etc. However, bandits still spawn in Bandit clothes. I remover the dayz Bandit+[skinnmakes] and inserted ["Nac_soldier_1", "Nac_soldier_blablabla] but they still spawn in Bandit clothes.
How do I change their outfit?

My second question is related to the distance ai is triggered on custom static spawns. How do I increase this?
 
For skins you need to change 2 files. One is in the Namalsk folder and the other one is in the default folder (DZAI always reads from the default folder first).

The spawn distances are something you should be extremely careful about editing. A player traveling in a fast vehicle would trigger more spawns more frequently and could affect your server FPS (this is why DayZ loot and zombies don't spawn for players in vehicles).

You can edit the trigger areas in the map configs folder, which holds all static spawn info.

Sent from my Nexus 5 using Tapatalk
 
Cool beans, thanks for the info!

The triggers are in 3 rather remote places, so driving should (should!) not be a problem but I'll keep my eye on it!
 
I'm searching for the files to edit for the skins, but all I can find is the namalsk_classnames where skins are defined. Where else would I have to look?
 
one last question. How long will it take for AI from custom static spawns to re-spawn (let's say I wipe them out) when another player enters the area? And is this timeframe customization able?
 
All static AI respawns are controlled by the respawn setting in the DZAI config file. I don't hide any settings except the ones for features in testing.

Sent from my Nexus 5 using Tapatalk
 
It seems I accidentally left some old code in some Namalsk-related files. So check all of these files for skin-related classnames:

/world_classname_configs/namalsk_classnames.sqf
/world_classname_configs/default/default_classnames.sqf
/world_classname_configs/namalsk/default.sqf

Normally, namalsk_classnames.sqf should not have any actual classnames inside because it's supposed to point DZAI towards the right config files, not act as one itself. I will be fixing this layout in the next update.
 
/world_classname_configs/namalsk_classnames.sqf
Code:
/*
    Namalsk Classname Configuration
   
    Last updated: 1:14 PM 6/3/2013
   
*/

private ["_modname","_newItems"];
_modname = toLower format ["%1",DZAI_modName];

//Setting common between Namalsk and Namalsk 2017
DZAI_invmedicals = 1;     //Number of selections of medical items (Inventory)
DZAI_invedibles = 1;    //Number of selections of edible items (Inventory)
DZAI_bpmedicals = 1;     //Number of selections of medical items (Backpack)
DZAI_bpedibles = 0;        //Number of selections of edible items (Backpack)

DZAI_BanditTypes = ["nac_soldier_crew", "nac_soldier_leader, "nac_soldier_sniper", "nac_soldier_sniper2", "nac_soldier_medik", "nac_soldier_3"];
if (DZAI_tempNVGs) then {DZAI_tempNVGs = false};    //Disable temporary NVG chance for DayZ Namalsk.

switch (DZAI_modName) do {
    case "epoch":
    {
        #include "epoch\dayz_epoch.sqf"
    };
    case "2017":
    {
        #include "namalsk\namalsk2017.sqf"
    };
    case default 
    {
        #include "namalsk\default.sqf"
    };
};

/world_classname_configs/default/default_classnames.sqf
Code:
/*
    Description:     Basic tables containing AI equipment classnames and skin models used by AI units. Some settings may be overridden by map-specific configuration files in the world_classname_configs folder.
                    To make changes for a specific DayZ mod, edit the appropriate config file in for the map/mod being used.

    DZAI will first load default classnames defined by default_classnames.sqf, then load the map/mod-specific file to modify default settings.

    Example: DZAI will always first load default_classnames.sqf, then if DayZ Overwatch is detected, DZAI will overwrite settings specified by chernarus\dayz_overwatch.sqf.

    Last upated: 2:41 AM 11/9/2013
*/

if !(DZAI_dynamicWeaponList) then {
    diag_log "[DZAI] Loading preset weapon list...";
   
    //Note: Low-level AI may use pistols listed in DZAI_Pistols0 or DZAI_Pistols1
    DZAI_Pistols0 = ["Makarov","Colt1911","revolver_EP1"]; //Weapongrade 0 pistols
    DZAI_Pistols1 = ["M9","M9SD","MakarovSD","UZI_EP1","glock17_EP1"]; //Weapongrade 1 pistols
    DZAI_Pistols2 = ["M9SD","MakarovSD","UZI_EP1","glock17_EP1"]; //Weapongrade 2 pistols
    DZAI_Pistols3 = ["M9SD","MakarovSD","UZI_EP1","glock17_EP1"]; //Weapongrade 3 pistols
   
    DZAI_Rifles0 = ["LeeEnfield","Winchester1866","MR43","huntingrifle","LeeEnfield","Winchester1866","MR43"]; //Weapongrade 0 rifles
    DZAI_Rifles1 = ["M16A2","M16A2GL","AK_74","M4A1_Aim","AKS_74_kobra","AKS_74_U","M24","M1014","DMR_DZ","M4A1","M14_EP1","Remington870_lamp","MP5A5","MP5SD","M4A3_CCO_EP1"]; //Weapongrade 1 rifles
    DZAI_Rifles2 = ["M16A2","M16A2GL","M249_DZ","AK_74","M4A1_Aim","AKS_74_kobra","AKS_74_U","M24","SVD_CAMO","M1014","DMR_DZ","M4A1","M14_EP1","Remington870_lamp","M240_DZ","M4A1_AIM_SD_camo","M16A4_ACG","M4A1_HWS_GL_camo","Mk_48_DZ","M4A3_CCO_EP1","Sa58V_RCO_EP1","Sa58V_CCO_EP1","M40A3","Sa58P_EP1","Sa58V_EP1"]; //Weapongrade 2 rifles
    DZAI_Rifles3 = ["FN_FAL","FN_FAL_ANPVS4","Mk_48_DZ","M249_DZ","BAF_L85A2_RIS_Holo","G36C","G36C_camo","G36A_camo","G36K_camo","AK_47_M","AKS_74_U","M14_EP1","bizon_silenced","DMR_DZ","RPK_74"]; //Weapongrade 3 rifles
   
    DZAI_weaponsInitialized = true; //Do not edit this.
};
//Note: Custom rifle tables can be defined below this line (DZAI_Rifles4 -DZAI_Rifles9). Custom rifle tables can only be used with custom-defined spawns (spawns created using the DZAI_spawn function). 
//Instructions: Replace "nil" with the wanted rifle array. Refer to the above rifle arrays for examples on how to define custom rifle tables.
//Custom AI weapon settings can only be used with custom-defined spawns (spawns created using the DZAI_spawn function).
DZAI_Rifles4 = nil; //weapongrade 4 weapons
DZAI_Rifles5 = nil; //weapongrade 5 weapons
DZAI_Rifles6 = nil; //weapongrade 6 weapons
DZAI_Rifles7 = nil; //weapongrade 7 weapons
DZAI_Rifles8 = nil; //weapongrade 8 weapons
DZAI_Rifles9 = nil; //weapongrade 9 weapons

DZAI_BanditTypes = ["nac_soldier_crew", "nac_soldier_leader, "nac_soldier_sniper", "nac_soldier_sniper2", "nac_soldier_medik", "nac_soldier_3"]; //List of skins for AI units to use

DZAI_Backpacks0 = [""];
DZAI_Backpacks1 = [""];
DZAI_Backpacks2 = [""];
DZAI_Backpacks3 = [""];

DZAI_Edibles = ["ItemSodaCoke", "ItemSodaPepsi", "ItemWaterbottle", "FoodCanSardines", "FoodCanBakedBeans", "FoodCanFrankBeans", "FoodCanPasta", "ItemWaterbottleUnfilled","ItemWaterbottleBoiled","FoodmuttonCooked","FoodchickenCooked","FoodBaconCooked","FoodRabbitCooked","FoodbaconRaw","FoodchickenRaw","FoodmuttonRaw","foodrabbitRaw","FoodCanUnlabeled","FoodPistachio","FoodNutmix","FoodMRE"]; //List of all edible items
DZAI_Medicals1 = ["ItemBandage", "ItemPainkiller"]; //List of common medical items
DZAI_Medicals2 = ["ItemPainkiller", "ItemMorphine", "ItemBandage", "ItemBloodbag", "ItemAntibiotic","ItemEpinephrine"]; //List of all medical items

DZAI_MiscItemS = ["ItemHeatpack", "HandRoadFlare", "HandChemBlue", "HandChemRed", "HandChemGreen","SmokeShell","TrashTinCan","TrashJackDaniels","ItemSodaEmpty"]; //List of random miscellaneous items (1 inventory space)
DZAI_MiscItemL = ["ItemJerrycan", "PartWheel", "PartEngine", "PartFueltank", "PartGlass", "PartVRotor","PartWoodPile"]; //List of random miscellaneous items (>1 inventory space)

//Tool items are added to AI inventory upon death
//NOTE: To remove an item, set its chance to 0, don't delete it from the array. To add an item, add it to the end of the array.
DZAI_tools0 = [["ItemFlashlight",0.65],["ItemWatch",0.65],["ItemKnife",0.50],["ItemHatchet",0.40],["ItemCompass",0.35],["ItemMap",0.25],["ItemToolbox",0.10],["ItemMatchbox",0.10],["ItemFlashlightRed",0.05],["ItemGPS",0.005],["ItemRadio",0.005]];
DZAI_tools1 = [["ItemFlashlight",0.90],["ItemWatch",0.90],["ItemKnife",0.75],["ItemHatchet",0.70],["ItemCompass",0.60],["ItemMap",0.50],["ItemToolbox",0.20],["ItemMatchbox",0.20],["ItemFlashlightRed",0.10],["ItemGPS",0.125],["ItemRadio",0.05]];

//Gadget items are added to AI inventory at unit creation
DZAI_gadgets0 = [["binocular",0.40],["NVGoggles",0.00]];
DZAI_gadgets1 = [["binocular",0.60],["NVGoggles",0.05]];

diag_log "[DZAI] Base classname tables loaded.";

/world_classname_configs/namalsk/default.sqf
Code:
/*
    Namalsk Classname Configuration
   
    Last updated: 10:53 AM 9/14/2013
   
*/

private ["_newItems"];

DZAI_Backpacks1 set [count DZAI_Backpacks1,"BAF_AssaultPack_DZN"];
DZAI_Backpacks2 set [count DZAI_Backpacks2,"BAF_AssaultPack_DZN"];
DZAI_gadgets0 set [1,["NVGoggles",0.1]];    //Reduce probability of functional NVGs
DZAI_tools0 set [9,["ItemGPS",0.1]];        //Reduce probability of functional GPS
DZAI_tools0 = [DZAI_tools0,[["BrokenItemGPS",0.5],["BrokenNVGoggles",0.04],["BrokenItemRadio",0.02],["ItemSolder",0.01]]] call DZAI_append;
DZAI_tools1 = [DZAI_tools0,[["BrokenItemGPS",0.5],["BrokenNVGoggles",0.04],["BrokenItemRadio",0.02],["ItemSolder",0.01]]] call DZAI_append;
diag_log "[DZAI] Namalsk classnames loaded.";


Im now trying to remove the backpacks, see if that helps.
 
not spawning at all without backpacks

11:10:13 File z\addons\dayz_server\DZAI\compile\fn_createGroup.sqf, line 50
11:10:13 Error in expression <lectRandom2;
 
Last edited:
11:42:33 File z\addons\dayz_server\DZAI\init\world_classname_configs\namalsk_classnames.sqf, line 17
11:42:33 Error in expression <ac_soldier_crew", "nac_soldier_leader, "nac_soldier_sniper", "nac_soldier_sniper>
11:42:33 Error position: <nac_soldier_sniper", "nac_soldier_sniper>
11:42:33 Error Missing ]

ermagawd :| How did I miss that..
 
I was wondering is there a way to have the debug monitor on but only showing the AI? (Remove the active and inactive triggers shown on map) An example would be Skalisty Island with debug set to 1. Thanks
 
Helo. I was using SAR AI but now I have DZAI and Its hard to me to config.
To sum up, How can I change Skins, remove/change backpacks, equipments and set weapons ?
 
How can it be hard to config when there is a file clearly marked DZAI_config and two other folders with configs in their name?

Sent from my Nexus 5 using Tapatalk
 
I have problem with config it but I have tried a lot ways
I use Epoch mod so I have to config this file "dayz_epoch.sqf" If I want change skin ? I ask cuz It not works.
I tried use Epoch skin and
from arma 2 like down
https://community.bistudio.com/wiki/ArmA_2:_Infantry

Next question is how can I config weapons in AI. In default_classnames.sqf?

edit:
ok its working :_)
 
Last edited:
hey sorry to drop in on this thread, but im desperate for help.

i have got DZAI running on my server and its great, say for 1 small thing.
everything is working except for the markers for the AI units.

i have tried to find the section for making the markers on the map visible, im sure they are supposed to appear by default but i cant work out why they dont appear or where the setting is for the markers.

i have the roaming AI helies and UAZ active as well as the AI foot units, but unless im in enhanced ESP mode with admin tools i cant see any of the AI units anywhere on the map.
i have WAI running as well, but before you say, i have tried running DZAI alone and still have no markers

any help would greatly appreciated
 
Back
Top