Jump to content
Sign in to follow this  
meatshield

Retextureing

Recommended Posts

I'm trying to retexture the default arma3 units to several different camos. With the vehicles as well. But i've run into my first problem with my pbo. When i try to load the test soilder in arma3 i get this

No entry 'bin\config.bin/CfgWeapons/example_PlateCarrier1_rgr.nameSound'

Heres my config.cpp, which is pretty much a copy of one in one of many tuts.

enum {
    //  = 2,    // Error parsing: Empty enum name
   DESTRUCTENGINE = 2,
   DESTRUCTDEFAULT = 6,
   DESTRUCTWRECK = 7,
   DESTRUCTTREE = 3,
   DESTRUCTTENT = 4,
   STABILIZEDINAXISX = 1,
   STABILIZEDINAXESXYZ = 4,
   STABILIZEDINAXISY = 2,
   STABILIZEDINAXESBOTH = 3,
   DESTRUCTNO = 0,
   STABILIZEDINAXESNONE = 0,
   DESTRUCTMAN = 5,
   DESTRUCTBUILDING = 1,
};

class CfgPatches {
   class example_retexture_config {
       units[] = {};
       weapons[] = {};
       requiredVersion = 0.1;
       requiredAddons[] = {"A3_Characters_F_BLUFOR"};
   };
};

class CfgVehicles {

   class B_Soldier_base_F;

   class Example_Soldier_F : B_Soldier_base_F {
       _generalMacro = "B_Soldier_F"; //unsure what this does
       scope = 2;
       displayName = "Uniform Test Soldier";
       nakedUniform = "U_BasicBody"; //class for "naked" body
       uniformClass = "Example_CombatUniform_mcam"; //the uniform item
       hiddenSelections[] = {"Camo"};
       hiddenSelectionsTextures[] = {"C:\Users\Steve\Documents\A3Work\Meaty\Meaty_Blu_Snow\Data\snow.paa"};

       linkedItems[] = {"example_PlateCarrier1_rgr", "example_HelmetB", "NVGoggles", "ItemMap", "ItemCompass", "ItemWatch", "ItemRadio"};
       respawnLinkedItems[] = {"example_PlateCarrier1_rgr", "example_HelmetB", "NVGoggles", "ItemMap", "ItemCompass", "ItemWatch", "ItemRadio"};
   };

};

class cfgWeapons {
   class Uniform_Base;
   class UniformItem;

   class Example_CombatUniform_mcam : Uniform_Base {
       scope = 2;
       displayName = "Example Mcam uniform";
       picture = "\A3\characters_f\data\ui\icon_U_B_CombatUniform_mcam_ca.paa";
       model = "\A3\Characters_F\Common\Suitpacks\suitpack_blufor_diver";

       class ItemInfo : UniformItem {
           uniformModel = "-";
           uniformClass = "Example_Soldier_F"; //would be same as our made soldier class
           containerClass = "Supply20"; //how much it can carry
           mass = 80; //how much it weights
       };
   };

   class ItemCore;
   class HeadgearItem;

   class example_HelmetB : ItemCore {
       scope = 2;
       weaponPoolAvailable = 1;
       displayName = "Example helmet";
       picture = "\A3\characters_f\Data\UI\icon_H_HelmetB_CA.paa";
       model = "\A3\Characters_F\BLUFOR\headgear_b_helmet_ballistic";
       hiddenSelections[] = {"camo"};
       hiddenSelectionsTextures[] = {"C:\Users\Steve\Documents\A3Work\Meaty\Meaty_Blu_Snow\Data\EquipTemplate.paa"};

       class ItemInfo : HeadgearItem {
           mass = 100;
           uniformModel = "\A3\Characters_F\BLUFOR\headgear_b_helmet_ballistic";
           modelSides[] = {3, 1};
           armor = 3*0.5;
           passThrough = 0.8;
           hiddenSelections[] = {"camo"};
       };
   };

   class Vest_Base;
   class VestItem;

   class example_PlateCarrier1_rgr : Vest_Base {
       scope = 2;
       displayName = "Example Platecarrier";
       picture = "\A3\characters_f\Data\UI\icon_V_plate_carrier_1_ca.paa";
       model = "\A3\Characters_F\BLUFOR\equip_b_vest02";
       hiddenSelections[] = {"camo"};
       hiddenSelectionsTextures[] = {"C:\Users\Steve\Documents\A3Work\Meaty\Meaty_Blu_Snow\Data\VestsTemplate.paa"};

       class ItemInfo : VestItem {
           uniformModel = "\A3\Characters_F\BLUFOR\equip_b_vest02";
           containerClass = "Supply100";
           mass = 50;
           armor = 5*0.5;
           passThrough = 0.7;
           hiddenSelections[] = {"camo"};
       };
   };
};  

and now a few questions,

1, how would i go about making him spawn with weapons, i'm guessing i just add the weapon class names with ammo etc into the linkedItems section?

2, if i wanted different classes (AT,AR etc) do i just copy/paste the class B_Soldier_base_F; section and just change the linkedItems to suit?

3, how would i go about putting the new units into a seperate section in the editor, so they'd show under say "blufor/nato/men snow camo" etc?

i know its a lot of question, but searching around here is a nightmare with all the piecemeal bits all over the place.

Share this post


Link to post
Share on other sites

To fix this 'No entry 'bin\config.bin/CfgWeapons/example_PlateCarrier1_rgr.nameSound' change Vest_Base to Vest_Camo_Base.

1. To add weapons add these lines, change the weapons and magazines to your own choice but keep "Throw" and "Put" in there.

weapons[] = {"arifle_MX_ACO_pointer_F","hgun_P07_F","Throw","Put"};
respawnWeapons[] = {"arifle_MX_ACO_pointer_F","hgun_P07_F","Throw","Put"};
magazines[] = {"30Rnd_65x39_caseless_mag","30Rnd_65x39_caseless_mag","30Rnd_65x39_caseless_mag","30Rnd_65x39_caseless_mag","30Rnd_65x39_caseless_mag","30Rnd_65x39_caseless_mag","30Rnd_65x39_caseless_mag","30Rnd_65x39_caseless_mag","30Rnd_65x39_caseless_mag","30Rnd_65x39_caseless_mag","16Rnd_9x21_Mag","16Rnd_9x21_Mag","16Rnd_9x21_Mag","SmokeShell","SmokeShellGreen","Chemlight_green","Chemlight_green","HandGrenade","HandGrenade"};
respawnMagazines[] = {"30Rnd_65x39_caseless_mag","30Rnd_65x39_caseless_mag","30Rnd_65x39_caseless_mag","30Rnd_65x39_caseless_mag","30Rnd_65x39_caseless_mag","30Rnd_65x39_caseless_mag","30Rnd_65x39_caseless_mag","30Rnd_65x39_caseless_mag","30Rnd_65x39_caseless_mag","30Rnd_65x39_caseless_mag","16Rnd_9x21_Mag","16Rnd_9x21_Mag","16Rnd_9x21_Mag","SmokeShell","SmokeShellGreen","Chemlight_green","Chemlight_green","HandGrenade","HandGrenade"};

2. You could do it that way, best to create your own base class and inherit from that. The easiest way is to inherit directly from the (AT,AR etc) classes removing the lines you are not changing.

