TroyT

Link mod's loot list to other file

3 posts in this topic

Is it possible to link a file containing a list of items to a mods loot list?  For example:

DMS uses:

Spoiler

DMS_assault_weps      =    [        
                        #ifdef GIVE_AI_APEX_WEAPONS
                        "arifle_AK12_F",
                        "arifle_ARX_ghex_F",
                        "arifle_CTAR_blk_F",
                        "arifle_SPAR_01_khk_F",
                        "arifle_SPAR_03_khk_F",
                        #endif
                        "arifle_Katiba_GL_F",
                        "arifle_MX_GL_Black_F",
                        "etc..."
                        ]    

 

And occupation uses:

Spoiler

SC_BanditWeapon     = [    
                        "arifle_MX_khk_F",
                        "arifle_MX_GL_khk_F",
                        "arifle_MX_SW_khk_F",
                        "arifle_MXC_khk_F",
                        "arifle_MXM_khk_F",
                        "arifle_AK12_F",
                        "arifle_AK12_GL_F",
                        "arifle_AKM_F",
                        "etc..."
                        ]    

 

If external files could be linked, such as:

Spoiler

SC_BanditWeapon     = [    
                        #include "Exile_Rifles"
                        #include "MAS_Rifles"
                        #include "etc..."
                        ]        

 

It would make it a lot easier to modify, add, or remove items on a per mod basis.

Obviously, not all mods use the same format.  VMFr uses:

Spoiler

rifles[] = {
                {srifle_mas_m107, 1}, 
                { "srifle_DMR_01_F", 1 },
                { "srifle_EBR_F", 1 },
                { "srifle_GM6_F", 1 },
                { "LMG_Mk200_F", 1 },
                { "LMG_Zafir_F", 1 },
                { "arifle_Katiba_F", 1 },
                { "etc,,,"
            }    

 

But even if only the first 2 worked it would greatly increase the variety of loot in those mods, while making managing them easier. 

Share this post


Link to post
Share on other sites

its worth a try, you could use something like you posted

#ifdef USE_APEX_VEHICLES
#include "Apex_Vehicles.sqf"
#endif

 

then at the top you see

// Uncomment this if you want Apex vehicles to spawn for AI/missions
//#define USE_APEX_VEHICLES 1

and in the array you see

#ifdef USE_APEX_VEHICLES
                                            "B_T_LSV_01_armed_F",
                                            "O_T_LSV_02_armed_F",
#endif

 

the only problem I can see from doing this, is the comma at the end

if everyone of your sqf includes have a comma, you could not use that sqf as the last item in the array.

	DMS_ArmedVehicles =	[ // List of armed vehicles that can spawn
			#ifdef USE_APEX_VEHICLES
			"B_T_LSV_01_armed_F",
			"O_T_LSV_02_armed_F",
			#endif
			"Exile_Car_Offroad_Armed_Guerilla01"
			];

you see there

"Exile_Car_Offroad_Armed_Guerilla01"
            ];

the last item has no comma, if you had

	DMS_ArmedVehicles =	[ // List of armed vehicles that can spawn
			#ifdef USE_APEX_VEHICLES
			#include "ApexVehicles.sqf"
			#endif
			];

and inside the sqf  file you had

"B_T_LSV_01_armed_F",
"O_T_LSV_02_armed_F",

then essentially you  end up with

	DMS_ArmedVehicles =	[ // List of armed vehicles that can spawn
			"B_T_LSV_01_armed_F",
			"O_T_LSV_02_armed_F",
			];

so this would return errors in the rpt and likely break things.

so you would have to make sure you always  had at least 1 item  after the includes.

 

lmk how it turns out

Edited by tinboye

Share this post


Link to post
Share on other sites

This worked great:

Spoiler

    DMS_BoxWeapons =                    [                         
                                            #ifdef USE_MARKSMAN_DLC_WEAPONS_IN_CRATES
                                            #endif

                                            #ifdef USE_APEX_WEAPONS_IN_CRATES
                                            #endif
                                    #include "Apex_Weapons.sqf"        
                                    #include "MAS_Weapons.sqf"        
                                    #include "Exile_Weapons.sqf"    
                                            "Exile_Melee_Axe"                 //<-------------- Last item, no coma
                                        ];

 
 

The .sqf files are just a list with the last line including its coma:

Spoiler

//MAS Pistols
            "hgun_mas_mp7p_F",
            "hgun_mas_uzi_F",
            "hgun_mas_sa61_F",
            "hgun_mas_m9_F",
            "hgun_mas_bhp_F",
            "hgun_mas_glock_F",
            "hgun_mas_p226_F",
            "hgun_mas_acp_F",
            "hgun_mas_usp_F",
            "hgun_mas_glocksf_F",
            "hgun_mas_grach_F",
            "hgun_mas_mak_F",
//MAS Sub Machine Guns
            "arifle_mas_mp40",
            "arifle_mas_mp40_o",
            "arifle_mas_sten",
            "arifle_mas_m1014",
            "arifle_mas_aa12",
            "arifle_mas_mp5",
            "arifle_mas_mp5_v",
            "arifle_mas_mp5_d",
            "hgun_mas_mp7_F",
