FF SUITEArma 3 addons
Utils cover

API · FF: Utils

FF: Utils functions

Wardrobe, circuits, faulty optics, documents, generic items, AI balancing, reconnect recovery, blackout, flashlights, PASS, ammo provisioning, UAV automation, ready room, weapon faults, terminals, power and solar.

236 functions 62 public 13 categories x\FF\addons\utils FF_utils.pbo, FF_utils_assets.pbo

UAV automation 31

Registration, assignments, watch workers and audience-aware live feeds. System internals

FunctionExposurePurposeLines
droneAssign public Changes a registered UAV assignment using a trusted local server call. 68
droneFeedClear public Disables all native feeds and replaces the JIP service state. 16
droneFeedEligible public Resolves a live-feed audience without touching game state. 12
droneFeedSet public Publishes a named server-owned live feed with configurable source, target and audience. 39
droneFollowGoal public Calculates a ground navigation goal on the requested follow ring. 19
droneRegister public Registers one explicitly supplied UAV for server-owned follow/patrol/watch automation. 42
droneSortMarkers public Sorts an explicit marker catalogue by positive numeric suffix. 36
droneStopAll public Releases every registered native UAV controller. 11
droneUnregister public Releases one registered UAV and restores only its managed indicators and AI controls. 29
droneClearPatrol internal Removes only waypoint handles created by the native drone controller. 17
droneConfig internal Normalizes server-owned drone settings and callbacks. 34
droneContacts internal Finds nearby living hostile units, including vehicle crew. 21
droneFeedLocal internal Starts or stops the native client live-feed worker without touching another inactive owner. 20
droneFeedPrune internal Removes dead/deleted feed sources and releases idle server/client workers. 14
droneFeedRequest alias Authenticates curator changes to named feed audiences. 20
droneFeedStart internal Accepts server feed-service activation and schedules local worker ownership. 12
droneFeedTick internal Selects the newest eligible feed and handles JIP, role/body changes and unavailable sources. 28
droneFollowCenter internal Resolves a live assignment center without choosing fixed sides or named objects. 24
droneHandleRequest internal Revalidates the owner and configured access immediately before changing server state. 51
droneIssuePilot internal Dispatches server orders to vehicle, current pilot and previous pilot localities. 26
droneNavigate internal Updates follow, patrol and hold navigation while retaining patrol progress through alerts. 53
dronePilotApply internal Applies server-authorized UAV orders only at current AI/vehicle localities. 101
dronePilotCommand internal Accepts only bounded server orders and schedules local AI work. 19
droneReleaseWatch internal Releases a temporary watch PATH override owned by this registration. 23
droneReply internal Displays server-authorized drone request feedback. 12
droneRequest internal Authenticates a curator or configured operator before scheduling a server assignment. 17
droneRestorePilot internal Restores AI features and group state saved before this registration took control. 23
droneServerTick internal Scans registered UAVs without scheduled permanent loops. 17
droneSound internal Plays one transient drone cue from the server without JIP replay. 14
droneTickOne internal Runs one UAV controller scan and publishes late-join-safe status. 78
droneWatchTick internal Runs a bounded watch lease and stops turning during manual control or locality loss. 34

Ready room 29

Assembly policy, records, votes, chat and release handoff. System internals

