Jump to content

Recommended Posts

There seems to be a lot of unused textures/skins still in the game that were cut, but can be put back into the vanilla game using init codes. These skins require no mods or custom texture templates.

 

You can see a few of these unused textures here

I have found most but I have yet to find all of them. Here is a big list of all the inits others and myself have found so far...

 

Fatigues (Raven) (reskin of Fatigues (Urban))

this setObjectTextureGlobal [0, "\a3\characters_f\OPFOR\Data\clothing_rus_co.paa"]; 

Combat Fatigues (Sage) (reskin of Combat Fatigues (MTP))

this setObjectTextureGlobal [0, "\a3\characters_f\BLUFOR\Data\clothing_sage_co.paa"];

Combat Fatigues (Woodland) (reskin of Combat Fatigues (MTP))

this setObjectTextureGlobal [0, "\a3\characters_f\BLUFOR\Data\clothing_wdl_co.paa"];

Combat Fatigues (MTP, Dirty) (thanks to SgtDornan)

this setObjectTextureGlobal [0, "\a3\characters_f_epb\BLUFOR\Data\clothing1_dirty_co.paa"]; 

Wetsuit (Raven)

this setObjectTextureGlobal [0,"A3\characters_f\common\data\diver_suit_co.paa"];

Guerrilla Garment (Skull Shirt)

this setObjectTextureGlobal [0, "\a3\characters_f_gamma\Civil\Data\c_cloth1_black.paa"];

Guerrilla Garment (Grey Camo Shirt) (thanks to Nightmare515)

this setObjectTextureGlobal [0, "A3\Characters_F\Civil\Data\c_cloth1_kabeiroi_co.paa"]; 

Guerrilla Garment (Red Camo Shirt)

this setObjectTextureGlobal [0, "A3\Characters_F\Civil\Data\c_cloth1_bandit_co.paa"]; 

Guerrilla Garment (Orange Shirt)

this setObjectTextureGlobal [0, "A3\Characters_F\Civil\Data\c_cloth1_v3_co.paa"]; 

Guerrilla Garment (Yellow Shirt)

this setObjectTextureGlobal [0, "A3\Characters_F\Civil\Data\c_cloth1_v2_co.paa"]; 

Guerrilla Garment (Blue Shirt)

this setObjectTextureGlobal [0, "A3\Characters_F\Civil\Data\c_cloth1_co.paa"]; 

Guerrilla Garment (Brown Shirt)

this setObjectTextureGlobal [0, "\a3\characters_f_gamma\Civil\Data\c_cloth1_brown.paa"]; 

Guerrilla Garment ('Arnold is Numero Uno' Shirt)

this setObjectTextureGlobal [0, "A3\Characters_F\Civil\Data\poor_co.paa"]; 

Guerrilla Garment (Poor Shirt)

this setObjectTextureGlobal [0, "A3\Characters_F\Civil\Data\poor_v2_co.paa"]; 

Guerrilla Garment (Poor Shirt v2)

this setObjectTextureGlobal [0, "A3\Characters_F\Civil\Data\poor_v3_co.paa"]; 

Guerrilla Outfit (Checkered) (incomplete)

this setObjectTextureGlobal [0, "A3\Characters_F\Civil\Data\c_cloth3_co.paa"]; 

Guerrilla Outfit (Checkered v2) (incomplete)

this setObjectTextureGlobal [0, "A3\Characters_F\Civil\Data\c_cloth3_v2_co.paa"]; 

Guerrilla Outfit (Green) (incomplete)

this setObjectTextureGlobal [0, "A3\Characters_F\Civil\Data\c_cloth3_v3_co.paa"]; 

Guerrilla Outfit (Orange) (incomplete)

this setobjectTextureGlobal [0, "A3\Characters_F\Civil\Data\c_cloth3_kabeiroi_co.paa"];  

Guerrilla Outfit (Red) (incomplete)

this setobjectTextureGlobal [0, "A3\Characters_F\Civil\Data\c_cloth3_bandit_co.paa"]; 

Guerrilla Smocks (Yellow) (thanks to Debrin052)

this setObjectTextureGlobal [0, "A3\Characters_F\Civil\Data\hunter_bushman_co.paa"]; 

Syndikat Reskin of Combat Fatigues (AAF)

this setObjectTextureGlobal [0, "\A3\Characters_F_Exp\Syndikat\Data\U_I_C_Soldier_Para_1_F_2_co.paa"]; 

Brown Reskin of Combat Fatigues (AAF) (thanks to M. Glade)

this setObjectTextureGlobal [0, "A3\characters_f_exp\Syndikat\Data\U_I_C_Soldier_Para_4_F_2_co.paa"]; 

Worker Coveralls (Bandit)

this setObjectTextureGlobal [0, "\A3\characters_f\common\data\coveralls_bandit_co.paa"]; 

Worker Coveralls (Grey)

this setObjectTextureGlobal [0, "\A3\characters_f\common\data\coveralls_grey_co.paa"]; 

Worker Coveralls (Black)

this setObjectTextureGlobal [0, "\A3\characters_f\common\data\coveralls_black_co.paa"]; 

