Arma 3 Helmet Cam

Players can spectate from the group leader's helmet cam or opt to instantly teleport to the location and join the group. Once a group runs out of waypoints it will go static and after a short period of inactivity will be reassigned to the AI Commander for further tasking. There is an option to lock a unit out of AI Command & Control completely. Added EXPERIMENTAL pilot camera for the wipeout (Toggle on with the sling load camera keybinding). Added RHS: UH-1Y, CH-47, C-130J, UH-60 imperial unit variants. Added MELB imperial units variant. V3.4 - Added MELB HMD - Added RHS Black Hawk and Venom HMD - Added Desert Comanche CAS version - Updated textures for custom helmets v3.3.

  1. MCC Sandbox 3 - Dynamic mission creating tool for ArmA 3 - Helmet camera - Duration: 2:43. Shaygman1 5,288 views. ArmA 3 Sniper Rifle Showcase - GM6 Lynx and M320 LRR.
  2. Today we are talking to two authors from the Witcher 3 community: wiggolp and Damastor - both of whom have managed to create new quest mods for the game, adding new areas, dialogue, and more! BigBizkit: To start this off, let me ask you, wiggolp, about your mod adding a completely new quest to the game - Ciri’s Sole Memento.


Description.ext

Arma

A wide range of Description.ext entries let you configure respawn settings for your mission. See Description.ext - Respawn/Revive for a detailed documentation.


Eden Editor

Eden Editor offers a lot of settings to customise your respawn system, however not all functionalities are available. Furthermore settings made in the description.ext will overwrite settings made in Eden Editor.


Scripting

Scripting Commands

Scripting Functions

Event Scripts


Respawn Types

Type is represented either by respawn ID, or by its name.

IDNameDescriptionDefault TemplatesonPlayerKilledonPlayerRespawn
0'NONE'Show singleplayer death screenN/A
1'BIRD'Respawn to a seagullSpectator, EndMission
2'INSTANT'Respawn on spot where player diedInstant, Counter
3'BASE'Respawn on a marker(s) start by following strings:

Unit respawn

  • respawn (used only when side variant is not found)
  • respawn_west
  • respawn_east
  • respawn_guerrila
  • respawn_civilian

Vehicle respawn

  • respawn (used only when side variant is not found)
  • respawn_vehicle_west
  • respawn_vehicle_east
  • respawn_vehicle_guerrila
  • respawn_vehicle_civilian

You can have multiple markers simply by adding any text behind the name, e.g. respawn_west1, respawn_westBase etc. When no markers are defined, player is respawned on position where he started the mission. More about marker respawn can be found here. Alternatively you can also use the Respawn Position module.

Base, Counter
4'GROUP'Respawn to the next available playable unit in a group. When none is left, BIRD respawn is used instead.Group, EndMission
5'SIDE'Respawn to the next available playable unit of the same side (selected using team switch window). When none is left, BIRD respawn is used instead.Side, EndMission


Respawn Templates

Templates are pre-defined scripts called when player dies and respawns. They are defined in an array and can be combined together.

Additionally, you can define side specific templates. When a side has no unique templates, it will use general respawnTemplates instead.

When the respawnTemplates entry is missing, default templates based on the respawn type are used.
Respawn Templates are case-sensitive!


Arma 3 helmet cam script

Official Templates

ClassDescriptionPreview
NoneSingleplayer death screen. Default in singleplayer.
SpectatorSpectator Mode.
InstantCurrently empty.
BaseCurrently empty.
GroupCutscene showing a newly controlled unit.
SideCutscene showing a newly controlled unit.
SeagullOFP-style seagull respawn
WaveAdjusts respawn counter so players spawns together (wave delay is based on respawnDelay)
TicketsUse a limited respawn ticket pool for players. Pool can be applied to everyone, a side, a group or a single unit.

Use BIS_fnc_respawnTickets to update the amount of available tickets. Note that the template will have no effect if this function is never used, meaning players outside of all given pools will have infinite respawns.

CounterShow a simple respawn countdown.
EndMissionAutomatically fail the mission once all players are dead (for NONE, BIRD, GROUP and SIDE respawn types) or when all respawn tickets are exceeded (for INSTANT and BASE respawn types with Tickets template)
MenuPositionLets players select from available respawn positions defined either by respawn markers, see Respawn Types, by BIS_fnc_addRespawnPosition function or by the Respawn Position module. A new screen was released with 1.60 and brings new functionalities together with a new design.

