#arma3_config
1 messages · Page 58 of 1
Download @BaAdditions if you want to fool your players (All players need to have the mod, it's not serverside only)
Hey peeps does anyone have experience with using procedual text textures as eventhandlers/hiddenselections for stuff like billboards per chance?
I've been playing around with it for a while now but keep running in the same circle of errors of the compiler missing commas, the text breaking, something else breaking, etc. etc. etc.
I'm already 99.99% sure the answer is no, but there's no way to have a unit start with a uniform looking correct without redefining the hsTextures right?
I have a uniform whose uniformClass is set to a scope 1'd unit that sets the selections, textures, materials, etc. I then have a macro that defines a bunch of units to use that uniform, but they inherit from other units to set up the rest of the loadout (weapons, mags, etc.). I do not want to have to set these back up for every single unit. I've tried some stuff like setting the uniformClass and then emptying the selections/textures, putting the uniform in linkedItems, but neither worked.
When spawned, they just look like they have the nakedUniform on
I really don't want to have to include all the loadout info in each macro'd class so that they inherit from the scope 1'd unit
Does anyone know how to disable vehicle skins re-asserting themselves from the inhereted base class despite having the hiddenSelectionsTextures set to the desired paths?
{
class CUP_O_Tigr_233011_GREEN_RU;
class MSF_MS_GAZ233011_Tigr: CUP_O_Tigr_233011_GREEN_RU
{
faction="MSF_MS_Mako_Security";
side=2;
displayName="GAZ233011 Tigr";
hiddenSelectionsTextures[]={"cup\wheeledvehicles\cup_wheeledvehicles_tigr\data\camo\black\carbody_co.paa","cup\wheeledvehicles\cup_wheeledvehicles_tigr\data\camo\black\hoodold_co.paa","cup\wheeledvehicles\cup_wheeledvehicles_tigr\data\camo\black\grille_co.paa","cup\wheeledvehicles\cup_wheeledvehicles_tigr\data\camo\black\extraparts_co.paa","cup\wheeledvehicles\cup_wheeledvehicles_tigr\data\camo\black\roofold_co.paa","#(argb,1,1,1)color(0,0,0,0)","#(argb,1,1,1)color(0,0,0,0)","#(argb,1,1,1)color(0,0,0,0)"};
crew="MSF_MS_HS_Agent_Rifle";
typicalCargo[]={"MSF_MS_HS_Agent_Rifle"};
};
};```
I figure I could clear the eventhandlers but I worry about losing other important code by doing so
It's probably the TextureSources, set textureList to an empty array
Will do
And/or clear the class as well
I know how I would clear textureList, how do I clear the class?
class TextureSources {};
Thank you. I'd just pop that in after the class CFG vehicles?
You'd add it in your MSF_... class
Here one second, just so I can make sure I understand
{
class MSF_MS_Mako_Security
{
units[]={"MSF_MS_GAZ233011_Tigr"};
requiredVersion=0.1;
};
};
class cfgFactionClasses
{
class MSF_MS_Mako_Security
{
icon="";
displayName="Mako Security";
side=2;
priority=1;
};
};
class cfgVehicles
{
class CUP_O_Tigr_233011_GREEN_RU;
class MSF_MS_GAZ233011_Tigr: CUP_O_Tigr_233011_GREEN_RU
{
faction="MSF_MS_Mako_Security";
side=2;
displayName="GAZ233011 Tigr";
textureList[]={};
class TextureSources {};
hiddenSelectionsTextures[]={"cup\wheeledvehicles\cup_wheeledvehicles_tigr\data\camo\black\carbody_co.paa","cup\wheeledvehicles\cup_wheeledvehicles_tigr\data\camo\black\hoodold_co.paa","cup\wheeledvehicles\cup_wheeledvehicles_tigr\data\camo\black\grille_co.paa","cup\wheeledvehicles\cup_wheeledvehicles_tigr\data\camo\black\extraparts_co.paa","cup\wheeledvehicles\cup_wheeledvehicles_tigr\data\camo\black\roofold_co.paa","#(argb,1,1,1)color(0,0,0,0)","#(argb,1,1,1)color(0,0,0,0)","#(argb,1,1,1)color(0,0,0,0)"};
crew="MSF_MS_HS_Agent_Rifle";
typicalCargo[]={"MSF_MS_HS_Agent_Rifle"};
};
};```
For the sake of posterity, adding the texturelist[]={}; did work
I just wanna make sure I also understand where to put this
TextureList is right, but you put the TextureSources in CfgFactionClasses, not your vehicle class
I just moved it and updated the message, like so?
Not quite, it should be in your vehicle class
I.e. in the same level as the faction = ..., displayName, textureList, etc
Ah! Gotcha. The class before texturesources is still necessary inside of the definition of the MSF_MS_GAZ233011_Tigr?
Correct, because TextureSources is a class
Understood. Thank you so much. I assume the texturesources being set to an empty array would remove the skin randomization from the vanilla bohemia interactive vehicles as well?
If you mean modifying all the vehicles and setting that property, yes
Yes, my apologies. To clarify: If I am making a van inherit from the vanilla BI vans which randomize their textures, the texturesources being an empty array would remove the skin randomization
Yeah
Best to set both, so that it's not looking at textureList and trying to load non-existent textures
textureList handles the randomization, and then TextureSources gives the garage options
Thank you so much
No problem
Hm came back to this and tinkering with it a bit again but I dont have enough experience with escaping characters/parser funkyness to really make any headway.
Ideas are very much appreciated, the error remains that more commas are expected
hiddenSelectionsTextures[]=
{
'#(rgb,512,512,3)text(0,0,""PuristaBold"",0.07,""#FFFFFF"",""#000000"",""test"")'
};
Change the quotes, should only use double quotes to contain a string in config
Do you mean using ' for the internal strings? I'll try it but iirc I did something similar earlier and it caused issues with the actual rendering of the texture
I mean just replacing the outer single Quotes with double quotes
The "double double" quotes inside should be fine
Yeah I've used single quotes just fine before, granted it was ui on tex but still a procedural texture
"#(rgb,1024,1024,1)ui('NCA_RscDatapad','NCA_datapadDisplay','ca')" // Forced lowercase in-game
"#(rgb,512,512,3)text(0,0,'PuristaBold',0.07,'#FFFFFF','#000000','test')"
results in the mod packing but the texture doesnt work ingame
when replacing the single quotes with normal quotes in the texture box of the object ingame it works again
Interesting
yeah its formed an annoying circle of errors/stuff not working that I cant get out of with this idea
also tried using an eventhandler instead but it runs into the same problems
so if anyone has any ideas they'd definetly be appreciated 
You use "" to escape quotes, in "" quoted strings.
Your string is not "" quoted, so you don't use double quotes.
'#(rgb,512,512,3)text(0,0,"PuristaBold",0.07,"#FFFFFF","#000000","test")'
Thats one of the firstn variants I tried but it leads to the same packing error (58 is that line)
class Land_Billboard_F;
class Pie_Billboard_SmokeRoles : Land_Billboard_F
{
author="Pi123263";
editorCategory = "Pie292ndAdds_EdCat_292nd";
editorSubcategory = "Pie292ndAdds_EdSubCat_Billboards";
scope=2;
scopeCurator=2;
displayName="Smoke Usage";
hiddenSelectionsTextures[]=
{
'#(rgb,512,512,3)text(0,0,"PuristaBold",0.07,"#FFFFFF","#000000","test")'
};
//class EventHandlers
//{
// init = "(_this select 0) setObjectTexture [0, '#(rgb,512,512,3)text(0,0,\"PuristaBold\",0.07,\"#FFFFFF\",\"#000000\",\"Smokes\nGreen Marking LZs\n\nRed Marking CAS Targets\n\nPurple Mass Casualty Locations\n\nYellow General Concealment - Location Marking\n\nBlue General Concealment - Location Marking\")'];";
//};
};
Have you tried a better packing tool?
fair
just looked at hemtt again and uff still looks too annoying to me because of CLI etc
I like my simple gui applications
I mean, it's just hemtt build and you're done
Can also make build tasks in VS Code, like I have Ctrl+Shift+B run hemtt launch to do a full build + launch the game, or for our big mod with lots of models that'd take a while, it only builds the addon of the file you're editing
If I want to add a progress bar timer to the "repair vehicle" action in the scroll wheel that appears if you have a toolkit, is this done via config?
Ive never edited base game actions before so dont know how to do that type of thing
Engine level
@wintry tartan I did not know u can do the sqrt and min stuff in a magazines intspeed from ur airsoft mod 
Hey chaps. Does anyone happen to know how to generate a custom sub 1pt font size font?
It seems the least I can generate with FontToTGA is size 6
Uhhhh hello,
I was wondering if anyone has the time to help me with an issue I am running into.
When ever I spawn in one of my units here (Editor or Zeus) it spawns in with the default / vanilla unit's uniform that I inherited from. Despite defining a new uniform.
Wierder is that if I go into the arsenal of the unit, it shows <Empty> as the select uniform.
This only happens if the units are OPFOR or INDFOR, if I just change the side to be BLUFOR it seems to work? As if the uniforms are somehow fucky with everything but BLUFOR?
The issue seems to also happen if I use vanilla uniforms.
So if I try to give the unit the BLUFOR or INDFOR wetsuit, it will bugout and revert to the issue above, but if I give it the OPFOR wetsuit, then it will work and show?
Check rpt, the uniform likely isn't allowed to be worn by opfor
I can't remember the exact name, but there's something like allowedSides in the uniform unit's config, which sets what sides can equip the uniform
5:52:52 Uniform AET_F_catapult_B_CMA_U_combatUniform_shortsleeve_woodland is not allowed for soldier class AET_F_catapult_B_CMA_Marksman
5:52:55 ERROR: Switch uniform! Uniform is not supported by soldier
Somehow during the last 5 hours not once did I think to look the classname of the uniform in the RPT...
I'll look it up, thank you
You can just use the config viewer
The only thing I am finding is modelSides[]={}; which is already defined in my config it seems
Yeah that's it, you can just set it to {6} to allow all sides to wear it
Lemme try that
(0+1+2+3 for opfor, blufor, independent, and civilian)
Nope, still no luck
6:10:08 Uniform AET_F_catapult_B_CMA_U_combatUniform_shortsleeve_woodland is not allowed for soldier class AET_F_catapult_B_CMA_Marksman
6:10:09 ERROR: Switch uniform! Uniform is not supported by soldier
6:10:09 Uniform AET_F_catapult_B_CMA_U_combatUniform_shortsleeve_woodland is not allowed for soldier class AET_F_catapult_B_CMA_Marksman
6:10:10 ERROR: Switch uniform! Uniform is not supported by soldier
6:10:10 Uniform AET_F_catapult_B_CMA_U_combatUniform_shortsleeve_woodland is not allowed for soldier class AET_F_catapult_B_CMA_Marksman
Can you show your uniform/unit config?
Uploaded here
You put it in the ItemInfo, not the unit config
When you say the unit config, what do you mean here exactly? 😅
Hope you bare with me, Arma 3 configs are like unknown magic to me to this day
In your uniform (CfgWeapons) class, you point to a unit (CfgVehicles) with the uniformClass.
This links the uniform to that unit, and is how the game determines how the uniform looks when worn, it's protection, what sides can wear it, etc.
So for your uniforms, you want to go to your linked unit and add the modelSides there
So you'd want to add it here in these classes
Ah it works now it seems
Yeah, though you can just use 6 to simplify it
Thanks a lot ❤️
Will do
No problem
Anyone knows if there's a way to force a weapon into sort of an auto burst mode just with config?
What I mean is basically a faster fullauto, but with pauses every 3 shots. So you get a pseudo burst mode that allows you to hold the mouse button to fire instead of having to release and click.
no
not natively anyway.
with scripting, possibly yes
As I suspected. But I could just make an extra fullauto mode and then script it so only that mode has the pause, right?
yes the scripting can be tied to the fired eventhandler
and that firemode can be for player only
AI can use normal burst
Yep. Thanks, I'll leave this functionality for more down the line
How do I inherit all properties of turrets/gunners of the vehicle only to apply a small change to a specific function (say reload time) of the same turret/gunners vehicle
Pretty sure you have to re-declare all the turrets when patching a class as well
Can't remember for sure
Yea I cant seem to inherit them and do a quick add-in 🙁
Show your config
Trying to edit RHS's M1A1 - let me find the config 1 sec
Not an expert here, but I'm pretty sure that if they have the access set to 3 (read-only) you can't modify the weapon itself. You can replace it entirely, or create your own version of the weapon which can be 99% the same except that little change you want. But not modify the actual existing weapon.
But im inheriting it to another vehicle alltogether - The idea is I inherit rhs's m1a1 and then modify the values i needed in my inherited class (which is the default method of doing)
The only problem is with turrets and event handlers - i cant seem to modify specific ones without also copying all of it that are defined in the main class
as Dart said, it would help if you showed your config
tried this
class Turrets: Turrets {
class MainTurret: MainTurret {
maxElev = 75;
class Turrets: Turrets {
class Commander: Commander {
maxElev = 75;
turretInfoType = "RscOptics_APC_Wheeled_01_gunner";
};
};
};
};
and even tried
class Turrets {
class MainTurret {
maxElev = 75;
class Turrets {
class Commander {
maxElev = 75;
turretInfoType = "RscOptics_APC_Wheeled_01_gunner";
};
};
};
};
na-da (i know the first one is invalid but i wanted t try)
Ideally I want to modify just the turretInfoType and the elevation
have you tried redeclaring the classes as suggested above?
What's the whole config?
Lets take this actual ACV config. I want to increase the max elevation of the gunner turret
What vehicle are you trying to modify
Because from what I'm seeing, both of those are wrong (second is always wrong)
All the three ACVs basically
Haven't checked but you'd want something like this:
class Car_F;
class Wheeled_APC_F: Car_F {
class NewTurret;
class Turrets;
};
class ACV_Base_F: Wheeled_APC_F {};
class ACV: ACV_Base_F {
class CargoTurret;
class Turrets: Turrets {
class CommanderOptics: NewTurret {
// ...
};
class Gunner: NewTurret {};
class CargoTurret_01: CargoTurret {};
class CargoTurret_02: CargoTurret_01 {};
class CargoTurret_03: CargoTurret {};
class CargoTurret_04: CargoTurret_03 {};
class CargoTurret_05: CargoTurret_04 {};
class CargoTurret_06: CargoTurret_04 {};
class CargoTurret_07: CargoTurret_06 {};
};
};
class ACV_MK19: ACV {
class CargoTurret;
class Turrets: Turrets {
class CommanderOptics: NewTurret {
// ...
};
class Gunner: NewTurret {};
class CargoTurret_01: CargoTurret {};
class CargoTurret_02: CargoTurret_01 {};
class CargoTurret_03: CargoTurret {};
class CargoTurret_04: CargoTurret_03 {};
class CargoTurret_05: CargoTurret_04 {};
class CargoTurret_06: CargoTurret_04 {};
class CargoTurret_07: CargoTurret_6 {};
};
};
class ACV_30: ACV_Base_F {
class CargoTurret;
class Turrets: Turrets {
class MainTurret: MainTurret {
class Turrets: Turrets {
class Commander: CommanderOptics {
// ...
};
};
};
class Commandercamera: NewTurret {};
class CargoTurret_01: CargoTurret {};
class CargoTurret_02: CargoTurret_01 {};
class CargoTurret_03: CargoTurret {};
class CargoTurret_04: CargoTurret_03 {};
class CargoTurret_05: CargoTurret_04 {};
class CargoTurret_06: CargoTurret_04 {};
class CargoTurret_07: CargoTurret_06 {};
};
};
The advanced developer tools mod makes doing this way easier as well
But if i am already inheriting ACV as the base for a custom ACV?
You need to study this https://community.bistudio.com/wiki/Class_Inheritance
You have to first have in the parent class class MainTurret;
before you can have class MainTurret: MainTurret { in the child class.
So to get to your_acv >> Turrets >> MainTurret >> Turrets >> Commander you will need 5 steps.
class B_MBT_01_TUSK_F;
class MyTank_Inherit_1: B_MBT_01_TUSK_F {
scope = 1;
class Turrets;
};
class MyTank_Inherit_2: MyTank_Inherit_1 {
class Turrets: Turrets {
class MainTurret;
};
};
class MyTank_Inherit_3: MyTank_Inherit_2 {
class Turrets: Turrets {
class MainTurret: MainTurret {
class Turrets;
};
};
};
class MyTank_Inherit_4: MyTank_Inherit_3 {
class Turrets: Turrets {
class MainTurret: MainTurret {
class Turrets: Turrets {
class CommanderOptics;
};
};
};
};
class MyTank_Inherit_5: MyTank_Inherit_4 {
scope = 2;
displayName = "My Tank";
class Turrets: Turrets {
class MainTurret: MainTurret {
maxElev = 75;
class Turrets: Turrets {
class CommanderOptics: CommanderOptics {
maxElev = 75;
};
};
};
};
};
Oh I assumed the base inheritance also inherits all the sub-classes
the other option is you go back up the inheritance "Tank","Tank_F","MBT_04_base_F","MBT_04_command_base_F" which is what is actually done. I did the above so the steps are clear
So if I want to edit the maxElev of the class that I have already inherited, I need to first have its parent class in as well and do like the steps above?
I think I kind of get what you are pointing it - Ill experiment and find out eventually thanks for the right direction
They do, but the turrets are redefined in each class
turrets are special case
hi everyone im just messaging to ask if anyone give me a hand with my config some time? im quite new to it i used to do the macro technique and still do for my mod but i was told to try and to the orginal way. i just find it abit confuising and dont know how to do it step by step. is anyone able to help or send a link to a good up to date vid tutrorial or somthing any help would be very much apprecioated thanks#
Config for what specifically?
immjust finding it abit confusing. i would like to do the work myself so i a know in the future if i wanted to make another retexture mod. im just confused about the some things aswell with the code but i have an idea that i can just Copy and paste it its mainly the pathing im confsused about that. It would mean alot
this is good channel to put down your questions yeah
people usually answer if they know how to help
Great! would i be alloweed to post my m mod so someone could have a look and to. i have a mod but im just confused were to start, what to do with it etc to allow me to continue?
It may be easier if you can pin down specific things you are stuck with
probably ya i can do that tomorrow its getting late for me but thanks for letting me know
is there a way to make a weapon truly caseless?
I've tried by using
caseless[] = {1};
but it's still ejecting shells. Is it another case of the ejection being baked into the model and unoverridable?
Truly caseless, as in, no visual effect/casing? There should be a config parameter about it, check 6.5mm config
Can't tell which exact rn
yeah I want the weapon to not eject a casing
Vanilla MX has done that
I don't know why you wrote
caseless[] = {1};
This is not how it works
Who suggested this line?
You need to change the cartridge token in the ammo classname to an empty value:
e.g.
class CfgAmmo
{
class BulletBase;
class B_MyAmmo: BulletBase
{
cartridge = "";
};
};
You can also create a custom ThingEffect class in CfgVehicles and have it use the empty.p3d model + have a timeToLive value of 0 seconds so that it disappears pretty much instantly as soon as your custom bullet gets fired.
class CfgAmmo
{
class BulletBase;
class B_MyAmmo: BulletBase
{
cartridge = "FxCartridge_caseless";
};
};
class CfgVehicles
{
class FxCartridge;
class FxCartridge_caseless: FxCartridge
{
model = "\a3\weapons_f\empty.p3d";
timeToLive = 0;
};
};
I suspect that it's based on the vanilla configs for some caseless weapons which do use a similar token. MX base class has this, for instance:
caseless[] = {"", 1, 1, 1};
soundBullet[] = {"caseless", 1};
...but this doesn't actually make the gun caseless. It's just for SFX that guns make whenever they eject ammo casings.
thanks, ill try these momentarily
this already worked, thanks a lot!
class YourPrefix_phase1_helmet: ls_gar_phase1_helmet { author = "You"; displayName = "Clone Phase 1 Helmet"; hiddenSelectionsTextures[] = { "\path\to\your\helmet_co.paa", "\ls\core\addons\characters_clone_legacy\helmets\phase1\data\visor_co.paa", "\ls\core\addons\characters_clone_legacy\helmets\phase1\data\illum_co.paa"
Hey guys i would like help if thats ok. From my understanding this is the basic config example. Im confused about the "Hiddenselectionstextures slot", the "path to helmet PAA" and the last two lines at the bottom. I dont know were to get nore what some of it means i do understand its telling the mod wear the texture is but i dont understand were to get it.
I understand display name is what the item wil be called ingame and the class prefix is the base texture name i used? im guessing
other than the path which i understand what it means just dont know how to get it. hidden selection i dont know what that means
if anyone is willing to help and guide it would be highly appreciated
You can open the base class ls_gar_phase1_helmet in the config viewer and check its hiddenSelectionsTextures
Then in your class, you swap whatever textures you want to change
config viewer ingame?
Yeah
ok ill try that now
The prefix is used to distinguish your mod's classnames and reduce the likelihood of conflicts with other mods. For example, if I added an M16, I might call it njt_M16 so that it wouldn't conflict with other mods that might add an M16 class.
Ok il note that
Ok i went onto config the to CFGweapons and found Phase2_Helmet ill work with that and change the config for Phase2 but am i in the right spot if so what now?
do i copy the PATH and parents?
I'd suggest getting the Advanced Developer Tools mod, it makes the config viewer so much nicer to use than the vanilla one
ya i have it just forgot to put in the load order
No, you don't need to do that. That path shown there is the position of the base helmet class within the config structure, it's not a file path for the textures.
ok
What you need to do next depends on what you're actually trying to achieve here. Are you trying to make a new retextured variant of the helmet? Are you trying to modify the original helmet? Are you trying to change some other property of the helmet?
i just want to add in my retextures thats all really
of LS armor and aswell how to do it for simmilar mods in the future but need to learn this first
i already have a mod RAE2 But the config is macro and its limiting my work, so i was told to learn how to do the proper way and i find it very diffacult cause somone made the mod for me and it was just a copy/paste for me
Okay, so you need to make a new class which inherits most of its properties from the original.
So you have the base class, lsd_gar_phase2_helmet, and for this you're also going to need to know the class that inherits from - it'll be the last entry in the parents array before lsd_gar_phase2_helmet, because you need to change something that comes from that parent class as well.
You're going to do something like this:
class some_parent_class; // one level up
class lsd_gar_phase2_helmet : some_parent_class // the base helmet. we're expanding on this so we need to mention where it inherits from.
{
class ItemInfo; // we're going to modify this in the new class so we need to mention it
};
class serria6_gar_phase2_helmet_red : lsd_gar_phase2_helmet // the new helmet inherits from the base helmet
{
displayName = "Clone Phase 2 Helmet (Red)";
hiddenSelectionTextures[] = { "\youraddon\sometexture_co", "\ls\core\addons\characters_clone_legacy\helmets\phase1\data\visor_co.paa", "\ls\core\addons\characters_clone_legacy\helmets\phase1\data\illum_co.paa" }; // the 2nd and 3rd textures aren't going to be changed because they're universal elements like the visor, so we use the same ones as the base helmet
class ItemInfo : ItemInfo
{
hiddenSelectionTextures[] = { "\youraddon\sometexture.paa", "\ls\core\addons\characters_clone_legacy\helmets\phase1\data\visor_co.paa", "\ls\core\addons\characters_clone_legacy\helmets\phase1\data\illum_co.paa" }; // we also have to do this inside the ItemInfo subclass
};
};```
`\youraddon\sometexture_co` needs to be replaced with the actual path to the new texture, and that's going to depend on what the texture file is called and where it's located within your mod, and what your mod's PBO prefix is. PBO prefix is important, but how you set it depends on the way you're packing it.
this is all happening in CfgWeapons in your mod's config.cpp btw, I figured you already knew that part but just to be sure
Ya i knew that bit i just want to get the idea of actually making the config before addiing it into my mod and mesing up the current config
SOclass some_parent_class; // one level up class lsd_gar_phase2_helmet : some_parent_class // the base helmet. we're expanding on this so we need to mention where it inherits from.
thats the current/base path ya of the model then the one under is where i put my texture path into it ya?
You can see where you put your texture path, it's where it says "\youraddon\sometexture_co". You replace that specific text with the actual path to your texture.
ok got it im understanding but were do i get the path?
Well, where did you put the texture?
i understand these bits now its actually getting it is the problem
oh wait hangon
C:\Users\Admin\Desktop\RAE2\data\textures\ls\trooper\helmet
instead of the admin/desktop would it be RAE2/data etc?
Obviously you can't use a full fixed path like that, because the file won't be in the same place on everyone's PC. You need to use the relative path within your addon, and you need to know your addon's PBO prefix. Exactly how that is set will depend on how you pack your mod.
I make fairly basic mods so I just use the Addon Builder from Arma 3 Tools. In that, the PBO prefix is set in the options before packing. The PBO prefix defines the internal name of the top-level folder of that PBO. So if you set your prefix to serria6_rae2, then your path would be \serria6_rae2\data\textures\ls\trooper\helmet\sometexture_co
ok ya i get ya now i do use addon builder aswell
i have a feeling its \RAE2\data\textures\ls\trooper\helmet this
class some_parent_class; // one level up class lsd_gar_phase2_helmet : some_parent_class // the base helmet. { displayName = "Commander Deviss Phase 2 Helmet"; class ItemInfo; // we're going to modify this in the new class so we need to mention it }; class serria6_gar_phase2_helmet_red : lsd_gar_phase2_helmet // the new helmet inherits from the base helmet { hiddenSelectionTextures[] = { "P2_Commander_deviss\\RAE2\data\textures\ls\trooper\helmet", "\ls\core\addons\characters_clone_legacy\helmets\phase1\data\visor_co.paa", "\ls\core\addons\characters_clone_legacy\helmets\phase1\data\illum_co.paa" }; class ItemInfo : ItemInfo { hiddenSelectionTextures[] = { "P2_Commander_deviss\\RAE2\data\textures\ls\trooper\helmet", "\ls\core\addons\characters_clone_legacy\helmets\phase1\data\visor_co.paa", "\ls\core\addons\characters_clone_legacy\helmets\phase1\data\illum_co.paa" }; };
this is what ive done so far i hope im getting somwhere dont know what to do with the other bits
Sorry, I put the displayName property in the wrong class, it should be in the class below (in your new class)
If this helmet is not going to actually be red, you can change the classname to say something other than "red", that's just an example
class serria6_gar_phase2_helmet_red i put in the texture name here ya? the name of the actual paa file
No, that's the classname of the new helmet class you're making. It's not a texture name. The name of the actual texture file goes in the texture file path which we just found
ok
"P2_Commander_deviss\\RAE2
What's going on here? IsP2_Commander_devissyour PBO prefix? You can't have\\in a file path.
oops ok my fault i thout that was were the display name goes like the name of the item in eden
No, display name goes in the displayName attribute. (As I mentioned I accidentally put that in the wrong class, but you have it set correctly other than that)
no wait sorry
thats the name of the texture
what you just mentioned P2_commander_deviss is the name of the Paa file
Well, you've put it at the wrong end of the file path
ya just realised that il fix it now
class some_parent_class; // one level up class lsd_gar_phase2_helmet : some_parent_class // the base helmet. we're expanding on this so we need to mention where it inherits from. { displayName = "Commander Deviss Phase 2 Helmet"; }; class serria6_gar_phase2_helmet_red : lsd_gar_phase2_helmet // the new helmet inherits from the base helmet { hiddenSelectionTextures[] = { "\RAE2\data\textures\ls\trooper\helmet\P2_Commander_deviss\", "\ls\core\addons\characters_clone_legacy\helmets\phase1\data\visor_co.paa", "\ls\core\addons\characters_clone_legacy\helmets\phase1\data\illum_co.paa" }; // the 2nd and 3rd textures aren't going to be changed because they're universal elements like the visor, so we use the same ones as the base helmet class ItemInfo : ItemInfo { hiddenSelectionTextures[] = { "\RAE2\data\textures\ls\trooper\helmet\P2_Commander_deviss\", "\ls\core\addons\characters_clone_legacy\helmets\phase1\data\visor_co.paa", "\ls\core\addons\characters_clone_legacy\helmets\phase1\data\illum_co.paa" }; // we also have to do this inside the ItemInfo subclass }; };
If you use three ` it'll make a proper code block, easier to read
You need to keep class ItemInfo; in the lsd_gar_phase2_helmet class (you've removed it for some reason), and move displayName = "Commander Deviss Phase 2 Helmet"; from that class into the serria6_gar_phase2_helmet_red class (like I said, I put it in the wrong place by accident)
You can change serria6_gar2_helmet_red to say deviss or something if you like, I just used red as an example
ok
If P2_Commander_deviss is the actual name of the specific PAA texture file, you need to remove the \ at the end
ok removed \ and changed the name to deviss
wait im struggling to understand with the iteminfo sorry
Go back to the original example I posted. I've just edited it so that displayName is in the right place now. See where it says class ItemInfo; in the lsd_gar_phase2_helmet class? That needs to stay there. You removed it; put it back.
you shouldnt need to declare the hiddenSelectionsTextures inside itemInfo.
https://community.bistudio.com/wiki/Arma_3:_Characters_And_Gear_Encoding_Guide#Headgear_Configuration
class some_parent_class; // one level up
class lsd_gar_phase2_helmet : some_parent_class // the base helmet. we're expanding on this so we need to mention where it inherits from.
{
class ItemInfo; // we're going to modify this in the new class so we need to mention it
};
class serria6_gar_phase2_helmet_red : lsd_gar_phase2_helmet // the new helmet inherits from the base helmet
{
displayName = "Commander Deviss Phase 2 Helmet";
hiddenSelectionTextures[] = { "\\RAE2\data\textures\ls\trooper\helmet\P2_Commander_deviss", "\ls\core\addons\characters_clone_legacy\helmets\phase1\data\visor_co.paa", "\ls\core\addons\characters_clone_legacy\helmets\phase1\data\illum_co.paa" };
class ItemInfo : ItemInfo
{
hiddenSelectionTextures[] = { "\RAE2\data\textures\ls\trooper\helmet\P2_Commander_deviss", "\ls\core\addons\characters_clone_legacy\helmets\phase1\data\visor_co.paa", "\ls\core\addons\characters_clone_legacy\helmets\phase1\data\illum_co.paa" };
};
};```
``
You have a \\ at the start of one of those file paths.
Don't forget to change your classname to say deviss instead of red.
The next thing you need is to find the actual name to replace some_parent_class with. Remember, we're looking for the immediate parent of lsd_gar_phase2_helmet. You can see that in the config viewer - find lsd_gar_phase2_helmet and look for the last item in its "Parents" array.
That's, uh...hmm.
I think that array might be reversed. What's the first item?
"lsd_blueforHelmet_base"
yeah it's probably that
i think its cause i dragged along abit to highlight
That's why I can't see the first item in the screenshot, but I was expecting to need the last item, not the first item. I was expecting it to be ordered "top-down", so the last item would be the immediate parent of this class. But it's backwards to what I was expecting.
Probably a difference between the vanilla viewer and the ADT viewer.
It is used by e.g. GM and I assume there's some reason why they've done that.
If it's not necessary then it's not necessary, but it can't hurt; helps teach a bit about inheritance in this case anyway.
replace some_parent_class with lsd_blueforHelmet_base. Replace both instances where it appears; don't use quotes.
class slsd_blueforHelmet_base; // one level up
class lsd_gar_phase2_helmet : "lsd_blueforHelmet_base" // the base helmet. we're expanding on this so we need to mention where it inherits from.
{
class ItemInfo; // we're going to modify this in the new class so we need to mention it
};
class P2 Deviss : lsd_gar_phase2_helmet // the new helmet inherits from the base helmet
{
displayName = "Commander Deviss Phase 2 Helmet";
hiddenSelectionTextures[] = { "\\RAE2\data\textures\ls\trooper\helmet\P2_Commander_deviss", "\ls\core\addons\characters_clone_legacy\helmets\phase1\data\visor_co.paa", "\ls\core\addons\characters_clone_legacy\helmets\phase1\data\illum_co.paa" };
class ItemInfo : ItemInfo
{
hiddenSelectionTextures[] = { "\RAE2\data\textures\ls\trooper\helmet\P2_Commander_deviss", "\ls\core\addons\characters_clone_legacy\helmets\phase1\data\visor_co.paa", "\ls\core\addons\characters_clone_legacy\helmets\phase1\data\illum_co.paa" };
};
};`````
You've got an extra s at the start of the first one
fixed
class P2 Deviss
Classnames cannot contain spaces. Use an underscore instead. You should also make this classname more unique by including a prefix to avoid conflicts, as we discussed before - that's what theserria6part was for in the example, but you could userae2if that's the name of your mod, or something else
il change it to rae2
class lsd_blueforHelmet_base; // one level up
class lsd_gar_phase2_helmet : "lsd_blueforHelmet_base" // the base helmet. we're expanding on this so we need to mention where it inherits from.
{
class ItemInfo; // we're going to modify this in the new class so we need to mention it
};
class rea2 : lsd_gar_phase2_helmet // the new helmet inherits from the base helmet
{
displayName = "Commander Deviss Phase 2 Helmet";
hiddenSelectionTextures[] = { "\\RAE2\data\textures\ls\trooper\helmet\P2_Commander_deviss", "\ls\core\addons\characters_clone_legacy\helmets\phase1\data\visor_co.paa", "\ls\core\addons\characters_clone_legacy\helmets\phase1\data\illum_co.paa" };
class ItemInfo : ItemInfo
{
hiddenSelectionTextures[] = { "\RAE2\data\textures\ls\trooper\helmet\P2_Commander_deviss", "\ls\core\addons\characters_clone_legacy\helmets\phase1\data\visor_co.paa", "\ls\core\addons\characters_clone_legacy\helmets\phase1\data\illum_co.paa" };
};
};```
``
Include a prefix, not replace the entire classname with just the prefix :U
The classname is the internal name of the type of helmet. When the game goes "what type of helmet do you have?" the classname is the answer. It has to be unique, and ideally slightly descriptive.
In line 2, remove the quotes from "lsd_blueforHelmet_base".
class serria6_gar_phase2_helmet_red
this is your classname in my original example (it is the name that follows class). I used serria6 as the prefix because it's in your username in Discord. You want to change it to rae2. So, being a pre fix, it goes on the front of the classname, and your helmet is also Deviss' helmet rather than the example's "red" placeholder. This could lead to:
class rae2_gar_phase2_helmet_deviss
class rae2_p2_deviss
class rae2_helmet_deviss_p2```
Anything like that, take your pick really. But it should _start_ with `rae2_`, it should include some unique thing (e.g. `deviss`), and it'd be _cool_ if it included `h` or `helmet` so people can tell what it is.
Don't remove the whole thing, just the quotes. You still need lsd_blueforHelmet_base in that exact location, just without the quotes.
ah ok i get ya now
``class lsd_blueforHelmet_base;
class lsd_gar_phase2_helmet : lsd_blueforHelmet_base
{
class ItemInfo; // we're going to modify this in the new class so we need to mention it
};
class rae2_helmet_deviss_p2 : lsd_gar_phase2_helmet // the new helmet inherits from the base helmet
{
displayName = "Commander Deviss Phase 2 Helmet";
hiddenSelectionTextures[] = { "\RAE2\data\textures\ls\trooper\helmet\P2_Commander_deviss", "\ls\core\addons\characters_clone_legacy\helmets\phase1\data\visor_co.paa", "\ls\core\addons\characters_clone_legacy\helmets\phase1\data\illum_co.paa" };
class ItemInfo : ItemInfo
{
hiddenSelectionTextures[] = { "\RAE2\data\textures\ls\trooper\helmet\P2_Commander_deviss", "\ls\core\addons\characters_clone_legacy\helmets\phase1\data\visor_co.paa", "\ls\core\addons\characters_clone_legacy\helmets\phase1\data\illum_co.paa" };
};
};`
Now it's time to pack your mod and see if I've made any huge mistakes
ok
Remember to set the PBO prefix to RAE2 in the options when you pack it
Addon Source Directory: C:\Users\Admin\Desktop\RAE2AX
Are you sure that's right? That's different from the file path you mentioned before.
sorry i took a nap after all that it drained me😂
i copied my mod cause i didnt want to mess around with the config so the copied config to mess around with maybe their is somthing i neeed to change
Is there anything I can do? I can’t convert a config file.
Appreciate your help man means alot i got one config written just need to figure out how turn it into a mod now. again much appreciated thanks
From the looks of it, reyhard (albeit back in 2018) says that you need hiddenSelections[] defined in ItemInfo for retextured stuff, but the example shown doesn't have hiddenSelectionsTextures[]. So...maybe HST isn't necessary after all?
#arma3_config message
Would be great if we had an official definitive clarification on whether it's needed or not.
According to Mondkalb, the one in ItemInfo is for the dropped object, but there are vanilla helmets [that have different hiddenSelectionsTextures to their base model] that don't have it in ItemInfo but do show the correct textures when dropped, so 🤔
Yeah that's the weird part. Even BI is inconsistent with it and it still works out regardless...
Other way around
ItemInfo is when worn
Correct, you only need uniformModel and hiddenSelections in ItemInfo (and then nvgs also have modelOff)
KK changed it just last year. For dropped textured uniforms show the changed texture while on ground.
Maybe that's related
Anyone know what cfgvehicle inheritance classes have the ability to be used as transporters for VIV? things like car_f work for example but Cargo_base_F does not
trying to make a cargo container that you can load things into
Shouldn't need to inherit that. And you need to define the positions anyway. You can just add the config class in your container
Interesting, I've added the config element, but its not allowing me to load anything
This is what I have
And i've defined the memory points too
Looks like its tied to the simulation type actually
if I add simulation = "carx"; it starts working but obviously with some errors
Ah I see. What simulation did you have otherwise? There are stuff like viv pallets out there. Could check what they use
Basegame or if they are in mods, any idea which?
Boxloader mod
It needs to be a Transport vehicle to ViV transport yes.
I didn't expect thingX to be one tho
It isn’t, thingx doesn’t work
https://community.bistudio.com/wiki/CfgVehicles_Config_Reference
Typo: jpeg pictures are usable anywhere a pac (or pac) file is indicated. It is never default.
Inheriting from StaticWeapon works, TankX sim. not sure if it suits your purpose
question regarding AFM configs; I'm making my own RTDconfig but for some reason when applying it to the RotorLibHelicopterProperties it forces a reversion to SFM. I've verified the file exists as is referenced in another question, and I've tried just copy/pasting a pre-existing RTD config, neither of which work
is there anything special with naming conventions like there is with functions?
config snippet for reference
class RotorLibHelicopterProperties: RotorLibHelicopterProperties
{
RTDconfig="\x\JSOAC\addons\airframetweaks\RTD_MELB.xml";
...
};
hi guys hope it aint too much to ask but could someone show me, send or point me in the right direction were i can get what a basic config would look like?
without anything being added?
what are you trying to do? just make a change to an existing thing?
i was going to try and change an existing one that used macros but i think i just need to make a new one from scratch im still learning the basics
i just have no clue how to set up configs etc
thanks man ill have look and hope i can make sense of it
so two things need to be done for every change to an existing config;
a cfgPatches entry, which specifies that your mod is to load after the other mod
class CfgPatches
{
class JSOAC_airframetweaks // should be unique
{
name="JSOAC Airframe Tweaks";
author="Waylen";
requiredVersion=1;
units [] =
{
"vtx_MH60M", // name of the class that you are inheriting from/changing
"vtx_MH60M_DAP",
"vtx_MH60M_DAP_MLASS",
"vtx_H60_base",
"RHS_MELB_base",
"RHS_MELB_MH6M",
"RHS_MELB_AH6M",
"TF373_SOAR_MH47G_base"
};
requiredAddons[]=
{
"rhsusf_c_melb", // pbo name / addon name
"vtx_mh60m",
"TF373_SOAR_Chinooks",
};
};
};```
then, a config for whatever it is your doing, so lets take an MH-6 for example from RHS. we'll just do a simple tweak to the "weapons" it has
```cpp
class cfgVehicles
{
class RHS_MELB_base; // so the config has the class you're inheriting from
class RHS_MELB_AH6M: RHS_MELB_base // defines your new class, then inherits from RHS_MELB_base, copying all values
{
weapons[]= // defines the weapons array
{
"rhs_weap_MASTERSAFE",
"Laserdesignator_pilotcamera"
};
magazines[]=
{
"Laserbatteries"
};
};
};
but what sticky joe posted is much more rigorous
this is a very "quick and dirty" way to do it
so cause my mod would be a retexture of LS what would this look like so?
just doing retextures atm
you'd be redefining the hiddenSelectionsTextures array
ok i did abit of that earlier on in the week i saved that config
give me a sec and i can pull up an example config
class cfgVehicles
{
class RHS_MELB_base; // so the config has the class you're inheriting from
class RHS_MELB_AH6M: RHS_MELB_base // defines your new class, then inherits from RHS_MELB_base, copying all values
{
hiddenSelectionsTextures [] =
{
"filepathtowhatevertextureyouhave",
"texture2filepath",
"texture3filepath"
};
};
};```
and if theres multiple, then you'll add a comma between each line
ah ok im slowing getting it
@winged blade so other than the config what other technical stuff do i need? excluding the retextures i know that already texturing was my strong suite not config or coding
when you say technical stuff, do you mean software to put a mod together?
as in to build the config into a PBO that can be used?
i do have Visual studio code aswell as arma 3 tools i just mean as in like the coding is it just the config?
thats all you'd need inside of a config.cpp file, correct
oh ok cool thought id would be more
small config tweaks are shockingly simple
its just when you want more nuance it gets heavier
i find the path abit complicated at times
Were you looking for #community_wiki ?
I'm getting a little bit confused when i see this on the CfgSoundSet wiki. Is FrequencyFactor supposed to change the frequency or the pitch ?
For sounds, frequency (modulation of the sound wave in hertz) controls the pitch.
Pitch and Frequency are the same thing.
Not to me. To me frequency is the speed of the sound (changes the sound duration and pitch, same as vehicle engines). The pitch is more a pitch shifting to me (sound has same duration with original)
But thank you, now i get the thing ^^
Speeding up a sound will naturally increase the frequency and therefore pitch, but increasing the frequency does not necessarily mean increasing the speed. It's possible to digitally process a sound to increase the frequency, and therefore pitch, without increasing the speed.
However, you can't increase pitch without increasing frequency, and you can't increase frequency without increasing pitch, because "pitch" is just the human interpretation of a sound's frequency
Hmmm that's probably a misunderstanding from me
I got confused because of https://community.bistudio.com/wiki/Arma_3:_Sound:_cfgSoundShaders#frequency
I get this error seemingly when I equip one of my uniforms, but I'm not sure why because it seems like vanilla uniforms (units) also use HitPelvis seemingly without issue
class HitBody: HitChest {
// ...
depends = "HitPelvis max HitAbdomen max HitDiaphragm max HitChest";
};
11:26:52 Error compiling 'HitPelvis max HitAbdomen max HitDiaphragm max HitChest' in 'hitbody'
11:26:52 Error in expression <HitPelvis max HitAbdomen max HitDiaphrag>
11:26:52 Error position: <HitPelvis max HitAbdomen max HitDiaphrag>
11:26:52 Error Undefined variable in expression: hitpelvis
For example, configFile >> "CfgVehicles" >> "B_G_Soldier_LAT_F" >> "HitPoints" >> "HitBody" >> "depends" has the exact same depends value and I'm not seeing any new errors come up when I equip its uniform (U_BG_Guerrilla_6_1).
let's say I'm making a Helicopter and I want it to land at faster speeds without taking damage? Is there anything in the config to help with that?
Also the Helicopter using skis not wheels
does this look ok?
hey guys made my first config from all your advice and help is this gettiung somewhere or is it mush?
has right looking elements but in wrong places
for starters cfgPatches is all wrong
look up the arma3 samples on steam
compare with configs there
Or for the CfgPatches: https://community.bistudio.com/wiki/CfgPatches
There's also have a lot of missing/extra { and } in that picture.
ive pulled my config along side the link what exactly am i looking for?
i have the name for the base texture im retexturing, and the path but i think i need to update that
i dont really understand the rest other than those
under class info is the name of my retexture which i added
display name just the name of the item ingame
You'll need to shuffle some things around depending on what you're retexturing
- Helmet -> CfgWeapons
- Vests -> CfgWeapons
- Backpacks -> CfgVehicles
- Uniforms -> CfgWeapons and CfgVehicles
- These two are different for the two halves but need to link together in config
ok gotcha
thanks
after that is just a matter of copy and pasting names?
of textures and paths i mean
Could try increasing the armour of the landing gear hit points?
I think it also matters which flight model.
ok just changed the texture path to match. moment of truth now
helmet is in CFGweapons
More or less, you'll need to set up inheritance and such but the basics would look like
class CfgWeapons
{
class BaseHelmet;
class OriginalHelmet: BaseHelmet
{
class ItemInfo;
};
class MyNewHelmet: OriginalHelmet
{
scope = 2;
displayName = "MyNewHelmet";
hiddenSelections[]= //this is unique per model, yours' may look different
{
"camo",
"camo1"
};
hiddenSelectionsTextures[]= //paths go here
{
"Path\To\PAA",
"Path\To\PAA"
};
class ItemInfo: ItemInfo
{
hiddenSelections[]= //Do this again YAY!!!!
{
"camo",
"camo1"
};
hiddenSelectionsTextures[]=
{
"Path\To\PAA",
"Path\To\PAA"
};
};
};
};```
OK mod packed fine but item is not in arsenal
thanks i saved that into my presets#
Is it possible to add a hint to an existing class in CfgHints via description.ext? For example, this doesn't work:
class CfgHints
{
class Weapons_basic
{
class MyHint
{
...
};
};
};
Trying to add a hint to Field Manual. config.cpp contains this:
class CfgHints
{
class Weapons_basic
{
class SCH_magazinesReloading
{
displayName = "$STR_SCH_magazinesReloading_hint_title";
description = "$STR_SCH_magazinesReloading_hint_description";
image = "\a3\ui_f\data\gui\cfg\hints\Reload_ca.paa";
dlc = -1;
};
};
};
And I see it using Config Viewer, but not in Field Manual. Any thoughts why?
Might be like Turrets, where they need to be explicitly defined
How can this be done with CfgHints?
Same way you would with anything else
class Weapons_basic {
class vanillaClass;
class SCH_...
};
You mean that I need to list all existing classes?
hey guys need help if u dont mind me asking my mod packed fine but item aint showing in arsenal were anyone willing to lend a hand?
Yeah, but you could just one or two as a test
But if it works, then yeah
OK, will try, thanks.
What are you packing with?
If it's not pboProject, you have to add whatever your thing is to the cfgPatches units or weapons array probably.
Also make sure you have scope = 2; in your item's config
arma 3 tools
ok ill have a look
Further to this maybe you can reduce or eliminate the damage pass through from the gear
It doesn't have gears like the littlebird. but possibly I could give them their own comp damage and give no pass through maybe?
Not sure if it would work exactly but it’s my best guess, this is for the warhammer transport ship thing right?
Maybe making something be the gear to take the impact
Unfortunately, didn't help. 😭
is their a area specifaclly to putscope=2 in?
in each helmet's class. so like
{
scope = 2;
// and the rest of it...
thanks
Also you should try packing your addon with PboProject. It has a LOT of error checking and will not let you pack if your addon config is majorly fucked up
might feel annoying at first but it will make you learn good habits. Lol
cheers thanks
Does anyone happen to know which config(s) contain the FX that were used on the 2.0 update's fireworks from the firing drill?
Is there a way to freeze a unit in place without even having their head do ambient movement?
how do i make hidden selections invisible with the simple object thingy from 3den enhanced
hiddenSelections are not really meant to hide things
so anything that does not originally have transparency on it does not turn transparent
i mightve not asked the right question, still inexperienced a bit, i was overall hoping to find a way to make named selections visible / invisible in the simple object editor, i already have named selections set up, i just need help getting them to work properly
https://community.bistudio.com/wiki/hideSelection
Do you mean this
if its a custom model you are making hide animations might be better option
alright, ill try doing this actually
and no, i really dont know how to explain it, its the hidden selections you see within simple object editor in 3den enhanced
You really sure it is 3den Enhanced? Because I don't recognize it. If you mean Simple Object Editor from POLPOX's Base Functions, you need to write it right. It doesn't use any special tech to do so
i am stupid
i meant from base functions
😭
ive been working on this project overnight so i am very winded
wdym write it right
You need to recognize what you use, meant and write correctly
is it ok/good working practice to have two configs; one for anims, one for gestures?
not really good or bad. If it feels good way to organize it you thats all that matters
Thanks
anyway to play gestures in game?
I believe that would be playActionNow
There's playGesture as well
I'm working on a muzzle attachment but I don't want to change how/where the normal muzzleflash appears. Seems to be handled by the alternativeFire = "Zasleh2"; in the attachment's ItemInfo but I'm not sure what to use instead since that's a class in CfgVehicles
GM bayonets use alternativeFire = "";
I'll try that, though I thought it gave me an error when it was empty
Might be thinking of muzzleEnd though
Doing that makes the muzzleflash appear in a seemingly random area around the muzzleflash proxy
Sometimes its in the correct positions, other times its like down and to the right / left
Doesn't seem to be in any pattern
Is there a better way to figure out the iconPositions for slot classes other than just trial and error?
This still works pretty well to this day:
https://10dozen.github.io/A3_GIPP/
You may need to check it once in-game just to be absolutely sure that your coordinates are aligned 100% right (especially for muzzle slot attachments), but in most cases it should be good on your first try.
Hi everyone,
I have a quick question about CfgHead/CfgFace
I created a custom head and would like to deactivate its spawn on the AI (to prevent it from being used by AIs when they are placed in Zeus/Eden).
Do we just need to add this function below in the CfgFace?
disabled=0;
Just blank out the identityTypes[] array for the face.
e.g. identityTypes[] = {};
You won't need to change anything for heads since they never get randomly assigned (they're always linked to a face).
Ahhh I see, yeah i have :
identityTypes[]=
{
"NoGlasses"
};
Thank you
Oh that's really cool
Is it possible to prevent AI units occupying FFV slots? Like some config code to tell them to go to door guns instead?
Arma 3 prioritizes FFV slots rather than the doorguns, and wondering if there's some way to prevent them from automatically going to them
huh, does it...
Sounds like a bug tbh.
You mean when you order your personal squad members to board a vehicle or what?
More like they automatically goes for the FFV slots, and not the doorguns
Happens on all my helicopters
But yeah when I order them in
What order are the turrets in the config?
FFV slots first, then Right and left doorgun, and Copilo/Obs slot
That's why
I think they follow the config order, so put what you intend
I would think: copilot, crew guns, ffv
Okay, I'll mess with that then, thanks!
Got a config issue. Im trying to make laser light combos that switch back and forth from laser/light. I kept the laser and light variant for each combo but switching back and forth between light/laser is broken. It will switch but wont switch back. Any easy fixes?
You'd have to show the config
From someone who was also just doing it (and kept forgetting), did you add all attachment variants as compatible?
Keep in mind that switching attachments [for fake mode switching] is a CBA feature, not vanilla, so that's where you'd need to look for documentation
Okay here's the issue: My single-seat attack helicopter is generating a "Gunner" and "Copilot" slots for it, and I have nothing in the config declaring what the turrets are. There are no references to a turret anywhere in the config, but they won't go away
#arma3_model message
If you're not defining a Turrets class at all then its going to be using the turrets from whatever helicopter you're inheriting from
It's Helicopter_Base_H
So I need to disbable those declearations? I have "HasGunner=0"
If you don't have any turrets, just do class Turrets {};
class Helicopter_Base_H;
class YourThing: Helicopter_Base_H {
class Turrets {};
};
Okay thanks!
Okay next. How do I get the pylon weapons accessible to the pilot? Isn't it 1 in turret[]={0};? Do I just make it 1?
-1 should be driver
is keepHorizontalPlacement = 1 only for buildings? will it work on turrets? I dont think so but nothing on wiki for it 🙂
hey having trouble with the config could someone give advice if this is in the right direction? be much appreciated thanks
You have a lot of missing/extra curly brackets things, and your tabs are really inconsistent which makes it hard to read.
I don't think your thing in CfgVehicles is right either, and it might not be needed at all.
right shit ok
thanks
I dont know if this will work because I dont have your files to test with, but this is how I would do your config. You were entirely missing a CfgPatches which is needed, and there was lots of missing brackets and stuff that would cause it to fail to compile.
https://pastebin.com/KhCEBq0G
Pastebin.com is the number one paste tool since 2002. Pastebin is a website where you can store text online for a set period of time.
You will need to fill out line 8 with the cfgPatches name of wherever your lsd_blueforhelmet_base is coming from, in quotes. You can try finding it in the Config Viewer in arma 3 when the helmets are loaded.
I think the config viewer https://steamcommunity.com/sharedfiles/filedetails/?id=3499977893 tells you when you click on the class.
ok thanks il definatly give it a look
Would anyone have any idea how I could change the dispersion/beaten zone radius on a turret (50 cal) ? I am trying to make the spread when firing wider
I've tried messing with the following parameters in the config of the vehicles
accuracy =
precision =
dispersion =
dispersion should handle that. Not sure about others
And no, it's not on CfgVehicles but CfgWeapons
dispersion on the fire mode, not the weapon itself.
ill try this
RPM? It's unrelated term in this context
CfgWeapons classes have fire mode classes, enumerated by modes[]
I'm trying to change the cone of fire on a turret, m2 50 cal on a tripod, but it's a vehicle right?
It is, but it still has a weapon (a class in CfgWeapons) that handles the shooting sounds, compatible magazines, etc
Including the fire modes / their dispersion
You can find the weapon class by looking up the turret on the vehicle, if you need to.
Ahh I see, should I increase the value of dispersion or decrease?
Increase.
I can't get the fire mode to change the dispersion value..... im not sure if my config is setup correctly
class Default;
class ItemCore;
class InventoryOpticsItem_Base_F;
class MGunCore: Default{};
class MGun: MGunCore{};
class Pistol_Base_F {
opticsZoomMin = 0.4;
};
class Rifle_Base_F {
opticsZoomMin = 0.4;
};
class arifle_MX_Base_F {
opticsZoomMin = 0.4;
};
class srifle_EBR_F {
opticsZoomMin = 0.4;
};
class SMG_02_base_F {
opticsZoomMin = 0.4;
};
class LMG_Mk200_F {
opticsZoomMin = 0.4;
};
class UGL_F {
opticsZoomMin = 0.4;
};
class Launcher_Base_F {
opticsZoomMin = 0.4;
};
class launch_O_Titan_F {
opticsZoomMin = 0.4;
};
class SPE_MLMG_base: MGun
{
class manual: MGun
{
displayName = "";
aiRateOfFire = 1;
aiRateOfFireDistance = 10;
minRange = 0;
minRangeProbab = 0.01;
midRange = 1;
midRangeProbab = 0.01;
maxRange = 2;
maxRangeProbab = 0.01;
};
};
class SPE_M1919A4_tripod: SPE_MLMG_base
{
class manual: manual
{
dispersion = 0.05;
};
};
};```
wtf are these base classes..?
spearhead cdlc
No, I don't mention about SPE, but Pistol_Base_F to launch_O_Titan_F
Oh xD, that's for something else lol, maybe I should put that into a separate config lol
No that's not the concern. They are syntax wise broken. If you say they are not related at all, sure
oh i see, thats funny because they are working like I wanted lol. I reduced zoom amount when aiming on all weapons that inherit from those
my problem is the dispersion value on the m1919a4 is still not working, I'm not sure what I am doing wrong
Make sure how you are test is actually correct. Do you use the right weapon and its mode? How you can tell it is not overwritten?
AKA why you can tell it doesn't seem to be applied as you intend
Ohhh because the value remains the same even after loading my mod
How your CfgPatches does look
THIS WAS THE PROBLEM LOL
i didnt have the proper requiredAddons
How would I go about setting up passenger seats in a vehicle of mine?
We were having issues setting them up originally, so just implemented them as turrets instead but I'd like to switch them to proper passenger seats
mainly transportSoldier = 8; cargoAction[] = {"passenger_VAN_codriver01", "passenger_VAN_codriver02", ...}; there's a bunch more if you mix in ffv like cargoProxyIndexes[] and such
I don't need ffv for this so seems easy enough (hopefully)
Also trying to disable the turn in/out actions, which from what I read in here, was handled by the turned in/out lods in config being different. So I set them to the same values but I still have the action
well, cargo won't have those xD (i think)
but for turret you can leave one of the action blank, and/or use canHideGunner
I did play around with having a "duck down to take cover" via turn in, like in any movie where ppl in cars get shot at, so it could be nice =p
Model side what do I need to make them work?
Looking at our model currently, I have a proxy: cargo01 4 and proxy: cargo01 5 in each of the respective lods
I'm guessing the issue the person had was from the names both being 01 :P
That's fine, it uses the .001 as index
So you if the other seats are using the same proxy 1-3, you cna put cargoProxyIndexes[] = {4, 5};
Okay cool that worked, thanks
What does canHideGunner do?
The wiki is... certainly verbose about it
it means "can turn in"
Gotcha, and by the action which one do you mean?
Looking at the turret there's a couple
driverAction = "driver_hemtt";
driverInAction = "driver_low01";
gunnerAction = "ManActTestDriverOut";
gunnerGetInAction = "GetInHigh";
gunnerGetOutAction = "GetOutHigh";
gunnerInAction = "ManActTestDriver";
I think vehicle.gunnerAction shoudln't be a thing, rather vehicle.turret.gunnerAction.
gunnerAction is the turned out pose, gunnerInAction is the turned in pose. getin/out are the open door/jump out moves
Yeah those are all in the turret
That's what I figured, just wanted to make sure I was looking at the right thing
hey man apprectiate the template you made their to help me out is their anything i need to add to that or is that it?
also if i wanted to add more items to it is it a matter of copy and pasting the config and just changing the names?
Okay so I've made the animations the same, I've made the lods the same, and I've set canHideGunner = 0 but I still have the turn in/out actions
are these the turrets? try gunnerAction=""
#arma3_questions probably. This is for modding configuration files
thank you
have you tried 🤔
with matching forceHideDriver to boot
a bunch of vanilla vehicles also has canHideGunner = -1; for some reason
brain farting macros... what am I missing
#define LETTER_CLASS(letter) \
class Option_##letter { \
name = #letter; \
value = #letter; \
};
#define ALL_LETTERS \
LETTER_CLASS(A) \
LETTER_CLASS(B) \
LETTER_CLASS(C) \
LETTER_CLASS(D) \
LETTER_CLASS(E) \
LETTER_CLASS(F) \
LETTER_CLASS(G) \
LETTER_CLASS(H) \
LETTER_CLASS(I) \
LETTER_CLASS(J) \
LETTER_CLASS(K) \
LETTER_CLASS(L) \
LETTER_CLASS(M) \
LETTER_CLASS(N) \
LETTER_CLASS(O) \
LETTER_CLASS(P) \
LETTER_CLASS(Q) \
LETTER_CLASS(R) \
LETTER_CLASS(S) \
LETTER_CLASS(T) \
LETTER_CLASS(U) \
LETTER_CLASS(V) \
LETTER_CLASS(W) \
LETTER_CLASS(X) \
LETTER_CLASS(Y) \
LETTER_CLASS(Z)
usage
class Values {
ALL_LETTERS
};
hemtt doesn't throw a fit but 3den does
Seems fine. worked with mergeConfig
yeah i just found the issue elsewhere. faulty import above it
does anyone know if there is a wiki page that defines the function of variables
"dexterity" and "inertia"? I am seeing these values on weapon configs but can't find official sources for what they actually do (although I can make linguistic assumptions)
its all over the place. some stuff is old values from the previous games that may/may not be used
Where is a list of sounds that can be accessed via userAction stored? I've checked cfgSounds and all the sound-adjacent cfgSomethings, but I can't find any sound classes that match this one which I know works.
That's in class CfgAnimationSourceSounds, found by looking in a full config dump
modules: can we do a defaultValue for a EditCodeMulti5? I've tried \n for breaks, </br>, \, etc etc with no success. Ends up one one line in 3DEN
class ScriptedEventHandlerSample {
control = "EditCodeMulti5";
property = QGVAR(ModuleCapturePointSystem_ScriptedEventHandlerSample);
displayName = "Scripted EH Sample";
tooltip = "Scripted Event Handler Setup - Use This As A Template.";
defaultValue = """['MEH_Modules_CapturePoint_OwnerChanged', {\
params ['_module', '_oldOwner', '_newOwner'];\
hint format['Point: %1 has changed ownership to %2!', _module, _newOwner];\
}] call CBA_fnc_addEventHandler;""";
typeName = "STRING";
};
Is it linebreak command?
That's the only other thing I can think of
don't think I can use that in this instance. the 3ditor just takes a string. it didn't even convert </br> or \n. interprets it literally
Oh it's <br/>
pulling it all the way back in the editor fixed it.
Why would this animationList array not work in game? I am inheriting from O_G_Offroad_01_F, everything looks good, but not all of the animations in this list are applying. These are copy-pasted out of BIS garage:
animationList[]={
"HideDoor1",1,
"HideDoor2",1,
"HideDoor3",1,
"HideBackpacks",0,
"HideBumper1",0,
"HideBumper2",1,
"HideConstruction",0,
"hidePolice",1,
"HideServices",1,
"BeaconsStart",0,
"BeaconsServicesStart",0
};
is BIS_fnc_initVehicle being run on it?
No, I nuked it from the postInit but I'm re-adding it now and trying to call that list via it instead
It's gettin wild too when I try it with a different set of animationSources on the comms variant of the offroad. Here's the full configs for the 3 variants I'm trying to make. https://pastebin.com/9zYygmqx
That looks like missing textures
Are you sure your hiddenSelectionsTextures array is complete? Compare it to a vanilla comms offroad. You might be missing an "accessories" or similar texture from the array.
I see the missing textures issue, the comms truck is just a test to see if different animationsources would play. The main issue is the animations not appearing even though they're defined in both animationList[] and in the bis_fnc_initvehicle as seen on the left truck- no backpack, no front bumper, rear door is still visible, etc.
postinit="if (local (_this select 0)) then {[(_this select 0),false,[""hidePolice"",1,""HideServices"",0,""HideCover"",1,""StartBeaconLight"",0,""HideRoofRack"",0,""HideLoudSpeakers"",1,""HideAntennas"",1,""HideBeacon"",1,""HideSpotlight"",0,""HideDoor3"",0,""OpenDoor3"",0,""HideDoor1"",1,""HideDoor2"",1,""HideBackpacks"",0,""HideBumper1"",1,""HideBumper2"",1,""HideConstruction"",0,""BeaconsStart"",0],true] call bis_fnc_initVehicle;};"; huh? Sounds like hardcoded animations in EH? 
https://community.bistudio.com/wiki/Arma_3:_Vehicle_Customisation#Base_class doesn't seem to fill mission arguments
postInit = "if (local (_this select 0)) then { [(_this select 0), """", [], false] call BIS_fnc_initVehicle; };";
// """" Random texture source (pick one from the property textureList[])
>>>>>>>// []: randomise the animation sources (accordingly to the animationList[] property)<<<<<<<<<
// false: Don't change the mass even if an animation source has a defined mass```
@rain scarab
ah, misread on my end, sorry, you're trying exactly that
Yeah, it just doesn't work. 
is this what i'm looking for?
ok cool
do i put infront of class itemInfo; or replace it?
just to be totally extra sure: you don't set "BIS_disableRandomization"/"BIS_enableRandomization" on spawned vehicles?
replace line 8. Line 8 of your config should just be "ls_armor_bluefor" lol
done that
No, these are the only eventhandlers in there
i loaded it up to see if it worked still wont show in the eden editor must be mission some stuff still
does hitpointsprotectioninfo work on facewear and backpacks?
Nope.
Backpacks are vehicles so they wouldn't be using HPPinfo.
CfgGlasses ignores ItemInfo so you can't even define it in the first place.
also while you're here if you know by any chance - does explosionShielding in hitpointsprotectioninfo add or replace the default explosionShielding of a hitpoint? the wiki doesnt say (but since the armor property is an addition i'd assume it's adding)
AFAIK it replaces but I've never actually tested if that's the case or not.
hmm... i'll play it safe and keep it at 0 for the base unit and just let the vests/helmets/uniforms decide then
whether it's adding or replacing it's just gonna be the value in the item then
You mean 1? 0 would be nullifying explosive damage.
1 right 😂
The various gear slots are mainly cosmetics not exactly expected to be used for extra bitsnof armor. 😅
It's a missed opportunity that facewear didn't get support for HPP and other fancy goodies like subItems[].
Western Sahara's facemasks would've benefitted from being facewear as opposed to pseudo "helmets" that somehow protect your entire head instead of only your face.
Same goes for WS's Military Headset and ExpForce's Protecta Headsets. Getting access to a radio once you equip those would've been cool.
Wish we have more ways to dress up, scripted way to add model to a proxy
This ^ but also... being able to just grab a proxy object and change textures on it instead of having to do what ace extended arsenal does at least for recoloring
- has dozens of classes for a vest where the only difference is the hiddenselections textures and materials 🫠
Arsenal was one of the best feature in A3, while it is also not so good
hey guys hope all well im just thought id ask this. Would anyone who has good knowledge or basic knowledge in configs mind doing a 1 on 1 call or chat some time next week to help assist me with my config? im abit all over the place and was just thinking a 30 min 1 on 1 would work. if thats ok to ask. if not its all good i just find it easier to learn from someone
Sometimes you might get lucky that someone has spare time that aligns with yours but typically we try to answers written questions here.
those are easier for everyone to give answers to when they see them
and benefit others too if they have same questions
so feel free to ask here too
thats fair i know it sounds more like a bruden but i just thought id ask
thanks anyway
its alright to ask. 👍
hey guys, whats the clothing/backpack counterparts to 'class TransportItems' in a vehicle config?
Do you mean "for putting clothing/backpacks into a vehicle" or "for putting items into clothing/backpacks"?
For the first one, TransportBackpacks for...backpacks. Not sure about uniforms, but it might be TransportWeapons; if not just try TransportItems.
For the second one, backpacks are vehicles so they just use the same Transport... classes. I don't think there is an equivalent for uniforms, they work differently.
the first, thanks.
do the catagories have to be in a certain order within the config or something? only got magazines working so far
Not as far as I know.
Make sure you have the right names for the classname attribute as they are different. It's backpack for backpacks, magazine for magazines, name for items, and weapon for weapons.
Remember you can look at vanilla vehicle classes in the Config Viewer to see how they're set up
well it seems to be that my config matches up to what they have in vanilla, Ill post a comparision:
vanilla:
{
class _xx_arifle_CTAR_blk_F
{
weapon="arifle_CTAR_blk_F";
count=2;
};
class _xx_arifle_CTARS_blk_F
{
weapon="arifle_CTARS_blk_F";
count=1;
};
class _xx_launch_RPG32_ghex_F
{
weapon="launch_RPG32_ghex_F";
count=1;
};
};
class TransportMagazines
{
class _xx_30Rnd_580x42_Mag_F
{
magazine="30Rnd_580x42_Mag_F";
count=12;
};
class _xx_100Rnd_580x42_Mag_F
{
magazine="100Rnd_580x42_Mag_F";
count=6;
};
class _xx_HandGrenade
{
magazine="HandGrenade";
count=6;
};
class _xx_MiniGrenade
{
magazine="MiniGrenade";
count=6;
};
class _xx_SmokeShell
{
magazine="SmokeShell";
count=8;
};
class _xx_SmokeShellRed
{
magazine="SmokeShellRed";
count=8;
};
class _xx_SmokeShellYellow
{
magazine="SmokeShellYellow";
count=8;
};
class _xx_SmokeShellOrange
{
magazine="SmokeShellOrange";
count=8;
};
class _xx_1Rnd_HE_Grenade_shell
{
magazine="1Rnd_HE_Grenade_shell";
count=6;
};
class _xx_1Rnd_Smoke_Grenade_shell
{
```
magazine="1Rnd_Smoke_Grenade_shell";
count=3;
};
class _xx_1Rnd_SmokeYellow_Grenade_shell
{
magazine="1Rnd_SmokeYellow_Grenade_shell";
count=3;
};
class _xx_1Rnd_SmokeOrange_Grenade_shell
{
magazine="1Rnd_SmokeOrange_Grenade_shell";
count=3;
};
class _xx_1Rnd_SmokeRed_Grenade_shell
{
magazine="1Rnd_SmokeRed_Grenade_shell";
count=3;
};
class _xx_RPG32_F
{
magazine="RPG32_F";
count=5;
};
class _xx_RPG32_HE_F
{
magazine="RPG32_HE_F";
count=2;
};
class _xx_Titan_AT
{
magazine="Titan_AT";
count=2;
};
class _xx_Titan_AA
{
magazine="Titan_AA";
count=2;
};
};```
mine:
```class TransportBackpacks {
class _xx_rhs_sidor {
magazine = "rhs_sidor";
count = 2;
};
};
class TransportMagazines {
class _xx_rhsgref_20rnd_765x17_vz61 {
magazine = "rhsgref_20rnd_765x17_vz61";
count = 4;
};
class _xx_rhs_30Rnd_545x39_7N6M_AK {
magazine = "rhs_30Rnd_545x39_7N6M_AK";
count = 6;
};
class _xx_rhs_mag_rgd5 {
magazine = "rhs_mag_rgd5";
count = 10;
};
class _xx_rhs_mag_nspn_red {
magazine = "rhs_mag_nspn_red";
count = 10;
};
};
class TransportItems {
class _xx_FirstAidKit {
magazine = "FirstAidKit";
```
count = 10;
};
class _xx_MediKit {
magazine = "MediKit";
count = 1;
};
class _xx_ToolKit {
magazine = "ToolKit";
count = 1;
};
}```
a discord plugin has automatically split up the code blocks to get past the character limit FYI
maybe somebody can spot something out of order, but to me its seems like it should be getting the right result
It's better to use something like Pastebin.
yea I sort of realised that after the fact
its cuz you used 'magazine' for transportitems
:U
Oh I see
thought you were referring the the class Transport[x] portion
Good day. I'm writing a FIX mini-mod for this one (Jurassic Arma - Raptor Pack) and we noticed that enemies occupying static weapons or vehicle turrets are invulnerable to damage 
In error logs I see stuff like Error position: <HitPelvis max HitAbdomen max HitDiaphrag>
And in config.cpp of original mod I see the author redefined CaManBase class as following:
class CaManBase: Man
{
class ViewPilot;
class HeadLimits;
class HitPoints
{
class HitHead;
class HitBody;
class HitHands;
class HitLegs;
};
};
- Am I right to understand that this is what's causing the issue? Missing hitpoints from
HitPointssubclass? - Can I just slap re-redefenition of
CaManBasein my FIX mod with hitpoints from error logs? Or is it more complicated than that?
UPD: Found this https://community.bistudio.com/wiki/Arma_3:_Soldier_Protection
Now I'm even more confused
, in this example CaManBase also has only these four hitpoints but inhereting class TM4_CAManBase : CAManBase has more of them, including the ones I saw in error logs? What is correct then?
Hello have anyone messed with this LightningsConfig part of Map's weather config and know what these values do ? I assume minCloudiness is a level of overcast thunderbolts start appearing, and through trial and error I found out setting scatter to a low value makes lightning strikes happen more often thought I do not know mechanics of why it does that (my current theory is scatter is minimum time between lightning strikes). But I have no idea what the other ones do.
If you update a mod from using individual P3D's to using one P3D and all versions are just hiddenSelections but everything is still the same class name, will that break everything?
What do you mean by "break everything"?
Well I updated my EP Ground Textures to use hiddenSelections and it seems a map maker found that some of the decals give errors where it can't find the model that was used before but majority of the decals works fine using the hiddenSelections. The config doesn't point to the old model but tries to anyways.
Well, obviously the first thing is to Ctrl+F your code really hard to make sure there's nothing left.
The other thing is, I'm not sure exactly how it works, but sometimes map objects are baked into the terrain as just p3ds, not as full classes. If they've done that, then it doesn't matter what your config says because it's not being used.
I guess the baking part is whats breaking it
what do I have to do with this: http://pastebin.com/0KBEimaD if i want to make it more protective`?
Hmm not so much into configs but that do not look like the armor system..
isn't this what hitpoints do? and the armor value makes me think so...
What would the config be for a prop item to come with a user action for players to remove/dismantle the item?
i.e a roadblock placeable in editor or by Zeus that can be selected in game by the player and then removed/cleared from game (taking X seconds)
It's the AssembleInfo class, you can look at the vanilla turrets for an example. You can't set an amount of time for it to take though
does the lockAcquire parameter not work for vehicles? I've set it to true for some pylon short range AA missiles, but I have no effect, no matter if sensors are on or not. Still have to line up crosshair and manually press the lock button.
so apart from
simulation = "shotBullet"
simulation = "shotRocket"
etc what other options do we have to choose from and where can i find them like document/reference wise i cant find a point of it anywhere
Do you mean like https://community.bistudio.com/wiki/Models_%26_Classnames:_Simulation_Types ?
Is class Reflectors able to have an IR laser?
what does a negative minimal hit mean?
armor = -250;
armorComponent = "wheel_1_2_hide";
explosionShielding = 4;
material = -1;
minimalHit = -0.016;
name = "wheel_1_2_steering";
passThrough = 0;
radius = 0.33;
visual = "wheel_1_2_damage";
on the base game m-atv
oh I found it
well im sure someone more qualified can help you out, it just dont look right i think.
@young mortar Have a look at https://community.bistudio.com/wiki/Arma_3_Soldier_Protection and https://community.bistudio.com/wiki/Arma_3_Damage_Description
I recall seeing somewere within the last few months that someone got a MFD class working for infantry, but any time I try to configure one, nothing shows up. Working with a copy of the FA181 HMD with the conditions set to 1/true/"true"/etc but no joy. Any insight?
So I have retextures for vehicles and are ready to add them into a mod, what I am wondering is what is the simplest config to add them in game. I have looked at how others do it but it's so in consistent. I figured I would ask those that know what their doing. I will eventually use them to make a custom faction.
Not exactly, but probs something like this in your cfgvehicles
class CfgVehicles
{
class Car_F;
class My_Custom_Car: Car_F
{
author = "Author";
dlc = "My_Mod";
scope = 2;
displayName = "displayName";
hiddenSelectionsTextures[] =
{
"my_mod\data\camo\texture\Texture_1_CO.paa",
"my_mod\data\camo\texture\Texture_2_CO.paa"
};
};
};
Anyone know how to stick a preprocessor argument into a second-layer quoted thing like this?
#define BRO_PLATE(ownername) \
class Bro_Plate_##ownername: Bro_Plate_Base { \
scope = 2; \
scopeCurator = 2; \
displayName = 'Nameplate (ownername)'; \
class EventHandlers { \
postInit = "if (local (_this select 0)) then {[(_this select 0),'\bro_plate\platedata\ownername.sqf'] call bro_fnc_platechange"; \
}; \
};
This doesn't work for the postInit, it's outputting:
postInit = "if (local (_this select 0)) then {[(_this select 0),'\bro_plate\platedata\ownername.sqf'] call bro_fnc_platechange";
I know that double quotes are ignored by the preprocessor but I can't do two layers of single quotes, and the documentation is either unclear or this simply can't be done and I need to revisit it totally
Heyo, quick question.
Are there any negatives to really long classnames?
Context & Example:
AET_F_catapult_O_NFI_OPTRE_M26_F_OPTRE_M26_LMG_CompOPTRE_M26_Grippod_Bipod
Where:
AET_F_catapult_O_NFI = Addon
_
OPTRE_M26_F = Original /Parent Weapon Classname
_
OPTRE_M26_LMG_Comp = Muzzle Attachment
_
OPTRE_M26_Grippod_Bipod = Bipod Attachment
This is done by a config generator so I only get to edit / modify it afterwards, if there are no negatives other of readability then it'd be easier just to leave as is.
You can't use single quotes, make a "QUOTE" macro and use that
#define QUOTE(var1) #var1
#define BRO_PLATE(OWNER_NAME) \
displayName = QUOTE(Nameplate (OWNER_NAME));
Didn't write out the full thing but you get the idea
Thank you!
Readability that is. Technically you may see a micro and micro seconds difference, but who can notice?
Alright, thank you,
follow up, micro and micro seconds difference in what?
Of performance something
Ah okie dokie
does anyone know where i could get help to find out how i could adjust a existing tanks gunner sight to give it more magnification? i
Turret subclass opticIn IIRC
for hitpoint class, for the visual to change damage texture, is there any problem if I use the same name as a hiddenselection? like can I just use camoGun if that is exactly wat I want to change?
it works, but is there any problems with that visual being a hiddenselection
is there a soundcontroller for when vehicle radar has been activate? for example in the tigris or cheetah
seems currently a spinning radar dish doesn't play any sfx?
i try changing the fov to something greater but when i load the mod it doesn't appear anywhere
What doesn't what?
what config property would affect how much speed a vehicle loses when steering?
also just noticed a weird thing, the Wheeled_Apc_F base class has its wheel hit point animations set wrong, the HitLBWheel damage animation is set to the HitLF2Wheel hitpoint and vice verse, same for the right wheels
hey would anyone be intersted in going over my config to see what needs adjusting, added or changed would mean alot? so ican finally get my head around it and fix it up?
What do you mean
Post it.
Any tips how to make custom new ammobox visible in Zeus under Ammo?
I use I_supplyCrate_F class and ScopeCurator=2; scope=2;
Im trying to just change a texture of a vanilla vest in my mod. The hiddenSelection changes just fine. Vest works just fine. The problem lies with getting a No entry 'bin\config.bin/CfgWeapons/ItemInfo.scope' error. I'm not trying to change the scope of anything. Im just changing the texture. Im inheriting from the class V_PlateCarrier1_blk. I did see that its using a class ItemInfo: ItemInfo to do the damage settings. Would me inheriting from that class cause it to give the error even if I have the necessary classes defined?
Your class ItemInfo; is located in the wrong place
There is no class called ItemInfo in CfgWeapons itself, so trying to inherit from one is incorrect
Arma creates an empty class to inherit from as a fallback, so it's missing all the properties; hence the missing .scope error
It does exist in under cfgWeapons. This is from A3_Characters_F and the class I'm inheriting from.
I don't even touch that part of the code.
No, that is a class defined in a class inside CfgWeapons
Not CfgWeapons itself
Its the only thing that has ItemInfo in my config and I don't even use it.
Can you show your config?
And unloading this addon fixes it?
yep
Unrelated but _generalMacro does nothing, you can remove it
ok, I just copied from the existing code since they use it everywhere
It was a marker from some automated tools to set things like the nameSound of a unit/vehicle so that BI didn't have to do it by hand
Any clue on the error I'm getting? Is it coming from the vanilla vest?
I have no clue how that config is producing that error, shouldn't be coming from vanilla
I know it's not the reason, but getting rid of the the _generalMacro, I now don't get the error, lol.
I'm confused too
What is the error you're getting? Still no entry .whatever.Scope?
Inb4 load order shenanigans
Can you put the whole entire config into pastebin and send?
I got rid of the _generalMacro and rebuilt. Now the error is gone.
Isn't this the same one you've posted like twice before?
- It should be
config.cpp. - Your tabs are really inconsistent so it's hard to to read.
- You're missing the
CfgPatches - You have a bunch of missing and extra
{and};. - Line 8 should be
class ItemInfo;notclass ls_armor_bluefor;. - I don't think you need the
CfgVehiclespart yet or maybe at all. - I don't know if
hiddenSelectionTextures[]goes inItemInfotoo.
ya thats the problem i just dont really know what its really mean't to look like
hang on i must have a preset somwhere i can copy
would this be a more suitable one to work on?
Yeah, but it still needs the CfgPatches and get rid of extra stuff like the ``` and the first two lines.
Honestly i have no clue anymore im sorry my brain is jus fogged
path to PAA i understand the path to the texture thats about it
rest no clue
Did you read the links I sent you?
I am. i trying to get my head around it
ya i dont get any of it im finding it quite diffacult the family in heriit property stuff is just not sticking like i understand what it means kind of just the means of doing it, is the hard part
il keep reading tho
i hope its not too much to ask but could someone go over with me step by step? im just lost complely or is their a video i could watch that would explain better?
any help would be much appreciated
I'm not sure if my terminology is correct, but I think the important things are:
- You can either define a class like
class Vanilla_Helmet;or you can open it likeclass Vanilla_Helmet { scope = 1 };(scopeis just an example of something you might do). - If you want a class to inherit from another class (copy everything until you change it), you open it like
class Vanilla_Helmet : Base_Helmet { scope = 1 };. - If you inherit, you need to define or open the class you're inheriting from.
- If you open a class that inherits from another class, it will no longer inherit unless you specifically make it. You can safely define a class like
class Vanilla_Helmet;without messing with anything. For example, imagine thatVanilla_Helmetinherits fromBase_HelmetandBase_Helmetinherits from something else:
class Base_Helmet;
class Vanilla_Helmet : Base_Helmet {
scope = 1;
}; // good, keeps proper inheritance
class Vanilla_Helmet : Base_Helmet {
scope = 1;
}; // bad, will error
class Base_Helmet;
class Vanilla_Helmet {
scope = 1;
}; // bad, breaks Vanilla_Helmet
class Base_Helmet {
scope = 1;
};
class Vanilla_Helmet : Base_Helmet {
scope = 1;
}; // bad, breaks both
- Note that you don't need to do any inheritance for
class CfgWeapons {...because it already doesn't inherit from anything. - Formatting wise, I like to put a line break after every
{and increase the amount of tabs for the lines after by one. I like to put a line break before every};and decrease the amount of tabs before and on that line by one.
See above ⬆️
really do appreciate the break down im starting kind of understand it now
Part 2:
The same thing applies to classes in classes. If you open it, you need to set the inheritance and define the class it inherits from. Imagine there are the classes Big_Helmet_Blue inheriting from Big_Helmet_Base inheriting from Helmet_Base, and each one has the class Helmet_Stuff under it:
class Helmet_Base;
class Big_Helmet_Base : Helmet_Base {
class Helmet_Stuff;
};
class Big_Helmet_Blue : Big_Helmet_Base {
scope = 2;
class Helmet_Stuff : Helmet_Stuff {
cool = 1;
};
}; // good, keeps proper inheritance
class Helmet_Base;
class Big_Helmet_Base : Helmet_Base {
class Helmet_Stuff;
};
class Big_Helmet_Blue : Big_Helmet_Base {
scope = 2;
class Helmet_Stuff {
cool = 1;
};
}; // bad, breaks Big_Helmet_Blue >> Helmet_Stuff
class Big_Helmet_Base : Helmet_Base {
class Helmet_Stuff;
};
class Big_Helmet_Blue : Big_Helmet_Base {
scope = 2;
class Helmet_Stuff : Helmet_Stuff {
cool = 1;
};
}; // bad, breaks all
class Big_Helmet_Base;
class Big_Helmet_Blue : Big_Helmet_Base {
scope = 2;
class Helmet_Stuff : Helmet_Stuff {
cool = 1;
};
}; // bad, will error
when u say helmet stuff for this instance would it be "Visor" and illum from this mod ya? so the path for that?
Helmet_Stuff might be ItemInfo
ok got it
sorry trying to right it out
What would be?
just gonna right an example
class CfgWeapons
{
class lsd_blueforHelmet_base;
class lsd_gar_phase2_helmet:
{
class ItemInfo;
};
class rae2_helmet_deviss_p2:lsd_gar_phase2_helmet//
{
scope = 2;
displayName = "Commander Deviss Helmet";
hiddenSelections[]= (Path here)
You put too many ` to make it format right.
cpp class CfgWeapons { class lsd_blueforHelmet_base; class lsd_gar_phase2_helmet: { class ItemInfo; }; class rae2_helmet_deviss_p2:lsd_gar_phase2_helmet// { scope = 2; displayName = "Commander Deviss Helmet"; hiddenSelections[]= (Path here)
Do below but with cpp. Like: ```cpp
```sqf
// your code here
hint "good!";
```
↓ turns into ↓
// your code here
hint "good!";
SORRY
4th time's the charm?
5th time's the charm?
oh my life
now you know what your trying to help🤣
At this point it'll probably be easier to just read the original.
You forgot to put the thing you're inheriting from on line 4 and you probably need spaces before and after the : both times. Otherwise it looks good, assuming you're changing the right things, have the right classes, etc.
ya i think so im just retexturing
but yes those examples were what im trying to change
thanks man appreceiate it ill try and do this
Found a quirk in arma's code related to suppressors / silencers / muzzle attachments. Posting this here in case anyone else ever runs into a similar problem:
If you set audibleFire to 0, it'll cause a desync bug that makes firing client side - the animation + tracers will only play for the client firing the gun. Hits will still work as normal though
This sounds like something worth bug ticket.
What is the difference between defining hitTurret in turrets -> mainturrets -> hitpoints -> hitTurret verrsus turrets -> mainturret -> hitTurret
Inside hitpoints hitturret is a hitpoint.
Inside mainturret it's just class called hitturret
That does not have any function
I suspect you're thinking of how it used to be done for HPs in Arma 1. HitTurret and HitGun used to be defined in the base of the turret class as opposed to a HitPoints class that exists within the turret class. i.e.
class Turrets
{
class MainTurret
{
class HitGun{};
class HitTurret{};
};
};
This isn't used nowadays though. It hasn't been the case ever since Arma 2 which requires you to put HitTurret/HitGun inside the HitPoints class.
huh thats odd cause for the B_SAM_System_03_F when I look in config viewer theres a hitturret/hitgun inside mainturret and mainturret hitpoint. and I forget what zeus mod allows this but when I double click to go to the damage on hitpoints theres 2 for turret and 2 for gun.
the first gun when set to 100% changes the visual damage texture, the 2nd one makes it so u cant move the gun as intended, but not visual damage texture changes. Bug with that zeus mod?
Mm, I'll look into making one
I forget, what's the difference between reloadTime in weapon config vs the firemode itself?
Looking to add a bit more delay between bursts, but not between the firing of rounds in the burst itself
E.g. say the burst fires 3 bullets with 0.1 seconds in-between them, and then like a 0.5 second delay before the next burst can be fired
Hmm, after a bit of testing the weapon one seems unused :P
🙃
The Defender/Rhea turrets are weird. So I guess the HP system from Arma 1 still works in Arma 3 somehow, and can even be combined with the Arma 2 HP system...
Eliteness shows that a selection for vez and turret exists in the model's res/HP/FG LODs, so when you set max damage to HitTurret, you're damaging the HP in the base of the turret class and not the HP defined inside the turret's HitPoints class. This is also what causes the damage textures to properly change.
The same applies to HitGun, which has a selection for gun and zbran in the res/HP/FG LODs.
However, the HPs inside the turret's HitPoints class use neither of these and have visual = "autonomous_unhide"; and name = "action";, neither of which exist as selections or mempoints. So if you damage them, no textures will change.
But I cannot disable the turret's elevation and traverse even with this setHitPointDamage ["HitGun", 1]; and this setHitPointDamage ["HitTurret", 1];. So this weird mix of the Arma 1 HP and Arma 2 HP system also technically doesn't work. 🫠
...Jets DLC really was such a mess. I wonder what other weird inconsistencies there are that haven't been picked up on yet.

I got my desired effect of having it where hitturret/hitgun on death doesnt kill the whole thing by having hitPoints in base of config being empty, deleting hitTurret and hitGun in mainturret, and in mainturret->hitpoints having hitgun and hitturret with the armorComponent stuff, so I guess like a normal static MG turret. IDK it works and I really did just copy my normal MG static turret stuff. but was weird to find
How does arma determine which soundX sound to play from an ammo's config?
I'm assuming it's pulling the soundHit from the bisurf, then checking _ammoConfig >> format ["sound%1", _soundHit] (to put it in sqf terms) but I'm not sure how it'd handle multiple hit sounds (i.e. the properties are soundMetal1, soundMetal2, etc.).
For context, trying to add some custom impact sounds for a surface of ours. Our current solution was a little jank and used impact = "prefix_impactThing"; in the bisurf, then modifying HitEffects in BulletBase to add our thing to spawn a particle, which then plays a sound. However I found an issue where inherited HitEffects values aren't used at all
Need to make a ticket on that but not a priority for me currently
@ocean relic
my side project
schemas will allow you to put parsers inside the param parser (like for macros or texture strings or paths) they work with completions group inlay hints aswell.
oh, so that's the right channel for that? thanks
Just following this up over a week later to say somehow it's just working totally fine and as expected on a dedi. Just not in local / SP, but no biggie. Lol
I need halp. trying to get my kaiser reich mod playlist to work but i keep running into this issue
addon I_AUSAmericanunionstate requires addon Ifa3_comp
One of your mods requires another mod which is missing. Not a config issue though. Try #arma3_troubleshooting
Can someone point me to the correct variable names to place a skeleton in the model and main cfg. Adding a custom RTM to a Samples mod. Cannot remember what those are to look up any wiki example. Have the AIO, but same problem, don't know where to narrow things down. Did it ages ago, just need pointed in the correct direction.
have you checked the samples?
what kind of RTM are you adding?
Thanks! Found it in Samples. Been a long year away from modding, lol. I am just adding a simple static pose that works with the Heli controls.
hey guys, for some reason my helmet is not there ingame
it is in the config viewer but not in the game
not in virtual arsenal and not if i spawn a unit wearing it
I have been attempting to add a simple static RTM into a Samples heli mod example. I did it a long time ago, and must be missing something. I Have added the following class to the model.cpp : OFP2_ManSkeleton. In config I added CfgMovesBasic and CfgMovesMaleSdr: CfgMovesBasic. Mikero is saying "skeleton failed" when crunching. Any ideas where I might need to work on something?
did you add the whole cfgSkeleton from the sample man model.cfg?
are your rtms in a separate folder with the model.cfg next to them?
I have tried separate and the same folder, so far.
so your project could be something like P:\Seldom\Seldoms_helicopter\ <- p3d, config.cpp model.cfg in this folder
P:\Seldom\Seldoms_helicopter\data\ you would have textures and rtms
and in P:\Seldom\Seldoms_helicopter\anims\ you would have rtm and ofp2_manskeleton model.cfg
Thanks, nice setup. Did that, started fresh on my config and model files, had errors there, and an error in my rtm export from Blender. When I did this last year, the pose was mostly static, but still used the control stick in the new position, and I was able to adjust the angle and range with points in Blender. This time the pose is truly static. Is there a way to allow input from a vehicle to a new pose. Did it before but can't remember. I know it was something simple.
theres parameters to tie in character bones to animated vehicle parts like steering wheel and pedals
is there any info on the wiki or this discord? don't want to hit you up endlessly. I can probably figure it out.
driverLeftHandAnimName="throttle";
driverRightHandAnimName="stick_pilot";
these and equivalent for feet
and separate ones for gunner/turret as well
"AnimName" should come up with info either here in chat history of if you grab yourself a all in one config dump for vanilla config reference
stick_copilot for example? saw that in the config. I have the AIO. That is great to know. As always the master.
I added these under DriverAction and DriverInAction. No change, is there more needed?
in the vehicless class?
yes
they also have to correspond with bone names in your vehicles config/modelc.cfg animations
the correct one for the throttle was lever_pilot, stick_pilot was correct. I will try again with both working.
still no change. do I have to add these actions, or do they work by default as vanilla ones?
you need to animate your vehicle parts in your model.cfg
and yes you will have to setup what animations different engine driven animation sources use
I am currently using the stock Samples helicopter. I am not focused on controls yet, just the player animation. I will animate when I am modeling. I will add the actions to the config and see if that works. I assume I can use the same template for my rtm and vanilla files?
no idea if it has those things animated. 
I will keep experimenting! It was a silly fix, I rembering the workaround being painfully simple, lol.
If you run "headgear player" after being spawned with it what do you see?
i was probably using some wrong c lasses to derive from...it's workng now
but thanks ^^
but I got a harder question: how would I config a laser weapon or how would I config the laser ammo (no bullet drop for example)?
there was a star wars mod not long ago...it worked there...how would I script it?
What can cause the Damage class of a vehicle to become non-working ? I'm working on a building, the damage textures were switching properly but for some reason, it's now not working anymore. The hitpoints of the damage area works properly, the animationSource as well but i don't understand why its not switching materials
is it indestructible?
The building is not destructible i just want the glasses to be destructible. I can destroy the glass without problem, it gets properly hidden but it doesn't switch texture at 0.5 damage
It was working, but i don't know why its not anymore
fired event handler with setAmmo
I can send you the files if you want to take a look at it, its very weird
My opinion is if the model gets properly hidden when the glass is destroyed, that means the hitpoints config is done properly, even the visual parameter, so i don't understand why it doesn't switch texture
Can diagnostic branch help me tyo figure out what's happening ?
thanks I'll try it as soon as I got the weapons ready
there are some differences between how terrain placed objects and editor placed objects behave when destruction is disabled
Are you testing editor placed objects only?
yes editor placed. Its a multipart building, the issue is happening with the second part. Everything goes fine on the first part
But i have same issue if i spawn the second part separately
then couple of common issues are typo in selection name or the damage selection defining parameter
or maybe missing section definition in model.cfg for that p3d
i don't think so because setObjectTexture and SetObjectMaterials works fine
Here is the config https://pastebin.com/JM85crd9
Here is the model.cfg https://pastebin.com/9Kyj69Fg
Pastebin.com is the number one paste tool since 2002. Pastebin is a website where you can store text online for a set period of time.
Pastebin.com is the number one paste tool since 2002. Pastebin is a website where you can store text online for a set period of time.
I managed to make a static RTM function with stock Arma 3 helicopter animations tied to the memory points and skeleton in the Samples heli. I managed this in the past, but I am having an issue with a delay from the default pose and mine. Is this a speed issue? Example clip below:
delay? the animations looked to sync with the stick move
It starts in the default Arma heli pose, hand in center, and there is no cockpit or controls visible. Then it jumps into the cockpit, with my pose and the hand to the right side. I want to start with my pose.
Before I added the config it went straight to my static pose but no function. Current config:
class CfgMovesBasic {
class ManActions {
Seldom_Pilot_Pose = "Seldom_Pilot_Pose";
};
};
class CfgMovesMaleSdr: CfgMovesBasic {
skeletonName = "OFP2_ManSkeleton";
gestures = "CfgGesturesMale";
class Crew;
class States {
class Seldom_Pilot_Pose: Crew {
file="\Seldom_Test_Mods\Seldom_Proto_V1\anims\Seldom_Pilot_Pose.rtm";
looped=0;
speed=1;
leftHandIKCurve[] = {1};
rightHandIKCurve[] = {1};
leftLegIKCurve[] = {0};
rightLegIKCurve[] = {0};
head = "headDefault";
};
};
};
ah maybe its related to the internal parts not showing up at start
dont really know what that would be though
maybe the get in animation bugs somehow
have you defined getInAction?
Currently I am using the default "pilot_Heli_Light_02_Enter", I am going to look at my blender file for the animation. I made a second one to test this. I have had luck with things just messing with export settings. I also made this with frames 0-2 seated. I remember if I leave the 0 frame the default pose with the rig, and model 1 and 2, change the loop, it does different stuff.
Will take it back to animation if I need anything further related to that.
try some other entry action
I used the car one, which looks better for my purpose. That functioned fine, but there is still that odd delay. I don't remember having this problem last time. I am going to redo the pose with a fresh Arma rig and export a new one. That was a very rough pose so it won't take long.
it was speed. I meant to test null, but didn't. A simple 0 did the trick. Thanks for the help, now I can reverse engineer whatever I want 🙂
Can you modify a unit's HeadLimits?
I've tried making some changes in mine but it doesn't seem to be taking effect ingame
you mean how far the head on the model rotates without affecting the freelook range?
Nah I wanted to limit the freelook range
ah, yeah that's not headlimits (headlimits is what i described, purely visual) - you need some class with pilot in it... 1 moment lemme boot up the game
Oh its ViewPilot, I just saw head limits first and guessed it was that
yep viewPilot
Does anyone know what this does? I can't find any documentation for it
I'm guessing something to do with thermals maybe?
(from the model.cfg)
It has been concluded that it is in the wrong place in modelc.cfg in the samples
so safe to delete those parts
Ah k, gotcha. So it belongs in a config?
I'm wondering what it does
it is related to thermals yea
Any documentation for it? I can't really find any mention of it on the wiki
unfortunately I dont recall these parameters being explained
Huh, guess I'll just have to play with it and see what happens
Thanks
you might be able to glean some idea if you look at vanilla classes and how the parameters are used there
like here in weapons classes
Hmm, ok
I'll throw the values into one of my weapon models and play with it there
The weird thing is specifically the barrel heats up on vanilla weapons (this case the MX and QBZ95) but there's no definition for it in the model.cfg. Hell the barrel isn't even defined as a vertex group
Some screenshots for reference
I'm beginning the suspect it might have something to do with the textures or rvmat
Note how the QBZ is solid black while the MX has definition
Found it
I'm willing to bet this is a separate texture just for thermals
correct
weapons, driveable vehicles and characters use it
static objects like buildings dont
Ah, ok now its starting to click
Anyone have any idea how to get damn Deploy Pivots working correctly?
It is defined in Memory LOD and also the Config.cpp.
THe Memory Point is supposed to be on the rail itself
@toxic stirrup Make sure to list the classname in the the units[] array of the cfgPatches.
For some reason with Zeus the units and weapons array got a purpose again.
No channel is perfect for this question, but since the answer applies to the config I'm working on I picked this one. When an explosive is placed/armed, which model is visible? Is it the Magazine or the Ammo?
Ammo
model is used for when the explosive is armed, and mineModelDisabled for when its unarmed
Awesome, thanks. And I assume it's the same for grenades?
Yeah, minus the mineModelDisabled bit
Wicked.
yeah the magazine is for when you drop the inventory item on the ground
K, so I'm getting 2 oddities now.
First, the explosive appears in the arsenal under "magazines" instead of "explosives".
Second, when placed the explosive I inherit from is the model that's visible, and the model I'm using doesn't appear until armed.
I think the second is being caused by ACE, but on the off chance it isn't, I'm throwing it out here
- Need to add it to put muzzle for it to actually be used as an explosive (like Throw for grenades)
- You need to make a "setup object" for ace
Do you mean editing the line
muzzles = ["..."];
or edit class putMuzzle
Hello all, has anyone ran into this RPT issue creating their mods with unit inheritance? I was told years ago that I needed to start my inheritance tree at class SoldierWB to make sure there was no randomisation except for what I had chosen
Pastebin.com is the number one paste tool since 2002. Pastebin is a website where you can store text online for a set period of time.
Though this is very ignorable error (at least never considered improtant, personally), are you sure it's caused by your config
Ok, still struggling to get it to show as an Explosive. What am I missing?
class cfgWeapons
{
class Put
{
muzzles[] += {"MyMuzzle"};
class PutMuzzle;
class MyMuzzle: PutMuzzle
{
displayName = "My Explosive";
magazines = ["MyExplosive_Mag"];
};
};
};
magazines array syntax is wrong
In config, arrays are name[] = { "some", "content"};
(or += for append to existing array attribute, but you just want = for magazines)
Fixed that part, still not showing under the Explosives category.
You sure MyExplosive_Mag does even exist
I renamed it in the example I showed here, but yes it exists.
You also sure whichever the mag config is correct
Yes, beyond showing up in the wrong category, my explosive 100% works as intended now
Do you mean you can use it ingame but not in Arsenal
I do my testing in 3den, I can use it, but it's in the "all magazines" category, not the "explosives" category when editing my test loadout with the arsenal
Then check out a working magazine's config and not working your config, compare them to find a possible issue
The issue was in my cfgPatches. The slap-dash job I did for early testing gave me a functional item, but it wasn't allowing my += to modify the muzzles array in Put.
It is allowed, but overwritten by other config, then
Either way, I fixed my cfgPatches and am now well on the way to making something people will either love or hate.
What would I need to do to disable a default HUD for an inherited Vanilla helicopter? I am not sure what to do, but I am certain it is in the main config.
class MFD {};
Could someone please enlighten me how the minimalHit value in vehicle config should be read?
For example with a value of 0.139 the vanilla M2 doesnt do any damage to the component, but with a value of 0.1 it does.
How is this value supposed to be understood in relation to ammo config values?
It basically means any damage below minimalhit will be ignored, as to the exact math its explained in a few places on the wiki, quite a few things factor into damage
It's somewhat complicated but you can get a rough idea
minimalHit is essentially a percentage of the armor value
so if armor = 300 and minimalHit is 0.1 the damage needed to deal damage would be 30
but this gets reduced by the vehicles total armor too
the exact equation I'm not sure of
do note this is technically incorrect, it would only be correct if armor was -300
as postive armor values in hitpoints are derived from the vehicles armor value
Out of curiosity, anyone know what "numberOfHatches" is meant to do? found it in the cargo hq base config
I assume similar to numberOfDoors as its configured next to it
But nothing appears ingame so maybe a configuraiton that never saw the light of day being tied into some functionality?
Engine doesn't read it, maybe some script does
I've found it before and found a function to read it iirc, but I don't think it's got like a proper door framework-esque thing for it
Interesting, do you remember what the script did?
Your mod adds your logo using a config right? If so, I told you how. Otherwise, it's a topic for a different channel anyway.
Your solution neither works, nor as per your words in scripting is this a topic for a different channel 🙂
logo in mod.cpp
There's also logoOver for when hovered over
There's a third one too but I can't remember what it's called
I think they're talking about the big one that normally says Arma 3.
Isn't logo the icon in the mod list?
If it’s overwriting it, it may be because of load order? As in your mod loads first, sets the background and logo and then cwr3 loads after and sets the same thing again
Not sure how you control that per say but just a thought
Try undoing/overwriting the stuff in cwr3_intro.pbo/config.bin.
I'm not 100% what you did to change the logo.
yeah, load order is one of the first things we checked but no. even if it´s litteraly the last loaded it does not change the issue. Background changes no problem but the logo (the one that normaly syas arma 3 but is changed into CWR) does not and stays the cwr one
In theory, a BUNCH of soft compats with as many other logo-adding mods as you can think of
the following: class RscDisplayMain : RscStandardDisplay
{
class Controls
{
delete LogoApex;
class Logo : RscActivePicture
{
text = "\CT_MOD\data\ct_logo.paa";
onButtonClick = "";
tooltip = "Combat Team";
onLoad = "";
};
Do the following but with ```cpp instead of ```sqf:
```sqf
// your code here
hint "good!";
```
↓ turns into ↓
// your code here
hint "good!";
I don't know if this is the right channel for it but...
How do I properly do the setflagtexture thing for each one of my vehicles? I am the creator of the Generic Balkan Conflict series (and most notably its first mod, and only mod so far, the Balkan Paramilitary https://steamcommunity.com/sharedfiles/filedetails/?id=3702271995) and I plan on using the setflagtextures to differentiate between factions' vehicles. The problem is, I don't know how and I don't know how to do it in an easy way (I use Virtual Studio Code and I intend on using their replace feature).
The flag in question is balkan_paramilitary.paa ("\BalkanParamilitary\data\balkan_paramilitary.paa")
Also I constructed the faction in ORBAT so there's that too...
cpp on the same line as the ``` with no space and then a line break after.
class RscDisplayMain : RscStandardDisplay
{
class Controls
{
delete LogoApex;
class Logo : RscActivePicture
{
text = "\CT_MOD\data\ct_logo.paa";
onButtonClick = "";
tooltip = "Combat Team";
onLoad = "";
}; ```
now works
CWR does it differently as far as I can tell.
It looks like they have the main menu stuff set up in the config in a different place and script that sets other stuff.
I think you need to remove their scripts in the config and maybe some of the cutscene stuff in CfgWorlds or CfgMissions #arma3_config message.
ok thanks, I´ll try that
And other places, yeah
Read logo and background in main menu and thought they were meaning the bottom left bit
Pretty sure Dedmen at some point said not to replace the arma logo at all though soooo
that's instant IRL ban 🔥 🔨
banned from real life
- Lou Montana #arma3_scripting message
Found it
#arma3_scripting message
uhhh may someone help me with this?
I'd imagine you just need to add the flag proxy, though I don't know the path to it and not home to check it
Should be no need to script it, there's a coefGravity parameter https://community.bistudio.com/wiki/CfgAmmo_Config_Reference#coefGravity
IIRC that's what the star wars mod used
is anyone familiar with using spearpoint as part of the config, i used their uniform for an OPFOR faction but when i load them in theyre using vanilla NATO uniforms
Is there a easy way for me to add custom music to the main menu with a config or sqf file?
Working on my plugin
Hi everyone,I'm having a frustrating issue with Arma 3 keybinds. I'm trying to change the "Command Slow Forward" (the command for AI drivers to move slowly) from the default W + Left Ctrl to W + Left Alt.The problem is:Even after changing it in the in-game "Command" settings, the new bind is ignored.The game still only responds to the vanilla W + Left Ctrl.I've tried editing my .Arma3Profile file manually (setting keyCommandSlow[]={17, 56}; and keyMoveSlowForward[]={17, 56};), but the game seems to use some hardcoded defaults and ignores these entries.I've also tried setting the profile file to "Read-only", but it didn't help – the old bind still works, and the new one doesn't.I am a tank gunner and I need to use Alt for slow movement because holding Ctrl + W while shooting causes ghosting/input lag on my mouse/keyboard (the fire button stops responding).Has anyone managed to successfully override these hardcoded command binds? Is there some hidden setting in CBA or another config file that forces the default Ctrl modifier?Thanks in advance for any help!
What do you mean by spearpoint ?
The main menu is a mission file. You need to create your own, add a camera, and play your music by script. Check on Youtube, you'll find video talking about it
what's the config value that dictates the amount of force required for a unit to be ragdolled? there must be one since nudging a unit slowly with a vehicle doesnt ragdoll until a certain speed
Obviously there is a minimum but there's no guarantee that it's config controlled. It could very well be pure engine stuff.
Mm.. could be, or perhaps in ragdoll config, but i checked it and couldnt really see any relevant property there
mayhaps it could be exposed for config though? 
Onto the long list of feature requests 🫠
hey guys im hoping im nearly their with this config been busy with other things does this look good or bad right direction or nah?
- It should be
config.cpp. - Do the
CfgPatches. - I think you either need to do the
CfgVehiclespart differently or just not have it at all.
Helmets don't require a CfgVehicles entry; they're not vehicles.
You could use a CfgVehicles entry to make an Editor/Zeus placeable container object which contains the helmet, but that would be done differently.
Uniforms do require CfgVehicles because they are partly vehicles, but helmets don't.
Uniforms do require CfgVehicles because they are partly vehicles
I hate everything about reading this
🙈
houses are vehicles too
and trees and rocks
It’s easier to list the things that aren’t vehicles in a3 haha
helmet is not
but when on ground its inside an invisble vehicle
vest is same
but backpack is a vehicle 
but when on ground its inside an invisible vehicle
does anyone know how to put attachments in the config file, im trying to put susat scopes on an L1A1 & an L85
Just a random question about animation source for guns (relevant for a future project). Can a single vechile gun trigger multiple animations? So let's say I want a cannon to have a recoil animation, but also want it to count down a ticker in the interior based on rounds left and want it to activate a red light when empty, is that possible? I remember I had difficulty with something similar in the past so best to check now before it gives me a headache and learn I can't do it.
Just goes in the weapon config, usually you have the normal gun without any attachments be visible, and then have pre-set up versions for AI spawn with that are scope 1'd
will check it out, thanks!
there are muzzle indexed sources for various vehicle weapon animations
so yes they can be used on multiple animations
does anyone know what can cause my airfield to end up like this? 🥲
for a test i just copied all the stratis airfield positions, but shifted them somewhere else
That image isn't telling me whats wrong
meanwhile actual stratis:
since i did not change rotation of the points, just moved them somewhere else while having them all keep the same relative positions, i'm not sure what broke
ilsPosition obviously seems to be the start point, but i must be missing the end point
I had to redo mine from scratch, i just had this issue on sidewinder
The image from this part, I remade these markers in 3den in that configuration, and then was just moving them to fit my airfield and copying their position into my config. I think the issue was I got one of the taxiOff or taxiIn arrays reversed
hm. i wrote a script to do marker export, so they shouldnt be wrong. i'll double check
also, do i misunderstand something or are the 02 / 20 markers on stratis wrong
Wrong how :/
ok never mind, i got it wrong. it's the magnetic heading, so 20 becomes 2 and 200 becomes 20
If I had a trigger that played a song, say it was 3 minutes in length, but I only wanted it to play for 1 minute - how would I go about shortening it?
ok, fixed it. my ilsDirection array was broken
What'd be the "proper" base class for just a sci-fi terminal thing? I've heard you shouldn't use house for like random props (though I forget the reason)
Nothing special about it, just res/geo/land contact. So I'm guessing like Thing?
NonStrategic maybe? Or find the closest equivalent prop in the editor and use config viewer from advanced dev tools to see what it inherits from
Yeah couldn't find anything similar so wasn't sure
What exactly is "NonStrategic"?
I've seen it before but wasn't sure what it meant
I dumped out NonStrategic and Thing from arma to notepad++ and did a lil compare, and its just a lot of... litle things? NonStrategic is probably for buildings, since its default editorCategory is EdCat_Structures, while Thing is more for objects since EdCat_things. Same deal for NonStrategic simulation type is house, thing is thing. Thing does not have a DestructionEffects class by default.
And between Strategic and NonStrategic the only difference is the editor category and the 'cost' attrib which I think is for Zeus placement budget maybe
It is yeah, though pretty sure it's also been fully removed from A3
Thanks though, probably gonna use NonStratetic
Is your object meant to have PhysX or be static? Just curious
Seems like most things derive from Items_base_F and if you wanted it to have no physX interaction I've tricked it before by just doing simulation = "house"; lol
Static yeah
Semi-related, anyone know what handles the "Edit vehicle appearance" option appearing? I have a bunch of screen variants and was going to use that to let people change them, but it doesn't appear
The TextureSource randomization is working when they're spawned, I just can't open the garage for them
Hmm seems to only work on vehicles, so I guess I have to try something else :P
I've made a faction that overall works fine, however one of the vehicles I'm using is the RHS Tigr (unarmed). The vehicle works in the faction fine, but spawns with a RHS unit in the cargoTurret position. I've gone back and used some previous cargoTurret inheritance examples here, but what I've come up with isn't working. I'm sure my syntax/inheritance is off, but I've run out of (my already non-existent) coding skill to solve this. Any recommendations? Code to follow...
{
.
.
.
class MRAP_02_base_F;
class rhs_tigr_base: MRAP_02_base_F
{
class cargoTurret;
class turrets;
};
class rhs_tigr_vdv: rhs_tigr_base
{
class cargoTurret;
class Turrets : Turrets
{
class cargoTurret_01;
};
};
class rhs_tigr_m_vdv: rhs_tigr_vdv
{
class cargoTurret;
class Turrets : Turrets
{
class cargoTurret_01;
};
};
class rhs_tigr_m_msv: rhs_tigr_m_vdv
{
class cargoTurret;
class Turrets : Turrets
{
class cargoTurret_01;
};
};
.
.
.
.
class GATOR_PLAMC_YJ2080: rhs_tigr_m_msv //tigr here
{
faction="GATOR_PLA_2021";
side=0;
displayName="PLAMC YJ2080";
crew="GATOR_PLAMC_Rifleman_Veh";
typicalCargo[]={"GATOR_PLAMC_Rifleman_Veh","GATOR_PLAMC_Auto_Rifleman"};
class Turrets : Turrets
{
class CargoTurret_01: CargoTurret
{
gunnerType = "GATOR_PLAMC_Auto_Rifleman";
};
};
};```
When doing the above, the RHS unit is no loger there, but when I tell an AI to get into that cargoTurret position, he's stuck standing up.
if you re-inherit from CargoTurret - you need to re-apply everything that RHS changed in CargoTurret_01 🤷♂️
Just inherit from RHS's cargo turret
Oh, I thought I read earlier you had to go back farther than that... Okay, so does that mean I get rid of everything in the initial CfgVehicles class list except the rhs_tigr_m_msv and then put what I have in the new vehicle class? I think I did that earlier and it didn't like it.
I know what you said makes perfect sense, but for coding you have to talk to me like I'm a mentally challenged 4 year old.
As you've already expanded down to CargoTurret_01 for rhs_tigr_m_msv, it should work if you just change the class CargoTurret_01: CargoTurret line to class CargoTurret_01: CargoTurret_01
Thank you! That worked.
Anyone know of any issues if a vest adds protection to hitpoints that aren't defined?
I'm adding some extra armor to the legs, and adding classes for the left/right leg for ACE. Testing without ace doesn't give any errors or seem to affect the damage
class HitpointsProtectionInfo: HitpointsProtectionInfo {
class Chest: Chest {
armor = 20;
passThrough = 0.2;
};
class Diaphragm: Diaphragm {
armor = 20;
passThrough = 0.2;
};
class Abdomen: Abdomen {
armor = 20;
passThrough = 0.2;
};
class Legs {
armor = 2;
passThrough = 0.2;
hitpointName = "HitLegs";
};
class LeftLeg: Legs {
hitpointName = "HitLeftLeg";
};
class RightLeg: Legs {
hitpointName = "HitRightLeg";
};
};
when you say "Do CfhPatches" and CFGVehicles do you mean repeat the process under those labels?
No, your file literally says "**YOU MUST PUT THE MAIN HELMETS MOD IN THESE QUOTES**", so do that.
Don't have any CfgVehicles part at all.
cool thanks
can I somehow config a helmet so that it has integrated night vision?
no
can I config a helmet so it has a light?
NVG is toggled by having something in the NVGoggles slot. That is the only way to add night vision to a unit.
can I config a helmet so it has a light?
no
hmmmm...can I config NVGoggles to have a light and night vision?
Well, you press N to toggle it on and off.
so not possible without scripting?
NVGoggles are always toggled. What's the question?
I want my soldier to have night vision and a headlight so he can choose between what fits the situation better
headlights are not possible period.
You can't script cone shaped light sources
And you can't attach stuff to directional bones (you can in VBS)
So rotating the head would not follow the light source
hmmmm that's sad....thanks anyways 😄
Yeah. This has been attempted multiple times already.
Is there any sound that would play permanently on a unit without it being triggered? I wanna add an ambient sound to a unit essentially
I.e an idling engine noise but... on a person
So you can't declare a light on the NVG item ? Even with scripting ?
anyone know how to add options to my vest for example vest only belt only etc
yeah ik how