FunctionExposurePurposeLines
readyRoomRelease public Releases the current assembly manually without any built-in mission movement or intro. 14
readyRoomStart public Starts an opt-in configurable server ready room and activates participating clients. 46
readyRoomStop public Cancels the server ready room and restores client UI/audio without running release callbacks. 17
readyRoomAck internal Delivers a matched server result without letting stale pages clear newer drafts. 22
readyRoomAdminReply internal Reports curator-request acceptance from the authoritative server. 12
readyRoomAdminRequest alias Authenticates explicit curator start/reset/release/cancel controls. 25
readyRoomAudioFinish internal Releases owned audio handlers and restores only the channels this room changed. 23
readyRoomAudioStart internal Optionally owns a configured music bed and game-channel mute across dialog reloads. 38
readyRoomAudioTick internal Fades the optional music bed with the authoritative countdown and restores channels before handoff. 36
readyRoomClientSet internal Starts one client room worker and resets state only for a newer room epoch. 43
readyRoomClientStart internal Accepts only server room activation and defers UI lifecycle work to local context. 13
readyRoomClientTick internal Owns ready-room UI reopening, membership refresh and release handoff without loops. 46
readyRoomConfig internal Normalizes ready-room policy and separates public content from server callbacks. 55
readyRoomEligible internal Checks current server-owned audience membership for a human player. 15
readyRoomFinish internal Freezes the release decision once and emits a server-local extension hook. 24
readyRoomHandleRequest internal Applies owned readiness/vote/chat changes and replies privately to their author. 65
readyRoomHandoff internal Runs one local release or late-join hook after UI/audio and native pause have cleared. 29
readyRoomKey internal Routes Escape from the ready-room browser to the correct native pause menu. 13
readyRoomLoad internal Loads the packaged browser and binds only bounded local UI commands. 51
readyRoomPause internal Opens the native pause menu on mission display 46 while retaining drafts and entry state. 25
readyRoomProgress internal Calculates roster-sensitive countdown and rational skip-vote threshold. 17
readyRoomPublish internal Publishes one ready-room snapshot only when its public values change. 15
readyRoomReduce internal Applies one normalized readiness/vote/answer/chat operation without mutating its input record. 41
readyRoomRefresh internal Pushes the current public room state to the loaded local browser. 15
readyRoomRequest internal Authenticates bounded ready-room requests before scheduling server-local mutation. 18
readyRoomRows internal Builds public roster flags without broadcasting private questionnaire answers. 25
readyRoomSend internal Sends one local UI operation with a monotonic per-connection request sequence. 20
readyRoomServerTick internal Updates readiness, roster changes and the release countdown using one CBA worker. 18
readyRoomWelcome internal Applies server audience membership and restores only the caller private answer draft. 19

Solar commissioning 28

XOR pairing, active-low flags, coupled dials, dwell and the player panel. System internals

FunctionExposurePurposeLines
solarClose public Closes only the native solar display and ends its heartbeat/queued edits. 13
solarIsSolved public Queries authoritative commissioning completion for downstream power/services. 13
solarOpen public Requests server authorization before displaying one native commissioning console. 17
solarRegister public Registers a solvable commissioning console with explicit power and role prerequisites. 50
solarSend public Sends monotonically sequenced primitive commissioning operations from the local player. 14
solarUnregister public Removes a console and ends its solved signal without changing mission story state. 20
solarCanUse internal Checks physical operator eligibility and site-defined upstream access. 20
solarClientAck internal Routes authorized acknowledgements to the matching opening request or browser page. 33
solarClientClear internal Removes owned commissioning actions, browser and worker. 14
solarClientEnable internal Accepts server-only monotonic activation for native commissioning actions and UI. 19
solarClientTick internal Maintains registered actions, context validity, bounded requests and live calibration contact. 59
solarCreate internal Builds a provably solvable commissioning challenge from validated seed data. 25
solarDwell internal Advances only continuously valid calibration dwell and completes commissioning once. 18
solarHandleRequest internal Owns replay handling and cooperative engineer contact without stale dial heartbeats. 40
solarLabels internal Supplies localized commissioning interface labels to the packaged browser. 50
solarLoad internal Binds the packaged commissioning page to bounded generation-specific local requests. 43
solarNumbers internal Validates bounded integer vectors used by commissioning puzzles. 11
solarParity internal Checks unique return pairing against every four-bit row syndrome. 17
solarPublishSites internal Publishes safe native console metadata without server callbacks. 20
solarReduce internal Applies parity, control-word and dial edits with strict stage ordering and immutable input. 49
solarRefresh internal Pushes only matching-generation commissioning snapshots to the current native browser. 28
solarReply internal Delivers server acknowledgements to the terminal client bound to the current player body. 17
solarRequest internal Authenticates bounded commissioning packets before local atomic processing. 24
solarServerTick internal Enforces continuous operator contact and voltage tolerance before commissioning. 62
solarShuffle internal Returns a bounded Fisher-Yates shuffle without mutating caller-owned arrays. 18
solarUnload internal Clears the owned browser context after display unload without closing another display. 14
solarVoltage internal Checks the coupled dial matrix against the displayed voltage tolerance. 17
solarXor internal Computes XOR of two validated four-bit input words. 15