Worker Coveralls (Urban Camo)

this setObjectTextureGlobal [0, "\A3\characters_f\common\data\coveralls_urbancamo_co.paa"]; 

Scientist Clothes (CSAT)

this setObjectTextureGlobal [0, "\A3\characters_f\common\data\coveralls_scientist_co.paa"]; 

Casual Clothes (Brown and Grey) (reskin of Marshal Clothes) (thanks to Igor Nikolaev)

this setObjectTextureGlobal [0, "A3\Characters_F\Civil\Data\ig_poloshirt_1_co.paa"];  

Casual Clothes (Brown and Tan) (reskin of Marshal Clothes)

this setObjectTextureGlobal [0, "A3\Characters_F\Civil\Data\ig_poloshirt_2_co.paa"];  

VR Suit (No Lights) (thanks to DreadPirate)

this setObjectTextureGlobal [0, "\A3\Characters_F\Common\Data\basicbody_black_co.paa"]; 

Kitbag (AAF)

(backpackContainer this) setObjectTextureGlobal [0,"A3\weapons_f\ammoboxes\bags\data\backpack_fast_digi_co.paa"];  

Kitbag (Black)

(backpackContainer this) setObjectTextureGlobal [0,"A3\weapons_f\ammoboxes\bags\data\backpack_fast_blk_co.paa"];  

Carryall Backpack (Black)

(backpackContainer this) setObjectTextureGlobal [0,"A3\weapons_f\ammoboxes\bags\data\backpack_tortila_blk_co.paa"];  

NATO Strider (now in Virtual Garage)

this setObjectTextureGlobal [0,'\A3\soft_f_beta\mrap_03\data\mrap_03_ext_co.paa']; 
this setObjectTextureGlobal [1,'\A3\data_f\vehicles\turret_co.paa']; 

NATO Gorgon

this setObjectTextureGlobal [0, "A3\Armor_F_Gamma\APC_Wheeled_03\Data\apc_wheeled_03_ext_co.paa"]; 
this setObjectTextureGlobal [1, "A3\Armor_F_Gamma\APC_Wheeled_03\Data\apc_wheeled_03_ext2_co.paa"]; 
this setObjectTextureGlobal [2, "A3\Armor_F_Gamma\APC_Wheeled_03\Data\rcws30_co.paa"]; 
this setObjectTextureGlobal [3, "A3\Armor_F_Gamma\APC_Wheeled_03\Data\apc_wheeled_03_ext_alpha_co.paa"]; 

NATO Black Pawnee/Hummingbird

this setObjectTextureGlobal [0, "\a3\air_f\Heli_Light_01\Data\heli_light_01_ext_ion_co.paa"]; 

NATO Green Blackfoot

this setObjectTextureGlobal [0, "A3\Air_F\Heli_Light_02\Data\heli_light_02_common_co.paa"]; 

AAF Panther (incomplete)

this setObjectTextureGlobal [0,'A3\armor_f_beta\apc_tracked_01\data\apc_tracked_01_body_indp_co.paa']; 
this setObjectTextureGlobal [2,'A3\data_f\vehicles\turret_indp_co.paa']; 

AAF Pawnee/Hummingbird

this setObjectTextureGlobal [0, "A3\Air_F\Heli_Light_01\Data\heli_light_01_ext_indp_co.paa"]; 

AAF Orca

this setObjectTextureGlobal [0, "\a3\air_f\Heli_Light_02\Data\heli_light_02_ext_indp_co.paa"]; 

CSAT Zamak MRL

this setObjectTextureGlobal [0,'a3\soft_f_beta\Truck_02\data\truck_02_kab_OPFOR_CO.paa'];
this setObjectTextureGlobal [2,'a3\soft_f_gamma\Truck_02\Data\Truck_02_MRL_OPFOR_CO.paa'];

CSAT Panther (incomplete)

this setObjectTextureGlobal [0,'A3\armor_f_beta\apc_tracked_01\data\apc_tracked_01_aa_body_opfor_co.paa']; 
this setObjectTextureGlobal [2,'A3\data_f\vehicles\turret_opfor_co.paa']; 

CSAT Cheetah (thanks to Zygzak191) (incomplete)

this setObjectTextureGlobal [0,'A3\armor_f_beta\apc_tracked_01\data\apc_tracked_01_aa_body_opfor_co.paa']; 
this setObjectTextureGlobal [2,'A3\armor_f_beta\apc_tracked_01\data\apc_tracked_01_aa_tower_opfor_co.paa']; 

CSAT Bobcat (incomplete)

this setObjectTextureGlobal [0,'A3\armor_f_beta\apc_tracked_01\data\apc_tracked_01_aa_body_opfor_co.paa']; 
this setObjectTextureGlobal [2,'A3\data_f\vehicles\turret_opfor_co.paa']; 
this setObjectTextureGlobal [3,'A3\armor_f_beta\apc_tracked_01\data\apc_tracked_01_crv_opfor_co.paa']; 

CSAT Buzzard (now in Virtual Garage) (thanks to seacaptainjim)