class B_Soldier_GL_F;
class yourTag_B_Soldier_GL_F: B_Soldier_GL_F
{
	author = "Your Name";
	_generalMacro = "B_Soldier_GL_F";
	scope = 2;
	displayName = "Blah Blah";
	vehicleClass = "yourTag_MenSnow";
       uniformClass = "Example_CombatUniform_mcam"; //the uniform item
	weapons[] = {"arifle_MX_GL_ACO_F","hgun_P07_F","Throw","Put"};
	respawnWeapons[] = {"arifle_MX_GL_ACO_F","hgun_P07_F","Throw","Put"};
	magazines[] = {"30Rnd_65x39_caseless_mag","30Rnd_65x39_caseless_mag","30Rnd_65x39_caseless_mag","30Rnd_65x39_caseless_mag","30Rnd_65x39_caseless_mag","30Rnd_65x39_caseless_mag","16Rnd_9x21_Mag","16Rnd_9x21_Mag","16Rnd_9x21_Mag","1Rnd_HE_Grenade_shell","1Rnd_HE_Grenade_shell","1Rnd_HE_Grenade_shell","1Rnd_HE_Grenade_shell","1Rnd_HE_Grenade_shell","1Rnd_HE_Grenade_shell","HandGrenade","HandGrenade","MiniGrenade","MiniGrenade","SmokeShell","SmokeShellGreen","Chemlight_green","Chemlight_green","1Rnd_Smoke_Grenade_shell","1Rnd_Smoke_Grenade_shell","1Rnd_SmokeBlue_Grenade_shell","1Rnd_SmokeGreen_Grenade_shell","1Rnd_SmokeOrange_Grenade_shell"};
	respawnMagazines[] = {"30Rnd_65x39_caseless_mag","30Rnd_65x39_caseless_mag","30Rnd_65x39_caseless_mag","30Rnd_65x39_caseless_mag","30Rnd_65x39_caseless_mag","30Rnd_65x39_caseless_mag","16Rnd_9x21_Mag","16Rnd_9x21_Mag","16Rnd_9x21_Mag","1Rnd_HE_Grenade_shell","1Rnd_HE_Grenade_shell","1Rnd_HE_Grenade_shell","1Rnd_HE_Grenade_shell","1Rnd_HE_Grenade_shell","1Rnd_HE_Grenade_shell","HandGrenade","HandGrenade","MiniGrenade","MiniGrenade","SmokeShell","SmokeShellGreen","Chemlight_green","Chemlight_green","1Rnd_Smoke_Grenade_shell","1Rnd_Smoke_Grenade_shell","1Rnd_SmokeBlue_Grenade_shell","1Rnd_SmokeGreen_Grenade_shell","1Rnd_SmokeOrange_Grenade_shell"};
	cost = 130000;
	threat[] = {1,0.3,0.1};
	linkedItems[] = {"V_PlateCarrierGL_rgr","H_HelmetSpecB_blk","ItemMap","ItemCompass","ItemWatch","ItemRadio","NVGoggles"};
	respawnLinkedItems[] = {"V_PlateCarrierGL_rgr","H_HelmetSpecB_blk","ItemMap","ItemCompass","ItemWatch","ItemRadio","NVGoggles"};
};

3.

class CfgVehicleClasses
{
class yourTag_MenSnow
{
	displayName = "men snow camo";
};
};

Your hiddenSelectionsTextures[] file paths should be more like "\Meaty\Meaty_Blu_Snow\Data\snow.paa" or "\Meaty_Blu_Snow\Data\snow.paa" depending on which folder you are packing.

Edited by surpher

Share this post


Link to post
Share on other sites

thanks! its all working now :)

if you want a peek

th_snow_camo_blue.jpg

I would like to re paint the NVGs black though just so it looks better, but i'm guessing they wont have hidden selections?

Share this post


Link to post
Share on other sites

NVGs have a hiddenSelection, this class uses the blufor models and the black opfor texture.

class yourTag_NVGoggles: NVGoggles
{
modelOptics = "\A3\weapons_f\reticle\optics_night";
model = "\A3\Weapons_f\binocular\nvg_proxy";
hiddenSelections[] = {"camo"};
hiddenSelectionsTextures[] = {"a3\characters_f\common\data\nvg_opfor_co.paa"};
class ItemInfo: ItemInfo
{
	uniformModel = "A3\weapons_f\binocular\nvg_proxy.p3d";
	modelOff = "A3\weapons_f\binocular\NVG_proxy_off.p3d";
	hiddenSelections[] = {"camo"};
};
};

Share this post


Link to post
Share on other sites

hmm i get an error in the config.pph when i add those lines into it. I've tried putting it in the CfgVehicles bit and the cfgWeapons bit but no luck :(

Share this post


Link to post
Share on other sites

The class belongs in cfgWeapons. I missed out an external reference to the NVGoggles class, try this.

class NVGoggles;
class yourTag_NVGoggles: NVGoggles
{
   modelOptics = "\A3\weapons_f\reticle\optics_night";
   model = "\A3\Weapons_f\binocular\nvg_proxy";
   hiddenSelections[] = {"camo"};
   hiddenSelectionsTextures[] = {"a3\characters_f\common\data\nvg_opfor_co.paa"};
   class ItemInfo: ItemInfo
   {
       uniformModel = "A3\weapons_f\binocular\nvg_proxy.p3d";
       modelOff = "A3\weapons_f\binocular\NVG_proxy_off.p3d";
       hiddenSelections[] = {"camo"};
   };
};  

Share this post


Link to post
Share on other sites

still doesnt like it :(

as an aside, managed to get the backpacks working thanks to one of your other posts on here, so thanks for that! :)

---------- Post added at 00:31 ---------- Previous post was at 23:11 ----------

another question, when adding weapons, how would i go about attaching different gun scopes/IR pointers? I've managed to get them added to the inventory but i'm not sure how to actually add them to the gun itself :confused:

Edited by Meatshield

Share this post


Link to post
Share on other sites

heres the full config as it stands so far

enum {
    //  = 2,    // Error parsing: Empty enum name
   DESTRUCTENGINE = 2,
   DESTRUCTDEFAULT = 6,
   DESTRUCTWRECK = 7,
   DESTRUCTTREE = 3,
   DESTRUCTTENT = 4,
   STABILIZEDINAXISX = 1,
   STABILIZEDINAXESXYZ = 4,
   STABILIZEDINAXISY = 2,
   STABILIZEDINAXESBOTH = 3,
   DESTRUCTNO = 0,
   STABILIZEDINAXESNONE = 0,
   DESTRUCTMAN = 5,
   DESTRUCTBUILDING = 1,
};

class CfgPatches {
   class example_retexture_config {
       units[] = {};
       weapons[] = {};
       requiredVersion = 0.1;
       requiredAddons[] = {"A3_Characters_F_BLUFOR"};
   };
};

class CfgVehicleClasses
{
   class Meaty_MenSnow
   {
       displayName = "M_Men (Snow)";
   };
};  

class CfgVehicles {

   class B_Soldier_base_F;
class B_Carryall_Base;