Terminals 39

Boot phases, powered services, credentials, exports and shared channels. System internals

FunctionExposurePurposeLines
terminalClearChannel public Clears retained traffic or drops an unused named channel. 18
terminalClose public Closes only the owned terminal browser. 13
terminalGrant public Grants or revokes a server-owned credential scope without modifying mission inventory. 17
terminalHasExport public Checks a completed body-bound archive flag after server commit. 13
terminalOpen public Requests authorized normal or curator-only terminal access before creating a browser. 18
terminalRegister public Registers explicit terminal services, media/scope prerequisites, exports and a shared communications port. 110
terminalSeedChannel public Seeds configurable archive traffic without any built-in mission lore. 34
terminalSend public Sends one sequenced local-player terminal request. 14
terminalUnregister public Ends one terminal and its transfers, restores owned light visibility and releases server workers. 33
terminalActor internal Gets private body/identity-bound authorization and export state. 19
terminalApplyCommand internal Applies authorized phase, credential, service, export and communications operations. 85
terminalAuth internal Reads media presence, credential scope and per-console authentication from private state. 20
terminalAuthorize internal Resolves credential/media rules independently of physical station access. 18
terminalCanUse internal Rechecks physical actor access and optional live online supply. 19
terminalChat internal Logs bounded station or curator transmissions with server-owned callsigns and cooldown. 29
terminalClientAck internal Applies private views and acknowledgements only to the current owner/context/page. 35
terminalClientClear internal Removes only native terminal actions, UI context and local worker. 14
terminalClientEnable internal Accepts server-only monotonic terminal discovery/action activation. 19
terminalClientTick internal Maintains terminal actions, private views and bounded page-specific requests. 62
terminalCommand internal Normalizes bounded primitive operations without client-supplied code or targets. 33
terminalHandleRequest internal Revalidates queued terminal authority, applies one operation and replies only to its owner. 43
terminalLabels internal Supplies localized terminal labels without mission-specific content. 86
terminalLeaseMatches internal Binds UI closure cancellation to the exact old export lease, never a newer window. 11
terminalLoad internal Binds a self-contained terminal page to bounded server operations and page-specific acknowledgements. 46
terminalPhase internal Advances case opening, boot and supply-loss states on an authoritative clock. 25
terminalPowered internal Evaluates the live physical and server-configured power source. 15
terminalPublishSites internal Publishes discovery metadata without private credentials, archives or callback code. 20
terminalRefresh internal Pushes the latest private snapshot and trusted server clock to the current browser. 19
terminalReply internal Delivers a server-only private reply to the same current body and player identity. 18
terminalRequest internal Authenticates primitive terminal requests, actor identity, registration generation and bounded admission. 26
terminalServerTick internal Advances server terminal phases and cancels invalid transfers before a commit can occur. 33
terminalService internal Applies a registered service ID through native targets or a trusted server callback. 43
terminalShutdownServices internal Turns off explicitly mapped light/power/watch outputs on supply loss or release. 18
terminalSiteTick internal Advances one terminal while respecting callback-driven release/replacement. 46
terminalSnapshot internal Builds a private authorized terminal view without exposing server callbacks or session internals globally. 23
terminalText internal Bounds chat text, removes control characters and trims surrounding whitespace. 17
terminalTransferStatus internal Rejects stale, early or expired export commits against their reserved server session. 15
terminalTranslateView internal Localizes trusted metadata and callsigns while retaining player message text literally. 21
terminalUnload internal Ends the owned browser lease without cancelling a newer export window. 21