this setObjectTextureGlobal [0,"a3\Air_F_Gamma\Plane_Fighter_03\Data\Plane_Fighter_03_body_1_brownhex_CO.paa"]; 
this setObjectTextureGlobal [1,"a3\Air_F_Gamma\Plane_Fighter_03\Data\Plane_Fighter_03_body_2_brownhex_CO.paa"]; 

CSAT Buzzard Grey (now in Virtual Garage)

this setObjectTextureGlobal [0,"a3\Air_F_Gamma\Plane_Fighter_03\Data\Plane_Fighter_03_body_1_greyhex_CO.paa"];   
this setObjectTextureGlobal [1,"a3\Air_F_Gamma\Plane_Fighter_03\Data\Plane_Fighter_03_body_2_greyhex_CO.paa"];

Civilian Orca (now in Virtual Garage)

this setObjectTextureGlobal [0, "\a3\air_f\Heli_Light_02\Data\heli_light_02_ext_civilian_co.paa"]; 

Civilian Mohawk (Dahoman)

this setObjectTextureGlobal [0,"a3\air_f_beta\Heli_Transport_02\Data\Skins\heli_transport_02_1_dahoman_co.paa"]; 
this setObjectTextureGlobal [1,"a3\air_f_beta\Heli_Transport_02\Data\Skins\heli_transport_02_2_dahoman_co.paa"]; 
this setObjectTextureGlobal [2,"a3\air_f_beta\Heli_Transport_02\Data\Skins\heli_transport_02_3_dahoman_co.paa"]; 

Civilian Mohawk (Ion)

this setObjectTextureGlobal [0,"a3\air_f_beta\Heli_Transport_02\Data\Skins\heli_transport_02_1_ion_co.paa"]; 
this setObjectTextureGlobal [1,"a3\air_f_beta\Heli_Transport_02\Data\Skins\heli_transport_02_2_ion_co.paa"]; 
this setObjectTextureGlobal [2,"a3\air_f_beta\Heli_Transport_02\Data\Skins\heli_transport_02_3_ion_co.paa"]; 

 

Apparel missing from Virtual Arsenal:

Nikos Clothes

this forceAddUniform "U_NikosBody"; 

Nikos Clothes (Formal)

this forceAddUniform "U_NikosAgedBody"; 

Untextured Variant of the Light Combat Helmet

this addHeadgear "H_BandMask_demon"; 

Bucket Hat

this addHeadgear "H_TurbanO_blk"; 

Shemag (glitched texture)

this addHeadgear "H_Shemag_tan"; 

Bandana Cap

this addHeadgear "H_BandMask_blk"; 

Military Cap (Tan)

this addHeadgear "H_MilCap_OUcamo"; 

Beanie (Blue)

this addHeadgear "H_Watchcap_sgg"; 

 

Hidden textures we're still missing:

- CSAT Hunter

- CSAT and AAF Slammer

- NATO Mohawk

- Skirts of the AAF and CSAT Panther

- Possibly more...

 

Notes:

- Retextures of 'Guerrilla Garment' also work with 'Bandit Clothes (Tee)' and 'Summer Clothes'

- Retextures of 'Combat Fatigues' also work with 'CTRG Stealth Uniforms'

- There are hidden textures for headgear and vests, but unfortunately it is impossible to retexture them.

- Dropping or picking up a uniform with a texture applied to them will revert the texture back to its default one.

 

If you have found a hidden texture that is not on the list above, feel free to post the init for it in this thread, and I'll put it on the list. Any contributions will be much appreciated!

  • Like 10
  • Thanks 1

Share this post


Link to post
Share on other sites

This code should give you all the hiddenSelections in game. just put it in the console and click "local exec". The object names and their hiddenSelections are copied to clipboard and you can paste them to text editor with ctrl-v.


tex = "count (getarray (_x >> 'hiddenSelections')) > 0 " configClasses (configFile >> "CfgVehicles"); t = []; { t pushback [configname _x,getarray(_x >> 'hiddenSelections')]; } foreach tex; copytoclipboard (str t);

I would have pasted the result here but it was too long text. It should look something like this:


[["Helper_Base_F",["camo"]],["Sign_Arrow_F",["camo"]],["Sign_Arrow_Green_F",["camo"]],["Sign_Arrow_Blue_F",["camo"]],["Sign_Arrow_Pink_F",["camo"]],["Sign_Arrow_Yellow_F",["camo"]],["Sign_Arrow_Cyan_F",["camo"]],["Sign_Arrow_Large_F",["camo"]],["Sign_Arrow_Large_Green_F",["camo"]],["Sign_Arrow_Large_Blue_F",["camo"]],["Sign_Arrow_Large_Pink_F",["camo"]],["Sign_Arrow_Large_Yellow_F",["camo"]],["Sign_Arrow_Large_Cyan_F",["camo"]],["Sign_Arrow_Direction_F",["camo"]],["Sign_Arrow_Direction_Green_F",["camo"]],["Sign_Arrow_Direction_Blue_F",["camo"]],["Sign_Arrow_Direction_Pink_F",["camo"]],["Sign_Arrow_Direction_Yellow_F",["camo"]]

Share this post


Link to post
Share on other sites

Thanks for your help, but a lot of the stuff on that list are already available, plus it looks way too big and complicated for me. I was thinking a list like the one I have written up there ^

Share this post


Link to post
Share on other sites

Yes only if there was a way to determine which textures are already in game but i guess there isn't. maybe some one more familiar with configs knows a way.

you could use script to spawn all those units with all the textures but then you need spot the new textures by hand.

Share this post


Link to post
Share on other sites

How about:

this setObjectTexture [0, "\A3\Characters_F\Common\Data\basicbody_black_co.paa"];

(works with any uniform)

Not really a hidden texture, but I like using:

this setObjectTexture [0, "#(argb,8,8,3)color(0.33,0.31,0.24,0.3)"];

to turn the AAF uniform olive and then using the olive vest, boonie, caps, backpacks, etc. to make a generic woodland army...

Share this post


Link to post
Share on other sites
How about:

this setObjectTexture [0, "\A3\Characters_F\Common\Data\basicbody_black_co.paa"];

(works with any uniform)

Cool! It does work with any uniform, but I did some testing and found out that it's actually meant to be used with the VR suit. It you look closely with it on any other uniform you can see patterns that are out of place. Kinda sux, because it would be nice to have a proper detailed black uniform!

Share this post


Link to post
Share on other sites

Is there some way to browse all the paa files in the pbos without unpacking everything? That might turn up a few we haven't seen before...

Also, I know nothing about config editing, would it be hard to make a little mod with the uniforms listed above?

Share this post


Link to post
Share on other sites

AAF Orca

this setObjectTexture [0, "\a3\air_f\Heli_Light_02\Data\heli_light_02_ext_indp_co.paa"];

Civilian Orca

this setObjectTexture [0, "\a3\air_f\Heli_Light_02\Data\heli_light_02_ext_civilian_co.paa"]; 

Civilian Mohawk 1

this setObjectTexture [0,"a3\air_f_beta\Heli_Transport_02\Data\Skins\heli_transport_02_1_dahoman_co.paa"];   
this setObjectTexture [1,"a3\air_f_beta\Heli_Transport_02\Data\Skins\heli_transport_02_2_dahoman_co.paa"];   
this setObjectTexture [2,"a3\air_f_beta\Heli_Transport_02\Data\Skins\heli_transport_02_3_dahoman_co.paa"];  

Civilian Mohawk 2

this setObjectTexture [0,"a3\air_f_beta\Heli_Transport_02\Data\Skins\heli_transport_02_1_ion_co.paa"];
this setObjectTexture [1,"a3\air_f_beta\Heli_Transport_02\Data\Skins\heli_transport_02_2_ion_co.paa"];
this setObjectTexture [2,"a3\air_f_beta\Heli_Transport_02\Data\Skins\heli_transport_02_3_ion_co.paa"]; 

Share this post


Link to post
Share on other sites

Bandit Clothes (reskin of Worker Coveralls) (you can replace 'bandit' with 'black', 'grey' or 'urbancamo' for different skins)

this setObjectTexture [0, "\A3\characters_f\common\data\coveralls_bandit_co.paa"];

Nice find! Between these, the sage uniforms and the woodland uniforms, you can make entire new armies without installing a single mod.....

Share this post


Link to post
Share on other sites
Nice find! Between these, the sage uniforms and the woodland uniforms, you can make entire new armies without installing a single mod.....

Indeed. That's why I'm eager to find them all

The ones we're still missing:

- Civilian Zamaks

- Civilian reskins of caps and military caps

- Civilian t-shirt and jeans (reskin of Stavrou's clothes)

- Miller's original pre-alpha clothes (reskin of Stavrou's clothes)

- Different coloured underwear

- AAF digital kitbag

- Raven diving gear

- Black NATO Pawnees

Edited by SomeSangheili

Share this post


Link to post
Share on other sites

Can I suggest that if you're going to use this in Multi-player, you use setObjectTextureGlobal instead of setObjectTexture

For example in a unit's init

this setObjectTextureGlobal [0, "\A3\characters_f\common\data\coveralls_urbancamo_co.paa"];




Individual Examples:-
2015_06_16_00002.jpg 2015_06_16_00003.jpg

Complete New Factions
2015_06_16_00004.jpg 2015_06_16_00005.jpg

The above Factions are done in a script.. no modding.

Share this post


Link to post
Share on other sites
Can I suggest that if you're going to use this in Multi-player, you use setObjectTextureGlobal instead of setObjectTexture

Beerkan makes an excellent point about setObjectTextureGlobal.

Also Beerkan, any chance of releasing those redressing scripts? Really like the look of those units.

Anyway, Civilian Zamak:

this setObjectTextureGlobal [0, "a3\soft_f_beta\Truck_02\Data\truck_02_kab_co.paa"];
this setObjectTextureGlobal [1, "a3\soft_f_beta\Truck_02\Data\truck_02_kuz_co.paa"]; 

Civilian Zamak Fuel:

this setObjectTextureGlobal [0, "a3\soft_f_beta\Truck_02\Data\truck_02_kab_co.paa"];
this setObjectTextureGlobal [1, "a3\soft_f_beta\Truck_02\Data\truck_02_fuel_co.paa"]; 

Civilian Zamak Repair:

this setObjectTextureGlobal [0, "a3\soft_f_beta\Truck_02\Data\truck_02_kab_co.paa"];
this setObjectTextureGlobal [1, "a3\soft_f_beta\Truck_02\Data\truck_02_repair_co.paa"]; 

Share this post


Link to post
Share on other sites
Thanks for posting more inits! Where did you find them by the way?

Tonic from Altis Life has dug up a lot of vehicle textures here:

https://github.com/TAWTonic/Altis-Life/blob/master/extDB-Build/Altis_Life.Altis/core/config/fn_vehicleColorCfg.sqf

Also, just discovered there is a script to make the Taru black:

0 = [this] execVM "\a3\Air_F_Heli\Heli_Transport_04\Scripts\Heli_Transport_04_pods_black.sqf"

Share this post


Link to post
Share on other sites

Also, just discovered there is a script to make the Taru black:

0 = [this] execVM "\a3\Air_F_Heli\Heli_Transport_04\Scripts\Heli_Transport_04_pods_black.sqf"

was looking for this, thank you :)

