Config Properties Megalist: Difference between revisions
Line 8: | Line 8: | ||
All configs get merged into one big config in memory when the game starts. Where duplicates exist, which config takes precedence depends on load order - the last config loaded "wins" by overwriting any previous value(s). Load order is determined by mod folder order, PBO name, but most importantly/properly by the "requiredAddons" section of the CfgPatches class. | All configs get merged into one big config in memory when the game starts. Where duplicates exist, which config takes precedence depends on load order - the last config loaded "wins" by overwriting any previous value(s). Load order is determined by mod folder order, PBO name, but most importantly/properly by the "requiredAddons" section of the CfgPatches class. | ||
==How Many Config Files?== | ==How Many Config Files?== | ||
A corollary to the discussion above is that you can spread your configs across tons of little files or ball them up into one big one or anything in between--with some exceptions^ (which are dicussed further below). It is essentially a matter of clarity and ease of editing. Barring the exceptions, there is no iron-clad rule that requires certain classes (e.g. CfgAmmo) to be located within certain filenames. | A corollary to the discussion above is that you can spread your configs across tons of little files or ball them up into one big one or anything in between--with some exceptions^ (which are dicussed further below). It is essentially a matter of clarity and ease of editing. Barring the exceptions, there is no iron-clad rule that requires certain classes (e.g. CfgAmmo, CfgVehicles, etc.) to be separated or located within certain filenames. | ||
^Known exceptions: | ^Known exceptions: |
Revision as of 02:22, 15 October 2014
Intro
Arma 3 documentation is scattered to the 4 winds, and this applies to config file properties as much as anything. This is an attempt to make a single master list of properties with links to [sources]. Yes, there are other partial lists but they have problems: obsolete information, and no links to their sources. So rather than rummage and re-order everyone else's lists, I'm going to add my own in the hopes that it serves as a comprehensive resource (by Arma standards!).
(This list was compiled in Fall of 2014, and should be up-to-date as of that point.~Olds.)
How Do Configs Work?
All configs get merged into one big config in memory when the game starts. Where duplicates exist, which config takes precedence depends on load order - the last config loaded "wins" by overwriting any previous value(s). Load order is determined by mod folder order, PBO name, but most importantly/properly by the "requiredAddons" section of the CfgPatches class.
How Many Config Files?
A corollary to the discussion above is that you can spread your configs across tons of little files or ball them up into one big one or anything in between--with some exceptions^ (which are dicussed further below). It is essentially a matter of clarity and ease of editing. Barring the exceptions, there is no iron-clad rule that requires certain classes (e.g. CfgAmmo, CfgVehicles, etc.) to be separated or located within certain filenames.
^Known exceptions:
- #include'd .h/.hpp files are usually in the same folder or a subfolder of the #include'ing config, but apparently they can be anywhere as long as you #include "pathtofile".
- CfgSkeleton & CfgModels classes should be in either: a "model.cfg" file or a "[same-name-as-P3D].cfg" file. Unlike other config classes, these ones should not be thrown into random files.
- The model.cfg file must be in the same folder as--or in a parent folder of--the object (P3D) it configures.
Weapons
For understandable reasons, weapons data is scattered across several different config classes. Defining a weapon properly requires working with all these classes.
CfgAmmo
Projectile-specific properties
airFriction
How much the projectile slows down as it travels through air. (Seems to be equivalent to Bird-Livingston's "ballistic K factor" * 0.0000001).[A, B]
airLock
caliber
[float>=0]. Penetrative power of a projectile based on speed. (A value of 1 is standardized as 15mm of RHA penetration at 1000m/s.) The formula for mm of penetration is: (projectile speed / 1000)x(caliber)x(bulletPenetrability of the target BISURF). So higher = more penetration. Restating the formula: caliber = (mm penetration @speedX)*1000 / (bulletPenetrability * speedX). <!>Adding caliber values to missile or rockets results is bugged and results in missiles flying through targets.[A]
canLock
cost
deflecting
explosive
hit
indirectHit
initTime
irLock
laserLock
manualControl
manuevrability
maxControlRange
maxRange
maxRangeProbab
maxSpeed
minRange
minRangeProbab
midRange
midRangeProbab
muzzle velocity
Tricked you! Muzzle velocity for a projectile is defined in the CfgMagazines class and it's called "initSpeed".
thrustTime
thrust
timeToLive
typicalspeed
nvgOnly
visibleFire
visibleFireTime
CfgMagazines
Magazine properties plus some projectile-specific stuff that gets stored here instead of CfgAmmo.
initSpeed
tbd
CfgWeapons
Gun/launcher-specific properties.
autoFire
ballisticsComputer
canLock
dispersion
[float>=0]. Weapon's dispersion in radians (1 angular milliradian = 0.001 dispersion, 1 MOA = 0.000290888 dispersion)
weaponLockSystem
Vehicles
tbd
CfgVehicles
armor
armorStructural
damageResistance
discreteDistance[]
discreteDistanceInitIndex
gunnerOpticsModel
gunnerOutOpticsModel
gunnerOpticsEffect[]
gunnerHasFlares
inGunnerMayFire
lockDetectionSystem
magazines[]
outGunnerMayFire
radarType
secondaryExplosion
thermalMode[]
viewGunnerInExternal
visionmode[]
xxxFov
weapons[]
HitPoints class properties
armor
depends
explosionShielding
material
minimalHit
name
passThrough
radius
visual
HitHull
HitFuel
HitTrack
HitWheel
HitAmmo
HitEngine
HitAvionics
HitVRotor
HitHRotor
Model.cfg
Model.cfg is the place where we describe the basic parts of a game model (i.e. its P3D file). It is divided into two classes: CfgSkeletons & CfgModels.