Weapon faults 23

Deliberate malfunctions, timed repair reservations and expanding pulses. System internals

FunctionExposurePurposeLines
weaponFaultApply public Explicitly faults a player firearm; both firearms can be selected. 26
weaponFaultClear public Clears only this service's faults and invalidates outstanding repairs. 22
weaponFaultPulse public Starts a finite server-owned expanding malfunction front in ASL coordinates. 18
weaponFaultRepairWeapon public Selects a carried faulty firearm, preferring the held weapon. 15
weaponFaultStart public Starts or stops the opt-in server-authoritative fault service. 25
weaponFaultStop public Stops server workers, removes faults and cancels repairs and pulses. 25
weaponFaultAdminRequest alias Authenticates targeted/global curator fault and repair operations. 22
weaponFaultBeginRepair internal Runs local progress while the server independently validates duration and conditions. 34
weaponFaultBind internal Adds optional ACE interactions or a vanilla repair action to one body. 32
weaponFaultCanRepair internal Checks physical conditions and configured specialist classes/traits. Server callers supply private fault records. 28
weaponFaultClientEnable internal Accepts monotonic server service activation for JIP clients. 21
weaponFaultClientReset internal Removes owned local workers, actions and firing interceptors. 25
weaponFaultClientTick internal Maintains local actions, owner firing lock and vanilla progress through body changes. 65
weaponFaultConfig internal Normalizes independent weapon-fault repair policy. 25
weaponFaultFeedback internal Displays whitelisted server repair feedback. 12
weaponFaultFront internal Computes a finite expanding fault front; negative means not started. 13
weaponFaultHandleRequest internal Owns exclusive repairs and prevents cross-target, early or replayed completion. 45
weaponFaultRepairStatus internal Validates a repair token, revision, owner and authoritative time window. 17
weaponFaultRequest internal Authenticates repair requests and queues server-local handling. 15
weaponFaultServerTick internal Continuously validates repair sessions and advances finite expanding pulses. 36
weaponFaultState internal Pure immutable firearm selection and revision transition for faults. 21
weaponFaultSync internal Accepts monotonic owner snapshots without touching ACE jam state. 16
weaponFaultUnbind internal Removes only this service's local repair actions. 19

Transfer power 22

Charge window, safe RUN band, trips and server-authoritative supply. System internals

FunctionExposurePurposeLines
powerHasSupply public Checks current server records and physical objects before authorizing a powered service. 15
powerRegister public Registers explicit source and transfer objects for a native server-owned power site. 54
powerSetInput public Enables or disables an explicitly registered upstream source. 16
powerUnregister public Removes one site, restores its explicitly controlled props and signals downstream power loss. 26
powerBatteryAck internal Authenticates an inventory acknowledgement and queues transaction completion. 13
powerBatteryConsume internal Removes one battery on the player's owner and acknowledges the reservation. 24
powerBatteryFinish internal Commits a confirmed battery reservation or returns a removed item if the site changed. 30
powerBatteryRefund internal Returns a locally removed battery once when a server reservation cannot commit. 21
powerBatteryRequest internal Reserves a power source for one authenticated battery transaction. 40
powerClientClear internal Removes local power controls and their worker on stop or mission end. 15
powerClientEnable internal Accepts monotonic server activation for local physical transfer controls. 19
powerClientTick internal Binds generation-specific physical switch actions for native power sites. 54
powerHandleRequest internal Rechecks authority and locality-independent physical conditions before atomic lever mutation. 30
powerInput internal Evaluates authoritative physical and mission-defined upstream supply. 16
powerLimits internal Normalizes capacitor timing and safe connection thresholds. 20
powerPublishSites internal Publishes safe power-site metadata and activates client actions only while sites exist. 19
powerReply internal Displays localized server-owned transfer state to the requesting player. 19
powerRequest internal Authenticates bounded player switch requests and rejects stale site registrations. 20
powerServerTick internal Advances registered power sites atomically and publishes bounded meter traffic. 49
powerTransferStep internal Advances the shared transfer lever/capacitor/trip state without game objects. 37
powerUnbind internal Removes only this service's local actions from a transfer prop. 13
powerVisual internal Updates only explicitly mapped transfer animations and warning texture. 27