Item disabling

  • Respawn positions can be disabled automatically (e.g., unit used as respawn point is dead) or manually by calling BIS_fnc_showRespawnMenuDisableItem
MenuInventory

Lets players pick a respawn loadout defined in CfgRespawnInventory. Loadouts can be added using BIS_fnc_addRespawnInventory function. A new screen was released with 1.60 and brings new functionalities together with a new design.

Role selection

  • Respawn inventories are sorted in to Roles which can be defined in CfgRoles.

Item disabling

  • Roles and loadouts can be disabled. This can happen automatically (e.g., Role/loadout limit was reached) or can be manually by calling BIS_fnc_showRespawnMenuDisableItem.

Limits

  • Roles and loadouts can be limited. This way only limited number of player can use given role/loadout in a mission. For details on how to do that see BIS_fnc_addRespawnInventory.

Options shared by MenuInventory and MenuPosition
Both templates feature a similar respawn UI and therefore share the following options:

  • Timeout disabling
    • Mission designer can disable the timeout used between death of a unit and opening of the respawn screen.:

missionNamespacesetVariable ['BIS_RscRespawnControls_skipBlackOut', true, true]; // Disable timoutmissionNamespacesetVariable ['BIS_RscRespawnControls_skipBlackOut', nil, true]; // Reset to original timeout

  • Autorespawn
    • A checkbox can be ticket to let the player automatically respawn once the coundown reached 0. If disabled player is not respawned immediately, but must confirm selection by clicking on 'RESPAWN' button.
  • Spectator Camera
    • The Spectator Camera used in here is slightly modified (no free camera available etc.) version of Spectator Mode. For full documentation see Spectator Mode documentation.
    • Mission designer needs to use the Spectator respawn template, the camera is disabled otherwise.


Custom Respawn Templates

New templates can be defined in global Config.cpp or in mission and campaign Description.ext files.
Example:Show text


Loadouts and Roles

The main purpose of the roles is to make things more clear and simple for player when selecting loadout. All the loadouts available in a mission are now divided into various roles.
Mission designer can use roles already created in the game config, or custom roles can be defined in description.ext file. Loadouts with no role assigned are automatically assigned to the Default role.
Loadout config example:
Show text

Export Function:

  • The following function will copy a complete respawn inventory to your clipboard, see function header for more information, contact User:R3vo if you have questions.
To add any loadout as available in your mission, you need to use the BIS_fnc_addRespawnInventory function!



Retrieved from 'https://community.bistudio.com/wiki?title=Arma_3_Respawn&oldid=156054'

Multi-Function Display (MFD) is implementation of HUD (Head-Up Displays) in Arma 3.Display can be fixed on helmet (move with player head) or cockpit (static position).


Technical Basics

HUDs are defined in the MFD class of the source vehicle.The properties of each HUD are separated by a root class (conventionnally named AirplaneHUD in base content), although each new instance will render a new HUD and overlap with the previous.This makes it easier to configure HUDs by modular config (for example, navigation, targeting, etc...).All HUDs are defined through 3 base elements:

  • Bones: invisible elements used to transform/rotate other, similar to anchors/origins. Defined in the Bones class of any HUD.
  • Drawn elements: used to draw graphic elements. Defined in the Draw class of any HUD.
  • Sources: if an element displays complex variables or any bone needs to be in specific positions, it uses a source data. Defined in each instance of bone and draw classes when needed.

Example:


Since A3 1.69 version it is also possible to define MFD class in CfgMagazines.Such move allows creating dynamic MFD screens with info on the screen corresponding to current loadout applied through dynamic loadout system.

Example:


Show 'class CfgVehicles'


Global HUD Properties