   class Meaty_Soldier_B_Sn : B_Soldier_base_F {
       _generalMacro = "B_Soldier_F"; //unsure what this does
       scope = 2;
       displayName = "Rifleman";
	vehicleClass = "Meaty_MenSnow";
       nakedUniform = "U_BasicBody"; //class for "naked" body
       uniformClass = "Blue_Snow_Camo"; //the uniform item
	backpack = "Meaty_Carryall_Snow_B";
       hiddenSelections[] = {"Camo"};
       hiddenSelectionsTextures[] = {"Meaty_Blu_Snow\Data\blu_snow_camo_co.paa"};
       linkedItems[] = {"Blue_Snow_Vest", "Blue_Snow_Helmet", "Meaty_NVGoggles", "ItemMap", "ItemCompass", "ItemWatch", "ItemRadio"};
       respawnLinkedItems[] = {"Blue_Snow_Vest", "Blue_Snow_Helmet", "Meaty_NVGoggles", "ItemMap", "ItemCompass", "ItemWatch", "ItemRadio"};
	Items[] = {"FirstAidKit","FirstAidKit","optic_Hamr","acc_pointer_IR"};
       respawnItems[] = {"FirstAidKit","FirstAidKit","optic_Hamr","acc_pointer_IR"}; 
	weapons[] = {"arifle_MX_Black_F","hgun_P07_F","Throw","Put","Binocular"};
	respawnWeapons[] = {"arifle_MX_Black_F","hgun_P07_F","Throw","Put","Binocular"};
	magazines[] = {"30Rnd_65x39_caseless_mag","30Rnd_65x39_caseless_mag","30Rnd_65x39_caseless_mag","30Rnd_65x39_caseless_mag","30Rnd_65x39_caseless_mag","30Rnd_65x39_caseless_mag","30Rnd_65x39_caseless_mag","30Rnd_65x39_caseless_mag","30Rnd_65x39_caseless_mag","30Rnd_65x39_caseless_mag","30Rnd_65x39_caseless_mag","30Rnd_65x39_caseless_mag","16Rnd_9x21_Mag","16Rnd_9x21_Mag","HandGrenade","HandGrenade"};
	respawnMagazines[] = {"30Rnd_65x39_caseless_mag","30Rnd_65x39_caseless_mag","30Rnd_65x39_caseless_mag","30Rnd_65x39_caseless_mag","30Rnd_65x39_caseless_mag","30Rnd_65x39_caseless_mag","30Rnd_65x39_caseless_mag","30Rnd_65x39_caseless_mag","30Rnd_65x39_caseless_mag","30Rnd_65x39_caseless_mag","30Rnd_65x39_caseless_mag","30Rnd_65x39_caseless_mag","16Rnd_9x21_Mag","16Rnd_9x21_Mag","HandGrenade","HandGrenade"};
   };
    class Meaty_Carryall_Snow_B: B_Carryall_Base
   {
       scope = 2;
       displayName = "Backpack_Snow_B";
       picture = "\A3\Weapons_F\Ammoboxes\Bags\data\UI\icon_B_C_Tortila_hex.paa";
       hiddenSelectionsTextures[] = {"Meaty_Blu_Snow\Data\blu_snow_backpack_co.paa"};
};
};

class cfgWeapons {
   class Uniform_Base;
   class UniformItem;

   class Blue_Snow_Camo : Uniform_Base {
       scope = 2;
       displayName = "Blue_Snow_Camo";
       picture = "\A3\characters_f\data\ui\icon_U_B_CombatUniform_mcam_ca.paa";
       model = "\A3\Characters_F\Common\Suitpacks\suitpack_blufor_diver";

       class ItemInfo : UniformItem {
           uniformModel = "-";
           uniformClass = "Meaty_Soldier_B_Sn"; //would be same as our made soldier class
           containerClass = "Supply20"; //how much it can carry
           mass = 80; //how much it weights
       };
   };

   class ItemCore;
   class HeadgearItem;

   class Blue_Snow_Helmet : ItemCore {
       scope = 2;
       weaponPoolAvailable = 1;
       displayName = "Blue_Snow_Helmet";
       picture = "\A3\characters_f\Data\UI\icon_H_HelmetB_CA.paa";
       model = "\A3\Characters_F\BLUFOR\headgear_b_helmet_ballistic";
       hiddenSelections[] = {"camo"};
       hiddenSelectionsTextures[] = {"Meaty_Blu_Snow\Data\blu_snow_equip_co.paa"};

       class ItemInfo : HeadgearItem {
           mass = 100;
           uniformModel = "\A3\Characters_F\BLUFOR\headgear_b_helmet_ballistic";
           modelSides[] = {3, 1};
           armor = 3*0.5;
           passThrough = 0.8;
           hiddenSelections[] = {"camo"};
       };
   };

   class Vest_Camo_Base;
   class VestItem;

   class Blue_Snow_Vest : Vest_Camo_Base {
       scope = 2;
       displayName = "Blue_Snow_Vest";
       picture = "\A3\characters_f\Data\UI\icon_V_plate_carrier_1_ca.paa";
       model = "\A3\Characters_F\BLUFOR\equip_b_vest02";
       hiddenSelections[] = {"camo"};
       hiddenSelectionsTextures[] = {"Meaty_Blu_Snow\Data\blu_snow_vest_co.paa"};

       class ItemInfo : VestItem {
           uniformModel = "\A3\Characters_F\BLUFOR\equip_b_vest02";
           containerClass = "Supply100";
           mass = 50;
           armor = 5*0.5;
           passThrough = 0.7;
           hiddenSelections[] = {"camo"};
       };
   };
class NVGoggles;
class Meaty_NVGoggles : NVGoggles
{
   modelOptics = "\A3\weapons_f\reticle\optics_night";
   model = "\A3\Weapons_f\binocular\nvg_proxy";
   hiddenSelections[] = {"camo"};
   hiddenSelectionsTextures[] = {"a3\characters_f\common\data\nvg_opfor_co.paa"};
   class ItemInfo: ItemInfo
   {
       uniformModel = "A3\weapons_f\binocular\nvg_proxy.p3d";
       modelOff = "A3\weapons_f\binocular\NVG_proxy_off.p3d";
       hiddenSelections[] = {"camo"};
   };
}; 	
};
};

which doesnt work, throws up the config error when packing. If i take the NVG bit out however it works fine.

One thing i have noticed, is that the extra rounds aren't going into the backpack, which shows up just fine on the soldiers back and with the correction textures. Am i missing something?? :confused:

Also thats code for the Init file of the soldier in the editor, i was under the assumption that that didnt work for config.cpp files??

Share this post


Link to post
Share on other sites

Looks like you have one too many }; at the end of the config, just delete the last one.

Too add ammo to backpacks.

class Meaty_Carryall_Snow_B: B_Carryall_Base
   {
       scope = 2;
       displayName = "Backpack_Snow_B";
       picture = "\A3\Weapons_F\Ammoboxes\Bags\data\UI\icon_B_C_Tortila_hex.paa";
       hiddenSelectionsTextures[] = {"Meaty_Blu_Snow\Data\blu_snow_backpack_co.paa"};
	class TransportMagazines
	{
		class _xx_30Rnd_65x39_caseless_mag
		{
			magazine = "30Rnd_65x39_caseless_mag";
			count = 6;
		};
	};
   };

Yeah that code is for the init, I found this in the weapons_f config.

class arifle_MX_Holo_pointer_F: arifle_MX_F
{
	class LinkedItems
	{
		class LinkedItemsOptic
		{
			slot = "CowsSlot";
			item = "optic_Holosight";
		};
		class LinkedItemsAcc
		{
			slot = "PointerSlot";
			item = "acc_pointer_IR";
		};
	};
};

