Configuration
Edit config/config.lua for global settings and configured locations. Restart f5_airdrop after file changes. Changes to defaults or presets apply to future drops; they do not reconfigure an active drop.
The escrow distribution provides editable files in config/, locales/ and bridge/. Use these files for configuration, translations and framework integrations.
Configuration files
| File | Purpose |
|---|---|
config/config.lua | Framework, inventory, target, global defaults, automatic drops, locations and debug logging. |
config/announcement.lua | Server-only announcement audience rules. |
config/container_opening.lua | Animation profiles, model mapping, color variants and door-only clips. |
config/container_cargo.lua | Decorative cargo model palette and dimensions. |
locales/*.lua | Language dictionaries. |
bridge/ | Framework, inventory and target integrations. |
Use the existing Config tables. Do not add a second Config = {} later in the file, because that discards the previous configuration.
Server-wide options
| Option | Shipped value | Meaning |
|---|---|---|
Config.Locale | 'en' | Locale code; 12 supplied languages. |
Config.Framework.mode | 'auto' | auto, qb, qbx, esx, custom. |
Config.Framework.inventory | 'auto' | auto, ox, qb, qs, ps, codem, tgiann, esx_native, custom. |
Config.Framework.notify | 'auto' | Notification backend; framework selects framework notifications. See bridge behavior. |
Config.Framework.custom.base | 'qb' | Framework base for custom mode: qb, qbx or esx. |
Config.Inventory.imageUrl | 'auto' | Inventory image resolution or a %s item-name template. |
Config.Inventory.custom | {} | Custom inventory integration settings. |
Config.Target.system | 'auto' | auto, ox, qb, custom, none. none disables the supplied interaction. |
Config.Target.openLabel | 'target_open_drop' | Localization key or target label. |
Config.Target.openIcon | 'fas fa-parachute-box' | Target icon identifier. |
Config.Target.custom.base | 'ox' | ox or qb compatibility for a custom target. |
Config.Target.custom.resource | 'my-target' | Example resource name used only in custom mode; replace before enabling it. |
Config.CommandPermission | 'admin' | Framework command permission. See required permissions. |
Config.TimeBetweenAirdrops | 90 | Automatic-loop interval in minutes. |
Config.MinActivePlayers | 1 | Minimum total online-player count. |
Config.CreateAirdropsWithoutPlayers | false | When enabled, permit creation below the minimum; direct placement may be used. |
Config.NoPlayersDelayTime | 60 | Default no-player delay in seconds. |
Config.ContainerGravityFactor | 1.45 | Container gravity factor. |
Config.AnnouncementEnabled | true | Master switch for the activation banner. |
Config.Debug | false | Enable categorized debug messages. |
Global-only options cannot be placed in a drop's settings. In particular, framework, inventory, target-system selection, gravity, announcement audience, automatic interval and minimum-player policy remain server-wide.
Global drop defaults
The groups below are used as defaults and can also be selectively overridden per drop. See Per-Drop Settings for configuration options, accepted values and units.
| Group | Key shipped values |
|---|---|
Config.Airdrop | Arrival 180 s, lifetime 1200 s, Cargobob, pilot s_m_m_pilot_01, container m23_2_prop_m32_container_01a, speed 17.0, spawn distance 300, spawn height 250, flight height 50. |
Config.Stash | Weight 250000, slots 30; label defaults to the translated drop label. Weight is passed to the inventory in its own units. |
Config.Target.distance | 2.5 world units from the container front. |
Config.Flares | Default green, scale 2.5, density 1.0, stop at landing plus 5 s. |
Config.Flares.Countdown | Enabled, height 2.6, heading 0, draw distance 50. |
Config.CrateCountdown | Enabled, height 0.5, heading 0, draw distance 50. |
Config.Flares.Sound | Out_Of_Bounds_Timer / DLC_HEISTS_GENERAL_FRONTEND_SOUNDS, range 50, interval 1000 ms, stop after drop plus 5 s. |
Config.UnlockSound | Unlock sound: range 100, volume 0.45, full-volume distance 20. |
Config.OpenSound | Opening sound: range 50, volume 0.35, full-volume distance 2. |
Configured locations
Config.AirdropCoords contains eight drop locations with their own loot, effects, blips, lock durations and timing overrides.
| ID | Location | Coordinates | Arrival / lifetime / lock, seconds |
|---|---|---|---|
1 | Grand Senora - Tactical Reserve | 1080.78, 3048.94, 40.90 | 360 / 1800 / 420 |
2 | Sandy Shores - Medical Relief | 2474.46, 3770.47, 41.35 | 150 / 1080 / 120 |
3 | Grapeseed - Field Provisions | 2137.06, 5180.23, 55.66 | 120 / 900 / 90 |
4 | Paleto Forest - Expedition Gear | -1093.62, 4915.13, 215.25 | 240 / 1500 / 180 |
5 | Harmony - Roadside Recovery | 751.98, 2784.53, 66.97 | 180 / 1200 / 150 |
6 | Davis Quartz - Industrial Cargo | 2953.74, 2794.23, 40.79 | 210 / 1320 / 210 |
7 | Elysian Island - Smuggler Cache | -529.65, -2830.31, 6.0 | 300 / 1680 / 300 |
8 | LSIA - Electronics Shipment | -1335.84, -3044.42, 13.94 | 270 / 1440 / 240 |
| Field | Type | Purpose |
|---|---|---|
coords | vector3 | Finite destination coordinates. Ground height must suit the location. |
name | String, optional | Location name; used as a fallback when customName is absent. |
customName | String, optional | Drop name and schedule label. Config Drops cards display blipConfig.label. |
flareColor | String | Named color in Config.Flares.colors. |
smokeColor | Three-number array, optional | Explicit RGB, overriding the named default. |
smokeScale | Number, optional | Smoke size, 0.1..10. |
light | Table, optional | Light properties described below. |
blipConfig | Table, optional | Location blip configuration; defaults to Config.Blip when absent. |
lockTime | Number, optional | Nonnegative seconds; omitted means 120, explicit zero disables locking. |
items | Array | Item definitions with names, quantities, chances and optional metadata. |
settings | Table, optional | Valid nested per-drop overrides. |
Example replacement for one entry, placed after the main location table:
Config.AirdropCoords[1] = {
name = 'Airfield supply',
customName = 'Airfield supply',
coords = vector3(848.48, 2991.03, 44.28),
blipConfig = {sprite = 478, color = 2, scale = 1.0, shortRange = false, label = 'Airfield supply'},
flareColor = 'green',
smokeColor = {80, 220, 120},
smokeScale = 3.0,
light = {
enabled = true,
color = {80, 220, 120},
radius = 35.0,
intensity = 25.0,
},
lockTime = 60,
items = {
{name = 'pistol_ammo', amount = {2, 4}, chance = 75},
{name = 'heavyarmor', amount = 1, chance = 100},
},
settings = {
Airdrop = {arrivalDelay = 30, lifetime = 600},
Stash = {label = 'Airfield supply', slots = 30},
},
}
The item names must exist in your selected inventory. The example changes only ID 1; it does not remove the other shipped locations.
Smoke and light
Named colors are red, green, blue, yellow, purple, orange and white. Their RGB values are defined in Config.Flares.colors.
| Effect | Accepted value | Default when omitted |
|---|---|---|
smokeColor | Three RGB channels, 0..255 | Named flare color, then default color. |
smokeScale | 0.1..10 | Flares.scale. |
light.enabled | Boolean | true. |
light.color | Three RGB channels, 0..255 | Smoke color. |
light.radius | 1..100 | 35. |
light.intensity | 0..100 | 25. |
Set smokeColor, smokeScale and light directly on a location, as shown in the example above. In the admin panel, use the effects editor.
Flares.density controls smoke opacity. Flares.stopStage selects container release (drop), landing (landing) or drop removal (cleanup). The first two use their corresponding extra-time setting. Flare sound has a separate stop timer, but always ends when the smoke effects are removed.
Blips
Config.Blip ships with sprite 478, color 5, scale 1.0, shortRange = false and a localized default label. Set a location's blipConfig to customize its map marker for manual, automatic and scheduled drops. The admin panel also provides blip controls for custom drops. Omitted sprite, color, scale, short-range and label fields use the global values. flashing = true enables flashing.
The map also displays a fixed zone marker around the destination. It has no separate configuration option.
Settings precedence
Values selected for a drop in the panel or preset override the selected location's settings. Location settings override the global defaults. Unspecified options retain their defaults.
Airdrop.noPlayersDelay uses Config.NoPlayersDelayTime when no other value is configured for that option.
Use false or 0 where the setting permits them to disable an option. Saved schedules retain their drop settings; see saved drop settings.