Share this post


Link to post
Share on other sites
DreadPirate said:
.... Also Beerkan, any chance of releasing those redressing scripts? Really like the look of those units.

OK DreadPriate, as you forced my hand.. here's my script for my African Nation Boko Harm Faction. No mods, no download, no re-textures.

The idea of this script is to redress a faction with another default uniform already available in ArmA3. No need for mods, retextures etc.

This will re-dress any OpFor unit placed on the map or spawned from a script as a member of Boko Haram. (uniform based on the "U_O_PilotCoveralls")

2015_06_16_00004.jpg

This script will work will UPS, USPS, UPSMON, EOS, VCOM AI and indeed any AI script.

Save as ConfigAAF.sqf

// Boko Haram Redress Script
// By Beerkan beta 0.96
// Will redress new and spawned OPFOR units as Boko Haram
// Add this to the init.sqf
// [] execVM 'ConfigAAF.sqf';
// Spawn or Create units in the mission as side OPFOR.
// Then run this script to redress them as Boko Haram
//Client/Server Check

if (!isServer && hasinterface) exitWith {};

// Setup function to set AI Skill and redress Faction
    ConfigAI =
    {_unit = _this select 0;
        _unit setskill ['aimingAccuracy',(0.3 + random 0.3)];
        _unit setskill ['aimingShake',(0.3 + random 0.3)];
        _unit setskill ['aimingSpeed',(0.3 + random 0.3)];
        _unit setskill ['commanding',(0.3 + random 0.3)];
        _unit setskill ['courage',1];
//        _unit setskill ['endurance',(0.3 + random 0.5)];// endurance No longer used in ArmA3
        _unit setskill ['general',(0.3 + random 0.4)];
        _unit setskill ['reloadSpeed',(0.3 + random 0.3)];
        _unit setskill ['spotDistance',(0.2 + random 0.3)];
        _unit setskill ['spotTime',(0.2 + random 0.3)];
        _unit allowfleeing 0;
        _unit unlinkItem hmd _unit;// Remove NVGoggles
        removeuniform _unit;
        removeHeadgear _unit;
        removeGoggles _unit;
        _unit forceadduniform 'U_O_PilotCoveralls';
        //Give unit basic supplies
        for '_i' from 1 to 3 do {_unit addItem 'FirstAidKit';_unit addmagazine 'HandGrenade';_unit addmagazine 'SmokeShell';_unit addmagazine 'Chemlight_red';};
        _weaponMag = currentMagazine _unit;
        for '_i' from 1 to 4 do {_unit addmagazine _weaponMag};
        //Set face to African
        _unit setface selectRandom ['AfricanHead_01','AfricanHead_02','AfricanHead_03'];
        //Give Squad Leader Black Beret.
        if ((leader group _unit) isEqualto _unit)
            then {
                _unit addHeadgear 'H_Beret_blk';
                _unit addGoggles 'G_Tactical_Clear';
                }
        // Give all other units random Headgear.
            else {
                _unit addHeadgear selectRandom ['H_Cap_blk','H_MilCap_gry','H_Watchcap_blk','H_Bandanna_sand','H_Bandanna_khk_hs','H_Bandanna_surfer_blk'];
                _unit addGoggles selectRandom ['','','','','','','','','','','','G_Sport_Blackred','G_Shades_Blue','G_Aviator','G_Tactical_Black','G_Squares_Tinted',
                'G_Squares','G_Shades_Red','G_Shades_Black','G_Lowprofile','G_Combat','G_Spectacles_Tinted','G_Spectacles','G_Bandanna_aviator','G_Bandanna_beast',
                'G_Bandanna_blk','G_Bandanna_oli','G_Bandanna_khk','G_Bandanna_shades','G_Bandanna_sport'];
                };
        //Now add Flashlight only if it's night..
        _GiveFlashlight = sunOrMoon;
            if (_GiveFlashlight < 1)
                then {
                    _unit unassignItem 'acc_pointer_IR';
                    _unit removePrimaryWeaponItem 'acc_pointer_IR';
                    _unit addPrimaryWeaponItem 'acc_flashlight';
                    _unit assignItem 'acc_flashlight';
                    _unit enableGunLights 'ForceOn';
                    _unit setskill ['spotDistance',(0 + random 0.3)];// Reduce for night time
                    _unit setskill ['spotTime',(0 + random 0.3)];
                    };
    };

