Skip to main content

Configuration

FAR uses convars for config values. For information on how to correctly install the far.cfg file, see here.

Value List

NameDefault Value
ic_far_disablePasscodesfalse
ic_far_kickCheatersfalse
ic_far_randomAlarmstrue
ic_far_minutesBetweenRandomAlarms30
ic_far_randomAlarmsOnlyIfNoActiveAlarmstrue
ic_far_sprinklerChance100
ic_far_alarmSystemTimeout-1
ic_far_allowBadResetsfalse
ic_far_realisticAudiofalse
ic_far_manualInteractionsfalse
ic_far_access_tokenNone
ic_far_whitelisted_ipsSee Below
ic_far_defaultControlPanelDistanceCheck2
ic_far_defaultPullStationDistanceCheck1
ic_far_defaultSprinklerValveDistanceCheck1
ic_far_defaultControlPanelModelsSee Below
ic_far_defaultPullStationModelsSee Below
ic_far_defaultDetectorModelsSee Below
ic_far_defaultSprinklerModelsSee Below
ic_far_defaultSounderModelprop_ic_sounder
ic_far_defaultStrobeModelprop_ic_strobe
ic_far_defaultSprinklerValveModelprop_ic_sprinkler_valve
ic_far_debugfalse

Values Explained

Disable Passcodes

ic_far_disablePasscodes

If this value is true, no Control Panels will require passcodes to access them. This means any player can access the Control Panel, including testing the panel, and making announcements.

note

This value does not override any Ace Permissions that have been set.

Kick Cheaters

ic_far_kickCheaters

If this value is true, the resource will kick any players it detects as "cheaters". Cheaters are determined by events sent to the server, and actions performed. False-positive as possible, but unlikely.

Regardless of this value, the resource will log events in the server console whenever it believes it has found a cheater.

Random Alarms

ic_far_randomAlarms

If this value and ic_far_randomAlarms are true, every ic_far_minutesBetweenRandomAlarms the resource will make 6 attempts to find a random fire Alarm System that is currently in Standby. If none are found, the resource will wait another ic_far_minutesBetweenRandomAlarms and repeat the process.

If a suitable system is found, the resource will make 3 attempts to find and activate a random component of the Alarm System, out of the Detectors, Sprinklers, and Pull Stations. If no suitable component is found, the resource will wait another ic_far_minutesBetweenRandomAlarms and repeat the process from the beginning.

If a suitable component is found, the system will enter into alarm.

tip

You can use the enableRandomAlarms export to change this value while the server is running.
For example, if you have a script that keeps track of online Firefighters, you might set ic_far_randomAlarms to false, and then use enableRandomAlarms to only enable Random Alarms when more than X Firefighters are online.

Minutes Between Random Alarms

ic_far_minutesBetweenRandomAlarms

This must be a whole number, more than 1. Suggested value range: 20 - 40.

Random Alarms Only If No Active Alarms

ic_far_randomAlarmsOnlyIfNoActiveAlarms

If this value and ic_far_randomAlarms are true, every ic_far_minutesBetweenRandomAlarms minutes the resource will first check if any alarms systems are current in alarm before selecting a random system to activate. If any system is active, the resource will wait another ic_far_minutesBetweenRandomAlarms minutes and repeat the process from the beginning.

note

Systems in WalkTest do not count as 'in alarm', but systems with active Isolations, Alarms, are Silenced, or are being tested, do count as 'in alarm'.

Sprinkler Chance to Extinguish Fire

ic_far_sprinklerChance

This value determines what percentage chance an activated sprinkler should extinguish a fire. Value should be between 0 and 100, where 0 is a 0% chance of the fire being extinguished, and 100 is a 100% chance of the fire being extinguished.

Alarm System Timeout

ic_far_alarmSystemTimeout

This value determines how many minutes need to pass before an Alarm System can be in a non-standby status, before it is automatically reset to standby.
By default the value is -1, which means Alarm Systems will never automatically reset.

For example, if you wanted all Alarm Systems that have been in Alarm for more than one hour to automatically reset, you would set this to 60.

Allow Bad/Invalid Alarm System Resets

ic_far_allowBadResets

If this value is true, Alarm Systems will temporarily go back to non-alarm after being reset with active components.
For example, resetting an Alarm System without resetting a Pull Station.
Alarm Systems will re-enter into Alarm after several seconds.

When this value is false, Control Panels will display an error message when there are still active components, and not allow a reset to go through.