Edited by surpher

Share this post


Link to post
Share on other sites

ok been playing around and noticed the log file, which says the following when i try to compile with the NVG bit in

Warning: CfgVehicles missing in PreloadConfig - may slow down vehicle creation
Warning: CfgAmmo missing in PreloadConfig - may slow down vehicle creation
Warning: CfgNonAIVehicles missing in PreloadConfig - may slow down vehicle creation
File c:\users\steve\documents\a3work\meaty\meaty_blu_snow\config.cpp, line 142: /cfgWeapons/Meaty_NVGoggles.ItemInfo: Undefined base class 'ItemInfo'
Config : some input after EndOfFile.
Error 3 while parsing
Error in config c:\users\steve\documents\a3work\meaty\meaty_blu_snow\config.cpp
..\El\ParamFile\paramFile.cpp(891) : Class destroyed, but still locked
File c:\users\steve\documents\a3work\meaty\meaty_blu_snow\config.cpp, line 142: /cfgWeapons/Meaty_NVGoggles.ItemInfo: Undefined base class 'ItemInfo'
Config : some input after EndOfFile.
Error 3 while parsing
Error in config c:\users\steve\documents\a3work\meaty\meaty_blu_snow\config.cpp
..\El\ParamFile\paramFile.cpp(891) : Class destroyed, but still locked
Cannot load font core\data\fonts\lucidaconsoleb8
Fonts file \core\data\fonts\lucidaConsoleB8 not found
Cannot load font core\data\fonts\lucidaconsoleb11
Fonts file \core\data\fonts\lucidaConsoleB11 not found
Creating texture headers file...
4 texture headers saved to file "C:\Users\Steve\AppData\Local\Temp\meaty_blu_snow\texHeaders.bin"
..\El\FileServer\fileServer.cpp(2518) : Assertion failed 'req->RefCounter()==1'

and when i try with the gun in (just stuck a hamr sight on it) it gives me this

File c:\users\steve\documents\a3work\meaty\meaty_blu_snow\config.cpp, line 135: /cfgWeapons.Meaty_MX_Hamr_pointer_F: Undefined base class 'arifle_MX_F'

with the config.cpp bit looking like this

enum {
    //  = 2,    // Error parsing: Empty enum name
   DESTRUCTENGINE = 2,
   DESTRUCTDEFAULT = 6,
   DESTRUCTWRECK = 7,
   DESTRUCTTREE = 3,
   DESTRUCTTENT = 4,
   STABILIZEDINAXISX = 1,
   STABILIZEDINAXESXYZ = 4,
   STABILIZEDINAXISY = 2,
   STABILIZEDINAXESBOTH = 3,
   DESTRUCTNO = 0,
   STABILIZEDINAXESNONE = 0,
   DESTRUCTMAN = 5,
   DESTRUCTBUILDING = 1,
};

class CfgPatches {
   class example_retexture_config {
       units[] = {};
       weapons[] = {};
       requiredVersion = 0.1;
       requiredAddons[] = {"A3_Characters_F_BLUFOR"};
   };
};

class CfgVehicleClasses
{
   class Meaty_MenSnow
   {
       displayName = "M_Men (Snow)";
   };
};  

class CfgVehicles {

   class B_Soldier_base_F;
   class B_Carryall_Base;

   class Meaty_Soldier_B_Sn : B_Soldier_base_F {
       _generalMacro = "B_Soldier_F"; //unsure what this does
       scope = 2;
       displayName = "Rifleman";
       vehicleClass = "Meaty_MenSnow";
       nakedUniform = "U_BasicBody"; //class for "naked" body
       uniformClass = "Blue_Snow_Camo"; //the uniform item
       backpack = "Meaty_Carryall_Snow_B";
       hiddenSelections[] = {"Camo"};
       hiddenSelectionsTextures[] = {"Meaty_Blu_Snow\Data\blu_snow_camo_co.paa"};
       linkedItems[] = {"Blue_Snow_Vest", "Blue_Snow_Helmet", "Meaty_NVGoggles", "ItemMap", "ItemCompass", "ItemWatch", "ItemRadio"};
       respawnLinkedItems[] = {"Blue_Snow_Vest", "Blue_Snow_Helmet", "Meaty_NVGoggles", "ItemMap", "ItemCompass", "ItemWatch", "ItemRadio"};
       Items[] = {"FirstAidKit","FirstAidKit","optic_Hamr","acc_pointer_IR"};
       respawnItems[] = {"FirstAidKit","FirstAidKit","optic_Hamr","acc_pointer_IR"}; 
       weapons[] = {"Meaty_MX_Hamr_pointer_F","hgun_P07_F","Throw","Put","Binocular"};
       respawnWeapons[] = {"Meaty_MX_Hamr_pointer_F","hgun_P07_F","Throw","Put","Binocular"};
       magazines[] = {"30Rnd_65x39_caseless_mag","30Rnd_65x39_caseless_mag","30Rnd_65x39_caseless_mag","30Rnd_65x39_caseless_mag","30Rnd_65x39_caseless_mag","30Rnd_65x39_caseless_mag","30Rnd_65x39_caseless_mag","30Rnd_65x39_caseless_mag","30Rnd_65x39_caseless_mag","30Rnd_65x39_caseless_mag","30Rnd_65x39_caseless_mag","30Rnd_65x39_caseless_mag","16Rnd_9x21_Mag","16Rnd_9x21_Mag","HandGrenade","HandGrenade"};
       respawnMagazines[] = {"30Rnd_65x39_caseless_mag","30Rnd_65x39_caseless_mag","30Rnd_65x39_caseless_mag","30Rnd_65x39_caseless_mag","30Rnd_65x39_caseless_mag","30Rnd_65x39_caseless_mag","30Rnd_65x39_caseless_mag","30Rnd_65x39_caseless_mag","30Rnd_65x39_caseless_mag","30Rnd_65x39_caseless_mag","30Rnd_65x39_caseless_mag","30Rnd_65x39_caseless_mag","16Rnd_9x21_Mag","16Rnd_9x21_Mag","HandGrenade","HandGrenade"};
   };
       class Meaty_Carryall_Snow_B: B_Carryall_Base
   {
       scope = 2;
       displayName = "Backpack_Snow_B";
       picture = "\A3\Weapons_F\Ammoboxes\Bags\data\UI\icon_B_C_Tortila_hex.paa";
       hiddenSelectionsTextures[] = {"Meaty_Blu_Snow\Data\blu_snow_backpack_co.paa"};
       class TransportMagazines
       {
           class _xx_30Rnd_65x39_caseless_mag
           {
               magazine = "30Rnd_65x39_caseless_mag";
               count = 6;
           };
       };
   };
};

class cfgWeapons {
   class Uniform_Base;
   class UniformItem;

   class Blue_Snow_Camo : Uniform_Base {
       scope = 2;
       displayName = "Blue_Snow_Camo";
       picture = "\A3\characters_f\data\ui\icon_U_B_CombatUniform_mcam_ca.paa";
       model = "\A3\Characters_F\Common\Suitpacks\suitpack_blufor_diver";

       class ItemInfo : UniformItem {
           uniformModel = "-";
           uniformClass = "Meaty_Soldier_B_Sn"; //would be same as our made soldier class
           containerClass = "Supply20"; //how much it can carry
           mass = 80; //how much it weights
       };
   };