These are defined in each AirplaneHUD instance and affect every sub-sequent element. Some properties can be overwritten in each child element if needed (e.g color) :

  • color : [r,g,b,a] - color of all elements.
  • topLeft : 'string' - memory point defining the top left position of the HUD and uses it as the absolute origin (0,0,0). Not used if helmetMountedDisplay = true.
  • topRight : 'string' - memory point defining the top right position of the HUD and uses it as the far right limit (1,0,0). Not used if helmetMountedDisplay = true.
  • bottomLeft : 'string' - memory point defining the bottom left position of the HUD and uses it as the bottom limit (0,1,0). Not used if helmetMountedDisplay = true.
  • borderLeft : float - adjust position inside of memory points LOD. Not used if helmetMountedDisplay = true.
  • borderRight : float - adjust position inside of memory points LOD. Not used if helmetMountedDisplay = true.
  • borderTop : float - adjust position inside of memory points LOD. Not used if helmetMountedDisplay = true.
  • borderBottom : float - adjust position inside of memory points LOD. Not used if helmetMountedDisplay = true.
  • fontHelicopterHUD : 'string' - font used for this HUD instance.
  • helmetMountedDisplay : true/false - Defines if the HUD is attached to a fixed point of the aircraft or moves with the head of the pilot.
  • helmetPosition : float - ([x, y, z]): position of HUD - for helmet mounted only
  • helmetRight : float - ([x, y, z]): right vector of HUD - for helmet mounted only
  • helmetDown : float - ([x, y, z]): down vector of HUD - for helmet mounted only
  • font: 'string' font type used for drawing HUD elements
  • turret: array[] - define from which turret should animation sources like i.e. impactPoint should get data from. {-2} - default, legacy behaviour, {-1} - remote controlled weapons (means, that it shows driver impact point by default, but changes to remote controlled turret once used) , {} - same as -2, {0} - turret path
  • material: allows adjustments to ambient, diffues & emmisive values just like RVMAT

Example:


Bones

Bone defines position of graphic element. Final position can be modified by sources in each frame.Bones have no hierarchy, hierarchical geometry is available by chain of bones in HUD-element draw.Currently there are 6 types of bones: fixed, linear, rotational, horizon, vector and ILS.Bones type is defined by type property in bone class (e.g.: type = fixed;).Bones types:

  • Fixed: represents a fixed position on HUD plane. It can be use for static HUD-Elements (e.g.: aiming cross).
    • pos ([x, y]): position of center (left top corner is [0,0], right bottom corner is [1, 1])
  • Linear: represents a linear transformation depend on source float value. It can be used for some linear indicator (e.g.: fuel bar).
    • source (string): name of float source value. See sources for more details
    • min (float): minimal valid source value. Lower source value will be forced to minimal
    • max (float): maximal valid source value. Higher source value will be forced to maximal
    • sourceScale (float): multiplier of source value. It is optional, default is 1
    • minPos ([x, y]): position for maximal source value (minPos matches max source value - for historical reasons)
    • maxPos ([x, y]): position for minimal source value (maxPos matches min source value - for historical reasons)
  • Rotational: represents a rotational transformation depend on source float value. It can be used for some rotational indicator (e.g.: analog speedometer).
    • source (string): name of float source value. See sources for more details
    • min (float): minimal valid source value. Lower source value will be forced to minimal
    • max (float): maximal valid source value. Higher source value will be forced to maximal
    • sourceScale (float): multiplier of source value. It is optional, default is 1
    • center ([x, y]): position of center of rotation
    • minAngle (float): angle (in degrees) for minimal source value
    • maxAngle (float): angle (in degrees) for maximal source value
    • aspectRatio (float): rotation aspect ratio. It is optional, default is 1
  • Horizon: represents a transformation for horizon indicator.
    • angle (float): angle of horizon line (degrees)
    • pos0 ([x, y]): scene to HUD plane transformation. For more details, see here.
    • pos10 ([x, y]): scene to HUD plane transformation. For more details, see here.
  • HorizonToView: (for HMD) represents a transformation for horizon indicator.
    • angle (float): angle of horizon line (degrees)
    • pos0 ([x, y]): scene to HUD plane transformation. For more details, see here.
    • pos10 ([x, y]): scene to HUD plane transformation. For more details, see here.
  • Vector: represents a transformation from scene position (depend on source type) to HUD plane. Properties:
    • source (string): name of 3D vector source value. See sources for more details
    • pos0 ([x, y]): scene to HUD plane transformation. For more details, see here.
    • pos10 ([x, y]): scene to HUD plane transformation. For more details, see here.
  • ILS: represents transformation for ILS (Instrument landing system). Properties:
    • pos0 ([x, y]): scene to HUD plane transformation. For more details, see here.
    • pos3 ([x, y]): scene to HUD plane transformation. For more details, see here.
  • Limit: saturate preview vector transformation by box
    • limits ([x0, y0, x1, y1]): bounding box in HUD coordinates 0 -1.


