#arma3_config
1 messages · Page 15 of 1
Okay, I will try my best to explain
From the beginning
In my Addons folder, I have multiple parent and children folders.
One of them is Addons\ADF_Air\adfrc_apache\config.cpp
Another one is Addons\ADF_Core\config.cpp (this config and the folder have sensors.hpp)
I want to #include sensors.hpp without needing to have that file in the apache root folder
At the moment I have #include "\Addons\ADF_Core\sensors.hpp" as the line, but it fails to find it because it keeps wanting to find \ADF_Air\adfrc_apache\Addons\ADF_Core\sensors.hpp
This is obviously not where it is meant to be going
Well, I think you're misunderstanding what exactly is the P Drive structure. Please allow me to take a few...
Okay :) I have been using AddonBuilder recently because of these errors but really want to move to using Mikeros
If you convert Arma 3 folders in it, they will make folders like
P:\a3\3den
P:\a3\3den_language
P:\a3\air_f
[...]```
Yep, I have that
So your point, I mean your “making P” part is correct it seems
you would need the actual real path to the file in the pbo
However, yeah as HG said, the P location represents where the PBO's path, aka PBOPREFIX
So would need to go #include "P:\@ADFRECUT\Addons\ADF_Core\config.cpp"?
Which means, if you place a folder like
P:\UrMod\Foo\Bah\Yeah\config.cppAnd crunch Yeah, will make a PBO with the PBOPREFIX UrMod\Foo\Bah\Yeah and the game recognizes the config is located in UrMod\Foo\Bah\Yeah\config.cpp
Okay I understand now thank you very much, I will try this quickly with the Core pbo and then try to pack the ADF_Air folder
So like, in the first place, P Drive SHOULD not have the actual pbo or such, but only its files and folders. Therefore, having @ folder or Addons is very strange, I don't mean you cannot but that indicates you might misunderstood the concept is
Since I'm not really good at explaining what my brain thinks, sorry if you're simply confused but hope it works for you
Okay:
- have only project files (*.cpp, *.hpp, *.p3d etc)
- Have Mikeros pack and send PBO to another place such as
X:\testing\@modname\addons - Test that as a local mod in Arma, make changes as needed.
Is that correct?
I think 2 is wrong
Let me explain further about what is the difference between Mod and a PBO
I am so sorry for mis-understanding
Nada no problem. We're all here to try to help and at least you're better than bunch of them since you are trying to listen to us
Oh yes of course, you guys are the gurus after all. This is actually using the Apache from A3 Atlas lol
Worst dudes are simply ragequit after we explain and don't listen and try to answer no question then removes everything and taunts me
Anyways...
Mod (sometimes it is called Addon): it is made from bunch of PBOs, as you can see in the Arma 3 game folder, it looked like
@Mod\Addons\PBO2.pbo
[...]```
And what you load is @Mod there ingame
Yep, I understand that
And P Drive, as I said, just should contain files. Let's say, a P Drive is a PBO Library, not Mods
In this case, will make a PBO Yeah.pbo and you can place anywhere you want, even Arma 3\Addons (you shouldn't though) or any other Mods' addons folder, will simply work unless the PBO is simply badly made
Yep, I still understand what you are saying
So who is misunderstanding might be me 🙃
Maybe? I will give a more simple example
So like, you can
G:\SteamLibrary\steamapps\common\Arma 3\!LocalAddons\@YourAwesomeMod
as the Output Folder in PBOProject, (Yeah this is what I actually use) will generate
G:\SteamLibrary\steamapps\common\Arma 3\!LocalAddons\@YourAwesomeMod\Addons\Yeah.pbo
and @YourAwesomeMod is now ready to load
Looks like we are, sorry
That's okay, I am not the best at explaining what I mean
so
Wait, I will actually show this better
I have the following file structure
- ADFRECUT
- Addons
- ADF_Air
- adfrc_apache
- config.cpp
- adrc_c130
- config.cpp
- ADF_Core
- config.cpp
- sensors.hpp
Oh that's smart way to show the structure lol
Okay I hope this explains
sensors.hpp is just definitions
I just want those definitions to be inherited in the config for the apache
So Addons in this root is located in P?
I have it as P:\ADFRECUT\Addons\...
Hm
I fixed up my example to show
While PBOProject tries to crunch folder you tell, it will look every files that the folder requires. hpp or any other things too
They must be located in P properly, and not to mention that, the correct path too
So the only way is to put sensors.hpp in the root of the config?
I just wanted to try and optimise file size by having one PBO that kept all the basic definitions.hpp files in it
If the config requires
MyMod\Bra\Bra\thing.hpp
and your config is located in
BestMod\Foo\Bar\config.cpp
it will cause no problem, actually. Where exactly the included file is not a concern, as ling as it is in P
It is very weird that it is not working then, I will try to re-organise and remount my P drive
Just, just in case - what config tries to load the hpp? Whats are both path?
I will show the path
Config is located at:
P:\ADFRECUT\Addons\ADF_Air\adfrc_apache\config.cpp
Config requires
P:\ADFRECUT\Addons\ADF_Core\sensors.hpp
What's the PBO prefix for ADF_Air btw?
It looks there is no PBOPREFIX than the folder structure itself?
But how about ADF_Core?
I just added Prefix to both of them
what did you set it to? ADFRECUT\Addons\ADF_xxx?
Oh no, I just set it to ADF_xxx
Best practice to do it your way?
I actually do like
- P
- plp
- plp_projectA
- config.cpp
- plp_projectB
- config.cpp
- data
- something.paa
this
- plp_projectA
shrugs
And not really having manual PBOPREFIX
I don't make binarized mods personally so I'm not even sure if the binarization has any dependency on the PBO prefix.
Hmm
what's the actual include statement that's breaking here?
I would like to hear the same, with Noisy and your current log
I just want to know what path TO use here
is this the part where I say use github + hemtt?
#include "\Addons\ADF_Core\sensors.hpp" --> Doesn't work
#include "\ADF_Core\sensors.hpp" --> Doesn't work
#include "ADF_Core\sensors.hpp" --> Doesn't work
It'd be "\ADFRECUT\Addons\ADF_Core\sensors.hpp" if it's not using the PBO prefix
That worked
Hence people normally include all that crap in the PBO prefix so that it matches, I think.
Thankyou very much
Otherwise you have different paths for binarized and non-binarized and it falls apart under pressure.
Things might be simple as that 🙃
Can you please explain the $PBOPREFIX$ system? If I just have \ADFRECUT\Addons\ADF_Core\sensors.hpp in the prefix inside ADF_Core what does that actually do?
Ok, so when Arma actually loads PBOs it's putting the contents into a virtual filesystem based on the PBO prefixes.
Differently to using the cfgPatches class Addon_Name?
Completely separate.
Say your PBO has the prefix x\wibble\addons\core, any files in the root of it will be treated as being at the absolute path \x\wibble\addons\core\
$PBOPREFIX$ files just tell that pboproject utility to set the PBO's prefix attribute to that. If you use addon builder then you don't need them because you feed the prefix on the command line instead.
Point of a P drive is basically to match that virtual filesystem that Arma creates on launch.
Yeah that makes sense
I am actually re-organising my X drive (used solely for modding and P drive) but now I cannot mount the drive ;-;
Just want X:\ProjectDrive to be my new P drive folder
You'd need to unmount the old one first :P
How would I fix this @chilly tulip ?
[WARN] [WorkDrive.Startup.CheckUac]: 0x30098001 STARTUP_ELEVATED_NO_PARENT: Elevated process without parent.
No idea. I never actually made a P drive myself. Didn't need to.
Yep this is workdrive. Mounting the new folder isn’t working
I think you want to Mikero's one to mount and extract
Not Arma Tools? Okay 🫡
Yeah, Arma Tools are always unreliable
Is there a Mikeros tool that does this?
The warning's about permissions (you would probably need admin permissions to mount a drive). The very limited documentation is not clear on how you're supposed to run it.
What a pain >_<
If it was easy to use I’d probably use it
P drive is pretty essential for Object builder to work right though. Lets keep in mind there are many ways to make modding that have different requirements.
For config modding it's not as much a requirement, but for models and terrains it is since the tools are designed around it.
Is there somewhere within Mikeros tools I can get pboProject to include .jpg files? It’s for my editorPreview
Yes there is a list for excludes in the settings. Make sure jpg is not there
Not in the exclusions but it can’t find the .jpg (I am using the absolute path now)
It’s really just one thing after another. I keep getting cannot read registry key HKEY_LOCAL_MACHINE/Software\BIStudio\BinMake
After it fails to binarise
If it reports missing file the the path is not correct
The binmake thing is inherent issue from tools install and pbo project works around it, it does not affect anything
Okay I’ll have another look in the morning
I'm trying to recreate the classic "bow tie" fragmentation pattern of rockets (65 - 120 degrees), is there any way to force the submunition fragments into that slice of a cone? or is it one of those things that ArmA can't do?
Was trying to add a cooldown to a UserActions for a vehicle, but keep getting a Error Generic error in expression, but it all looks to be correct.
Error in .rpt
15:08:13 Error in expression <eOn this and (time - (this getVariable ['BNA_KC_EMP_lastUsed' 0])) > BNA_KC_Vehi>
15:08:13 Error position: <'BNA_KC_EMP_lastUsed' 0])) > BNA_KC_Vehi>
15:08:13 Error Generic error in expression
Config
// Defined elsewhere
#define QUOTE(CODE) #CODE
class ActivateEMP
{
condition = QUOTE((ace_player == currentPilot this) and (isEngineOn this) and ((time - (this getVariable ['BNA_KC_EMP_lastUsed', 0])) > BNA_KC_Vehicle_empCooldown););
statement = QUOTE(this call BNAKC_fnc_ActivateEMP;);
};
hello, Q: need some help sorting out the config and/or criteria in order to correctly classify whether a compatibleMagazines for a given weapon class. it is mostly working but is failing to properly categorize primary from secondary magazine slots. DM me perhaps for a bit more in depth orientation on the patterns behind the code, but the algo here is otherwise pretty straightforward I think.
https://github.com/mwpowellhtx/KP-Liberation/blob/rewrite/v0.98/s35/Missionframework/modules/0456_inventory/fnc/fn_inventory_compatibleAccessorySlots.sqf#L151
have done a couple of adjustments but still not quite there as the following screenshot illustrates...
https://pasteboard.co/1sBqNjFqQlTs.png
any insights would be greatly appreciated. thanks...
the algo is loosely based upon the ACE virtual arsenal bucket-ization approach.
focused on the weapon class, compatibleMagazines, in particular.
Its better for you to post the code itself, BUT:
this getVariable ['BNA_KC_EMP_lastUsed' 0] shouldn't there be a comma between the name of the variable and the default value of "0"?
Wait there is a comma there
(this getVariable ['BNA_KC_EMP_lastUsed', 0])
There wasnt before you edited so that was my guess.
That's not what I had edited
there was no comma in the .rpt log, so thats why that was my guess. Now that you've posted the config, lemme take a quick look to see if anything jumps out
Hi I am back with another quick question, probably for @wintry tartan or @chilly tulip to answer lol
If I use addonRootClass in my cfgPatches for any folders within another folder (for instance in the structure I have in this reply), can my absolute pathing just be from that root folder down?
Forgot to select the reply whoops
I never know what it does actually 🤔
I just saw it in the OPTRE files I have, thought it would be handy to include in child folders for a main PBO
So it would go (for me)
- ADF_Air.PBO (with its own config)
- adfrc_classname (with its own config with root as ADF_Air)
I think that changes pathing
I'm not so sure it does.
I’ve just learned that all it does it inherit meta data from CfgPatches for the child folder
Hello fellows, am I correct in assuming classes with no base class cannot be inherited?
i.e if I have
class myfunnyclass;
class 1 {
class 2: myfunnyclass {
myfunnyvalue = 2;
};
};``` i cannot edit `class 2` without redefining everything, right?
should be no need to redefine everything
in current setup class 2 should inherit stuff from myfunnyclass
wut
to inherit stuff in the same config: hpp class myfunnyclass; class 1 { class 2: myfunnyclass { myfunnyvalue = 2; }; }; class new1: 1 { class new2: 2 { otherfunnyvalue = 42; }; };
to edit class2 in the separate config you pretty much need to repeat all of what's in the original here: hpp class myfunnyclass; // extern to use as a base class class 1 { class 2: myfunnyclass { // opening { means you need to state a base class myfunnyvalue = 3; // redefine here }; }; 
Hello, is there any eventhandler for opening the Zeus interface?
Do you have CBA?
Yes I do
Still never did find out what was up with this, wasn't a missing comma since it's clearly present in the config (although the .rpt doesn't have it for some reason)
Odd, I just put the code into a function and it worked fine
Does anyone know why my textureSources aren't working? The liveries don't appear in the available list for any faction, here's the config
`class vn_wheeled_car_base;
class vn_wheeled_m151_base: vn_wheeled_car_base {
class TextureSources
{
class PSR_MDF_M151
{
displayName="MDF (Jungle)";
author="Hyena";
textures[]=
{
"\PSR_Data\skins\SOG\MDF\Jungle\M151\vn_wheeled_m151_01_co.paa",
"\PSR_Data\skins\SOG\MDF\Jungle\M151\vn_wheeled_m151_02_co.paa",
"a3\data_f\clear_empty.paa",
"a3\data_f\clear_empty.paa",
"a3\data_f\clear_empty.paa",
"a3\data_f\clear_empty.paa",
"a3\data_f\clear_empty.paa",
"a3\data_f\clear_empty.paa",
"a3\data_f\clear_empty.paa",
"a3\data_f\clear_empty.paa",
"a3\data_f\clear_empty.paa",
"a3\data_f\clear_empty.paa",
"a3\data_f\clear_empty.paa",
"a3\data_f\clear_empty.paa",
"a3\data_f\clear_empty.paa"
};
factions[]= {};
};`
Meanwhile my config for the M41A3 works exactly fine
`class vn_armor_tank_base;
class vn_armor_m41_base: vn_armor_tank_base {
class TextureSources
{
class PSR_MDF_M41
{
displayName="MDF (Jungle)";
author="Hyena";
textures[]=
{
"\PSR_Data\skins\SOG\MDF\Jungle\M41\m41_ext01_co.paa",
"\PSR_Data\skins\SOG\MDF\Jungle\M41\m41_ext02_co.paa",
"a3\data_f\clear_empty.paa",
"a3\data_f\clear_empty.paa"
};
factions[]= {};
};
};
`
Did you set the textureList[]?
the m151 has
textureList[] = { "PSR_MDF_M151", 1 };
and the m41 has
textureList[] = { "PSR_MDF_M41", 1 };
it's not just that the livery doesn't automatically apply, it doesn't appear in the list at all
I've managed to use hiddenSelectionsTextures to manually apply the livery to the M151 but I want it to appear in the virtual garage
and yes I've tried manually defining factions in textureSources
I'm also having similar issues with other vehicles, despite others working fine
this is what my main issue is
as you can see the M151 livery isn't in the list for some reason
Well if you're trying to add texture sources to another vehicle, you should inherit the TextureSources class
Or are you trying to completely overwrite it?
Ideally I want the liveries to be selectable for all renditions of that vehicles on top of the already existing ones from SOG
You're overwriting VN base classes
so if I wanted I could apply it to the one in my faction or the US Army variant if I really wanted to
How come the m41 works but the m151 doesn't?
or is it because the M41 liveries are defined somewhere futher down the hierarchy than I defined mine?
After you have loaded your mod, go in game and find the vehicle in the config viewer.
Then have a look at TextureSources to see what the result of your coding has actually done.
I recommend using Leopard's Advanced Developer Tools from Steam, which significantly improve the config viewer.
I'll do that, and I already have that, it's the only reason I stood a hope in hell getting turret inheritance working
I forget how bad the vanilla one is until I try to do something while on my unit's modlist
This is what it should look like without your mod loaded in the M41 BASE class
I see you've cross-posted in the SOG PF discord, and as it's VN specific, might be better to continue over there?
sure
How can you #include a file from another addon?
I tried just doing #include "\BNA_KC_Gear\Macros.hpp" in my second addon; however, that gave me an error on launch saying the file could not be found
including in config? Just have the needed hpp available when binarizing the cpp. Or make sure .hpp is available in-game and don't binarize (and take the loading time penalty) 
Yeah but it is available, it just happens to be in another config
x_Gear
Config.cpp
Macros.hpp
x_Vehicles
Config.cpp
#include "\BNA_KC_Gear\Macros.hpp"
class CfgVehicles...
It's mostly just for some utility stuff, like a getNumber and being able to pass a default value
Just don't want to have the same macros defined in like 10 files
you can #include "..\x_Gear\Macros.hpp" then if you build from common location 
*probably
That just gives an error that the file couldn't be found
hi, in Unsung we have the problem that our artillery pieces have excessive recoil and move from a few meter to (reportedly, not observed) outer space ... The artillery pieces are old fashioned StaticCannon subclasses and have no class wheels physx definitions. I wonder if these are needed (wheels) and if there's a better class to use
werks on my machine with #include "..\includes\meme.hpp" and CfgConvert from A3Tools 
Since when?
Recoil only? not impact explosion effect? We did a change with impacts
https://community.bistudio.com/wiki/CfgMagazines_Config_Reference#muzzleImpulseFactor.5B.5D.3D.7B1.0.2C1.0.7D need to tweak this probably
If the error's on launch then I guess it's not binarized. In that case you need to match the path of the addon prefix.
I don't know, I got the report earlier this morning. Might be broken for some time
Thanks, that seems to be the solution. With cpp muzzleImpulseFactor[]={0.1,0.1}; the 155mm howitzer stays stable
Yeah for statics you'll generally need to lower it greatly or up their mass
the piece was already at 4 tons ...
Hi, complete noob here. Was wondering if anyone knew how to add/code in a suppressor to be compatible/equipable for a certain gun? I'm trying to add a suppressor to a gun from the NIArms mod (PSG1A1). Irl that gun can equip suppressors but in the mod you can't put any on it, and it's bugging me.
if the weapon is not set up for muzzle attachment you cant add it
well you might be able to
but the attachment would appear in the middle of the gun if there is no proxy position in the gun for it
I'd rather have a suppressor than not
I can try to figure out a proxy position after
You cant edit models unless you have sources
Can I still try having a suppressor anyway even if it isnt in the right spot?
sure
Do you know how to do that specifically and teach me how? I have zero clue where to start with that.
Dont know off the top of my head sorry. You would need to learn how configs and class inheritance works so you can create a config file that edits the necessary parts
BI wiki has some info on that but I doubt there is something that complelety explains this specific thing
I've been looking, but honestly speaking the more code I see, the more confused I get lol. I have no idea what I'm looking at.
it is complicatted at first
what you want to do is not exactly the easiest starting point as it assumes you know a lot already
Evening y'all, quick inquiry. I'm looking to make unit configs that will spawn based on a pool of equipment. Similar to how 3CB does their unit randomization. However, i can't read into their pbos to learn and i can't really find any good information to see how i can do it online.
So, what i'm looking to do is create units that will randomly spawn equipment based on a defined pool of gear such as AK-47, FAL, and M16A1 while also having a random selection of uniforms, vests, backpacks and helmets to use.
I know how to define faceware and helmets, however, can i use
headgearList[] =
{
"", 0.7, // Empty array means no headgear nor face wear
"H_FakeHeadgear", 0.9, // In this case, there is no headgear but there is a face wear
"H_HelmetB_light", 0.6, // Formerly member of the first list which had 60% to be selected
"H_Booniehat_khk", 0.6,
"H_Booniehat_oli", 0.6,
"H_Booniehat_indp", 0.6,
"H_Booniehat_mcamo", 0.6,
"H_Booniehat_grn", 0.6,
"H_Booniehat_tan", 0.6,
"H_Booniehat_dirty", 0.6,
"H_Booniehat_dgtl", 0.4, // Formerly member of the alternate list which had 40% to be selected
"H_Booniehat_khk_hs", 0.4,
"H_HelmetB_plain_mcamo", 0.4,
"H_HelmetB_plain_blk", 0.4,
"H_HelmetSpecB", 0.4,
"H_HelmetSpecB_paint1", 0.4,
"H_HelmetSpecB_paint2", 0.4,
"H_HelmetSpecB_blk", 0.4,
"H_HelmetIA", 0.4,
"H_HelmetIA_net", 0.4,
"H_HelmetIA_camo", 0.4,
"H_Helmet_Kerry", 0.4,
"H_HelmetB_grass", 0.4
};
// If the parent class doesn't have the headgear randomization
class EventHandlers : EventHandlers
{
// The function must be triggered to benefit from the randomization, its usage is documented in its header (see link above)
init = "if (local (_this select 0)) then {[(_this select 0), [], []] call BIS_fnc_unitHeadgear;};";
};
to define uniforms, vests, and backpacks? What about weapons, grenades, and magazines?
Any suggestions, tips, or directions on where to look would be greatly appreciated.
Since is just really a scripted solution, you can write one
like with a .sqf?
can i put that into a mod PBO and it not get all... phooey?
im trying to make units for this now glorious equipment mod: https://steamcommunity.com/sharedfiles/filedetails/?id=3020327478&searchtext=
An SQF is frequently included into a PBO. Thing is how you call it and nothing else
i'm working to co-create a invasion of iraq campaign and would like to use this equipment with RHS weapons. i'm probably going to use ALiVE to create the factions
ahh okay
do you have a point of reference that i can review?
CfgFunctions and Functions Library BIKI article
i did see mention of it, but i'm just not the most confident in trying write it
Understandable. Can't write one since I'm outside
no worries mate. i'm still looking at what all there is to work with. would love your assistance on it and i'll be more than happy to credit you into the unit config when published
If i do this:
extCameraParams[] = {0,0,0,0,0,0,0,0,0 };
Would that mean that the 3rd person camera view would be fixed and not move?
Is it even possible?
Just wanted to try something out, is it possible to have multiple extCameraPosition[] ?
and switch between them?
no
Fine, how does the underbarrel gl view work ?
trying to create something like a gun camera
simples way would be to create a scripted camera, attach it to the weapon and switch to its view
or draw its view through PIP
as any config method would require also adding of memorypoints for alternate view positions
multiple memory points in model + hpp discreteDistanceCameraPoint[]= { "OP_eye_50", "OP_eye_75", "OP_eye_100", "OP_eye_150", "OP_eye_200", "OP_eye_250", "OP_eye_300", "OP_eye_350", "OP_eye_400" };
Unfortunately it takes the ability away to interact with anything
The config method would be better i think
How am I supposed to structure my packed addon folder with regards to prefix in addon builder?
The conventional method is that you mirror the unpacked folder structure in the prefix.
Makes binarizing and filepatching a lot easier.
Is this class needed only when I have trid party addons included?
class ADDON {
name = COMPONENT_NAME;
units[] = {};
weapons[] = {};
requiredVersion = REQUIRED_VERSION;
requiredAddons[] = {"ace_common"};
author = "";
authors[] = {"ACE Team", "Glowbal"};
authorUrl = "http://ace3mod.com";
VERSION_CONFIG;
};
is that CfgPatches?
Yes
You need a CfgPatches entry otherwise it won't take any notice of the rest of your config.cpp.
and you'll likely need that for CfgFunctions at least.
Yes, but do I need class ADDON?
That's a CBA-style macro.
where you have a script_component.hpp with COMPONENT defined, and that includes a central script_mod.hpp that sets up ADDON and all the other crap.
You can just hardcode that stuff in there instead.
In which case you replace ADDON with something unique to your addon.
I don't use CBA, I was just lookin in some github source codes for any exmaples, so this probably does not apply for me 😄
this is fine.
in config.cpp, I defined patches, and also this function.
class Other
{
class customInit
{
postInit=1
file = "Functions\Other\fn_customInit.sqf"
};
};
But when I put the pbo in addons or load as a mod through launcher, it does nothing in the game. I am not sure what I am doing wrong.
not enough classes
//FUNCTIONS
class CfgFunctions
{
class TAG
{
class AI_Detection
{
class targetDetected {};
class shouldIgnoreTarget {};
class isTargetInRange {};
class isGunshotHeard {};
class loseTarget {};
class playerFired {};
};
class Stance
{
class stanceChanged {};
class changeCamouflage {};
};
class Other
{
class customInit
{
postInit=1
file = "Functions\Other\fn_customInit.sqf"
};
};
};
};
So maybe I use wrong prefix, or name the .pbo file wrongly, I don't know. 😄
file needs the addon prefix added to it.
Normally use macros for this because it gets quite long.
I don't understand where I should put this prefix.
Ok, so when Arma loads an addon, it puts the contents into a virtual filesystem with the prefix as the base path.
I get this part.
How are you building your addon?
Via Addon builder, source files are in my source folder as shown above. I tried to put "TEST" in the prefix, and also tried to leave it empty. Both build succesfully. Then I tried to put the .pbo file in the Arma3/Addons.
Don't do that. You want to make your own mod folder.
Just copy the structure of some other tiny mod.
I'm not sure what happens if you have a blank prefix but that seems bad.
Every addon get dumped into the same virtual filesystem.
if you had TEST as a prefix then you'd need file = "TEST\Functions\Other\fn_customInit.sqf"
But I don't have to change the actual directories in my source folder, do I?
Once you built the PBO the source folder structure above that doesn't matter.
And what about the other functions in the cfgFunctions? should I add file=TEST... to each one of them?
Yeah, you can add it per function folder rather than per file though.
Why do I even need to do that? 😄 This is silly as hell. I have my addon named, prefix set, tag set, and it still needs something that is virtual added to my non virtual file system path.
It might help to remember that Arma has no separation between mods. Everything shares the same virtual filesystem and everything shares the same config heirarchy.
And the CfgFunctions tag has no relationship to the CfgPatches addon name which has no relationship to the filesystem :P
DAM* 😄 I will print my code on papers and distribute that in physical copies or on github. 😄
Note that you can use config viewer to check that the first few stages are working at least.
I found out that if I uncheck Binarize option (in Addon Builder), the mod is working. But not if I binarize it. 🤔 So I am totally not sure what is wrong.
it doesnt binarize the scripts, only the config
Q: given a 'weapon' (loosely speaking, i.e. evaluating gear types), as I understand it, the path is something like getNumber (_cfgWeapons >> _class >> 'ItemInfo' >> 'type'), correct? is there a wiki page for these enumerated types?
the nearest thing I have starting to look like a wiki reference is here, but not sure if that is enumerated elsewhere...
https://community.bistudio.com/wiki/Arma_3:_ItemInfo_Config_Reference#type
how to completely remove gunner and pilot controls from UAV plane (e.g. UAV_02_dynamicLoadout_base_F) by config ? I would like to make drone controllable only by terminal & waypoints (by AI in it)
Have a idea how to realize this by script but maybe by config it would be better.
wdym controllable? removing 'what' from UAV (anything) plane or whatever?
didn't understand what you ask
not sure you understand how AI works in terms of unmanned assets, so trying to get at that level of comprehension... wdym 'controllable' for starters...
two things you said there tell me "you don't" (i.e. understand it...). first "remove gunner and pilot", second "controllable only by terminal...". that's not how AI works. but I'd be happy to help clarify from there.
one exception to that use case, AFAIK, are things like 'turrets'. players can be present on site and 'enter' those assets. or with AI present can be controlled via terminal. entirely up to the mission maker to decide how that spawns.
when you open UAV terminal after connecting to some UAV vehicle you can take control of it as a gunner or as a pilot. These buttons are in right side of terminal screen. Question is "how to remove possible to control UAV by player from these buttons".
In my case i want to disable any control of UAV by player except by placing waypoints
not sure that's possible without also havin 'AI' in the slots.
I could be wrong, would have to read into the wiki pages for sure.
it is the presence of AI in those slots that enable connecting and setting of waypoints. players may then 'fully control' as you put it, which is to say proxy into one of the slots as well, as desired.
if you don't know the answer you can just ignore it. I am asking in someone who understand this things better than me (it's not necessarily you)
I do know about it, that is what I am telling you. you are barking up the wrong tree. but again, if someone is more well versed than I, feel free to chip in. AFAIK the premise of the question is incorrect.
don't get hung up on words. The meaning of the question is simple
can't set waypoints or anything, AFAIK, without having AI present in the slot. bottom line.
present i.e. 'removing gunner pilot'
and by extension 'fully controllable' i.e. proxying into slots where AI are present.
if there are docs that say otherwise, I do not know about them, don't know what I don't know. but AFAIK that is how it is.
IDK, HTH... good luck and good hunting.
Place an AI in the desired positions and then lock it?
https://community.bistudio.com/wiki/lockTurret
its a script solution but maybe it can be solved by deleting some classes from uav config ? Like a Turrets etc
Put the lock command in the init EH. Doubtful you can do it without scripts as it's not vanilla behaviour.
Got it. Much appreciated for answer!
So you have lockDriver and lockTurret. No idea if it will work the way you want, but easy to find out through experimenting.
I'll check it soon
perfect, it works!
Do you have any ideas what could cause the problem?
Have you looked at the binarise log for messages?
The log which is being shown in Addon Builder window did not report any problems.
Do you have any #includes in your config?
No.
shrugs
check the results in config viewer, see what's different.
Usually what would happen there is that the binarization process would break, not the runtime.
Not sure what I should look for.
Well, what's the first thing that should be working and definitely isn't?
enable extended logging
If the only config you have is CfgPatches and CfgFunctions then just look at those.
You might benefit from the extended messaging present in mikero's pboProject, as Addon Builder is rather basic.
guess is its to do with cfgfunctions as i tend to use file param for every one of them
Not sure what you mean. When I lookup the functions in functions viewer they are just blank pages.
Look at the actual config.
CfgPatches first. If that's working correctly then CfgFunctions.
My CfgPatches class is present and looks the same as in .cpp, so do CfgFunctions.
Are you sure the only thing you changed was the binarization?
ive had binarization fuck up packing when i was first starting out too
was cfgfunctions related
If CfgFunctions is correct in config viewer then I can't see how there's anything wrong with the binarization. Beyond that it's just a matter of whether the function files are where they should be.
show your functions folder/s
class TAG should be class functions (maybe)
then theyre registering as functions_fnc_isGunshotHeard etc 
forgot to disable ping, sorry
Do you have PBO manager or something for examining the addon PBO?
lol
Binarized PBOs should still have the same function files. It doesn't touch those.
Only difference should be config.bin vs config.cpp in your case.
That's a clean mod. 😄
It's a mod that doesn't have any functions in it.
Hey everyone,
When loading up just my mod and CBA, I get the following error:
In my config file, I have the following which is relevant (skipping cfgammo/mags/weapons):
class CfgPatches
{
class RUF_DroneGun
{
addonRootClass="A3_Weapons_F";
requiredAddons[]=
{
"A3_Weapons_F", "cba_jr"
};
requiredVersion=0.1;
units[]={};
weapons[]=
{
"RUF_DroneGun_Tactical"
};
magazines[]=
{
"DroneGun_Battery",
};
};
};
and later on:
class eventhandlers;
class CAManBase;
class CfgVehicles
{
class CAManBase
{
class eventhandlers: eventhandlers
{
class cuas
{
fired = "params ['_unit', '_weapon', '_muzzle', '_mode', '_ammo', '_magazine', '_projectile', '_gunner']; if ((currentWeapon _unit == 'RUF_DroneGun_Tactical') || (currentWeapon _unit == 'RUF_DroneGun_Tactical_Launcher')) then {[_unit, _weapon] call RUF_fnc_cuas}";
};
};
};
};
Error doesn't pop up if you also load up DLC or something, as far as I can tell. So I imagine that I'm missing something in the required addons or something, so DLC overwrites/overrules my config or something.
But honestly not sure. Anybody got any thoughts?
You didn't declare the inheritance of CAManBase.
At least, that's the first problem. The requirements for changing values in inherited subclasses is deeply confusing.
Ah. Yeah, that makes sense for the first problem.
What are you suggesting for potential second problems, though? i thought I was just straightforwardly adding an event handler to the whole class, without having to go the CBA ClassEventHandler route.
How many event handlers does CAManBase have?
oh, just the CBA stuff
Shouldn't be the hardest inheritance problem ever :P
It still does not work. I tried checking integrity of the tools on Steam, run it as admin. Still nothing 😄 Even packing a third party mod does not work. Just an empty file.
what do you have in your includes in addon builder settings
hmm, -include might be broken in the command line addon builder.
UI version works.
Command line works fine with -packonly but I can't persuade it to include non-binarized files otherwise.
-include claims to support wildcards but throws errors if you put a * anywhere.
Not sure what you mean by include.
When I put *.sqf in the first line there it copies the files, is it as its expected? 🫠
Yeah, normally you don't want to binarize scripts
Is it "EmptyCursor" or just "" that you set cursor to in order to remove it?
Can't remember off the top of my head
It's "EmptyCursor"
Hey I'm probably missing something very obvious here but if I'm making a custom crate and do this SQF class TransportWeapons { class _xx_weap_fgm148 { weapon = "rhs_weap_fgm148"; count = 5; }; };It adds the launchers to the crate as expected BUT they're all unloaded. if I add the magazines usingSQF class TransportMagazines { class _xx_fgm148_magazine_AT { magazine = "rhs_fgm148_magazine_AT"; count = 5; }; };then it adds the magazines separate. How do I get the launchers in the crate to come loaded?
Hello i have created and signed a cfg patch workshop item but the signature does not work. When testing with the tool it diplays no errors. Meta data is good and links to workshop etc.. But the signature does not work on server. Any help is appreciated
you need to include the bikey
Bikey is included in keys folder
Are they loaded when you actually place them into the inventory?
Does anyone here know how to make a mod that's just an audio file with a config to refrence the audio file in this init script:
UH addAction ["Play Nowhere to run",{[UH, ["track01", 2250, 1]] remoteExec ["say3D", allPlayers]},nil,1.5,true,true,"","_this in _target"];
i've tried Cfgsounds and CfgMusic and i can't seem to be able to refrence the files
You can add that to description.ext too
https://community.bistudio.com/wiki/Description.ext#CfgMusic
That's probably why then
yea, but i'm moving from using this script (sfgsounds) in a description.ext to a dedicated mod so that large audio files aren't stored in the mission file
if not obvious i'm new to modding lol
It's alright, (most) people here don't bite
There we go, this seems to make sense
Typically you'll want to add a "Tag" to your classnames and CfgPatches, to prevent things from overwriting stuff from other mod.
Could be anything, you could do BR_... for Brain or anything that you think fits.
So the CfgPatches would be: BR_audio_holder_tester, and the music track would be BR_Track01
well at least i know it's detecting the class of track01
You may need an addon path to sounds.
An example is for a description.ext,
And addon you need to use the addon path.
BR_audio_holder\sounds\letter2.ogg
It'd be BR_audio_holder_tester\sounds\letter2.ogg
hmm, i'll check it out
Basically, you add the CfgPatches name as the first part of your file path, basically letting arma know "Start from here when looking for this file"
damn, still same sound not found
could it be possible that the Say3D script specifically needs the Cfgsounds entry and not Cfgmusic?
Oh I didn't realize you were using say3D, yeah it uses a CfgSounds entry
Defines music you can play with playMusic
Yes
Yeah switch it to playMusic "BR_Track01";
And you can use playMusic ""; to stop the music
well i'm not looking at playing music, i'm looking at playing an audio file from a certain object
the script is for playing psyops audio stuff from helicopters
rn i have it working with audio files in the mission file
but you get limited to like a few mb of audio before servers don't boot
Couple of options:
- You can use
playSound3Dto play the sound file directly (doesn't matter if it's music, a sound, etc.) - You can switch your
CfgMusicto aCfgSoundsand tweak the things you need, and then you can just usesay3Dto play theBR_Track01sound
Using playSound3D is directly easier, but if this were multiplayer, having it as a CfgSound would also let you play the sound through the Play Sound zeus module
Well i got it to work with the play3d stuff just by using a cfgsounds thingy
what would be the benifit of changing it to playSound3D?
Quicker to write, that'd be about it
If you've got it working now, there's really not much of a reason to
👍
realy realy appreciate it as this stuff isn't easy at all lol
it gets easier after a few years
In some ways more depressing, once you realise that it's not just your newbie fault that stuff doesn't work :P
me after spending 6 months working on a movement system within sqf only for it to not work if non local because of a lack of angular velocity commands
What's the easiest way to find out which addon is at fault for emptying out the MainTurret config? When I've got all my mods loaded, I end up with a "missing file" error for the MainTurret config.
I've looked at the rpt file and the last one that seems to be updating it is an RHS one, but I doubt it's at fault. Will I have to check the configs of every addon that updates it, one by one, to see which is breaking it/loading one mod at a time? Or is there an easier process?
leopards advanced developer tools let you see which addons modify the class in config viewer
unfortunately seems youll have to remove mods until you find the culprit
Yeah I was afraid of that. One by one it is.
Yeah, you can only tell which mods are involved, not which one does what.
Yeah would've at least narrowed it down
I guess I'll have to check all the addons that update that class, according to rpt file. Gonna take a while lol
configSourceAddonList might be quicker than the RPT file.
I'm not familiar with that.
private _addons = configSourceAddonList (configFile >> "MainTurret")```
though fairly sure leopard probably just runs that to get it anyways
yeah
Thanks! I'll give that a go. I'm trouble-shooting my unit's modpack
i tend to just build modpacks from scratch every 6 months or so
See, I'm not usually the guy who does this for my unit, but he claims that I know more than him about all this now.
Either he doesn't know much, or he's trying to politely delegate 🤣
im too much of a control freak prefer to do this stuff myself whenever i run units
how many mods have you got in the pack out of curiosity
is it at least below triple digits
Inb4 writing your own netcode for that 
setvectordirandup isnt local effect else i would
(needs turrets attached so cant do local vehicles)
heh, no.
People need their gear and their drip is what I was told when I asked to cut it down lol
dear lord
Not including DLC and maps, maybe close to 70-80 gb?
my modpacks tend to be ~1gb per mod on average for milsim
When I was testing my mod, and just had that and CBA loaded, I was like wait, Arma can load up in 15 seconds? Had I forgotten this?
kjws mods and ace are all you ever need 🗿
Not to sound rude, but sounds like "not just the clowns but the entire goddamn circus" kind of modpack
its milsim of course its a circus
Oh for sure. We play as a PMC so people like dress-up and all weapons.
And we also have retextured vehicles, etc etc so it gets big.
returned: []
🙃
I'm ****outtaluck.
..huh
wait until you try load my medical mod where i have to have 500 classes for each type and volume of fluid
With 0.002 granular weight?
im not going into that level of fidelity yet.
damn rv4 with no dynamic item info association
Right? Why I'm confused haha
yeah its probably some addon doing mainTurret {};
I don't think there's supposed to be a MainTurret in config root anyway, although that doesn't explain why configSourceAddonList isn't returning anything.
MainTurret is normally something you declare inside class Turrets in a vehicle.
Except rpt screenshot calls for configFile>>CfgVehicles>>MainTurret and config viewer and code are for configFile>>MainTurret 
This rpt shot
Oh, I remember vanilla config viewer often bugged out and put MainTurret in config root actually.
Doesn't mean it's really in there.
Use ADT, it doesn't do that.
I tried both the code KJW typed out and with configFile>>CfgVehicles>>MainTurret
and cfgVehicles>>MainTurret is also empty
I've mostly took that for config viewer selecting parent class instead of actually opened one
That's royally derped
It probably shouldn't be in CfgVehicles either :P
Yeah, hence why Im pulling my hair trying to figure out which addon is doing all this heh
inb4 hpp class CfgVehicles{ class MainTurret; class Broken_Tonk { class MainTurret: MainTurret{}; }; }; only half-declares CfgVehicles/MainTurret 
🧠 filter the vehicle classes to find MainTurret that inherits from the broken one. And configSourceAddonList that vehicle
Yeah Im guessing it'll be an error like that. My unit's tech guy half-patching something.
they shouldnt be your units tech guy for much longer
Nah, he normally does great work. Just small typos here and there. Why Im trying to help by bug-hunting.
How can I filter in the config viewer?
something like this in the debug console, i'd say
private _broken_tonks = toString {
private _classes = "true" configClasses _x;
_classes findIf {inheritsFrom _x isEqualTo (configFile >> "CfgVehicles" >> "MainTurret")} > -1
} configClasses (configFile >> "CfgVehicles");
_broken_tonks apply {[configName _x, configSourceAddonList _x]}```
lol returned []
another idea would be to get said tech guy to search for "class MainTurret;" in his files 🙃
is really not trying to make it easy
Hmm. If he's changing some of the values within class Turrets of that vehicle, does he need to declare class MainTurret like this:
vanilla doesn't have MainTurret in config root
so MainTurret shouldn't be mentioned in config root 
Yeah that's why it jumped out at me.
But im still fairly new at config-making, so I wanted to double-check.
just give him Leo's ADT, that can export config snippets with proper inheritance
class UAV doesn't have NewTurret in vanilla, so it probably shouldn't be declared as external base class as well
class UAV inherits NewTurret from AllVehicles.
ViewPilot/ViewOptics are inherited from Plane
AnimationSources/Components are inherited from Air
so that entire class looks like hot mess 
lol his response is that that .pbo is one of the first configs he did from scratch
So "that entre class looks like hot mess" checks out 😂
the advice about ADT and exporting still stands. Way to free brain cells even when you understand what's going on there
What happens if/when you inherit stuff in a messy way like that? (just for me to understand)
class a: b{}; sounds like it can be useful in certain usecases, though
class a: a {}; even
so, just for example, if you try to get UAV to inherit NewTurret from Plane rather than AllVehicles, what does that do?
It changes the properties to whatever they are in Plane, no?
it has nowhere to inherit from, because Plane doesn't have it's own NewTurret
ah
so all reads point to emptiness of space
you never need to do it
So in this case, I imagine it was patched in by one of the addons? (Again, just trying to understand, not contradicting)
if you enter configFile >> "CfgVehicles" >> "Plane" >> "NewTurret" into debug console - it would likely spit out bin\config.bin/CfgVehicles/AllVehicles/NewTurret
Oh, so its inheriting it from AllVehicles
class 1;
class 2: 1 {
class a;
};
class 3: 2 {
class b: a {
class z;
};
};
class 4: 3 {
class c: b {
class y: z {
//you get the idea (i hope)
};
};
};```
not once do you ever need to {}
yes, it's inherited, not owned
yeah. But then you go hpp class 5: 3 { class c: c {}; }; and when you create your next addon you can go just hpp class 3; class 5: 3 { class c; }; class 6: 5 { class c: c { muh new totally needed changes }; }; 
and now imagine this stuff with NewTurret that's actually 15 levels of inheritance deep
you dont need to go that deep
if plane has newturret you can inherit off plane
only exception is if any class is deleted later down the tree
but you can't class SecondaryTurret: NewTurret { something}; if you're only inheriting from Plane. You need NewTurret external declaration to be actively present in your new config 
yeah, so
class planeparent;
class plane: planeparent {
class newturret;
};
class mynewclass: plane {
class newturret: newturret {
myfunnyvalue = 1;
};
};```
cool
and you end up with broken inheritance because plane doesn't have newturret of its own 
last time i've checked it didn't, let me retest 
why the "newturret: newturret"?
Is that just saying, the newturret for mynewclasss, inherit from plane's newturret?
just changing newturret info
else you would just leave it
this is how ive been doing config for the past year, 90% of inheritance "issues" are caused by incorrect requiredaddons
I didn't wanna hijack the channel, but I definitely appreciate all this. I've been learning how to do configs mostly by trying to do/reading others (after checking out articles in Biki) so this helps a lot.
//file 1
class a;
class b: a {
class 1;
};
class c: b {
class 2: 1 {
ilovemonkeys = 1;
};
};```
the tree could be infinitely long and you would only need to go that far back to edit one nested class
dont worry about hijacking the channel barely anyone understands inheritance
still, appreciate it. For my published mod, I just found a couple of weapon configs and went off that for structure, and then found what values I wanted to change+changed them. Worked reasonably well. Only have had to patch it once for a bad inheritance 😅
okay, i'm officially talking shit, after actually testing that works. Thanks, KJW
i never actually have issues with config or scripting not working nowadays, its only either rv4 stopping me (height matters, capital ships) or i dont know what to do (any time i message #arma3_scripting)
it is quite a peculiar situation to be in
i am a very creative person but a very bad mathematician
it creates an interesting set of circumstances when trying to script anything involving vector manipulation
(so of course i am off to do a physics degree)
as a consolation piece: the way i've done shit isn't likely to break stuff and is just excessively wordy
using {} in config is how i empty classes.
class a: a {}; doesn't empty anything, though. Just creates an unnecessary class that delegates all access to parent 
we had this discussion a while ago and concluded {} would empty classes in some instances
or it mightve been with john
either way is a red flag for me if i extract the config
I thought {} just prevented inheritance, not necessarily emptied it completely.
it empties in some cases
possibly not in full inheritance tree
but either way is completely unnecessary
yeah, so empties.
if a class isnt inheriting properties then its just got the properties you have added
eyyy, third opinion. Class inheritance is hell of a mess anyways 🤣
all the history digging made me skip the latest part of conversation 
🤷 no reason to do {}; in most cases where it is used
welp, ADT exports are suboptimal then 😄
indeed, i just use them as a visual and do it myself
my bottom line would be: if it's automated (and as such requires literally 0 effort) and doesn't break anything - the only benefit of further manual optimization would be saving couple of bytes of drive space and, possibly, some nanoseconds of loading time :3
and readability/neatness
Trying to figure out why my custom muzzle doesn't have any sound effects when firing.
Reloading and dry sounds work fine, but firing does not.
Context: Making a "fake" ugl since the normal UGL_F values cause the cursor to appear in the incorrect place as well as messing with the camera while ADS'ing
class Rifle_Base_F;
class BNA_KC_Launcher_Muzzle: Rifle_Base_F
{
displayName = "Launcher";
magazines[] = {};
magazineWell[] = {};
nameSound = "";
changeFiremodeSound[] = { "A3\Sounds_F\arsenal\weapons\UGL\Firemode_ugl", 0.316228, 1, 5 };
reloadMagazineSound[] = { "A3\Sounds_F\arsenal\weapons\UGL\Reload_UGL", 0.562341, 1, 10 };
drySound[] = { "A3\Sounds_F\arsenal\weapons\UGL\Dry_ugl", 0.562341, 1, 10 };
recoil = "recoil_pistol_light";
recoilProne = "recoil_prone_pistol_light";
cursor = "EmptyCursor";
cursorAim = "gl";
textureType = "semi";
autoFire = 0;
class Single: Mode_SemiAuto
{
textureType = "semi";
recoil = "recoil_pistol_light";
recoilProne = "recoil_prone_pistol_light";
// For AI units
maxRange = 400;
maxRangeProbab = 0.05;
midRange = 200;
midRangeProbab = 0.7;
minRange = 30;
minRangeProbab = 0.1;
nameSound = "";
sounds[] = { "StandardSound" };
class BaseSoundModeType
{
closure1[] = { "A3\Sounds_F\arsenal\weapons\UGL\Closure_UGL", 1, 1, 10 };
soundClosure[] = { "closure1", 1 };
};
class StandardSound: BaseSoundModeType
{
begin1[] = { "A3\Sounds_F\arsenal\weapons\UGL\UGL_01", 0.707946, 1, 200 };
begin2[] = { "A3\Sounds_F\arsenal\weapons\UGL\UGL_02", 0.707946, 1, 200 };
soundBegin[] = { "begin1", 0.5, "begin2", 0.5 };
soundSetShot[] = { "UGL_shot_SoundSet", "UGL_Tail_SoundSet", "UGL_InteriorTail_SoundSet" };
};
};
};
i'd say it doesn't use "Single" at all because i there is no modes[]= array to tell it to do so 
Seems like a good guess, didn't realize I hadn't set it
Yep that's exactly what it was
Is there a way to make a parachute ignore wind?
After counting to three thousand, don't pull the cord? 😉
Wouldn't take much convincing, it's for a crate lol
If certain unit is controlled by the headless client, can I modify that units parameters by running a mod on the headless client (in a vanilla game server)? Or must the mod be run on the server? I guess this won't require other vanilla clients connecting to that server to have the mods?
Looking to extend a weapons range
If you mean AI-related range values then I'd expect it only matters where the unit is local.
If you mean changing muzzle velocity/air resistance then that should be a global config change, because bullets are locally simulated everywhere.
aren't all but the shooter-local bullets purely visual, though?
Thanks. Only max range, cuz it seems that the projectiles just disapear before reaching 3km (on Metis launcher, Arma 2 OA)
I guess I'll try it out
Probably used for firedNear as well.
and audio effects.
but yeah, it's not necessarily a big problem if the bullets behave a bit differently on non-local machines.
Metis will be a global projectile so that's another matter entirely.
they are, depends on projectile types, missiles are global IIRC
but bullets are local.
We did an agent based AI test one day and the script that was handling them was cheating a bit and adjusting the bullet velocity to fire towards players (as they were unable to aim properly) and we ran into an issue where on the clients it was looking like they're shooting into the sky.
It was glorious, 150+ "AI" units fighting with great frames.
pasting this from another channel
moving to another project rq is there a flag to make it to where the crew of a vehicle is deleted or killed on vehicles death?
I know there's an event handler but
Basically my situation is i have "drones" and the AI used for drones seems to be too passive (They set themselves to careless even when being actively shot at and just hover over enemies)
But they dissapear when the vehicle pops
I am currently using opfor marksman as the pilot and gunner but when the vic pops they jump out. even though i have the crash protection set to(if the wiki is right idk) kill them on impact
Image
it says lower = better protection, so i have it set to "1" which theoretically should kill them right?
my apologies
the "image" towards the bottom lol
For more info
I already tried inheritance with the UAV_AI and while it solved the getting out problem, it didn't solve the aggression problem 😦
negatory
So, which of the many things in all these configs I'm reading has to be present to make a custom faction on BLU that uses all vanilla equipment
like, can you not just extend a NATO unit into being a custom faction and override his stuff?
You can
sorry i just laid down but now im back on my pc so there is more to that than just "you can"
so what is your intention, do you want a new unit or a new group?
and by faction do you mean the big 3?
or sub faction
I.e.
bluefor> CTRG
Opfor> CSAT
independent> IAF
ect?
I do mean faction, as in like CTRG or FIA
okay so you just need to make a Cfggroups
huh
i tried to send an example but wasnt able to
class CfgGroups
{
class East
{
class My_Faction
{
name = "factionname";
class My_Squad
{
name = "my squad";
#pragma region -- Specialist Teams --
class my_SquadPatrol
{
name = "Patrol";
side = 0;
rarityGroup = 0.30000001;
class Unit0
{
side = 0;
vehicle = "MyUnit";
rank = "CORPORAL";
position[] = { 0,0,0 };
};
class Unit1
{
side = 0;
vehicle = "myUnit";
rank = "PRIVATE";
position[] = { 5,-5,0 };
};
class Unit2
{
side = 0;
vehicle = "myUnit";
rank = "PRIVATE";
position[] = { 10,-10,0 };
};
};
};
};
};
there
obviously you'd change yours to
class West
And side = 1
for bluefor
Okay, but what if I wanted them to have different guns?
Do I still need the giant block of text where you have to define EVERYTHING about the unit?
nah you could just inherit everything and just change the gun
though im sure like all things arma you're gonna probably have to tinker with it
i reccomend checking out the template files for a character config file. you're answers should be in there
Characters_f also has a config file for reference if you've downloaded the a3 tools and unpacked the game files an such when setting it up
Okay, thanks
Do you know if it's possible to inherit everything off of a BLUFOR unit and then change it to be OPFOR?
Inheriting just work like that
I was hoping but you never know with arma
it might look fine but then some weird inheritance quirk runs out of the bushes at you with a knife, screaming
I thought I know how an inheriting in config in Arma works
Yea it will inherit everything and you can just say side=0;
Is there a way to set 3DEN attribute to a given value for a specific object?
Say I have an attribute that defaults to false, but I want it to default to true for X object
I did find set3DENAttribute, but that doesn't seem to work in an object init.
What attribute are you talking about? And where are you trying to set it?
In game init
Or config init?
Event handler, post event handler?
Hi, I'm working on an ammo mod but the ammo when i fire it bounces? I'm wondering what part oif the cfgammo plays into that?
awesome ty
Caliber and speed of the shot.
I'd recommend using some existing ammos values as base and tweaking that
eh, maths are simple enough. Double caliber with same speed = twice the penetration. Same caliber with double speed = twice the pen. 
Besides being more organized is there a benefit to having several seperate pbos and configs instead of just one? Like each vehicle being a diferent pbo instead of one pbo with all of the vehicles
3DEN attributes, i.e. when you double click on an object
The object's init in config
Just organization, but you'd probably want to use "sub-addons" rather than different pbo files for each vehicle.
There's a 2GB file size limit on pbo's.
Oh really?
Never heard of there being a filesize limit, the more you know
Trying to make a custom 3DEN attribute, and while it does appear in the menu, the value is reset whenever the menu is closed.
class Cfg3DEN
{
class Object
{
class AttributeCategories
{
class BNA_KC
{
displayName = "Keeli Company Aux Mod";
collapsed = 1;
class Attributes
{
class isJetpackRefuelStation
{
displayName = "Jetpack Refuel Station";
tooltip = "Set if the object should have a refuel action attached to it.";
property = "BNA_KC_isJetpackRefuelStation";
control = "CheckboxNumber";
expression = "[_this, _value] call BNAKC_Jetpacks_fnc_addRefuelActions";
condition = "true";
defaultValue = 0;
};
};
};
};
};
};
// fn_addRefuelActions.sqf
params ["_object", "_showAction"];
// Prevents creating an ACE action that will never be shown
if !(_showAction isEqualTo 1) exitWith { systemChat "_showAction is 0" };
...
The script works fine when directly called on an object, so it appears to just be a mistake in the config
Hello, is there some way to change the displayName or descriptionShort of a class through a sqf script?
No
Alright, thanks.
does anyone know why this is happening?
I can see steam... right there... it is most certainly running
unless I've gone fucking mad
What is minimally required to define to be able to use engineOn sqf function on a vehicle defined in CfgVehicles? In other words, what is required for a vehicle to have an engine which can be turned on? (I mean without inheriting from additional classes)
Out of curiosity, what happens if in a config.cpp file, you set up the class inheritances perfectly, but DONT specify anything in “required addons” in CfgPatches?
Im looking at a few mod configs and thats what theyre doing. Is it an actual problem, or more like “bad form, but doesnt cause any errors” sorta thing
IME you generally get away with not specifying vanilla dependencies, as it loads the Arma PBOs first by default. I'm not sure if there's a case where this breaks down.
We forgot to set them for a couple of the Antistasi addons and I think some guy managed to break it by dumping them into the Arma addons folder.
So as long as its vanilla dependencies, probably fine but otherwise can be a big problem?
for anything else you're rolling the dice.
simulation type of a vehicle with an engine
How do I set that? Do you mean: "simulation = "tankX"; ?
for example. though it may be better to explain what exactly you are trying to make. It usually ends up with better answers
I want to make AI units to be able to target an object from CBA_A3, classname CBA_B_InvisibleTargetVehicle, name: "Invisible Target (Vehicle)", using launchers like Javelin (launchers targetting via IR), for unknown reason it doesn't work with it and I suspect its because the heat signature is not triggered/increasing because engine for that obj is always off.
configfile >> "CfgVehicles" >> "CBA_B_InvisibleTargetVehicle"
["CBA_B_InvisibleTarget","B_TargetSoldier","TargetSoldierBase","StaticWeapon","LandVehicle","Land","AllVehicles","All"]
"simulation = "tankX"; doesn't work, its set like that by default for that obj
yes well if it never does anything the engine probably never gets on
or the thing never gets hot
because it never does anything
you can try setting its temperature though
I recall there is a script command for that
👍 that it was
but still it doesn't work, I also checked and just empty, newly placed vehicle is possible to be targeted by Javelin but Invisible Target not :/ (I have custom mod which added irTarget = 1; to config of Invisible Targets too)
This is crazy, I also tried by adding other random configs which I thought might help but still no luck:
_generalMacro = "Tank_F";
tBody = 250;
radarTarget = 1;
radarTargetSize = 1.2;
radarType = 8;
irScanGround = 2;
irScanToEyeFactor = 1;
idleRPM = 550;
htMin = 60;
htMax = 1800;
engineLosses = 25;
enginePower = 205;
engineShiftY = 0.1;
engineStartSpeed = 5;
Hello everyone, a complete and utter noob to ARMA 3 modding here. I've tried looking at various modding guides, but they all seem to start off from the deep end, and I'm getting overwhelmed. Please be gentle with me. ❤️
What I want to do: As simple as possible mod, that adds a magazine with a specific type of ammo to a gun.
Why I want to do this: Due to mod interactions I guess, a specific Soviet body armor (6B5-19 and variants of it) is completely unpenetrable to many if not most 5.56x45mm rounds (literally hundreds of rounds won't cause a target to go down), with only a few actually working. I have that specific type of ammo that works available in 30rnd mags for AR-15 type rifles, but there is no mag with that ammo for the M249, making it completely ineffective against the Soviets, unless you score head or groin shots.
I have the IDs of the gun, type of magazine I want to use, and the ammo type needed, but I have no idea how to even get started on creating a mod that would add it, let alone publish it on Steam Workshop (I play with friends and that would be the easiest way to share). Do I use an external program for it? Do I use the editor for it? Do I make every file by hand? Literally no clue where to even get started.
Im typing on my phone, so will stay very general.
But general idea is:
You want a text document titled config.cpp where you’re going to have four broad categories of things:
-cfgPatches: this is the first part of the file and it tells the game what your mod includes, what you need for this mod to work (“Required Addons”) and what this mod will be adding to the game.
-cfgAmmo: this defines the type of bullet (its class) and the properties of rhe bullet;
-cfgmagazines: this defines the magazine, what kind of ammo it uses (the one you defined in cfgammo) and number of bullets, if theres tracers in the mag, etc
-Cfgweapons: here, you wont be creating a new weapon but rather just specifying that the new mag you created is compatible with the M249 you want.
Since youre not making new models or anything, your mod could be as simple as this text file. Now, for what exactly goes in each section and how it works, look up the relevant BI wiki articles on cfgammo etc. or, look at how some of the mods you use, or some of the vanilla weapons, do their configs
After you have your textfile ready, you’ll “pack it” into a .pbo, which is the type of file repository Arma uses, by using either the Bohemia tools (available in Arma Tools in steam) or by downloading thirdparty software like ProjectPBO.
Then, use the Publisher in Arma tools to upload to steam workshop
Thanks! I'm trying to find an example of a config.cpp from another mod to have a look at, but I'm only seeing mod.cpp and meta.cpp files.
They’ll be inside their .pbos. When you download a mod, youll get several .pbos that go into your !workshop folder in your steam install arma folder.
You’ll need a program like PBOManager to open the .pbo.
Some files may be “binarized”, which is Arma’s way of transforming the files to the format their engine can read. To unbinarize, you can use the Arma tools on Steam. Not all files (models, for example) can be unbinarized but config files generally either arent binarized, or can be unbinarized
You can also take a look at rhe default arma files, see if you can find configs for weapons there. If i recall correctly, might be under the data_f folder
Massive, massive thanks. ❤️
This should get me rolling, I might be back later if I run into a wall again, but you've been immensely helpful already.
Just one last note, found PBO Manager's github page, said it was deprecated in favor of pboman3, does this sound legit to you?
You also prob wont need to build stuff from scratch in your mod. If you already have the type of bullet you want, you might not need much in cfgammo, as you might only need to create the mag and tell it to use the ammo that the AR-15 rifles you have already take.
Yeah, that was my idea, just copy the currently existing mag, save it under a different name, then modify it to use the ammo I want.
Dm me if you want, and later today I can help you more direcrlt through that
Im still new to configs, but I should be able to help you wirh this
What timezone are you? I'm about to head to bed because it's past 2AM here, but I could get back to you tomorrow?
Sure!
hey can somone help me with my confige and scripting ?
This channel is for config not scripting, and as I said, don't ask to ask
Ask your question. We’ll try to help
somone got to was big help pointed me right direction
Need some help/advice with targeting with vehicles and weapons. I have a vehicle and some weapons setup with 360 anti radiation sensor and LOAL enabled on the weapon(ammo) but 1. I can't make the weapon lock (r key) anything not in front of the aircraft and 2. the weapons won't track anything outside its forward view in LOAL mode.
Am I missing something or is a feature/bug?
is it on a turret?
What'd be the easiest way to make ammo (vehicle) armor piercing?
I'd assume just increasing the caliber, hit and/or typicalSpeed?
*decreasing typicalSpeed 😛
Oh really?
Hadn't seen typical speed, guessed it was an "average" speed of the bullet
caliber = how much geometry it can pass through. Bullet loses speed when penetrating stuff.
hit = how much damage it would inflict at or above typicalSpeed. When the bullet is slower - damage is reduced.
Makes sense
hmm. Does caliber do anything against body armour, or just vehicles & scenery?
Question: Is it possible to have separate animations/exits for actions GetOut and Eject?
Issue was fixed - I was packing with PBO tools and not Arma tools addon builder.
via event handlers yes
Hi, is it possible to adjust object model scale via config? (something like setObjectScale but via config)
or how to make an object to be visible to AI but not be visible when rendering it? i. e. invisible target from cba but it has to have model defined to be targetable via launchers like Javelin
no
No, sensors are set in the vehicle/ammo body(nose)
is it even used beyond being a multiplier for the penetration calcs?
Thing is, for body armour there isn't really a penetration calc. It's just doing velocity-modified-hit / armour-on-part
Body armour's just extra "health" on the human so penetration shouldn't be a factor.
class cfgammo
{
class M_Titan_AT;
class DB_AT_Dummy: M_Titan_AT
{
soundFly[]=
{
"",
0.13095701,
1
};
indirectHit=350;
indirectHitRange=40;
manualControl=0;
timeToLive=1800;
flightProfiles[]=
{
"TopDown"
};
submunitionAmmo="ammo_Penetrator_Titan_AT_improved";
submunitionInitSpeed=1250;
lancet_speedArray[]={75,43,7,1000,1};
};
};
class cfgMagazines
{
class Titan_AT;
class DB_customAT: Titan_AT
{
displayname="Custom AT";
ammo="DB_AT_Dummy";
mass=300;
author="DB";
scope=2;
};
};
Hello everyone, there is a config, I want to know why in the virtual arsenal I can put DB_customAT in a backpack, but I can't put it in a ammo box/vehicle cargo in 3DEN?
Thank you for the answer! I'll look at some eventhandlers.
i was using the Metis Nature mod, when i noticed that when you place the terrain clutters of it (it allows the player to use terrain clutter in the editor), they actually cast shadows.
But the in-terrain clutter doesn't.
Would there be some way to enable the terrain clutter to cast shadows?
yeah placing large amounts of such objects is likely going to have hefty fps cost
not really
you have very simple scene there
just single type of object in empty map
not really real use case
i can do it on a normal map as well.
Ground Clutter is already present on the maps, and it has a draw distance and density level of it's own (present on the terrain config).
With mods (or the current devbranch version) we can also push the shadow distance to higher distances than before (3000 meters to be exact), and the FPS impact it does is less than one would think.
Also, the ground clutter is actually affected by shadows anyway, it just doesn't cast shadows of it's own.
anyway, i have no idea if it's even possible to make the ground clutter cast shadows, or what reason it doesn't.
But i guess it would be cool if it is possible.
performance
would be cool to atleast have an option to allow it to cast shadows.
Like with the newer graphic settings where we can push the draw distance to 40 kilometers just for the fun of it.
Ground clutter Simple Objects usually don't have shadows
hi everyone, can anyone help me a little?
so i made a mod some time ago, one that add a Balaclava with armor on it, it is added to the Helmet section, now i need to add some lenses to it that goes together with the Balaclava, it needs to be added as a facewear item, i tried adding cfgGlasses and the model named Armored_Balaclava_Goggles to the mod file like this:
here is my cfgGlasses:
but it seems im missing something or doing something wrong, ingame the lenses/goggles does not appear
Why you have AiO config there?!
i think it was inside the sample i used
There any way to show the number of bullets in a magazine in the descriptionShort?
Don't think there is but checking anyways
Hello, I am currently trying to implement FFV for a vehicle and while I have met much success, I am currently stuck in a position where the unit:
- Can fire when turned in
- Using
inGunnerMayFireputs the first person camera at the feet of the unit.
- Using
- Can turn entire torso around while turned in (as opposed to just the head)
Does anyone know any solutions to these problems?
{
class cargoTurret_01: CargoTurret
{
proxyIndex = 1;
proxyType = "CPCargo";
gunnerName = "FFV 1";
primaryGunner = 0;
primaryObserver = 0;
lodTurnedIn = 1200; // -1 Default, 1000 Gunner, 1100 Pilot, 1200 Cargo
lodTurnedOut = 0;
memoryPointsGetInGunner = "pos_gunner_01";
memoryPointsGetInGunnerDir = "pos_gunner_01_dir";
gunnerGetInAction = "GetInHigh";
gunnerGetOutAction = "GetOutHigh";
gunnerDoor = "";
gunnerInAction = "interior_seated_rtm";
gunnerAction = "exterior_ffv_rtm";
personTurretAction = "exterior_ffv_rtm";
animationSourceHatch = "hatchTop";
gunnerForceOptics = 0;
outGunnerMayFire = 1;
hideWeaponsGunner = 1;
isPersonTurret = 1;
viewGunnerInExternal = 1;
initOutTurn = 0;
minOutTurn = -90;
maxOutTurn = 90;
initOutElev = 0;
minOutElev = -20;
maxOutElev = 75;
class HitPoints {};
class TurnOut
{
limitsArrayTop[] = {{45.0, -84.1}, {45.0, 80.7}};
limitsArrayBottom[] = {{-16.8, -86.0}, {-12.8, -50.3}, {-15.3, -13.2}, {-11.6, 43.6}, {-10.0, 77.7}};
};
class TurnIn: TurnOut {};
};
};```
I made firing modes for a mortar to cover its full firing range. It works in the virtual arsenal and flat areas but once elevation is in play, there are massive gaps where it cannot fire. Is this a try until you die kind of issue or is there a general way things work? (Limited by mortar elevation of 15 degrees up and 0.5 down. All from 45 degrees, so it has 17 firing modes to cover from 250m to 1600m).
So I now remember that altitude differences matter, but if the ranges are stacked back to back then why are there gaps?
How do i enable or disable vehicle customization in a config? In this game i want to add a CUP Blackhawk without the Filters and Extra equipment.
Hey, when making a cfgammo, im having the issue of my rounds bouncing off armour when i need it to be penning. What should I do?
ACE_bulletLength = 75.5;
ACE_bulletMass = 110.16;
ACE_ammoTempMuzzleVelocityShifts[] = {-26.549999,-25.469999,-22.85,-20.120001,-16.98,-12.8,-7.6399999,-1.53,5.96,15.17,26.190001};
ACE_ballisticCoefficients[] = {0.67000002};
ACE_velocityBoundaries[] = {};
ACE_standardAtmosphere = "ASM";
ACE_dragModel = 1;
ACE_muzzleVelocities[] = {1000};
ACE_barrelLengths[] = {763.7};
airFriction = -0.00042;
audibleFire = 20;
caliber = 20;
cost = 40;
dangerRadiusBulletClose = 16;
dangerRadiusHit = 40;
explosive = 0;
hit = 200;
indirectHit = 10;
indirectHitRange = 40;
penetrationDirDistribution = 10;
suppressionRadiusBulletClose = 10;
suppressionRadiusHit = 14;
typicalSpeed = 400;
tracerScale = 20;
tracerStartTime = 0.050000001;
tracerEndTime = 20;
visibleFire = 20;
visibleFireTime = 3;```
is there some existing shot that does penetrate the armor you test with?
nope, every itteration bounces, even if I use explosive
testing mod list is ace, CBA, rhs & my ammo
RHS and ACE are not very compatible if I've understood right
there isnt much documentation on what each ace ballistics are
there are references but no indept as to what each one does
at least from what i can find diging in ace wiki and git
even removing the ace ballistics stuff its still bouncing
If I rememeber right RHS armor values and setup is different from vanilla so you will need to look into RHS weapons to find something that behaves how you want and work from there
Thanks for this but it doesn't appear to work. Just kicks me straight back out of the vehicle when attempting to get into the position.
it is an example you will need to fit to your use case
Yes, I am aware, I have modified it for my specific vehicle with no success.
Probably a model thing, missing getIn mem points or proxies or viewGunner
Is there a way you can make a grenade "Stick" to whatever you throw it at?
scripting
class CfgAmmo
{
class YourGrenadeParent;
class YourGrenade : YourGrenadeParent
{
class EventHandlers
{
init = "_this select 0 addEventHandler ['HitPart', {[_this select 0, _this select 1] call BIS_fnc_attachToRelative}]";
};
};
};```
If you want to make it stick to only certain objects you can make it call a function that checks whether the target is valid and if it is, executes the attachToRelative function.
Thank you.
My pleasure.
Isn't defining a HitPart EH as class possible? 
If I recall correctly CfgAmmo was only supporting init in config, at least officially.
As there was something being used by the LoW training mine but it was never documented.
ah, AmmoHit (don't use it)
Although that documentation sounds more like "init can only be used in config" than "only init can be used in config"
nah, deleted/hitPart don't seem to work from config, so init it is 
Check:
- you have a CARGO proxy, index 1, in both a res LOD and Pilot/Gunner/Cargo LOD
- you changed
lodTurnedIn = 1200;andlodTurnedOut = 0;to numbers matching the LOD's you have - you have memory points with names matching the get-in dir and pos configs
- you have changed the 3 rtm's for valid animations (either from vanilla A3 or your own custom static/FFV)
- you have changed the animationSourceHatch name to match the name in model.cfg for the hatch opening, or you leave it blank
- you have checked that your vehicle has a class Turrets to inherit and a sub-class CargoTarget
Thank you, I'll make sure to check all those things. Appreciate the answer!
I'm not sure if this is the right place but if you add a new ammo type/magazine to a weapon will that magazine be displayed from the weapon or will it need a specific model for it ?
most weapons are set up to use magazine proxies
so the magazine is separate model
however you can use existing magazine model
and make a new magazine class
Alright thanks! Do you happen to know the right direction to look to find how to make a new magazine class?
I doubt there is specifig guide for that but its same as any config work
Alright thanks again
What physx value(s) determine how much a vehicle banks during a sharp turn at speed?
I'm having an issue where the wheels on the outside of the turn just can't reach the ground but I'm certain my damper selection is working correctly based on the behaviour when it stops and starts moving
You either have too much lateral roll on the vehicle, or not enough damper movement in the suspension.
will give it a look. Regarding damper movement though, are we talking about the translation range of the damper in model.cfg or a physx value?
both, they should be tied together
the physx config is what the game uses to calculate vehicle response, but the model.cfg and memory points in the p3d are what makes it "look" right
what many people don't know is that the distance between the translation memory points is important
right, but this is the ranges we're currently looking at.
what is the distance in m between the two points making up the wheel_1_1_damper_axis?
I know there's a ruler function, give me a minute to find it
alright i give up. Il play with the values.
weird response to help offered, oh well
No i wasn't trying to insult you
I meant i give up on finding the ruler function
Il play around with the values a bit and get back
you could just ask... is it Object Builder?
Menu ... Window > Measuring
Move Pin tool
0.470 i think
The other way you can check, is that the grid squares in OB are 1m each.
So if you have a 0.47m distance between the axis points, your wheel will move +- 0.3 x 0.47m on full damper deflection (not 0.3m as you probably expect)
The easiest solution to this is to make your damper axis = 1.0m
right i see. Makes sense
That will then start matching the visual animation of the model in game with what the physx believes is happening via code
giving it a test now
btw, +-0.3m is quite a large suspension movement for many vehicles
So in turns its doing the right thing now
only 1 issue
obviously settles down correctly but yeah
lmao
have you modelled the wheels/suspension in the p3d to be correct for 50% compression (ie midway between fully up and fully down)?
Am i interpreting it correctly that the offset/compression/droop values should be the distance between the points or were the original values alright?
A2 Humvee from samples
just chucking the values to 0.1 and giving it a test
Are your wheels maintaining contact with the ground now?
yeah
Modifying the values to something like 0.1 has the wheels stick into the ground now (Bound and landcontact im pretty sure is correctly setup)
There are multiple steps to making this work perfectly.
Does you skeleton look something close to this:
"wheel_1_2_damper_land", "",
"wheel_2_1_damper_land", "",
"wheel_2_2_damper_land", "",
"wheel_1_1_damper", "wheel_1_1_damper_land",
"wheel_1_2_damper", "wheel_1_2_damper_land",
"wheel_2_1_damper", "wheel_2_1_damper_land",
"wheel_2_2_damper", "wheel_2_2_damper_land",
"wheel_1_1_steering", "wheel_1_1_damper",
"wheel_1_2_steering", "wheel_1_2_damper",
"wheel_2_1_steering", "wheel_2_1_damper",
"wheel_2_2_steering", "wheel_2_2_damper",
"wheel_1_1", "wheel_1_1_steering",
"wheel_1_2", "wheel_1_2_steering",
"wheel_2_1", "wheel_2_1_steering",
"wheel_2_2", "wheel_2_2_steering",```
So you're missing the damper_land bones. Check the A3 car sample
going to give my samples an update in case i changed anything, because im not seeing any damper_land selections in the visual LOD
Only ones i could find are memorypoints in LandContact
Wouldn't any memorypoint in landcontact suffice or does Arma 3's engine specifically only deal with "damper_land"?
It can be called anything, but you're completely missing that bone level
and most mods will follow the tried and tested sample formats, so no reason not to use it
fair
Doesn't seem to have resolved the issue of the sunken wheels, could be that my wheel axis and bound mempoints might be off a little bit. Either way going to bed. Appreciate the assistance
what is the most basic unit config possible (no animations, but follows orders and possibly uses weapons and enters vehicles)? it seems like when i try to inherit from something like MAN it requires setting a lot of variables including moves
i want it to pathfind and move but in a very basic manner, just like float along the path without actual walking/running
basically i want a functional unit that doesnt use/require an animated humanoid model
Soldier simulation uses the animation to move
So it's not possible
There are virtual men that are hidden. You could use those instead
I have a problem with a replacement config I am making, I made a config that replaces the uniforms, vests, & helmets on CSAT units with gear from the Aegis mod development branch. While the config seems to work overall, it only replaces the uniform on the units, leaving the vest & helmet unchanged, with the exception being the Rifleman unit, where the uniform, vest, & helmet is replaced correctly. I have no idea what to do as I use the same layout for all the units, & have tried redoing the config with no success.
Are you 100% sure your requiredAddons is right?
I only have the base game & DLC as required addons, I will try adding the Aegis mods as required addons & see if that works.
hi, when making a cfgmagazines, when hovering over item in inventory it says 5 rounds but my count is 3. What do I need to do to make it say 3 or even have it a custom classs?
{
class CA_Magazine;
class 5Rnd_127x108_Mag;
class AM_MAG: 5Rnd_127x108_Mag
{
displayName="20x102mm Anti Material Round";
displayNameShort="20mm AM";
ammo="20mm_AM";
initSpeed=980;
count=3;
tracersEvery=1;
mass=50;
};
};```
i believe descriptionShort string in class is what's shown as a hover description
yep perfect, many thanks mate
{
class Default;
class States
{
class RCC_recoil11: Default
{
file="A3S_Recoil\anim\recoil11.rtm";
canBlendStep=1;
looped=0;
speed=-0.60000002;
mask="recoil_static";
minPlayTime=0.15000001;
relSpeedMin=0.80000001;
relSpeedMax=1;
duty=0.69999999;
leftHandIKBeg=1;
leftHandIKCurve[]={1};
leftHandIKEnd=1;
rightHandIKBeg=1;
rightHandIKCurve[]={1};
rightHandIKEnd=1;
weaponIK=1;
enableOptics=1;
head="headDefault";
showWeaponAim=1;
disableWeapons=0;
disableWeaponsLong=0;
leaning="empty";
aimingBody="empty";
aiming="aimingDefault";
forceAim=1;
limitGunMovement=1;
headBobMode=2;
headBobStrength=0.1;
canPullTrigger=1;
canReload=1;
enableDirectControl=0;
enableMissile=0;
weaponLowered=0;
variantsPlayer[]={};
variantsAI[]={};
interpolateFrom[]={};
InterpolateTo[]={};
interpolationSpeed=8;
interpolationRestart=2;
ragdoll=1;
ignoreMinPlayTime[]=
{
"Unconscious",
"DeadState"
};
ConnectFrom[]={};
ConnectTo[]={};
soundOverride="";
soundEnabled=1;
showHandGun=0;
showItemInRightHand=0;
};```
Im getting this error all the time
15:05:20 Warning Message: No entry '.rcc_recoil11'.
15:05:20 Warning Message: '/' is not a value
Is there a fix to this ?
Trying to make a satchel charge. But it is not showing up in the menu under explosives at all. However, It is in game becuase I can give it to myself via a command. Is there something special I need to do to get it to appear in arsenal?
baseWeapon or something like that iirc
trying to make custom music play in the menu, where would i start?
or just needs scopeArsenal = 2
this is a open source template
I’m currently running into a no entry bin/config error when I’m in game for a smoke effect I’m testing. I’m trying to tweak the GAU8 smoke cloud to be more realistic, in my CfgCloudLets Ive kept all relevant values in respect to vehicle speed and positioning but Ive replaced values regarding smoke with that of hydra missiles because that smoke trail is more fitting to what the GAU produces. Is what I’m trying to do even possible or am I just messing something up ?
What's the full error line?
I have a "how to read no entry error" reference in the pinned messages
Warning Message: No entry 'bin\config.bin.GAU8_SmokeCloud'.
This is all I’m getting in the RPT
Means class gau8_smokecloud does not exist
So your addon breaks the config somehow
Is there anything I can do about that or should I just call it a loss ?
Imagine sharing your config. It will help you
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.
This does not explain anything. Post the entire
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.
Yes there is no GAU8_SmokeCloud
GunParticles does not require CfgCloudlets but the set of effect that is located in the root of config
class AAMissileExplosion
{
class LightExp
{
simulation = "light";
type = "ExploLight";
position[] = {0, 1.5, 0};
intensity = 0.001;
interval = 1;
lifeTime = 0.25;
};
class Explosion1
{
simulation = "particles";
type = "ExplosionParticles";
position[] = {0, 0, 0};
intensity = 3;
interval = 1;
lifeTime = 0.25;
};
class SmallSmoke1
{
simulation = "particles";
type = "CloudMedLight";
position[] = {0, 0, 0};
intensity = 1;
interval = 1;
lifeTime = 1;
};
};```It should look like this, where `simulation = particles` is where CfgCloudlets is required
That makes sense, thank you very much
If you were still having issues, did you make a muzzle for it and add it to the Throw weapon?
class CfgWeapons
{
class ThrowMuzzle;
class GrenadeLauncher;
class Throw: GrenadeLauncher
{
muzzles[] += { "YourMuzzle" };
class YourMuzzle: ThrowMuzzle
{
displayName = "Top Right Menu Name";
magazines[] += { "YourGrenade" };
};
};
};
class CfgMagazines
{
class HandGrenade;
class YourGrenade: HandGrenade
{
ammo = "...";
// ...
};
};
Which properties affect a weapon's audibility, and how does a muzzle affect these values? Is there any documentation where I can learn more about these parameters or some example?
As in how far AI can hear it fire or something else?
Yeah, I would like to use these properties to calculate how far it can be heard.
I think the ai values are in the ammo, I don't remember there being weapon equivalents but granted I've also mainly done mag/ammo configs recently
I have consulted ChatGPT on this matter. 😄 And it told me that there are: audbileFire, audibleDistance and multiplierAudible.
audibleFire: This parameter determines how far the sound of a weapon's firing can be heard by other entities in the game world. It's a value that affects the overall audibility of the shots. A higher value for audibleFire means that the sound of the weapon firing will be audible over a greater distance. It represents the "loudness" of the shots and how well they can be heard by characters (AI or players) within a certain radius. audibleDistance: This parameter specifies a maximum distance beyond which the weapon's sound will not be audible, regardless of the audibleFire value. In other words, it sets a cutoff point for how far the weapon's shots can be heard. If the distance between the shooter and the potential listeners (AI or players) exceeds the audibleDistance, the sound won't be heard by them.
Can't really advise using chat gpt
I kinda don't believe it a word, but that's what I got for now. 😄
But yes, audibleFire is a cfg ammo property
I can't seem to find anything on audibleDistance
If you want to check the max distance that a gun firing can be heard, go into the weapon's firemodes and check the StandardSound class, it will have the sound file, volume, pitch, and max distance.
Could missing "requiredAddons" in CfgPatches cause missing entry errors in the RPT log?
Only with some bizarre inheritance-breaking also being in the mix, i guess
Tried giving a name to my CfgPatches but the Required Addons tab in a mission didn't seem to update with it, is there something else you need to change as well?
Hi all, just a quick question about CFGSounds as i'm getting an error. When i boot the game i get the message that line 29 is already defined and i'm not sure what exactly is wrong
and line 28 when i clear that open space
Well, yes, you define sounds array multiple times. For once error message means exactly what it says.
Just remove the second sounds[] = {}; line, you have it stated twice
oh, thanks!
@wintry fox Did you find sensitivity and sentitivityEar in CfgVehicles? IIRC these are pretty important parameters for the detection calcs.
So, I've got a couple of questions about config sytax and stuff.
In an addon (not mine)'s config, I've got this:
cackles
Two questions:
a) In the class UAV: Plane, they're declaring "class NewTurret". Does that work? Or should it be: Class UAV>>class Turrets>>class NewTurret?
- I thought classes like MainTurret/NewTurret should always be within class Turrets, right?
I did not, I was out of the house and scrolling because I was bored, was just looking at the config references
b) later, in class UAV_02_base_F: UAV>>class Turrets, they have class MainTurret: New Turret {};
--Is the {} after New Turret breaking anything? I'm going by the BIKI article on it, but it seems to me that this is telling the class MainTurret to NOT inherit anything from NewTurret, right?
I think at best it's a no-op?
(again, just trying to understand nuances of configs. In these two points, things dont look right, but just trying to see if Im on the right track)
what do you mean? Like, no changes?
Yeah. But in general this stuff is poorly documented, counter-intuitive, inconsistent and extremely slow to test. I don't personally have a strong grasp of the correct syntax.
lol got it. Then, mind explaining the "cackles"? 😛
like, what jumped out at you in the screenshot I posted?
oh, whole thing is "typical config override disaster"
I'm not even sure what they were trying to change as it cuts off before then.
It's like entire page of boilerplate, half of which is hopefully unnecessary.
Oh, some stuff about pylons and things later on. My unit's modpack has a missing "MainTurret" entry error, so I'm trying to track down where it might be coming from, taking a look at the .pbos for the mods we have.
(can't track down via configviewer to see which addon is the last to modify)
Missing MainTurret in what vehicle?
I read that as "My unit's backpack" and was very confused, was about to say that's something I haven't heard of
Why can't you use the config viewer?
No, that's the thing: one of our .pbos is adding a MainTurret entry into the base config, and also into CfgVehicles.
Yeah, but that won't generate an error on its own? I remember this issue but I don't remember the actual problem.
Some actual vehicles are also getting broken, right?
uhhh, I haven't tested all vehicles on our modpack to see which/if any are broken. Currently just trying to cut down on errors in rpt and when I open up editor/join a mission
Ah, because something's adding a blank mainturret and other code assumes that everything in CfgVehicles is valid.
Also have similar errors where I think a blank entry is being added into CfgWeapons too
I don't see anything in that pic that would create a blank CfgVehicles/MainTurret anyway.
Yeah no, in the first screenshot I sent, it was more about me trying to understand the config itself, not tracing the errors. I just wasn't sure what was going on with the class X: Y{} there in the first place.
But also, still got the first question, too. Config has:
Class UAV:Plane
{
Class newTurret;
Shouldn't it be:
class UAV:Plane
{
class Turrets
{
class NewTurret
As in... don't I need to declare the parent of NewTurret (aka class Turrets), rather than just declaring class NewTurret directly?
NewTurret is initially defined in the root of AllVehicles.
shrugs
It's not only things in class Turrets that inherit from NewTurret.
There is also CargoTurret. Maybe others.
Oh! Got it. So you don't need class Turrets to declare NewTurret.
I'm not sure if pre-declaring NewTurret in UAV is valid given that it's actually defined in AllVehicles. Maybe that's acceptable.
I don't think the brackets in class Child : Parent {} have any effect, as the special case of adding brackets is just for removing the previous inheritance.
class Child {} would break the previous inheritance chain.
(unlike class Child;)
I just want to have flags on a flag pole.
If anyone knows what the heck to do, shoot me an @
I have the textures necessary and ready to go, I just need to make them as objects I can place in-game. I keep trying to google the answer but all I ever get is how to set flag textures. No, I want them as pre-made objects I can place in Eden and Zeus.
Making banners would be nice too.
You set the flag texture with a script command:
class YourFlag: FlagCarrier
{
displayName = "Your Flag Pole";
scope = 2;
scopeCurator = 2;
class EventHandlers
{
init = "(_this select 0) setFlagTexture 'YourFlagTexture.paa'";
};
};
Banners are just like any other object, you set the texture for it in hiddenSelectionsTextures
@lunar aurora
Hey people, I'm using an eventhandler to randomize a unit's gear on spawn. The script works fine but whenever someone joins the game, every unit with this event handler has the script run again (and newly spawned units have the script run per players in the game). Is there a way to specify the script to only run on the unit's spawn? Should I use postInit instead?
class FAC_TUR_Rifleman: I_Soldier_lite_F {
class EventHandlers {
class CBA_Extended_EventHandlers : CBA_Extended_EventHandlers_base {};
class FAC_rand {init = "(_this select 0) execVM ""\fac_TUR_AF\TUR_rand_rifleman.sqf"";";};
};
};
Use local to check if which machine has the responsibility for the unit
Also you should to inherit EventHandlers too if you want to rely on CBA
How would I go about using local for that? And are there any real repercussions of not importing cba event handlers?
- No, in the script itself
class EventHandlers: EventHandlers {...};
Ah, okay
How would you go about doing this in sqf? I have been trying my hand at it but I'm not sure what I am doing
local _unit or whatever brings you a boolean true if the unit exists in the computer or false if not, aka existed over the internet
And an unit can be local only for one computer
Was making a user action for people who prefer to use the scroll wheel over ace interact, but I seem to be mixing up what variable should be used for the action/condition.
I know the code works since it obviously works fine for the normal ace action, just need to convert it to a normal action.
class BNA_KC_ACE_CSW_Deploy
{
// ...
condition = "[_originalTarget] call ace_csw_fnc_assemble_canDeployTripod";
statement = "[player] call ace_csw_fnc_assemble_deployTripod";
};
I guess this is more config than it is scripting, since it's what variable to use
So is local _unit a way of making the unit local? Or does it just check to see if the unit is already local?
Latter
And, sometimes an unit does not exist at all on other computers (createVehicleLocal) so this is the way to check if the unit exists
In your current EH, basically executes the init globally
This is why JIP overwrites it
Is there a way to execute the script just once serverside? Maybe I shouldn't use the unit's init?
local should do the trick. An unit can be created in every computer (aka networked) but only once
Not sure what exactly your script contains, but if you put if (local _unit) then {}; or something it is basically done, it makes sure it runs only once and never again
alright I'll give it a go, thank you for the help!
HA!
Finally found the mod/pbo config causing the error, of getting empty MainTurret class within CfgVehicles.
It looks like this:
(I also get errors for missing entries for CfgVehicles>>Commander_out and all the rest I highlighted there)
Instead of being declared in CfgVehicles, they'd need to be declared from a parent class that the mod's new vehicle inherits from, no?
It causes these kinds of errors:
Yes. Though some base classes exist in the config root. But right now it's creating multiple invalid vehicles because they are inside cfgvehicles
Would it make more sense to have it be something like...
cfgVehicles
{
class oldvehicle
{
class MainTurret;
};
class newvehiclemodisintroducting: oldvehicle
{
class Turrets
{
class MainTurret: MainTurret
};
}
}
or some such thing?
Its not my mod, but just wondering how it'd be fixed.
About like that yeah. Also would need to delete the invalid classes
It can be made as a config patch mod on top
Yeah, that made sense to me. I posted on the mod's workshop page, hopefully they'll fix it.
Thanks!
That deletes the invalid classes and changes the vehicle inheritance setup
That would be better yeah
just a question is this bug fixable via config or is it a bug in the model?
#arma3_troubleshooting message
Model
So how do I work out pos10 Params with HUDs? Anyone know?
pos10 Params with HUDs
What is this?
pos10: 2D position on HUD plane of ray, which have angle to previous ray 10 degrees in axes X and Y
From
https://community.bistudio.com/wiki/Arma_3:_Multi-Function_Display_(MFD)_config_reference#Transformation_Chain
Hm, I have zero experience with MFDs
Lol trial and error it is 🤣 until I find a better solution
Why not just use diag exe?
🙃 cause I didnt think about that
That's still wrong. You have to declare external classes where they actually are, and MainTurret is typically created inside Turrets.
Is there a way to disable the simulation of an item after you've dropped it?
IIRC dropping items creates a GroundWeaponHolder not a SimulatedWeaponHolder?
Wanting to remove the "Disassemble" option from a static weapon, trying to delete the class didn't do anything, and emptying it (obviously) gives an error
What did you delete exactly?
Just the assembleInfo class itself
So when you removed that, what did it do when you disassembled it?
It worked as normal, nothing from the class itself was actually removed
Are you sure no other classes are derived from the vehicle you tried to delete from?
Yeah, it's my own mortar I made
Do you need to inherit it first in order to be able to delete it?
You're inheriting the whole vehicle from another mortar, right?
Yep
class Mortar_01_base_F;
class B_Mortar_01_F: Mortar_01_base_F
{
...
};
class BNA_KC_Mortar_Base: B_Mortar_01_F
{
...
delete assembleInfo;
};
Yep that's exactly what it was
I needed to inherit the assembleInfo first
Apparently it just didn't give the error that time
Within the new class?
It wasn't that, it just didn't pop up with the error that time
Yeah I can't convince delete to do anything.
The class is still there, but it doesn't cause any error to appear
So.. I guess it works?
Kinda not really
Blanking dissasembleTo instead does work.