Use Realistic Audio for Sounders

ic_far_realisticAudio

If this value is true, Sounders will add a short delay between the playing of the same audio file for Sounders, which adds a slight echo effect.

If this value is false, Sounder will play all audio files at the exact same time across all Sounders.

Manual Interactions (Target/Third-Eye Resource Support)

ic_far_manualInteractions (replaces ic_far_oxTargetSupport)

If this value is true, "Press E ..." interaction pop-ups and keybindings will be disabled, and instead events will be fired that can be used in editable/client/targeting.lua; to enable support for OxTarget, QBTarget, or any other target/third-eye resource, changes will need to be made in this file.

For OxTarget or QBTarget, simply uncomment the lines under the sections named either OxTarget or QBTarget.
For any other target/third-eye resource, use the provided event handlers and variables to add your own exports/events. Reach out in Discord if you need help adding other resources.

note

The events in editable/client/targeting.lua will not fire unless ic_far_manualInteractions is true.

HTTP Access Token

ic_far_access_token

This is an optional config value that is required if server owners wish to use the included API.
This value is blank by default, and while blank, the API will reject all HTTP requests.
To enable the API you must provide a value to be used as a token.

API Whitelist

ic_far_whitelisted_ips

This is an optional config value that allows server owners to only allow HTTP requests from specific IP addresses.

To allow to requests from any IP address, set this value to [].
The default value, 127.0.0.1, should allow access from the local machine only on most systems.

warning

Regardless of this config option, ic_far_access_token is required.

Default Control Panel Models

ic_far_defaultControlPanelModels

These values determine which prop/model should be used for each alarm status. For example, when using the default props provided with FAR, there is a version of the prop with flashing LEDs for when the alarm is active.

The default value for this option is:

set ic_far_defaultControlPanelModels {
"Disabled": "prop_ic_fire_panel",
"Standby": "prop_ic_fire_panel",
"Announcement": "prop_ic_fire_panel",
"WalkTest": "prop_ic_fire_panel",
"Isolations": "prop_ic_fire_panel",
"Alarm": "prop_ic_fire_panel_alarm",
"Silenced": "prop_ic_fire_panel_alarm",
"Test": "prop_ic_fire_panel"
}

Default Pull Station Models

ic_far_defaultPullStationModels

These values determine which prop/model should be used for when the Pull Station is un/pulled.

The default value for this option is:

set ic_far_defaultDetectorModels {
"triggered": "prop_ic_detector_triggered",
"normal": "prop_ic_detector"
}

Default Detector Models

ic_far_defaultDetectorModels

These values determine which prop/model should be used for when the Detector is un/triggered.

The default value for this option is:

set ic_far_defaultSprinklerModels {
"triggered": "prop_ic_sprinkler_triggered",
"normal": "prop_ic_sprinkler"
}

Default Sprinkler Models

ic_far_defaultSprinklerModels

These values determine which prop/model should be used for when the Sprinkler is un/triggered.

The default value for this option is:

set ic_far_defaultSprinklerModels {
"triggered": "prop_ic_sprinkler_triggered",
"normal": "prop_ic_sprinkler"
}

Debug

ic_far_debug

If this value is true, a ton of extra logs will be outputted to both the client and server consoles. Not suggested at all for production use, nor for when using the FAR Tool.


Permissions

There are several permissions for FAR, they are as follows:

Use Pull Stations

InfernoFireAlarmReborn.PullStations

This permission allows players to activate Pull Stations. By default, this permission is granted to all players.

Use Control Panels

InfernoFireAlarmReborn.ControlPanels

This permission allows players to interact with Control Panels. By default, this permission is granted to all players.

note

This permission only allows players to open the Control Panel NUI, if a panel requires a passcode, this permission does not bypass that requirement.

Reset Pull Stations

InfernoFireAlarmReborn.ResetPullStations

This permission allows players to reset activated Pull Stations.
By default, this permission is granted to all players.

note

Resetting a Pull Station does not "turn off" an alarm if it has been activated.

tip

We suggest changing this permission so only firefighters can do this.

Use Sprinkler Valves

InfernoFireAlarmReborn.SprinklerValves

This permission allows players to open and close sprinkler valves.
By default, this permission is granted to all players.

Trigger Random Alarms via Command

InfernoFireAlarmReborn.RandomAlarms

This permission allows players to use the /firealarm randomalarm command to generate a random alarm.
By default, this permission is only granted to admins (group.admin).