HUD Elements

HUD Element represents one graphic entity. It defines what and how will be drawn.Currently there are 5 types of HUD-Elements: line, text, scale, radar and group.Group element has no geometry, it is because elements hierarchy.HUD Elements type is defined by type property in HUD Element class (e.g.: type = line;).HUD Elements types:

  • Line: draws lines (or multi-lines) defined by points.
    • points (array): For more details, see here.
    • width (float): width of line segments
    • lineType (float): Set type of line - supported values: 0 - full line, 1 - doted line, 2 - dashed line, 3 - dot-dashed line
  • Text: draws value depend on source as text
    • align (string): text alignment. Valid options: left, right, center.
    • scale (float): font size
    • source (string): name of string source value. See sources for more details
    • sourceScale (float): multiplier of source value. For non static source only
    • sourceLength: format source value: number of characters to draw , rest is filled with '0'
    • sourceIndex: used with weapon & ammo sources. i.e. sourceindex=0 with source = 'weapon'; to get name of first weapon from vehicles weapons[] array in config. Works also with ammo
    • sourcePrecision: format source value: number of characters afters decimal dot.
    • refreshRate: refresh rate of source ranging from 0 to 1s. Can be used to simulate old MFDs with low FPS
    • text (string): static text to draw. For static source only
    • pos (array): position of text. It is the same as one point in line definition. For more details, see here.
    • right (array): right direction of text. It is the same as one point in line definition. For more details, see here.
    • down (array): down direction of text. It is the same as one point in line definition. For more details, see here.
  • Polygon: draws a polygon. Accepts 3 or 4 points only
    • texture (string): if present, it will draw selected texture on created polygon.USE WITH CAUTION, drawing of pictures is quite heavy for engine, it is recommended to keep amount of textures around 10-15.Above that value expect performance impact. Example code below:
  • PylonIcon: draw pylon icon
    • pos (array): position of pylon icon. It is the same as one point in line definition. For more details, see here.
    • pylon (float): index of pylon (start from 1)
    • name (string): class name in magazine/mfdElements
  • Scale: is horizontal or vertical bar indicator. Scale HUD-Element can't use bones for transformation.
    • align (string): text alignment. Valid options: left, right, center.
    • scale (float): font size
    • source (string): name of float source value. See sources for more details
    • NeverEatSeaWeed (integer): 1 - will show 'N,E,S,W', 2 - will show 'N,NE,E,SE,S,SW,W,NW' in the heading scale
    • sourceScale (float): multiplier of source value
    • horizontal (bool): true for horizontal bar, false for vertical bar
    • pos ([x, y]): position of text item related to top position. It is for text range definition, final position of text will be move to related line.
    • right ([x, y]): right direction of text item related to top position.
    • down ([x, y]): down direction of text item related to top position.
    • step (float): amount of source between two lines.
    • stepSize (float): length between two lines.
    • lineXleft (float): left/top position of one normal line in vertical/horizontal bar
    • lineYright (float): right/bottom position of one normal line in vertical/horizontal bar
    • lineXleftMajor (float): left/top position of one major line in vertical/horizontal bar
    • lineYrightMajor (float): right/bottom position of one major line in vertical/horizontal bar
    • top (float): top position of bar indicator (left for horizontal indicator)
    • bottom (float): bottom position of bar indicator (right for horizontal indicator)
    • center (float): center position of bar indicator
    • majorLineEach (int): granularity of major lines
    • numberEach (int): granularity of lines with text value
    • min (float): min valid value, lower values will be ignored. min value is already affected by sourceScale
    • max (float): max valid value, higher values will be ignored. max value is already affected by sourceScale
  • Radar: draws geometry around entities
    • pos0 ([x, y]): scene to HUD plane transformation. For more details, see here.
    • pos10 ([x, y]): scene to HUD plane transformation. For more details, see here.
    • points (array): defines graphics which will be rendered around each entity. For more details, see here.
  • RadarToView: (for HMD) uses same parameters as radar.
  • Turret: used on Blackfoot gunner aim box
    • pos0 ([x, y]): scene to HUD plane transformation, in spherical this is offset
    • pos10 ([x, y]): scene to HUD plane transformation, in spherical pos10 is a scale
    • projection (float): defines projection type. Default value is 1. Use 0 for spherical projection.
  • TurretToView: (for HMD) uses same parameters as turret.
  • Group: makes HUD-Elements hierarchy. It can change attributes for its child elements. Group element has no graphics.
    • color ([r, g, b, a]): color of HUD-Elements graphics. Since A3 1.73+ it is possible to use simple expression with day time, 'nvg' or 'userXX' values
    • alpha (int: 0-255): alpha of HUD-Elements graphics. Since A3 1.73+ it is possible to use simple expression with day time, 'nvg' or 'userXX' values
    • clipTL ([x, y]): top left corner of clipping area (range is [0, 0] - [1, 1])
    • clipBR ([x, y]): bottom right corner of clipping area (range is [0, 0] - [1, 1])
    • clipTLParallax ([x, y]): top left corner of clipping area (range is [0, 0] - [1, 1]) - parallaxed
    • clipBRParallax ([x, y]): bottom right corner of clipping area (range is [0, 0] - [1, 1]) - parallaxed
    • condition (string): condition for enable/disable child elements. Since 1.69 it is also possible to use float sources (like 'speed', 'rpm', etc.) as a condition, mathematical operators and even simple expressions. Available conditions:
      • on: engine is on
      • ils: ILS system is activated
      • mgun: machine gun is selected
      • missile: missile is activated
      • aamissile: air lock air missile
      • atmissile: air lock ground missile
      • rocket: rocket is selected
      • bomb: bomb is selected
      • flaps: flaps out (for airplanes only)
      • lights: landing lights are on
      • collisionlights: anti-collision lights are on
      • stall: plane stalling (for airplanes only)
      • simulArma: standard helicopter simulation (for helicopters only)
      • simulRTD: advanced helicopter simulation - RTD (for helicopters only)
      • incomingmissile: you are locked by incoming missile
      • missilelocking: locking of your missile is in progress
      • missilelocked: missile is locked
      • wpvalid: unfinished waypoint[s]
      • laseron: laser designator is activated
      • activeSensorsOn: radar is activated
      • weaponX: returns true if X entry from vehicle weapons[] array is selected
      • pilotcameralock: returns targeting pod lock mode - 0 disabled, 1 locked to terrain, 2 locked to objects
      • autohover: returns 1 when auto hover in helicopter is engaged
      • user0 : (up to user50): custom condition which can be changed by scripting command setUserMFDvalue
      • pylonSelected: returns 1 if pylon is selected. add number at the end when using outside of magazine mfd (i.e. pylonSelected1)
      • pylonEmpty: returns 1 if there is nothing mounted on designated pylon
      • pylonMagazineEmpty:: returns 1 if magazine is empty on designated pylon
      • vtolMode:: returns vectoring angle (goes from 0 - horizontal, to 1 - vertical mode)
      • nvg:: night vision goggles are used
  • blinkingPattern ([intervals]): define blinking pattern for group HUD elements. combination with condition is possible.
    • blinkingStartsOn (bool): define blinking state on beginning