/* Now set each unit based on Faction
	Factions can be one of the following
    West: "BLU_F" (NATO), "BLU_G_F" (FIA), "BLU_CTRG_F" (NATO CTRG), BLU_GEN_F (POLICE)
    East: "OPF_F" (CSAT), "OPF_G_F" (FIA), "OPF_T_F" (CSAT Tanoa)
    Guer: "IND_F" (AAF),  "IND_G_F" (FIA), "IND_C_F" (SYNDIKAT Tanoa)
    Civ: "CIV_F" (Civilians) 
*/
	{ if (side _x isEqualTo EAST && _x IsKindof 'Man') then {[_x] spawn ConfigAI}
		else {if (side _x isEqualTo EAST) then {{[_x] call ConfigAI} forEach crew _x};};
	} forEach allUnits;

  // Now save this array of units for later use
	_CheckedUnits = allUnits;
  // hintsilent format['There are %1 Checked Units',count _CheckedUnits];
  // We now have all Units that started on the map with configured with our new settings.
  // We can now set up a loop to monitor for anything new being created
  // in this case every 30 seconds
  
	while {true} do
	{
   // this variable will contain any new units that were not included on a previous loop
		_NewUnits = [];
	// Remove checked Units from the updated Unit array to create a list of new Units
		_NewUnits = allUnits - _CheckedUnits;
	// Now only do the following if there are new units found.
		if (count _NewUnits > 0) then 
			{
				{ if (side _x isEqualTo EAST && _x IsKindof 'Man') then {[_x] spawn ConfigAI}
					else {if (side _x isEqualTo EAST) then {{[_x] call ConfigAI} forEach crew _x};};
				} forEach _NewUnits;
			};
	// hint composeText [parsetext format["<t size='1.5' align='left' color='#ffffff'>There are <t color='#00ff00'>%1 <t color='#ffffff'>new units found and <t color='#ff0000'>%2 <t color='#ffffff'>Checked Units",count _NewUnits,count _CheckedUnits]];// Debug
		_CheckedUnits append _NewUnits;
		sleep 30;
	};
 

Then put this in your init.sqf

[] execVM 'ConfigAAF.sqf';

 

Edited by Beerkan
Note: Script has been updated to Beta 0.96

Share this post


Link to post
Share on other sites

Keep in mind that when setobjecttexture and its global equivalent are used on uniforms they will revert to their original textures if the uniform is removed at all. Respawn also does not take into account the init of the previous unit.

Additionally you can use this command to take .paa files from external mods (with permission of course) and re-dress your vehicles/characters with that texture file without having to create a mod. The only downside to this is that it can cause your mission file size to grow quite large if you start using multiple texture replacements.

Share this post


Link to post
Share on other sites

Thanks Beerkan! I'll post some redressing scripts of my own when I'm finished tweaking them

Imperator_Pete raises some good points I think most of us want alternative textures for enemies rather than players. If you want to use them for players who might change uniform or respawn, things get much more complicated, as noted

Share this post


Link to post
Share on other sites
Altis said:
This is simply awesome :)

Here's my Chernarus Army Conscripts

2015_06_28_00002.jpg 2015_06_28_00003.jpg

Save this as ConfigCAC.sqf and add this in your init.sqf

 

[] execVM 'ConfigCAC.sqf';

ConfigCAC.sqf Script

// Chernarus Army Conscripts Redress Script
// By Beerkan beta 0.96
// Will redress new and spawned EAST units as Chernarus Army Conscripts
// Add this to the init.sqf
// [] execVM 'ConfigCAC.sqf';
// Spawn or Create units in the mission as side OPF_F.
// Then run this script to redress them.
//Client/Server Check
if (!isServer && hasinterface) exitWith {};

