-
Notifications
You must be signed in to change notification settings - Fork 2
Data Dictionary
Describes how every division is built up. For every unit in DivisionRules.ndf
we have the following values.
ref UnitDescriptor
Reference to UniteDescriptor.ndf
bol AvailableWithoutTransport
arr AvailableTransportList
Array containing all available transports.
int MaxPackNumber
How many cards of this unit type can be taken (varies per division)
int NumberOfUnitInPack
How many units each card holds (does not vary per division)
arr NumberOfUnitInPackXPMultiplier
Multiply with NumberOfUnitInPack to get the amount of units per card at given veterancy level.
All useful values to be found in UniteDescriptor.ndf
str Nationalite (Alliance)
Can either be ENationalite/Allied (NATO) or ENationalite/Axis (PACT)
str MotherCountry (Nation)
Can either be SOV, US, UK, DDR, RFA (West-Germany) or BEL
arr RoleList (Quality)
Can either be tank_A (A | Excellent), tank_B (B | Good), tank_C (C | Mediocre) or tank_D (D | Poor)
str Factory (Category)
Can either be Logistic (LOG), Infantry (INF), Support (ART), Tanks (TNK), Recons (REC), AT (AA), Helis (HEL), Planes (AIR)
arr SpecialtiesList (Role)
Can either be hq (Command unit), supply, infantry (Infantry Squad), infantry_half (Infantry Group), engineer (Assault Squad), assault_half (Assault Group), mortar, howitzer, mlrs, ifv (Infantry Fightung Vehicle), armor (Main Battle Tank), reco, hel_recp (Helicopter Reconnaissance), appui (Support), AT (Anti-Tank), transport, AA (Air Defence) or sead
int ProductionYear
int ProductionTime
5 for every unit except -1 for planes. I think it's the time between placing units and them spawning in.
int Resource_CommandPoints
str UpgradeFromUnit
Predecessor
des TInfluenceScoutModuleDescriptor (Reveal Influenece)
Descriptor is empty for every unit, however, if its header is present it triggers Reveal Influenece to be set to yes in the in-game armory. Furthermore, it will show you the blue/red dividing lines when a zone is contested, helping you to guess the enemy command vehicle's (CVs) location.
flt DeploymentShift
If the descriptor is present it states how far the unit can be forward deployed.
ref StunDamagesRegen
ref MaxStunDamages
ref SuppressDamagesRegenRatio
Described in chapter Stress, Suppression, Cohesion and Morale
ref SuppressDamagesRegenRatioOutOfRange
Described in chapter Stress, Suppression, Cohesion and Morale
ref MaxSuppressionDamages
Described in chapter Stress, Suppression, Cohesion and Morale
flt MaxDamages (Strength)
The unit's health. In-game called strength for infantry units. Note that increasing strength does not automatically increase the squad's size. You would need to adjust NbSoldatInGroupeCombat and Depiction aswell.
ref WeaponManager
Reference to WeaponDescriptor.ndf
str ArmorDescriptorFront
Armor Front
str ArmorDescriptorSides
Armor Side
str ArmorDescriptorRear
Armor Rear
str ArmorDescriptorTop
Armor Top
int OpticalStrength
Optics for ground units. Presumably used to determine whether a unit can see enemy units in cover: can either be 40 (Bad), 60 (Mediocre), 80 (Normal), 120 (Good), 170 (Very Good) or 220 (Exceptional)
int OpticalStrengthAltitude
Optics for air targets. This value is not represented on the in-game UI and does not count towards OpticalStrength.
flt IdentifyBaseProbability
Guess: I think OpticalStrength defines how well units can be seen, IdentifyBaseProbability is the probability that these units can be uniquely identified.
flt TimeBetweenEachIdentifyRoll
Guess: Time in-between trying to uniquely identify units.
flt UnitConcealmentBonus (Stealth)
In-game called stealth. Can either be 1.0 (Bad), 1.5 (Mediocre), 2.0 (Good) or 2.5 (Exceptional)
flt HitRollECM
Multiplier for hit probability. 0 means no Electronic countermeasures (ECM)
int PorteeVision
Maximum range at which a unit can see an unidentified ground unit. This variable is set to 10000 except for SEAD planes it is higher.
flt PorteeVisionTBA
Set to 0 for every unit except 14000 for planes.
flt PorteeVisionFOW
Set to 0 for every unit except 1600 for helicopters.
flt DetectionTBA
Maximum range at which a unit can see an unidentified helicopter. Set to 14000 for every unit.
int UnitAttackValue
Might be used for AI.
int UnitDefenseValue
Might be used for AI.
flt Dangerousness
Might be used by AI to determine which unit to engage first.
ref UnlockableOrders
Reference to OrderAvailability_Tactic.ndf. Contains a list of orders that can be given to this particular unit.
bol IsTransporter
bol IsPlane
int FuelCapacity
How many liters of fuel a unit can hold.
flt FuelMoveDuration
How many seconds a unit can move before running out of fuel. Described in chapter Calculate Autonomy
int MaxSpeed
flt SpeedBonusOnRoad
flt MaxAcceleration
flt MaxDeceleration
flt TempsDemiTour
The amount of seconds it takes for a unit to make a half-turn.
str VehicleSubType
int EvacuationTime
int TravelDuration
int Altitude
Preferred flying altitude
ref AltitudeMax
Reference to AirplaneConstantes.ndf; always set to 10000 * Metre
int AltitudeMin
Minimum flying altitude; will break off from certain attacks if they involve going deeper.
ref AltitudeMinForRoll
Reference to AirplaneConstantes.ndf; always set to 2000 * Metre
ref MinRollSpeedForRoll
Reference to AirplaneConstantes.ndf; always set to 65°/s
int AgilityRadius
I believe it to be the equivalent of TempsDemiTour for planes; states the turn radius. Certainly determines the agility of the plane in question.
int PitchAngle
ref PitchSpeed
int RollAngle
int RollSpeed
int UpwardSpeed
Controls movement in some way, though in what way is uncertain.
int TorqueManoeuvrability
Controls movement in some way, though in what way is uncertain.
int CyclicManoeuvrability
Controls movement in some way, though in what way is uncertain.
int MaxInclination
Controls movement in some way, though in what way is uncertain.
flt GFactorLimit
Controls movement in some way, though in what way is uncertain.
int RotorArea
Controls movement in some way, though in what way is uncertain.
int Mass
Controls movement in some way, though in what way is uncertain.
int NbSoldatInGroupeCombat
The squad's size in number of soldiers.
flt SupplyCapacity
How many supplies this unit is carrying.
flt HitRollSize
Size does no longer effect hit chance-to-hit.
int MoralLevel
Reason not included is described in chapter Stress, Suppression, Cohesion and Morale
bol IsParachutist
Currently set to False for every unit.
int Resource_Tickets
Could be used as prices for future campaigns.
int CommanderLevel
Only present on command units. However, it is set to 1 for every unit that has it.
bol UnitIsStealth
False for every unit. Stealth is defined by UnitConcealmentBonus.
tkn UnitName
Unfortunately we can't decode tokens yet.
int SupplyPriority
Used in WGRD to state how many other supply units this unit could itself draw supplies from. Set to -1 for every unit.
int UnitBonusXpPerLevelValue
Set to 1 for every unit except aircraft.
All useful values to be found in WeaponDescriptor.ndf
. A weapon system (TWeaponManagerModuleDescriptor) consist of multiple turret descriptors (TTurretInfanterieDescriptor or TTurretTwoAxisDescriptor). These turrets have one or multiple weapons attached to it (TMountedWeaponDescriptor), each having its own ammunition defined in Ammunition.ndf
.
arr Salves
Array holding multiple ammunition pools. An ammunition pool defines the total number of salvos a weapon (which pulls salvos from this pool) can fire before running out of ammunition.
int NbWeapons
The unit's quantity of this specific weapons. Primarily used on infantry units.
int SalvoStockIndex
Defines which ammunition pool (Savles) is being used by this specific weapon. E.g. tank cannons have separate weapon descriptors for HE and AP but will pull from the same ammunition pool.
bol HasMainSalvo
Only set to True for planes. It signifies that this plane has a ammunition pool (Salves) that, if empty, makes the plane evac winchester.
arr SalvoIsMainSalvo
Only has a True in it for planes. States which ammunition pool (Salves) makes the plane evac winchester when empty.
ref Ammunition
References an object in Ammunition.ndf.
flt AngleRotationMax
Maximal traverse of turret in radians. Calculation as follows: angle_degrees = angle_radians \* 180° / pi
flt AngleRotationMaxPitch
Maximum turret elevation in radians. Calculation as follows: angle_degrees = angle_radians \* 180° / pi
flt AngleRotationMinPitch
Minimum turret depression in radians. Calculation as follows: angle_degrees = angle_radians \* 180° / pi
flt VitesseRotation
Traverse speed of the turret, presumably in radians per second.
All useful values to be found in Ammunition.ndf
.
tkn Name
Ammunition name; unfortunately we can't decode tokens yet.
tkn TypeCategoryName
Weapon description like Heavy Machine Gun, Howitzer, etc. Unfortunately we can't decode tokens yet.
tkn Caliber
Caliber; unfortunately we can't decode tokens yet.
arr TraitsToken
Will be added soon!
int Level
Controls to which card slot this ammunition is assigned to
ref Arme
How much armor-piercing (AP) damage is dealt. Read through chapter Armor-Piercing (AP) Damage to get a detailed damage description and how to read this value correctly.
flt Puissance
How noisy the weapon is. This variable is a stealth-negating multiplier that controls how much easier this unit is to spot when it fires this weapon.
int ShotsBeforeMaxNoise
Either shot count until Puissance is in its full effect or there is a global maximum noise
int NbTirParSalves
Shot count per magazine (salvo)
flt TempsEntreDeuxTirs
Time in-between two shots until magazine (one salvo) is empty. For weapons that have a salvo size of one, e.g. tank cannons, this variable will be ignored. Presumably, this variable is NOT effected by decreasing morale (If it even exists in WARNO).
flt TempsEntreDeuxSalves
Time in-between two salvos, a.k.a reload time. Presumably, this variable is effected by decreasing morale (If it even exists in WARNO).
int PorteeMaximale
Maximal range against ground units.
int PorteeMinimale
Minimum range against ground units.
int PorteeMaximaleTBA
Maximal range against helicopters.
int PorteeMinimaleTBA
Minimum range against helicopters.
int PorteeMaximaleHA
Maximal range against planes.
int PorteeMinimaleHA
Minimum range against planes.
flt AltitudeAPorteeMaximale
Function unknown; exists for every ammunition type except missiles
flt AltitudeAPorteeMinimale
Function unknown; exists for every ammunition type except missiles
bol AffecteParNombre
Function unknown; exists for every ammunition type except missiles
flt AngleDispersion
How much the ammunition spreads on impact or near-miss.
int DispersionAtMaxRange
Dispersion at maximum range
int DispersionAtMinRange
Dispersion at minimum range
int RadiusSplashPhysicalDamages
Area of effect (AeE) of HE damage
flt PhysicalDamages
HE damage in case of direct hit
int RadiusSplashSuppressDamages
Area of effect (AeE) of suppress damage
flt SuppressDamages
Suppress damage in case of direct hit
int RayonPinned
Function unknown
bol AllowSuppressDamageWhenNoImpact
Allow suppress damage to be dealt in case of near-miss.
bol TirIndirect
False if this weapon is direct-fire.
bol TirReflexe
Seems to be False for mortars, howitzers and bombs. Good chance that this is set to True if a weapon is able to target projectiles, hence Reflexe.
bol InterdireTirReflexe
Prohibit TirReflexe. Good chance that is is the counter to whatever TirReflexe is.
flt NoiseDissimulationMalus
Function unknown
int BaseCriticModifier
Either set to 0 or 25. Modifies the probability of triggering critial effects.
int EBaseHitValueModifier/Idling (Accuracy)
Accuracy per shot while standing still. Accuracy in-game is displayed per salvo: real_accuracy = EBaseHitValueModifier/Idling \* NbTirParSalves
int EBaseHitValueModifier/Moving (Accuracy)
Accuracy per shot while moving. Accuracy in-game is displayed per salvo: real_accuracy = EBaseHitValueModifier/Idling \* NbTirParSalves
int MaxSuccessiveHitCount
Function unknown; Either set to 1 or 5
flt TempsDeVisee
Aim time; How long, effected by morale (if existent), the unit needs time from seeing the enemy to being ready to engage it.
flt SupplyCost
bol CanShootOnPosition
Used to define if button Fire Pos is available and therefore a unit is able to blindly fire without target at your request.
bol CanShootWhileMoving
int NbrProjectilesSimultanes
Number of projectiles fired simultaneously
ref MissileDescriptor
For missiles, this variable is a reference to MissileDescriptors.ndf, else it is set to nil
ref SmokeDescriptor
For smoke rounds, this variable is a reference to SmokeDescriptor.ndf, else it is set to nil
ref FireDescriptor
For incendiary rounds, this variable is a reference to FireDescriptor.ndf, else it is set to nil
bol CanHarmInfantry
bol CanHarmVehicles
bol CanHarmHelicopters
bol CanHarmAirplanes
bol CanHarmGuidedMissiles
bol IsHarmlessForAllies
bol PiercingWeapon
If ammunition is able to deal armor-piercing (AP) damage. Read through chapter Armor-Piercing (AP) Damage to get a detailed damage description.
ref DamageTypeEvolutionOverRangeDescriptor
If not nil, this variable references DamageStairTypeEvolutionOverRangeDescriptor.ndf, which handles armor-piercing (AP) damage decrease over distance. Moreover, this means that this ammunition is kinetic. Read through chapter Armor-Piercing (AP) Damage to get a detailed damage description.
flt FlightTimeForSpeed
Most likely used to calculate projectile speed together with DistanceForSpeed
flt DistanceForSpeed
Most likely used to calculate projectile speed together with FlightTimeForSpeed
flt IsAPCR
Probably used when Armour-piercing, composite rigid (APCR) (high-velocity armour-piercing (HVAP) in US nomenclature) are implemented into WARNO. Removed in game version 80721.