//MAS Light Machine Guns
            "arifle_mas_m27",
            "arifle_mas_m27m",
            "arifle_mas_m27_v",
            "arifle_mas_m27m_v",
            "arifle_mas_m27_d",
            "arifle_mas_m27m_d",
            "LMG_mas_Mk200_F",
            "LMG_mas_M249_F",
            "LMG_mas_M249_F_v",
            "LMG_mas_M249_F_d",
            "LMG_mas_M249a_F",
            "LMG_mas_Mk48_F",
            "LMG_mas_Mk48_F_v",
            "LMG_mas_Mk48_F_d",
            "LMG_mas_M240_F",
            "LMG_mas_mg3_F",
            "LMG_mas_M60_F",
            "LMG_mas_m72_F",
            "LMG_mas_rpk_F",
            "LMG_mas_pkm_F",
            "LMG_mas_pech_F",
//MAS Assault Rifles
            "arifle_mas_hk416",
            "arifle_mas_hk416_gl",
            "arifle_mas_hk416_m203",
            "arifle_mas_hk416_v",
            "arifle_mas_hk416_gl_v",
            "arifle_mas_hk416_m203_v",
            "arifle_mas_hk416_d",
            "arifle_mas_hk416_gl_d",
            "arifle_mas_hk416_m203_d",
            "arifle_mas_hk416c",
            "arifle_mas_hk416_m203c",
            "arifle_mas_hk416c_v",
            "arifle_mas_hk416_m203c_v",
            "arifle_mas_hk416c_d",
            "arifle_mas_hk416_m203c_d",
            "arifle_mas_m4",
            "arifle_mas_m4_gl",
            "arifle_mas_m4_m203",
            "arifle_mas_m4_v",
            "arifle_mas_m4_gl_v",
            "arifle_mas_m4_m203_v",
            "arifle_mas_m4_d",
            "arifle_mas_m4_gl_d",
            "arifle_mas_m4_m203_d",
            "arifle_mas_m4vlt",
            "arifle_mas_m4c",
            "arifle_mas_m4_m203c",
            "arifle_mas_m4c_v",
            "arifle_mas_m4_m203c_v",
            "arifle_mas_m4c_d",
            "arifle_mas_m4_m203c_d",
            "arifle_mas_m16",
            "arifle_mas_m16_gl",
            "arifle_mas_l119",
            "arifle_mas_l119c",
            "arifle_mas_l119_gl",
            "arifle_mas_l119_m203",
            "arifle_mas_l119_v",
            "arifle_mas_l119c_v",
            "arifle_mas_l119_gl_v",
            "arifle_mas_l119_m203_v",
            "arifle_mas_l119_d",
            "arifle_mas_l119c_d",
            "arifle_mas_l119_gl_d",
            "arifle_mas_l119_m203_d",
            "arifle_mas_g36c",
            "arifle_mas_mk16",
            "arifle_mas_mk16_gl",
            "arifle_mas_mk16_l",
            "arifle_mas_mk16_l_gl",
            "arifle_mas_mk17",
            "arifle_mas_mk17_gl",
            "arifle_mas_arx",
            "arifle_mas_arx_gl",
            "arifle_mas_arx_l",
            "arifle_mas_arx_l_gl",
            "arifle_mas_g3",
            "arifle_mas_g3_m203",
            "arifle_mas_g3s",
            "arifle_mas_g3s_m203",
            "arifle_mas_fal",
            "arifle_mas_fal_m203",
            "arifle_mas_ak_74m",
            "arifle_mas_ak_74m_gl",
            "arifle_mas_ak_74m_c",
            "arifle_mas_ak_74m_gl_c",
            "arifle_mas_aks74",
            "arifle_mas_aks74_gl",
            "arifle_mas_ak74",
            "arifle_mas_ak74_gl",
            "arifle_mas_ak_74m_sf",
            "arifle_mas_ak_74m_sf_gl",
            "arifle_mas_ak_74m_sf_c",
            "arifle_mas_ak_74m_sf_gl_c",
            "arifle_mas_aks_74_sf",
            "arifle_mas_aks_74_sf_gl",
            "arifle_mas_ak12_sf",
            "arifle_mas_ak12_sf_gl",
            "arifle_mas_akms",
            "arifle_mas_akms_gl",
            "arifle_mas_akms_c",
            "arifle_mas_akms_gl_c",
            "arifle_mas_akm",
            "arifle_mas_akm_gl",
            "arifle_mas_m70",
            "arifle_mas_m70_gl",
            "arifle_mas_m70ab",
            "arifle_mas_m70ab_gl",
            "arifle_mas_aks74u",
            "arifle_mas_aks74u_c",
//MAS Sniper Rifles
            "arifle_mas_hk417c",
            "arifle_mas_hk417_m203c",
            "arifle_mas_hk417c_v",
            "arifle_mas_hk417_m203c_v",
            "arifle_mas_hk417c_d",
            "arifle_mas_hk417_m203c_d",
            "arifle_mas_m14",
            "arifle_mas_lee",
            "srifle_mas_hk417",
            "srifle_mas_hk417_v",
            "srifle_mas_hk417_d",
            "srifle_mas_sr25",
            "srifle_mas_sr25_v",
            "srifle_mas_sr25_d",
            "srifle_mas_ebr",
            "srifle_mas_mk17s",
            "srifle_mas_m110",    
            //"srifle_mas_m107",
            //"srifle_mas_m107_v",
            //"srifle_mas_m107_d",
            "srifle_mas_m24",
            "srifle_mas_m24_v",
            "srifle_mas_m24_d",
            "srifle_mas_lrr",
            "srifle_mas_m91",
            "srifle_mas_svd",

 

 
 
 

Drop the .sqf files into the root of the mod PBO and you're good to go.  I could delete the #ifdef lines. I've just increased the weapon loot diversity 10x and made the list in the config tiny. 

Edited by TroyT
code error

Share this post


Link to post
Share on other sites
Advertisement

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

  • Recently Browsing   0 members

    No registered users viewing this page.