Reset Alarm Systems via Command

InfernoFireAlarmReborn.ResetAlarm

This permission allows players to use the /firealarm resetall and /firealarm resetlast commands to restart Alarm Systems.
By default, this permission is only granted to admins (group.admin).

Use FAR Tool

InfernoFireAlarmReborn.Tool

This permission allows players to use the FAR Tool.
By default, this permission is only granted to admins (group.admin).


Default Config File

# Inferno Collection Fire Alarm Reborn
#
# Copyright (c) 2019-2024, Christopher M, Inferno Collection. All rights reserved.

############################################################################
### NOTICE ###
### Be sure to check the documentation before changing these values. ###
### https://docs.inferno-collection.com/fire-alarm-reborn/configuration/ ###
############################################################################

#####################
### Configuration ###
#####################

### General ###
###############

# Completely disable the need for passcodes on all control panels
set ic_far_disablePasscodes "false"

# Kick suspected cheaters
set ic_far_kickCheaters "false"

# Randomly select an alarm system every configured interval and activate it
set ic_far_randomAlarms "true"

# How many minutes between each random alarm
set ic_far_minutesBetweenRandomAlarms "30"

# If there is any active system, do not trigger a random alarm
set ic_far_randomAlarmsOnlyIfNoActiveAlarms "true"

### Advanced ###
################

# Percentage chance that sprinklers will put out detected fires
set ic_far_sprinklerChance "100"

# Time in minutes before an alarm system automatically resets
set ic_far_alarmSystemTimeout "-1"

# Allow bad alarm system resets
set ic_far_allowBadResets "false"

# Enable Realistic Audio for Sounders
setr ic_far_realisticAudio "true"

# Distance to control panel before interaction option appears
setr ic_far_defaultControlPanelDistanceCheck "2"

# Distance to pull station before interaction option appears
setr ic_far_defaultPullStationDistanceCheck "1"

# Distance to sprinkler valve before interaction option appears
setr ic_far_defaultSprinklerValveDistanceCheck "1"

# Don't display "Press E to..." interactions
setr ic_far_manualInteractions "false"

# The default model to use for the Control Panel at each Alarm Status
setr ic_far_defaultControlPanelModels {
"Disabled": "prop_ic_fire_panel",
"Standby": "prop_ic_fire_panel",
"Announcement": "prop_ic_fire_panel",
"WalkTest": "prop_ic_fire_panel",
"Isolations": "prop_ic_fire_panel",
"Alarm": "prop_ic_fire_panel_alarm",
"Silenced": "prop_ic_fire_panel_alarm",
"Test": "prop_ic_fire_panel"
}

# The default model to use for the Pull Stations
setr ic_far_defaultPullStationModels {
"pulled": "prop_ic_pull_station_pulled",
"normal": "prop_ic_pull_station"
}

# The default model to use for the Detector
setr ic_far_defaultDetectorModels {
"triggered": "prop_ic_detector_triggered",
"normal": "prop_ic_detector"
}

# The default model to use for the Sprinkler
setr ic_far_defaultSprinklerModels {
"triggered": "prop_ic_sprinkler_triggered",
"normal": "prop_ic_sprinkler"
}

# The default model to use for the Sounder
setr ic_far_defaultSounderModel "prop_ic_sounder"

# The default model to use for the Strobe
setr ic_far_defaultStrobeModel "prop_ic_strobe"

# The default model to use for the Sprinkler Valve
setr ic_far_defaultSprinklerValveModel "prop_ic_sprinkler_valve"

# HTTP Access Token
set ic_far_access_token ""

# List of whitelisted IPs to allow HTTP requests from
set ic_far_whitelisted_ips [
"127.0.0.1"
]

# If the resource should run in debug mode
setr ic_far_debug "false"


###################
### Permissions ###
###################

add_ace builtin.everyone "InfernoFireAlarmReborn.PullStations" allow
add_ace builtin.everyone "InfernoFireAlarmReborn.ControlPanels" allow
add_ace builtin.everyone "InfernoFireAlarmReborn.ResetPullStations" allow
add_ace builtin.everyone "InfernoFireAlarmReborn.SprinklerValve" allow

add_ace group.admin "InfernoFireAlarmReborn.RandomAlarms" allow
add_ace group.admin "InfernoFireAlarmReborn.Tool" allow
add_ace group.admin "InfernoFireAlarmReborn.ResetAlarm" allow