   class ItemCore;
   class HeadgearItem;

   class Blue_Snow_Helmet : ItemCore {
       scope = 2;
       weaponPoolAvailable = 1;
       displayName = "Blue_Snow_Helmet";
       picture = "\A3\characters_f\Data\UI\icon_H_HelmetB_CA.paa";
       model = "\A3\Characters_F\BLUFOR\headgear_b_helmet_ballistic";
       hiddenSelections[] = {"camo"};
       hiddenSelectionsTextures[] = {"Meaty_Blu_Snow\Data\blu_snow_equip_co.paa"};

       class ItemInfo : HeadgearItem {
           mass = 100;
           uniformModel = "\A3\Characters_F\BLUFOR\headgear_b_helmet_ballistic";
           modelSides[] = {3, 1};
           armor = 3*0.5;
           passThrough = 0.8;
           hiddenSelections[] = {"camo"};
       };
   };

   class Vest_Camo_Base;
   class VestItem;

   class Blue_Snow_Vest : Vest_Camo_Base {
       scope = 2;
       displayName = "Blue_Snow_Vest";
       picture = "\A3\characters_f\Data\UI\icon_V_plate_carrier_1_ca.paa";
       model = "\A3\Characters_F\BLUFOR\equip_b_vest02";
       hiddenSelections[] = {"camo"};
       hiddenSelectionsTextures[] = {"Meaty_Blu_Snow\Data\blu_snow_vest_co.paa"};

       class ItemInfo : VestItem {
           uniformModel = "\A3\Characters_F\BLUFOR\equip_b_vest02";
           containerClass = "Supply100";
           mass = 50;
           armor = 5*0.5;
           passThrough = 0.7;
           hiddenSelections[] = {"camo"};
       };
   };
class NVGoggles;
class Meaty_NVGoggles: NVGoggles
{
   modelOptics = "\A3\weapons_f\reticle\optics_night";
   model = "\A3\Weapons_f\binocular\nvg_proxy";
   hiddenSelections[] = {"camo"};
   hiddenSelectionsTextures[] = {"a3\characters_f\common\data\nvg_opfor_co.paa"};
   class ItemInfo: ItemInfo
   {
       uniformModel = "A3\weapons_f\binocular\nvg_proxy.p3d";
       modelOff = "A3\weapons_f\binocular\NVG_proxy_off.p3d";
       hiddenSelections[] = {"camo"};
   };
};
class Meaty_MX_Hamr_pointer_F: arifle_MX_F
   {
       class LinkedItems
       {
           class LinkedItemsOptic
           {
               slot = "CowsSlot";
               item = "optic_Hamr";
           };
           class LinkedItemsAcc
           {
               slot = "PointerSlot";
               item = "acc_pointer_IR";
           };
       };
   }; 
}; 

on the plus side .. the backpack is working fine now!

Share this post


Link to post
Share on other sites

Ok both your errors are basically the same.

line 142: /cfgWeapons/Meaty_NVGoggles.ItemInfo: Undefined base class 'ItemInfo' 
line 135: /cfgWeapons.Meaty_MX_Hamr_pointer_F: Undefined base class 'arifle_MX_F'

They are telling you that you are missing external references to the classes you are inheriting from. So you need to add class ItemInfo; just above your NVG class and class arifle_MX_F; just above your MX class.

class NVGoggles;
class ItemInfo;
class Meaty_NVGoggles: NVGoggles
{
	modelOptics = "\A3\weapons_f\reticle\optics_night";
	model = "\A3\Weapons_f\binocular\nvg_proxy";
	hiddenSelections[] = {"camo"};
	hiddenSelectionsTextures[] = {"a3\characters_f\common\data\nvg_opfor_co.paa"};
	class ItemInfo: ItemInfo
	{
		uniformModel = "A3\weapons_f\binocular\nvg_proxy.p3d";
		modelOff = "A3\weapons_f\binocular\NVG_proxy_off.p3d";
		hiddenSelections[] = {"camo"};
	};
};
class arifle_MX_F;
class Meaty_MX_Hamr_pointer_F: arifle_MX_F
   {
       class LinkedItems
       {
           class LinkedItemsOptic
           {
               slot = "CowsSlot";
               item = "optic_Hamr";
           };
           class LinkedItemsAcc
           {
               slot = "PointerSlot";
               item = "acc_pointer_IR";
           };
       };
   };

Share this post


Link to post
Share on other sites

ok that did the trick :)

One more question, how would i go about giving each class the same backpack, but with different stuff in it?? So say the AT guy has a few extra rounds in his backpack, but the medic has a Medikit in his etc?

Share this post


Link to post
Share on other sites

You need to add new classes inheriting from your Meaty_Carryall_Snow_B class.

To add items.

class TransportItems
	{
		class _xx_Medikit
		{
			name = "Medikit";
			count = 1;
		};
		class _xx_FirstAidKit
		{
			name = "FirstAidKit";
			count = 10;
		};
	};

Share this post


Link to post
Share on other sites

ok i'm not to sure how to set up inheriting, so i took a wild guess .. which didnt work, didnt throw up any errors, but the backpack still had the riflemans stuff in. Heres the bit of the config. First solider is the rifleman, 2nd the medic.

class CfgVehicles {

   class B_Soldier_base_F;
   class B_Carryall_Base;