Wardrobe 17

Arsenal policy, entry checks, loadout handling and self actions. System internals

FunctionExposurePurposeLines
wardrobeApplyStartingGear public Applies the configured starting gear on the local client, once per session. 60
wardrobeBuildArsenal public Builds the wardrobe item list from the effective policy. 224
wardrobeClose public Closes the wardrobe state for the local player. 21
wardrobeGetConfig public Returns the effective wardrobe policy for the local machine. 147
wardrobeIsElectronics public Detects equipment that counts as restricted electronics for the wardrobe. 101
wardrobeIsExcluded public Applies the wardrobe restrictions to one item class name. 54
wardrobeOpen public Opens the wardrobe for the local player. Call with spawn. 145
wardrobePreset public Returns a ready-made wardrobe policy that can be extended by the mission. 35
wardrobeReset public Clears cached wardrobe item lists after a policy change. 14
wardrobeSanitize public Removes restricted electronics from a local unit. 37
wardrobeSetConfig public Merges wardrobe overrides into the local mission configuration. 28
wardrobeInit internal Initializes client-local wardrobe state and handlers once per session. 29
wardrobeIsVanilla internal Returns true when a config class comes from a vanilla Arma addon. 13
wardrobeMissionItems internal Reads playable mission slots from the saved mission.sqm for the wardrobe. 67
wardrobeOpenClient internal Remote entry point for the wardrobe. Runs the scheduled open locally. 17
wardrobeRegisterHandlers internal Registers the ACE Arsenal close handler used to re-apply wardrobe restrictions. 25
wardrobeSelfActions internal Adds the optional ACE self-interaction entry point. 36

Reconnect recovery 13

Epoch-guarded snapshots and seat-aware restoration after a reconnect. System internals

FunctionExposurePurposeLines
persistenceSetEnabled public Changes recovery collection and invalidates all earlier snapshots. 21
persistenceStart public Starts opt-in session recovery on the specified machine role. 61
persistenceAcknowledge internal persistenceAcknowledge handler for session reconnect recovery. 20
persistenceApplyRestore internal Accepts a server restore plan for the local player. 15
persistenceClientEnable internal Accepts the server's opted-in recovery startup, including JIP. 13
persistenceClientTick internal Advances bounded restore stages and periodic client snapshots. 74
persistenceFinishRestore internal Acknowledges a consumed plan and releases client recovery state. 19
persistenceForget internal Removes recovery data belonging to a dead or respawned body. 19
persistenceRequestRestore internal persistenceRequestRestore handler for session reconnect recovery. 87
persistenceRestoreSeat internal Restores an available vehicle seat, preferring the saved seat. 30
persistenceSnapshot internal persistenceSnapshot handler for session reconnect recovery. 41
persistenceZeusInit alias Optional UI integration; Utils has no dependency on the Zeus addon. 4
persistenceZeusRequest internal persistenceZeusRequest handler for session reconnect recovery. 26

Interaction circuits 6

Producer, gate and consumer evaluation with server revalidation. System internals