Sources

Source represents value which can modify position of some types of bounds (e.g.: angle of analog speedometer pointer) or value of some HUD elements (e.g.: altitude as text, heading bar direction, etc.). Currently there are 3 types of sources: float, 3D vector and string. Sources type is defined by source property in bone or HUD Element class (e.g.: source = speed;). Sources types:

  • Float: source represents numeric value. It is used by Linear and Rotational bones and Scale HUD-Elements. Available values:
    • altitudeAGL: altitude above ground level (m)
    • altitudeASL: Altitude above sea level (m)
    • coordinateX: X coordinate of plane position in the world (m)
    • coordinateY: Y coordinate of plane position in the world (m)
    • speed: speed of airplane (m/s)
    • rpm: revolutions per minute of engine
    • vspeed: vertical speed (m/s)
    • fuel: fuel state (0-1)
    • targetDist: distance to target (m)
    • impactDistance: distance to impact point (m)
    • heading: heading of airplane (degrees)
    • cameraDir: direction of head (degrees)
    • horizonBank: horizon bank of airplane (radians)
    • horizonDive: horizon dive of airplane (radians)
    • windage: direction of wind (degrees)
    • throttle: analogue throttle value (0-1)
    • rtdCollective: collective state (0-1) - value is valid for helicopters with advanced RTD simulation only
    • rtdRotorTorque: rotor torque state (0-1) - value is valid for helicopters with advanced RTD simulation only
    • rtdGForce: actual G-Force value - value is valid for helicopters with advanced RTD simulation only
    • rtdRpm1: scaled revolutions per minute of engine #1 - value is valid for helicopters with advanced RTD simulation only
    • rtdRpm2: scaled revolutions per minute of engine #2 - value is valid for helicopters with advanced RTD simulation only
    • rtdRpm3: scaled revolutions per minute of engine #3 - value is valid for helicopters with advanced RTD simulation only
    • ClockHour: time of day on scale (0-1) consistent with clockHour animation source (that means 12 hours cycle)
    • ClockMinute: time of hour on scale (0-1) consistent with clockMinute animation source
    • ClockSecond: time of minute on scale (0-1) consistent with clockSecond animation source
    • WPDist: distance to current waypoint/steerpoint
    • WPIndex: index of next waypoint
    • MissileFlightTime: expected time to impact target
    • AoA: plane Angle of Attack
    • gmeter, gmeterX, gmeterY, gmeterZ: G-forces
    • gmeterGrav, gmeterXGrav, gmeterYGrav, gmeterZGrav: G-forces + gravitational force
    • cmAmmo: count of current countermeasures
    • cmWeapon: names of current countermeasures
    • vtolvectoring: current vectoring angle (goes from 0 to 1)
    • pylonAmmo: current amount of ammo on pylon. when using outside of magazine mfd (aka mfdElements) add number at the end (i.e. pylonAmmo1) if you want to use it as a condition or use sourceIndex
    • pylonAmmoRelative: current amount of ammo on pylon in 0-1 scale. when using outside of magazine mfd (aka mfdElements) add number at the end (i.e. pylonAmmoRelative1) if you want to use it as a condition or use sourceIndex
    • cameraHeadingDiff: ​angle between camera and default look direction (from -180 to 180)
    • cameraHeadingDiffX: angle between camera and default look direction (from -180 to 180 - only in X axis)
    • cameraHeadingDiffY: angle between camera and default look direction (from -180 to 180 - only in Y axis)
    • targetHeight: height (ASL) of currently selected target
    • weaponHeading: heading of turret in degrees (goes from 0 to 360)
    • laserDist: distance to target read from laser range finder
    • turretworld: direction of turret in [x,y] format - x is equal to body parameter in turret config while y is equivalent of gun property. Example usage: source = '[y]turretworld';
  • 3D Vector: source represents 3D vector value. It is used by Vector bone only.
    • velocity: velocity of airplane
    • velocityToView: velocity of airplane transformed to current view (for HMD) - don't combine with forward transformation!
    • target: locked target position
    • targetToView: locked target position transformed to current view (for HMD) - don't combine with forward transformation!
    • weapon: primary gun direction
    • weaponToView: primary gun direction transformed to current view (for HMD) - don't combine with forward transformation!
    • forward: forward direction of airplane
    • impactpoint: position of CCIP (constantly computed impact point)
    • impactpointtoview: CCIP for HMD
    • impactpointweaponRelative: Impact point calculated at the distance to currently selected target. If there is no target then it is working like regular CCIP. Requires target lead (BCTargetLead aka 4) in ballisticsComputer bitflags list
    • impactpointtoviewweaponRelative: Impact point calculated at the distance to currently selected target. If there is no target then it is working like regular CCIP. Requires target lead (BCTargetLead aka 4) in ballisticsComputer bitflags list. HMD Variant
    • wppoint: position of next waypoint
    • wppointtoview: position of next waypoint (for HMD)
    • pilotcamera: Targeting Pod aim direction
    • pilotcameratoview: Targeting Pod aim direction - HMD variant
    • LarTop: missileLockMaxDistance rounded up to 1000,2000,5000,10000,15000, etc.
    • LarAmmoMax: missile lock maximal distance - reading missileLockMaxDistance from cfgAmmo
    • LarAmmoMin: missile lock minimal distance - reading missileLockMinDistance from cfgAmmo
    • LarTargetDist: relative distance to target
    • LarTargetSpeed: relative speed to target
    • airportCorner1, airportCorner2, airportCorner3, airportCorner4: airport corners
    • airportCorner1ToView, airportCorner2ToView, airportCorner3ToView, airportCorner4ToView: airport corners (for HMD)
  • String: source represents string value from numeric value (extended float values). It is used by Text HUD_Element only.
    • altitudeAGL: altitude above ground level (m)
    • altitudeASL: Altitude above sea level (m)
    • coordinateX: X coordinate of plane position in the world (m)
    • coordinateY: Y coordinate of plane position in the world (m)
    • speed: speed of airplane (m/s)
    • rpm: revolutions per minute of engine
    • vspeed: vertical speed (m/s)
    • fuel: fuel state (0-1)
    • targetDist: distance to target (m)
    • heading: heading of airplane (degrees)
    • horizonBank: horizon bank of airplane (radians)
    • horizonDive: horizon dive of airplane (radians)
    • windage: direction of wind (degrees)
    • rtdCollective: collective state (0-1) - value is valid for helicopters with advanced RTD simulation only
    • rtdRotorTorque: rotor torque state (0-1) - value is valid for helicopters with advanced RTD simulation only
    • rtdGForce: actual G-Force value - value is valid for helicopters with advanced RTD simulation only
    • rtdRpm1: scaled revolutions per minute of engine #1 - value is valid for helicopters with advanced RTD simulation only
    • rtdRpm2: scaled revolutions per minute of engine #2 - value is valid for helicopters with advanced RTD simulation only
    • rtdRpm3: scaled revolutions per minute of engine #3 - value is valid for helicopters with advanced RTD simulation only
    • weapon: weapon name
    • ammo: amount of ammunition and magazine
    • static: static text defined in config by text property
    • time: time in c++ format, example use: source = time; text = '%X'; - see http://www.cplusplus.com/reference/ctime/strftime/
    • pylonMagazineName: pylon magazine name, use together with sourceIndex if you are using it outside of mfdElements
    • pylonMagazineNameShort: pylon short magazine name, use together with sourceIndex if you are using it outside of mfdElements
    • visionMode: current optics vision mode
    • flirMode: current optics FLIR mode
    • ammoFormat: reading ammo from displayNameMFDFormat cfgMagazines property 'displayNameMFDFormat'
    • userText: custom text which can be changed by scripting command SetUserMFDtext. Available indexes from 0 to 49, use sourceIndex to pick correct value. Example : source = 'userText';sourceIndex = 1;