   class Meaty_Soldier_B_Sn : B_Soldier_base_F {
	author = "Meatshield";
       _generalMacro = "B_Soldier_F"; //unsure what this does
       scope = 2;
       displayName = "Rifleman";
       vehicleClass = "Meaty_MenSnow";
       nakedUniform = "U_BasicBody"; //class for "naked" body
       uniformClass = "Blue_Snow_Camo"; //the uniform item
       backpack = "Meaty_Carryall_Snow_B";
       hiddenSelections[] = {"Camo"};
       hiddenSelectionsTextures[] = {"Meaty_Blu_Snow\Data\blu_snow_camo_co.paa"};
       linkedItems[] = {"Blue_Snow_Vest", "Blue_Snow_Helmet", "Meaty_NVGoggles", "ItemMap", "ItemCompass", "ItemWatch", "ItemRadio"};
       respawnLinkedItems[] = {"Blue_Snow_Vest", "Blue_Snow_Helmet", "Meaty_NVGoggles", "ItemMap", "ItemCompass", "ItemWatch", "ItemRadio"};
       Items[] = {"FirstAidKit","FirstAidKit"};
       respawnItems[] = {"FirstAidKit","FirstAidKit"}; 
       weapons[] = {"Meaty_MX_Hamr_pointer_F","hgun_P07_F","Throw","Put","Binocular"};
       respawnWeapons[] = {"Meaty_MX_Hamr_pointer_F","hgun_P07_F","Throw","Put","Binocular"};
       magazines[] = {"30Rnd_65x39_caseless_mag","30Rnd_65x39_caseless_mag","30Rnd_65x39_caseless_mag","30Rnd_65x39_caseless_mag","30Rnd_65x39_caseless_mag","30Rnd_65x39_caseless_mag","30Rnd_65x39_caseless_mag","30Rnd_65x39_caseless_mag","30Rnd_65x39_caseless_mag","16Rnd_9x21_Mag","16Rnd_9x21_Mag","16Rnd_9x21_Mag","16Rnd_9x21_Mag"};
       respawnMagazines[] = {"30Rnd_65x39_caseless_mag","30Rnd_65x39_caseless_mag","30Rnd_65x39_caseless_mag","30Rnd_65x39_caseless_mag","30Rnd_65x39_caseless_mag","30Rnd_65x39_caseless_mag","30Rnd_65x39_caseless_mag","30Rnd_65x39_caseless_mag","30Rnd_65x39_caseless_mag","16Rnd_9x21_Mag","16Rnd_9x21_Mag","16Rnd_9x21_Mag","16Rnd_9x21_Mag"};
   };
       class Meaty_Carryall_Snow_B: B_Carryall_Base
   {
       scope = 2;
       displayName = "Backpack_Snow_B";
       picture = "\A3\Weapons_F\Ammoboxes\Bags\data\UI\icon_B_C_Tortila_hex.paa";
       hiddenSelectionsTextures[] = {"Meaty_Blu_Snow\Data\blu_snow_backpack_co.paa"};
       class TransportMagazines
       {
            class 16Rnd_9x21_Mag
           {
               magazine = "16Rnd_9x21_Mag";
               count = 2;
           };
		 class GrenadeHand {
               magazine = "HandGrenade";
               count = 2;
           };
       };

   };
class B_Soldier_base_F;
   class Meaty_Medic_B_Sn : B_Soldier_base_F {
class Meaty_Carryall_Snow_B;
	author = "Meatshield";
       _generalMacro = "B_Soldier_F"; //unsure what this does
       scope = 2;
       displayName = "Medic";
       vehicleClass = "Meaty_MenSnow";
       nakedUniform = "U_BasicBody"; //class for "naked" body
       uniformClass = "Blue_Snow_Camo"; //the uniform item
       backpack = "Meaty_Carryall_Snow_B";
       hiddenSelections[] = {"Camo"};
       hiddenSelectionsTextures[] = {"Meaty_Blu_Snow\Data\blu_snow_camo_co.paa"};
       linkedItems[] = {"Blue_Snow_Vest", "Blue_Snow_Helmet", "Meaty_NVGoggles", "ItemMap", "ItemCompass", "ItemWatch", "ItemRadio"};
       respawnLinkedItems[] = {"Blue_Snow_Vest", "Blue_Snow_Helmet", "Meaty_NVGoggles", "ItemMap", "ItemCompass", "ItemWatch", "ItemRadio"};
       Items[] = {"FirstAidKit","FirstAidKit"};
       respawnItems[] = {"FirstAidKit","FirstAidKit"}; 
       weapons[] = {"Meaty_MX_Hamr_pointer_F","hgun_P07_F","Throw","Put","Binocular"};
       respawnWeapons[] = {"Meaty_MX_Hamr_pointer_F","hgun_P07_F","Throw","Put","Binocular"};
       magazines[] = {"30Rnd_65x39_caseless_mag","30Rnd_65x39_caseless_mag","30Rnd_65x39_caseless_mag","30Rnd_65x39_caseless_mag","30Rnd_65x39_caseless_mag","30Rnd_65x39_caseless_mag","30Rnd_65x39_caseless_mag","30Rnd_65x39_caseless_mag","30Rnd_65x39_caseless_mag","16Rnd_9x21_Mag","16Rnd_9x21_Mag","16Rnd_9x21_Mag","16Rnd_9x21_Mag"};
       respawnMagazines[] = {"30Rnd_65x39_caseless_mag","30Rnd_65x39_caseless_mag","30Rnd_65x39_caseless_mag","30Rnd_65x39_caseless_mag","30Rnd_65x39_caseless_mag","30Rnd_65x39_caseless_mag","30Rnd_65x39_caseless_mag","30Rnd_65x39_caseless_mag","30Rnd_65x39_caseless_mag","16Rnd_9x21_Mag","16Rnd_9x21_Mag","16Rnd_9x21_Mag","16Rnd_9x21_Mag"};
class TransportItems
       {
           class _xx_Medikit
           {
               name = "Medikit";
               count = 1;
           };
           class _xx_FirstAidKit
           {
               name = "FirstAidKit";
               count = 10;
           };
       };  
};
};

any pointers?

Share this post


Link to post
Share on other sites

Should look more like this.

class CfgVehicles {

   class B_Soldier_base_F;
   class B_Carryall_Base;

   class Meaty_Soldier_B_Sn : B_Soldier_base_F {
       author = "Meatshield";
       _generalMacro = "B_Soldier_F"; //unsure what this does
       scope = 2;
       displayName = "Rifleman";
       vehicleClass = "Meaty_MenSnow";
       nakedUniform = "U_BasicBody"; //class for "naked" body
       uniformClass = "Blue_Snow_Camo"; //the uniform item
       backpack = "Meaty_Carryall_Snow_B";
       hiddenSelections[] = {"Camo"};
       hiddenSelectionsTextures[] = {"Meaty_Blu_Snow\Data\blu_snow_camo_co.paa"};
       linkedItems[] = {"Blue_Snow_Vest", "Blue_Snow_Helmet", "Meaty_NVGoggles", "ItemMap", "ItemCompass", "ItemWatch", "ItemRadio"};
       respawnLinkedItems[] = {"Blue_Snow_Vest", "Blue_Snow_Helmet", "Meaty_NVGoggles", "ItemMap", "ItemCompass", "ItemWatch", "ItemRadio"};
       Items[] = {"FirstAidKit","FirstAidKit"};
       respawnItems[] = {"FirstAidKit","FirstAidKit"}; 
       weapons[] = {"Meaty_MX_Hamr_pointer_F","hgun_P07_F","Throw","Put","Binocular"};
       respawnWeapons[] = {"Meaty_MX_Hamr_pointer_F","hgun_P07_F","Throw","Put","Binocular"};
       magazines[] = {"30Rnd_65x39_caseless_mag","30Rnd_65x39_caseless_mag","30Rnd_65x39_caseless_mag","30Rnd_65x39_caseless_mag","30Rnd_65x39_caseless_mag","30Rnd_65x39_caseless_mag","30Rnd_65x39_caseless_mag","30Rnd_65x39_caseless_mag","30Rnd_65x39_caseless_mag","16Rnd_9x21_Mag","16Rnd_9x21_Mag","16Rnd_9x21_Mag","16Rnd_9x21_Mag"};
       respawnMagazines[] = {"30Rnd_65x39_caseless_mag","30Rnd_65x39_caseless_mag","30Rnd_65x39_caseless_mag","30Rnd_65x39_caseless_mag","30Rnd_65x39_caseless_mag","30Rnd_65x39_caseless_mag","30Rnd_65x39_caseless_mag","30Rnd_65x39_caseless_mag","30Rnd_65x39_caseless_mag","16Rnd_9x21_Mag","16Rnd_9x21_Mag","16Rnd_9x21_Mag","16Rnd_9x21_Mag"};
   };