// Setup function to set AI Skill and redress Faction
    ConfigAI =
    {_unit = _this select 0;
        _unit setskill ['aimingAccuracy',(0.2 + random 0.4)];
        _unit setskill ['aimingShake',(0.2 + random 0.4)];
        _unit setskill ['aimingSpeed',(0.2 + random 0.4)];
        _unit setskill ['commanding',(0.2 + random 0.4)];
        _unit setskill ['courage',1];
//      _unit setskill ['endurance',(0.3 + random 0.5)];// No longer used in ArmA3
        _unit setskill ['general',(0.2 + random 0.4)];
        _unit setskill ['reloadSpeed',(0.2 + random 0.4)];
        _unit setskill ['spotDistance',(0.2 + random 0.4)];
        _unit setskill ['spotTime',(0.2 + random 0.3)];
        removeuniform _unit;
        removevest _unit;
        _unit allowfleeing 0;
        _unit forceAddUniform 'U_B_CombatUniform_mcam';
        _unit setObjectTextureGlobal [0, '\a3\characters_f\BLUFOR\Data\clothing_wdl_co.paa'];
        _unit addVest 'V_TacVest_camo';
        removeHeadgear _unit;
        removeGoggles _unit;
        _unit unlinkItem hmd _unit;// Remove NVGoggles
        // Give Snipers GhilleSuit
        if (_unit IsKindof 'O_sniper_F' || _unit IsKindof 'O_spotter_F')
            then {
                _unit forceAddUniform 'U_O_GhillieSuit';
                }
        // Give all other units Headgear
        else {
        _unit addHeadgear selectRandom ['H_Cap_oli','H_Cap_headphones','H_Cap_tan','H_Cap_blk','H_Cap_grn','H_Cap_oli_hs',
        'H_Bandanna_camo','H_Bandanna_camo','H_Bandanna_camo','H_Bandanna_camo','H_Watchcap_blk','H_Watchcap_camo','H_Watchcap_khk'];
		_unit addGoggles selectRandom ['','','','','','','','','','','','G_Sport_Blackred','G_Shades_Blue','G_Aviator','G_Tactical_Black','G_Squares_Tinted',
		'G_Squares','G_Shades_Red','G_Shades_Black','G_Lowprofile','G_Combat','G_Spectacles_Tinted','G_Spectacles'];
            };
        //Give Squad Leader Black Beret.
        if ((leader group _unit) isEqualto _unit)
            then {
            _unit addHeadgear 'H_Beret_blk';
            _unit addGoggles 'G_Tactical_Clear';
            };
            _unit setface selectRandom ['NATOHead_01','WhiteHead_02','WhiteHead_03','WhiteHead_04','WhiteHead_05','WhiteHead_06','WhiteHead_07',
			'WhiteHead_08','WhiteHead_09','WhiteHead_10','WhiteHead_11','WhiteHead_12','WhiteHead_13','WhiteHead_14','WhiteHead_15'];
        //Give unit basic supplies
        for '_i' from 1 to 3 do {_unit addItem 'FirstAidKit';_unit addmagazine 'HandGrenade';_unit addmagazine 'SmokeShell';_unit addmagazine 'Chemlight_red';};
        _weaponMag = currentMagazine _unit;
        for '_i' from 1 to 4 do {_unit addmagazine _weaponMag};
    //Now add Flashlight only if it's night..
    _GiveFlashlight = sunOrMoon;
        if (_GiveFlashlight < 1)
            then {
                _unit unassignItem 'acc_pointer_IR';
                _unit removePrimaryWeaponItem 'acc_pointer_IR';
                _unit addPrimaryWeaponItem 'acc_flashlight';
                _unit assignItem 'acc_flashlight';
                _unit enableGunLights 'ForceOn';
                _unit setskill ['spotDistance',(0 + random 0.3)];// Reduce for night time
                _unit setskill ['spotTime',(0 + random 0.3)];
                };
    };

/* Now set each unit based on Faction
	Factions can be one of the following
    West: "BLU_F" (NATO), "BLU_G_F" (FIA), "BLU_CTRG_F" (NATO CTRG), BLU_GEN_F (POLICE)
    East: "OPF_F" (CSAT), "OPF_G_F" (FIA), "OPF_T_F" (CSAT Tanoa)
    Guer: "IND_F" (AAF),  "IND_G_F" (FIA), "IND_C_F" (SYNDIKAT Tanoa)
    Civ: "CIV_F" (Civilians) 
*/
	{ if (side _x isEqualTo EAST && _x IsKindof 'Man') then {[_x] spawn ConfigAI}
		else {if (side _x isEqualTo EAST) then {{[_x] call ConfigAI} forEach crew _x};};
	} forEach allUnits;

  // Now save this array of units for later use
	_CheckedUnits = allUnits;
  // hintsilent format['There are %1 Checked Units',count _CheckedUnits];
  // We now have all Units that started on the map with configured with our new settings.
  // We can now set up a loop to monitor for anything new being created
  // in this case every 30 seconds
  
	while {true} do
	{
	// this variable will contain any new units that were not included on a previous loop
		_NewUnits = [];
	// Remove checked Units from the updated Unit array to create a list of new Units
		_NewUnits = allUnits - _CheckedUnits;
	// Now only do the following if there are new units found.
		if (count _NewUnits > 0) then 
			{
				{ if (side _x isEqualTo EAST && _x IsKindof 'Man') then {[_x] spawn ConfigAI}
					else {if (side _x isEqualTo EAST) then {{[_x] call ConfigAI} forEach crew _x};};
				} forEach _NewUnits;
			};
	// hint composeText [parsetext format["<t size='1.5' align='left' color='#ffffff'>There are <t color='#00ff00'>%1 <t color='#ffffff'>new units found and <t color='#ff0000'>%2 <t color='#ffffff'>Checked Units",count _NewUnits,count _CheckedUnits]];// Debug
		_CheckedUnits append _NewUnits;
		sleep 30;
	};
 