Scene To HUD Transformation

Transformation of 3D vector from scene to 2D vector on HUD plane is implemented by two 2D vectors:

  • pos0: 2D position on HUD plane of ray defined by source (center)
  • pos10: 2D position on HUD plane of ray, which have angle to previous ray 10 degrees in axes X and Y
  • pos3: the same as pos10, but angle is 3 degrees only. It is used in ILS.

Example:

Arma 3 Helmet Cam


Points Definition

Lines (or multi-lines - line with more segments) are defined by array of points. In one points array can be defined more lines. Lines must be splitted by separator. Each point can be transformed by more bones (bones chain).

  • Point: defines one point of line. Point is define as chain of triplets (see next bullet: Bones chain). Triplet defines one transformation step of point:
    • bone name (string): name of bone for point transformation. Bone name is optional, but one of bone name or offset must be defined.
    • offset ([x, y]): offset applied to transformation. Offset is optional, but one of bone name or offset must be defined.
    • weight (float): weight to multiply transformation, must be defined.
  • Bones chain: each point can be transformed by more bones. Transformation chain is defined as array of triplets. Transformation order is from left to right. Example (without offsets to simplify):

Arma 3 Ctab Helmet Cam

  • Line: points array with more than 1 point defines line (or multi-line with more than 2 points). See example below.
  • Separator: in one points array can be defined more lines. Lines must be splitted by separator. Separator is empty array {}.

Example:

Arma 3 Helmet Cam Script


Arma 3: Editing

Arma 3 Helmet Camo

Retrieved from 'https://community.bistudio.com/wiki?title=A3_MFD_config_reference&oldid=156736'