   class Meaty_Medic_B_Sn : B_Soldier_base_F {
       author = "Meatshield";
       _generalMacro = "B_Soldier_F"; //unsure what this does
       scope = 2;
       displayName = "Medic";
       vehicleClass = "Meaty_MenSnow";
       nakedUniform = "U_BasicBody"; //class for "naked" body
       uniformClass = "Blue_Snow_Camo"; //the uniform item
       backpack = "Meaty_Carryall_Snow_med_B";
       hiddenSelections[] = {"Camo"};
       hiddenSelectionsTextures[] = {"Meaty_Blu_Snow\Data\blu_snow_camo_co.paa"};
       linkedItems[] = {"Blue_Snow_Vest", "Blue_Snow_Helmet", "Meaty_NVGoggles", "ItemMap", "ItemCompass", "ItemWatch", "ItemRadio"};
       respawnLinkedItems[] = {"Blue_Snow_Vest", "Blue_Snow_Helmet", "Meaty_NVGoggles", "ItemMap", "ItemCompass", "ItemWatch", "ItemRadio"};
       Items[] = {"FirstAidKit","FirstAidKit"};
       respawnItems[] = {"FirstAidKit","FirstAidKit"}; 
       weapons[] = {"Meaty_MX_Hamr_pointer_F","hgun_P07_F","Throw","Put","Binocular"};
       respawnWeapons[] = {"Meaty_MX_Hamr_pointer_F","hgun_P07_F","Throw","Put","Binocular"};
       magazines[] = {"30Rnd_65x39_caseless_mag","30Rnd_65x39_caseless_mag","30Rnd_65x39_caseless_mag","30Rnd_65x39_caseless_mag","30Rnd_65x39_caseless_mag","30Rnd_65x39_caseless_mag","30Rnd_65x39_caseless_mag","30Rnd_65x39_caseless_mag","30Rnd_65x39_caseless_mag","16Rnd_9x21_Mag","16Rnd_9x21_Mag","16Rnd_9x21_Mag","16Rnd_9x21_Mag"};
       respawnMagazines[] = {"30Rnd_65x39_caseless_mag","30Rnd_65x39_caseless_mag","30Rnd_65x39_caseless_mag","30Rnd_65x39_caseless_mag","30Rnd_65x39_caseless_mag","30Rnd_65x39_caseless_mag","30Rnd_65x39_caseless_mag","30Rnd_65x39_caseless_mag","30Rnd_65x39_caseless_mag","16Rnd_9x21_Mag","16Rnd_9x21_Mag","16Rnd_9x21_Mag","16Rnd_9x21_Mag"}; 
   };

class Meaty_Carryall_Snow_B: B_Carryall_Base
   {
       scope = 2;
       displayName = "Backpack_Snow_B";
       picture = "\A3\Weapons_F\Ammoboxes\Bags\data\UI\icon_B_C_Tortila_hex.paa";
       hiddenSelectionsTextures[] = {"Meaty_Blu_Snow\Data\blu_snow_backpack_co.paa"};
       class TransportMagazines
       {
            class 16Rnd_9x21_Mag
           {
               magazine = "16Rnd_9x21_Mag";
               count = 2;
           };
            class GrenadeHand {
               magazine = "HandGrenade";
               count = 2;
           };
       };     
   };

class Meaty_Carryall_Snow_med_B: Meaty_Carryall_Snow_B
   {
       scope = 2;
       displayName = "Backpack_Snow_med_B";
       //picture = "\A3\Weapons_F\Ammoboxes\Bags\data\UI\icon_B_C_Tortila_hex.paa";
       //hiddenSelectionsTextures[] = {"Meaty_Blu_Snow\Data\blu_snow_backpack_co.paa"};
       class TransportItems
       {
           class _xx_Medikit
           {
               name = "Medikit";
               count = 1;
           };
           class _xx_FirstAidKit
           {
               name = "FirstAidKit";
               count = 10;
           };
       };    
   };
};  

Share this post


Link to post
Share on other sites

hmm doing that though would just add another backpack, rather than using the same one, which means they'd be an extra backpack entry in VAS, which i want to avoid if possible.

I want to do it the same way BIS seems to have done, so you have 1 backpack type (in this case, assault pack (green) ) which is used by both the medic and repair specialist, however in the medics backpack theres a medikit and FAKs, whilst the repair specialist has a toolkit.

Hope i'm making sense? :confused:

Share this post


Link to post
Share on other sites

Try this.

class Meaty_Carryall_Snow_B_Base: B_Carryall_Base
   {
       scope = 2;
	author = "Meatshield";
       displayName = "Backpack_Snow_B";
       picture = "\A3\Weapons_F\Ammoboxes\Bags\data\UI\icon_B_C_Tortila_hex.paa";
       hiddenSelectionsTextures[] = {"Meaty_Blu_Snow\Data\blu_snow_backpack_co.paa"};   
   };

class Meaty_Carryall_Snow_B: Meaty_Carryall_Snow_B_Base
   {
       scope = 1;
       class TransportMagazines
       {
            class 16Rnd_9x21_Mag
           {
               magazine = "16Rnd_9x21_Mag";
               count = 2;
           };
            class GrenadeHand {
               magazine = "HandGrenade";
               count = 2;
           };
       };     
   };

   class Meaty_Carryall_Snow_med_B: Meaty_Carryall_Snow_B_Base
   {
       scope = 1;
       class TransportItems
       {
           class _xx_Medikit
           {
               name = "Medikit";
               count = 1;
           };
           class _xx_FirstAidKit
           {
               name = "FirstAidKit";
               count = 10;
           };
       };    
   }; 

Share this post


Link to post
Share on other sites

me again :)

having a little issue retexturing the hunter, it shows up where it should in the editor etc, but it seems only the first texture is loading. Even when i change the number of the 2nd camo bit it just applys the first texture to that number. Both of them show up just fine when using the setobject texture in the editor on the default hunter

heres the config

class CfgPatches
{
   class Meaty_Vech_B_Sn {
       units[] = {};
       weapons[] = {};
       requiredVersion = 0.1;
       requiredAddons[] = {};
   };
};

class CfgVehicleClasses
{
   class Meaty_CarSnow
   {
       displayName = "M_Car (Snow)";
   };
};

class cfgVehicles
{
   class B_MRAP_01_F; 
   class Meaty_Hunter_Sn : B_MRAP_01_F { 
           _generalMacro = "B_MRAP_01_F"; 
		author = "Meatshield";
           scope = 2; 
           side = 1; 
		vehicleClass = "Meaty_CarSnow";
           faction = "BLU_F";                 
           displayName="Hunter (Snow)";
       crew = "Meaty_Soldier_B_Sn"
       hiddenSelections[]= {"camo","camo1"};
       hiddenSelectionsTextures[]= {"Meaty_Blue_Snow_Vech\data\hunter_adds_AO.paa","Meaty_Blue_Snow_Vech\data\hunter_base_AO.paa"};            
       typicalCargo[] = {"Meaty_Soldier_B_Sn"}; 
           availableForSupportTypes[] = {"Drop","Transport"}; 
      };  

};

any ideas?

Share this post


Link to post
Share on other sites
me again :)

having a little issue retexturing the hunter, it shows up where it should in the editor etc, but it seems only the first texture is loading. Even when i change the number of the 2nd camo bit it just applys the first texture to that number. Both of them show up just fine when using the setobject texture in the editor on the default hunter