Script has been improved..

 

Enjoy.

Share this post


Link to post
Share on other sites

Yeah they look badass, even on Altis! finally got a chance to try this and it works a treat with DAC and Alive :D

Share this post


Link to post
Share on other sites
This will re-dress any OpFor unit spawned or placed on the map as a member of Boko Haram.

//Set face to African

_face = ['AfricanHead_01','AfricanHead_02','AfricanHead_03'] call BIS_fnc_selectRandom;

_x setface _face;

Holy Cats, this is amazing, Beerkan! I got this to work with a Virtual Arsenal loadout in just one try, which is rare for me as a newcomer to scripting. Amazing work. I was wondering if you knew the answer to this question: I see you have changed the face, but I assume that the units still retain their original Persian language. Do you know of a setting, like setface, that would allow for a change in the way the unit speaks? What I'm trying to do is have every SLA unit that spawns get the face and language of CSAT soldiers. Digging into the config file of the base CSAT soldier, which has the face and language I need, reveals the following identity parameters:

identityTypes[] = {"LanguagePER_F","Head_TK","G_IRAN_default"};

Can I plug that line into your script (in place of redressing) or do I have to do each one on a separate line? And if the latter, are there different commands, like setlanguage? I'm not finding anything in the BI Wiki. Thanks in advance for any advice you can share!

Share this post


Link to post
Share on other sites

You should be able to plug this into the script, I'd put it in about the same time as the face line just since it makes sense. Obviously replace the voice array as needed.

_Voice=["Male01PER","Male02PER","Male03PER"] call Bis_fnc_SelectRandom;
_Unit setSpeaker _Voice;

Share this post


Link to post
Share on other sites

Maybe you guys can help me with this. I would like to have all my SLA units spawn with Iranian heads and use Persian language. To do so, I have executed the following script inside my init.sqf file:

[] execVM "scripts\slaIdentityChange.sqf";
[] execVM "VCOMAI\init.sqf";
execVM "R3F_LOG\init.sqf";
tf_no_auto_long_range_radio = true;

The first line is the one I use to change a standard SLA soldier (from Leights OPFOR pack) into an Iranian. I accomplish this by using a modified version of Beerkan's amazing redress script, like this:

// SLA to Iranian Identity Change script (based on Boko Haram Redress Script)
// By Beerkan beta 0.61 with changes by Jc3
// Will redress new and spawned OPFOR (SLA) units as Iranians
// Add this to the init.sqf
// [] execVM 'slaIdentityChange.sqf';
// Spawn or Create units in the mission as side OPFOR.
// Then run this script to redress them as Iranians
//Client/Server Check
if (!isServer && hasinterface) exitWith {};
   {if (_x IsKindof 'Man' && faction _x isEqualTo 'LOP_SLA')
           then {
                   	_x setIdentity "iranianSLA";
               };
   } forEach allUnits;

 // Now save this array of units for later use
   _CheckedUnits = allUnits;
//    hintsilent format['There are %1 Checked Units',count _CheckedUnits];// For Debug
 // We now have all Units that started on the map with configured with our new settings.
 // We can now set up a loop to monitor for anything new being created
 // in this case every 30 seconds

   while {true} do
   {
  // this variable will contain any new units that were not included on a previous loop
   _NewUnits = [];
   // Remove checked Units from the updated Unit array to create a list of new Units
   _NewUnits = allUnits - _CheckedUnits;
   // Now only do the following if there are new units found.
   if (count _NewUnits > 0) then 
       {
//    hintsilent format['There are %1 new units found and %2 Checked Units',count _NewUnits,count _CheckedUnits];// For Debug
           {if (_x IsKindof 'Man' && faction _x isEqualTo 'LOP_SLA')
               then {
                   	_x setIdentity "iranianSLA";
                    };
               _CheckedUnits = _CheckedUnits + [_x];
               sleep 0.2;
               };
           } forEach _NewUnits;
       };sleep 30;
   };

The setIdentity command for iranaianSLA is defined in the description.ext file, just so:

class CfgIdentities
{
   class iranianSLA
   {
       name = "Habibi";
       nameSound = "Habibi";
       face="PersianHead_A3_01";
glasses="None";
speaker="Male02PER";
pitch=1.1;
   };
};

I place one player and one SLA unit in the editor, and run the mission. All of this works flawlessly on my local machine, but failed when I PBO'd and uploaded it to the server and tested. Judging from the code I've shared, can you see anything obvious that I missed? I made sure the right OPFOR faction was called out, and as I say, it worked in the editor. Did I include some code that is local as opposed to multiplayer? Thanks in advance for any assistance you can offer!

EDIT: This has to be something to do with localization, right? If I host the multiplayer game on my system, it runs flawlessly, but if I push it up to our community server and join, it fails to run. I tried to mitigate it this changing the init line to

["slaIdentityChange.sqf","BIS_fnc_execVM",true,true ] call BIS_fnc_MP;

But that didn't seem to make a difference.

Edited by diehardfc

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

×