FunctionExposurePurposeLines
interactionAvailable internal Shared client/server circuit check. Returns [available, empty] after validating the target, completion state and every upstream input. 17
interactionClientInit internal Installs the ACE action on a consumer's target objects for every client and re-adds it after respawn, so late joiners see the same interaction. 33
interactionExecute internal Server-side completion of a consumer action. Re-validates owner, distance, liveness and the whole circuit before broadcasting the state variable and animation. 13
interactionInputs internal Resolves the consumer/gate input node IDs against directly synchronized neighbours. Returns [valid, inputs]; rejects missing, duplicate or ambiguous IDs. 21
interactionItemCount internal Counts matching items in a unit's inventory (or a container's direct cargo) for item-based producers. 26
interactionSignal internal Evaluates one producer or gate and returns [passes, detail]. Producers read items, object variables or mission variables; gates combine their own inputs. 56

Faulty optics 4

Conversion policy for faulty night vision and thermal equipment. System internals

FunctionExposurePurposeLines
faultyVision public [action, audience, units, nvg, scopes, binoculars, interval] 26
faultyVisionMap internal Exact config-driven mapping; never replace unknown/modded equipment by ancestry. 11
faultyVisionReplace internal Runs only where a unit is local. Rewrites class strings, preserving loadout data. 41
faultyVisionTick internal Per-unit periodic scan used by continuous mode. Converts supported worn, mounted and stored equipment, then reschedules itself while the policy is active. 11

AI balancing 3

Ownership balancing across server and headless clients. System internals

FunctionExposurePurposeLines
aiBalanceStart public Starts or stops the opt-in server AI ownership service. 31
aiBalanceReveal internal Reapply horde target knowledge after an AI group changes locality. 14
aiBalanceTick internal Server-side ownership balancer for AI created by any mission script or mod. 201

Eden modules 4

Module entry points for the Utils Eden attributes. System internals

FunctionExposurePurposeLines
moduleFaultyVision internal Eden module callback. Normalizes action/targets/categories and starts or stops the faulty-vision policy, optionally deferred to a synchronized trigger. 12
moduleInteraction internal Eden module callback for circuit consumers. Registers target objects and pushes the ACE action setup to all clients. 9
moduleWardrobe internal Opens or closes the wardrobe for synchronized or all players from Eden/Zeus. 33
moduleWardrobeSettings internal Applies an Eden/Zeus wardrobe policy for the mission. 65

Field utilities 17

Documents, flashlights, PASS, loadout recovery, blackout and cargo top-ups. System internals

FunctionExposurePurposeLines
blackout alias Disables terrain lamps while preserving configured safe circles. 36
flashlightsStart public Starts or stops opt-in shared player flashlight rendering locally. 39
flashlightsStop public Removes flashlight rendering, sources and the published local switch. 22
initDocument public Installs a local inspectable document using a mission or addon image. 27
loadoutRecoveryRequest alias Dispatches curator-authorized loadout saves/restores to player owners. 29
loadoutRecoveryStart alias Configures opt-in saved-loadout retention across player respawns. 27
passAlarmRequest alias Starts a timed manual PASS alarm or permits a nearby operator to stop it. 26
passStart public Starts/stops independent identification and casualty PASS beacons. 75
passStop public Retires native alarms and removes local PASS sources/actions/handlers. 51
prepareAmmo alias Tops up consumable cargo to a multiple of supplied operators' inventories. 43
cargoDeficits internal Calculates positive integer cargo top-ups without removing stock. 24
flashlightsTick internal Publishes the native switch and renders local player flashlight cones. 78
loadoutRecoveryApply internal Executes a server-authorized loadout operation on its owning machine. 30
passBindActions internal Installs local ACE identification controls and manual-alarm disabling. 38
passClientTick internal Renders synchronized identification/alert lights and one PASS audio source per body. 105
passServerTick internal Publishes one manual/casualty alarm epoch per physical player body. 40
passSignal internal Computes synchronized PASS phase and bounded flash intensity. 18