HiddenSelections for the Hunter are {"Camo1","Camo2","riotpolice"}, but you are already inheriting them from the parent class so you should be able to remove or comment out (//) that line.

class B_MRAP_01_F; 
class Meaty_Hunter_Sn : B_MRAP_01_F { 
_generalMacro = "B_MRAP_01_F"; 
author = "Meatshield";
scope = 2; 
side = 1; 
vehicleClass = "Meaty_CarSnow";
faction = "BLU_F";                 
displayName="Hunter (Snow)";
crew = "Meaty_Soldier_B_Sn"
//hiddenSelections[]= {"Camo1","Camo2","riotpolice"}; // I think riotpolice is the turret, add an empty texture path ("") for it.
hiddenSelectionsTextures[]= {"Meaty_Blue_Snow_Vech\data\hunter_base_AO.paa", "Meaty_Blue_Snow_Vech\data\hunter_adds_AO.paa", ""};            
typicalCargo[] = {"Meaty_Soldier_B_Sn"}; 
availableForSupportTypes[] = {"Drop","Transport"}; 
};  

Also make sure you save your textures with the correct suffix (_co).

Edited by surpher

Share this post


Link to post
Share on other sites

that worked a treat, thanks surpher.

BTW, in case this turns up in a search and people are wondering, the texture for the turret for the HMG and GMG hunters are: "data_f\a3\data_f\vehicles\turret_co.paa" :)

Share this post


Link to post
Share on other sites

more problems, this time with the CSAT guys, they show up in the right place in the editor, the helmet and backpack show up fine, but the vest and actually uniform textures wont show the custom texture and instead just show the stock ones,

heres the relevent code bits

    class Meaty_Soldier_O_WD : O_Soldier_base_F {
       author = "Meatshield";
       _generalMacro = "O_Soldier_F"; //unsure what this does
       scope = 2;
       displayName = "Rifleman";
       vehicleClass = "Meaty_MenWD";
       nakedUniform = "U_BasicBody"; //class for "naked" body
       uniformClass = "Op_WD_Camo"; //the uniform item
       backpack = "Meaty_Carryall_WD_O";
       hiddenSelections[] = {"Camo"};
       hiddenSelectionsTextures[] = {"Meaty_Op_WD\Data\Op_WD_camo_co.paa"};
       linkedItems[] = {"Op_WD_Vest", "Op_WD_Helmet", "Meaty_NVGoggles", "ItemMap", "ItemCompass", "ItemWatch", "ItemRadio"};
       respawnLinkedItems[] = {"Op_WD_Vest", "Op_WD_Helmet", "Meaty_NVGoggles", "ItemMap", "ItemCompass", "ItemWatch", "ItemRadio"};
       Items[] = {"FirstAidKit","FirstAidKit"};
       respawnItems[] = {"FirstAidKit","FirstAidKit"}; 
       weapons[] = {"Meaty_MX_Hamr_pointer_F","hgun_P07_F","Throw","Put","Binocular"};
       respawnWeapons[] = {"Meaty_MX_Hamr_pointer_F","hgun_P07_F","Throw","Put","Binocular"};
       magazines[] = {"30Rnd_65x39_caseless_mag","30Rnd_65x39_caseless_mag","30Rnd_65x39_caseless_mag","30Rnd_65x39_caseless_mag","30Rnd_65x39_caseless_mag","30Rnd_65x39_caseless_mag","30Rnd_65x39_caseless_mag","30Rnd_65x39_caseless_mag","30Rnd_65x39_caseless_mag","16Rnd_9x21_Mag","16Rnd_9x21_Mag","16Rnd_9x21_Mag","16Rnd_9x21_Mag"};
       respawnMagazines[] = {"30Rnd_65x39_caseless_mag","30Rnd_65x39_caseless_mag","30Rnd_65x39_caseless_mag","30Rnd_65x39_caseless_mag","30Rnd_65x39_caseless_mag","30Rnd_65x39_caseless_mag","30Rnd_65x39_caseless_mag","30Rnd_65x39_caseless_mag","30Rnd_65x39_caseless_mag","16Rnd_9x21_Mag","16Rnd_9x21_Mag","16Rnd_9x21_Mag","16Rnd_9x21_Mag"};
   };

    class Op_WD_Camo : Uniform_Base {
       scope = 2;
       displayName = "Op_WD_Camo";
       picture = "\A3\characters_f\data\ui\icon_U_B_CombatUniform_mcam_ca.paa";
       model = "\A3\Characters_F\Common\Suitpacks\suitpack_blufor_diver";

       class ItemInfo : UniformItem {
           uniformModel = "-";
           uniformClass = "Meaty_Soldier_O_WD"; //would be same as our made soldier class
           containerClass = "Supply20"; //how much it can carry
           mass = 80; //how much it weights
       };
   };

   class ItemCore;
   class HeadgearItem;

   class Op_WD_Helmet : ItemCore {
       scope = 2;
       weaponPoolAvailable = 1;
       displayName = "Op_WD_Helmet";
       picture = "\A3\characters_f\Data\UI\icon_H_HelmetB_CA.paa";
       model = "\A3\Characters_F\OPFOR\headgear_o_helmet_ballistic";
       hiddenSelections[] = {"camo"};
       hiddenSelectionsTextures[] = {"Meaty_Op_WD\Data\Op_WD_tech_co.paa"};

       class ItemInfo : HeadgearItem {
           mass = 100;
           uniformModel = "\A3\Characters_F\OPFOR\headgear_o_helmet_ballistic";
           modelSides[] = {3, 1};
           armor = 3*0.5;
           passThrough = 0.8;
           hiddenSelections[] = {"camo"};
       };
   };

   class Vest_Camo_Base;
   class VestItem;

   class Op_WD_Vest : Vest_Camo_Base {
       scope = 2;
       displayName = "Op_WD_Vest";
       picture = "\A3\characters_f\Data\UI\icon_V_plate_carrier_1_ca.paa";
       model = "\A3\Characters_F\OPFOR\equip_o_vest01";
       hiddenSelections[] = {"camo"};
       hiddenSelectionsTextures[] = {"Meaty_Op_WD\Data\Op_WD_tech_co.paa"};

       class ItemInfo : VestItem {
           uniformModel = "\A3\Characters_F\OPFOR\equip_o_vest01";
           containerClass = "Supply100";
           mass = 50;
           armor = 5*0.5;
           passThrough = 0.7;
           hiddenSelections[] = {"camo"};
       };
   };

Share this post


Link to post
Share on other sites

Uniform and vest hiddenSelections should be {"Camo1","Camo2"}.

hiddenSelections[] = {"Camo1","Camo2"};
hiddenSelectionsTextures[] = {"\A3\Characters_F\OPFOR\Data\clothing_co.paa","\A3\Characters_F\OPFOR\Data\tech_CO.paa"};

Share this post


Link to post
Share on other sites

well that worked for the uniform, but the vest still isnt showing the retexture, do i have the wrong vest??

    class Vest_Camo_Base;
   class VestItem;

   class Op_WD_Vest : Vest_Camo_Base {
       scope = 2;
       displayName = "Op_WD_Vest";
       picture = "\A3\characters_f\Data\UI\icon_V_plate_carrier_1_ca.paa";
       model = "\A3\Characters_F\OPFOR\equip_o_vest01";
	hiddenSelections[] = {"Camo1","Camo2"};
	hiddenSelectionsTextures[] = {"Meaty_Op_WD\Data\Op_WD_camo_co.paa","Meaty_Op_WD\Data\Op_WD_tech_co.paa"};

       class ItemInfo : VestItem {
           uniformModel = "\A3\Characters_F\OPFOR\equip_o_vest01";
           containerClass = "Supply100";
           mass = 50;
           armor = 5*0.5;
           passThrough = 0.7;
           hiddenSelections[] = {"camo"};
       };
   };

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
Sign in to follow this  

×