🚒BA Board
A standalone and highly realistic Breathing Apparatus (BA) Entry Control Board system for UK-style fire services in FiveM.
🚀 Features
📋 Fully functional BA Entry Control Board UI with drag-and-drop freetype areas
🧑🚒 Insert/remove tags per player with synced real-time status
⏱️ Dynamic Time To Whistle (TTW) and Time Of Whistle (TOW) calculation
🔁 Realtime ADSU/DSU alarm monitoring and flashing
🔊 Built-in audio alarms (evacuation tones, beeps)
🚨 EVAC system with acknowledge prompt
🧭 Supports multiple BA boards at once, each fully independent
✅ Works with
r_scba
(optional) andox_target
🔌 Fully exportable for use with other scripts
📦 Dependencies
This script requires:
We also recommend:
BA Board 3D Model - Available on our store
🧱 Installation
Follow instructions in Getting Started
Ensure that the dependancies are started BEFORE this resource in server.cfg
🧩 Commands
/dsu
Triggers DSU alarm
/withdraw
Triggers withdrawal alert
🛑 All commands only work while wearing an SCBA (If integration enabled).
🎯 Interactions
The system uses ox_target
to handle interactions with placed board props.
When looking at a board, options include:
Open BA Board – View the UI
Insert Tag – Insert your identity into the board
Remove Tag – Only available on the board you've tagged into
📤 Exports
Client Exports
exports["DH_BABoard"]:IsTagInserted() -- Get whether client's tag is inserted (BOOL)
exports["DH_BABoard"]:GetCurrentBoardId() -- Get current netID of board open (int)
exports["DH_BABoard"]:GetTagBoardId() -- Get netID of board client has tag in (int)
exports["DH_BABoard"]:GetTTW() -- Get current client's time to whistle
exports["DH_BABoard"]:GetTOW() -- Get current client's time of whistle
Server Exports
exports["DH_BABoard"]:GetWearersForBoard(boardId) -- Get all wearers with tags in the board
exports["DH_BABoard"]:IsPlayerOnBoard(playerId)-- Does the player have their tag in? (Bool)
exports["DH_BABoard"]:GetBoardFromPlayer(playerId) -- Get the board netID the player has tag in
⚙️ Configuration
-- 🔧 Prop model used for the BA board
Config.BAPropModel = "prop_ba" -- Change this if your server uses a custom model
-- 🚀 Enable or disable the spawn ba command
-- (ANY prop matching the above prop will work, it doesn't need to be spawned
-- by this script - Disable if using boot script or other spawning method)
Config.EnableSpawnCommand = true
-- Automatically detects if r_scba is active. Set to false to manually disable
-- integration.
Config.UseSCBA = GetResourceState("r_scba") == "started"
-- 📡 Update frequency (in ms) for sending pressure/TTW updates
Config.UpdateInterval = 1000
-- ⏱️ Time (in seconds) a player must be stationary before ADSU alert triggers
Config.ADSU_TriggerTime = 28
-- 📢 Minimum pressure before whistle alarm (in bar)
Config.WhistlePressure = 50
-- 🧪 TTW Scaling Values
Config.StandardWorkingDuration = 30 -- minutes @ 300 bar
Config.HardWorkingDuration = 15 -- minutes @ 300 bar
💬 Credits
Developed by: RP Works Modding
Targeting System:
ox_target
Last updated