Skip to content

Naming & Setup Guide

How AEGIS Works (30-Second Version)

Real-world IADS don't work like DCS's default behavior where every SAM has its radar on from mission start. In a real network, early warning radars scan the sky and feed threat data to SAM sites, which stay silent until they have something to shoot at. Kill the early warning radar and the SAMs lose their picture — they have to turn on their own radars intermittently, making them vulnerable.

AEGIS models this. Your EW radars provide the picture. Your SAMs start dark and invisible on RWR. When the EW detects a contact inside a SAM's activation range, that SAM lights up and engages. When the EW dies, the SAMs degrade to intermittent EMCON cycling — radar on briefly, then off, unpredictably.

The entire network is wired together by naming convention. You name your DCS groups following a pattern, and AEGIS discovers them, figures out who talks to whom, and runs the network. No configuration files, no linking scripts, no drag-and-drop — just names.

The Sector Model

              SECTOR: NORTH
    ┌────────────────────────────────┐
    │                                │
    │  EW-NORTH  <── PWR-EW-NORTH   │
    │      │                         │
    │      │ radar contacts          │
    │      ├──────────┐              │
    │      v          v              │
    │  SAM-SA10    SAM-SA6           │
    │  NORTH-1     NORTH-2           │
    │      │                         │
    │      v                         │
    │  PD-SA15-NORTH-1               │
    │  (bodyguard for SA-10)         │
    │                                │
    └────────────────────────────────┘

The sector name in the group name IS the network connection. There is no other configuration.

Prefixes at a Glance

The prefix determines what the group does in the network:

Prefix Role Example
EW- Early warning radar — provides the picture EW-NORTH
SAM- SAM site — starts dark, activates on EW cue SAM-SA10-NORTH-1
PD- Point defense — bodyguard, slaves to nearest parent PD-SA15-NORTH-1
PWR- Power source — kill it, linked node goes permanently dark PWR-EW-NORTH
EA- Jammer aircraft — opposing coalition, suppresses IADS EA-GROWLER-1

The prefix determines the role, not the system type. An SA-15 named SAM-SA15-... is a standalone SAM. The same SA-15 named PD-SA15-... is a bodyguard.


Sectors — Why They Matter

A sector is a named group of nodes that share an EW radar feed. The sector name is freeform — NORTH, SOUTH, ALPHA, COASTAL, DOWNTOWN, AIRBASE — anything you want.

  • Same sector name = same network. EW-NORTH feeds SAM-SA10-NORTH-1 and SAM-SA6-NORTH-2 because they all contain NORTH.
  • Different sectors are independent. SAM-SA10-SOUTH-1 gets nothing from EW-NORTH.
  • Multiple EWs in one sector = redundancy. Kill EW-NORTH, and EW-NORTH-2 keeps feeding contacts to the sector's SAMs.
  • No EW in a sector = autonomous. SAMs start EMCON cycling from mission start — they have no eyes, so they cycle their own radar.
  • The EW is the network organically — it's both the sensor and the C2 node.

Group Reference

EW Radars

Format: EW-{SECTOR}[-{ID}][-DET{range}]

Example What It Does
EW-NORTH EW radar in sector NORTH, no detection limit
EW-NORTH-2 Second EW in NORTH (redundancy)
EW-NORTH-DET120 EW with 120 NM detection range cap
EW-NORTH-2-DET80 EW #2 in NORTH, capped at 80 NM

The DCS group should contain an EWR unit (1L13, 55G6, EWR P-37, etc.). Multiple EWs in a sector provide redundancy — the SEAD pilot has to kill them all to blind the sector.

The DET suffix limits how far the EW can see. This models degraded radars, terrain masking, or doctrinal placement — a hilltop 1L13 and a mobile P-19 don't have the same effective range. A global default can be set via ewDetectionRange in the config (0 = no limit).

EW placement matters

AEGIS uses DCS's getDetectedTargets() to get radar contacts, which means DCS handles line-of-sight, terrain masking, and altitude filtering. An EW placed in a valley behind a mountain ridge will have blind spots that AEGIS can't fix — it only sees what DCS says the radar sees. Place your EWs on high ground with good sightlines, just like the real thing.

Also keep in mind that SAMs outside the EW's detection radius won't get contacts. If your SA-10 is 200 NM from the nearest EW and the EW can only see 150 NM out, that SA-10 is never getting a cue — the crew is drinking coffee. The SAM won't fall back to EMCON either, because its EW is still alive — it's waiting for a cue that will never come. Either move the EW closer or add a second EW nearer to the SAM.


SAM Sites

Format: SAM-{TYPE}-{SECTOR}-{ID}[-suffixes]

Example What It Does
SAM-SA10-NORTH-1 SA-10 in sector NORTH, default settings
SAM-SA6-SOUTH-2 SA-6 in sector SOUTH
SAM-SA6-SOUTH-2-NEZ SA-6 using No-Escape Zone (ambush mode)
SAM-SA2-NORTH-1-ACT35 SA-2 with 35 NM activation range
SAM-SA22-NORTH-1-MOB SA-22 Pantsir, mobile — position tracked periodically
SAM-SA11-SOUTH-2-NEZ25-MOB SA-11 mobile with NEZ at 25 NM

SAMs start dark and activate when the EW feeds a contact inside their activation range. If the EW dies, they degrade to EMCON cycling.

The prefix determines the role, not the system type

SAM-SA15-NORTH-1 is a standalone SAM that EMCON cycles independently. The same SA-15 named PD-SA15-NORTH-1 is a bodyguard that slaves to the nearest parent. Any SAM system can fill either role — you decide with the prefix.

TYPE must match a key in the supported types table. If it doesn't match, AEGIS falls back to UNKNOWN defaults (wez=15, nez=7, actRange=20).

Supported Types

Type WEZ (NM) NEZ (NM) Act Range (NM) Self-Protect Notes
SA2 24 10 30 No
SA3 10 5 14 No
SA5 125 60 150 No needsPower=true
SA6 14 5 18 No v0.8.4-beta: was 18/6/22
SA8 7 3.5 9 No SHORAD
SA10 39 20 50 Yes
SA11 25 12 30 Yes v0.8.4-beta: was 18/8/22
SA13 2.8 1.4 4 No
SA15 8 3 10 Yes Default PD type
SA19 4.4 2 6 No
HAWK 25 12 30 No
PATRIOT 80 35 95 Yes v0.8.4-beta: was 40/20/50
NASAMS 10 5 12 No
GEPARD 2 1 3 No
SHILKA 1.5 0.5 2 No
ROLAND 4 2 5 No
RAPIER 3 1.5 4 No
CurrentHill Mod
SA15CH 9 3 11 Yes TOR-M2
SA22 11 5 14 Yes Pantsir-S1 (v0.8.4-beta)
High Digit SAMs Mod WEZ/NEZ are real-world estimates
SA10B 40* 25* 50* Yes S-300PS variant
SA10C 49* 25* 63* Yes S-300PS ext range
SA12 41* 20* 50* Yes S-300V Gladiator (v0.8.4-beta: was 54/25/64)
SA12G 54* 25* 64* Yes S-300V Giant (v0.8.4-beta)
SA17 27* 12* 30* Yes Buk-M2
SA20A 81* 40* 95* Yes S-300PMU1
SA20B 109* 50* 120* Yes S-300PMU2
SA21 105* 50* 130* Yes S-400
SA23 54* 25* 64* Yes S-300VM Gladiator (v0.8.4-beta: was 108/65/130)
SA23G 108* 65* 130* Yes S-300VM Giant (v0.8.4-beta)
SA23V4 81* 40* 95* Yes S-300V4 Gladiator (v0.8.4-beta)
SA23V4G 205* 100* 220* Yes S-300V4 Giant (v0.8.4-beta)
SAMPT 65* 30* 75* Yes SAMP/T Aster 30 (v0.8.4-beta)

* HDS values are real-world estimates, not yet verified in-game. Expect these to change as testing continues. You can override any value with WEZ/NEZ/ACT suffixes in the group name.

Self-protect SAMs engage HARMs instead of going dark. See the How It Works page for the full HARM reaction tree.


Point Defense

Format: PD-{TYPE}-{SECTOR}-{ID}

Example What It Does
PD-SA15-NORTH-1 SA-15 bodyguard, pairs to nearest parent
PD-TOR-SOUTH-1 TOR bodyguard in SOUTH
PD-SA11-NORTH-1 SA-11 on bodyguard duty

Any SAM type works as PD. Common choices are SA-15 and SA-11 (short-to-medium range, self-protect capable). PD-SA11-NORTH-1 is an SA-11 assigned to bodyguard duty — it can engage inbound HARMs.

PD behavior:

  • Auto-pairs to the nearest AREA SAM or EW within 5 NM (pdAssociateRange config). Place your PD group close to what it's protecting.
  • Slaves to parent — parent goes ALERT, PD goes ALERT. Parent goes DARK, PD goes DARK.
  • HARM defense — when a HARM targets the parent, PD activates immediately to defend. PD stays hot through the full HARM cooldown, even after the parent goes dark.
  • Orphan promotion — if the parent dies, the PD promotes to a standalone SAM and starts EMCON cycling in the parent's sector.

The mission maker decides what's a PD

AEGIS doesn't care about the system type — the prefix determines the role. An SA-15 named SAM-SA15-NORTH-1 is a standalone SAM. The same SA-15 named PD-SA15-NORTH-1 is a bodyguard. You pick based on your mission design intent.


Power Sources

Format: PWR-{target-group-name} (minus the SAM-/EW- prefix)

Example Links To
PWR-EW-NORTH EW-NORTH
PWR-SA5-SOUTH-1 SAM-SA5-SOUTH-1
PWR-SA10-NORTH-1 SAM-SA10-NORTH-1

Power is per-node, not per-sector. Killing a power source makes the linked node permanently dark — no EMCON cycling, no recovery. The power group can be a DCS group or a static object.

Every SAM is self-powered by default. You only need PWR groups for sites where you want a power dependency as a DEAD target. SA-5 has needsPower=true in the database, so it always needs power.

Static objects: set the unit name (v0.8.4-beta)

Static object scanning is only available in the beta release. For static objects, make sure the unit name follows the PWR- or CMD- naming convention. The group name can be anything. This is because coalition.getStaticObjects() returns unit objects and getName() returns the unit name — not the group name. The ME does not sync them automatically.

Name matching is exact

PWR-EW-NORTH links to EW-NORTH. PWR-NORTH doesn't match anything. The name after PWR- must contain the target's type and sector components. Do not include the SAM- prefix — PWR-SA10-NORTH-1 is correct, PWR-SAM-SA10-NORTH-1 will fail (the linker prepends SAM- automatically).


EA Aircraft

Format: EA-{TYPE}-{ANYTHING}[-{ID}]

Example What It Does
EA-GROWLER-1 EA-18G Growler jammer
EA-PROWLER-NORTH-1 EA-6B Prowler
EA-SPARKVARK-1 Tornado ECR
EA-GENERIC-ESCORT-1 Generic jammer type

EA aircraft must be on the opposing coalition from the IADS they're jamming. A red IADS is jammed by blue EA aircraft.

Type Multiplier Notes
GROWLER 1.0 Baseline — EA-18G
PROWLER 0.8 EA-6B, slightly less effective
SPARKVARK 0.7 Tornado ECR
GENERIC 0.5 Any unknown type

AI EA aircraft are discovered at mission start. Player EA aircraft are discovered when they spawn in (S_EVENT_BIRTH). Players manage jammer modes, pod assignments, and passive ESM via F10 menu or the optional EA GUI overlay.

v0.8.4-beta Changes

v0.8.4-beta simplifies JAMMER_DB to GROWLER (mult 1.0) and HERC (mult 1.3, C-130 Compass Call). Use EA-HERC-NORTH-1 for Compass Call aircraft. PROWLER, SPARKVARK, and GENERIC are removed — names using old types fall back to UNKNOWN (mult 0.5).

EA is on by default. Set eaEnabled = false in your config to disable it. See Electronic Attack for full mechanics, burn-through physics, and pilot usage.


Suffixes — Advanced Options

Suffixes are optional, order-independent, and parsed once at mission load (zero runtime cost). NEZ-ACT30 is the same as ACT30-NEZ.

Suffix Applies To Effect Example
NEZ SAM Use No-Escape Zone (database default) SAM-SA10-NORTH-1-NEZ
NEZ25 SAM NEZ at custom 25 NM SAM-SA6-SOUTH-1-NEZ25
WEZ15 SAM WEZ at custom 15 NM SAM-SA2-SOUTH-3-WEZ15
ACT35 SAM Activation range at 35 NM SAM-SA2-NORTH-1-ACT35
MOB SAM Mobile — position polled periodically SAM-SA22-NORTH-1-MOB
DET120 EW Detection range cap at 120 NM EW-NORTH-DET120

WEZ vs NEZ vs ACT:

  • WEZ (Weapon Engagement Zone) — outer edge of what the SAM can shoot. SAM lights up early, engages at max range. Default for most systems.
  • NEZ (No-Escape Zone) — roughly half the WEZ. SAM stays dark longer and fires at much higher Pk. Ambush mode — targets inside the NEZ can't outrun the missile.
  • ACT (Activation Range) — when the SAM's radar turns on in integrated mode. Usually auto-derived from the zone + a system margin (DCS AI lead time). An explicit ACT suffix always overrides the auto value.

Zone overrides automatically adjust the activation range to preserve the system's built-in margin. For example, an SA-6 (wez=14, actRange=18, margin=4) with a NEZ override (nez=5) activates at 9 NM (5+4), not the default 18. See the Tuning Guide for full details on range parameters.

MOB (Mobile) — Opts a SAM into periodic position polling. AEGIS normally captures a SAM's position once at mission start and never updates it. Mobile SAMs with waypoints (SA-22 Pantsir, TOR, SA-8, SA-11 BUK on convoy escort, etc.) need position refresh so activation range checks, burn-through calculations, and F10 markers stay accurate. Position updates are tiered: idle SAMs (DARK, no contacts in sector) refresh every 60s, active SAMs (AWARE or above) refresh every 20s. Only SAMs with the MOB suffix are polled — static SAMs have zero overhead. Combinable with any other suffix: SAM-SA22-NORTH-1-NEZ-MOB-ACT20.


Example Mission Walkthrough

Here's a complete two-sector IADS setup:

Group Names

-- SECTOR NORTH: SA-10 with PD, plus an SA-6
EW-NORTH                    EW radar
SAM-SA10-NORTH-1             SA-10 (default WEZ)
PD-SA15-NORTH-1              SA-15 bodyguard for SA-10
SAM-SA6-NORTH-2              SA-6

-- SECTOR SOUTH: SA-2 ambush, SA-6, detection-capped EW
EW-SOUTH-DET120              EW radar (120 NM cap)
SAM-SA2-SOUTH-1-NEZ          SA-2 in ambush mode
SAM-SA6-SOUTH-2              SA-6

-- MOBILE: SA-22 on convoy escort (give it waypoints in ME)
SAM-SA22-NORTH-3-MOB         SA-22 Pantsir, position tracked

-- POWER (optional)
PWR-EW-NORTH                 Power for EW-NORTH

Setup Script

local iads = AEGIS:New("red", {
  debug = true,          -- verbose logging to dcs.log (disable for production)
})
iads:Activate()
iads:AddF10Menu()        -- F10 menu for status reports
iads:StartMapDebug(15)   -- F10 map markers, refreshed every 15s (debug only)

Debug mode

debug = true enables detailed logging and is great for testing. For a finished mission, remove it (or set false) and drop the StartMapDebug call — AddF10Menu is lightweight enough to keep.

What Happens When...

A strike package enters from the north:

  1. EW-NORTH detects the contacts and feeds them to NORTH sector.
  2. Contacts enter the SA-10's activation range (50 NM). SAM-SA10-NORTH-1 goes ALERT — radar on, weapons free. PD-SA15-NORTH-1 mirrors the SA-10 and goes ALERT.
  3. Contacts push toward the SA-6. At 18 NM, SAM-SA6-NORTH-2 goes ALERT.
  4. From the cockpit: clean RWR until you push inside 50 NM, then SA-10 spike. Push further and the SA-6 lights up.

SEAD flight kills EW-NORTH:

  1. Both NORTH SAMs lose their EW feed and drop to EMCON cycling — intermittent radar, unpredictable timing.
  2. PD-SA15-NORTH-1 follows its parent SA-10 into EMCON.
  3. The SEAD pilot sees sporadic spikes instead of constant tracking — harder to target with HARMs.

HARM fired at SA-10 (TOO mode):

  1. AEGIS detects the HARM via S_EVENT_SHOT. Crew begins processing (6-9s delay).
  2. SA-10 has selfProtect=true — it STAYS HOT and engages the HARM with its own missiles.
  3. PD-SA15-NORTH-1 also activates to defend.
  4. 15% chance the crew panics and goes dark instead.

SA-10 destroyed:

  1. PD-SA15-NORTH-1 loses its parent. It promotes to a standalone SAM in sector NORTH.
  2. Starts EMCON cycling with its own SA-15 parameters (wez=8, actRange=10).
  3. If it detects a target in its WEZ during an EMCON sweep, it engages. SA-15 has selfProtect=true, so it fights HARMs too.

SEAD pilot fires a PB HARM toward SOUTH sector:

  1. AEGIS detects the launch, polls the weapon at T+2s, and projects the trajectory.
  2. EW-SOUTH-DET120 is alive, so the network warns SAMs in the path.
  3. SAM-SA2-SOUTH-1-NEZ is dark (NEZ ambush). It stays dark but suppresses EMCON cycling for the HARM's ETA + 30s margin.
  4. If the SA-2 had been emitting, it would enter the full HARM reaction tree.

Common Mistakes

Mistake What Happens Fix
SAM in sector NORTH, EW in sector SOUTH SAM never gets contacts from that EW Sector names must match exactly
PD placed 10 NM from parent SAM PD doesn't pair (too far) Place within 5 NM (pdAssociateRange)
No EW for a sector SAMs EMCON cycle from mission start Add EW-{SECTOR} or accept autonomous ops
PWR-NORTH-1 (doesn't match a group) Power doesn't link to anything Name must contain target: PWR-EW-NORTH
EA aircraft on same coalition as IADS EA not discovered EA must be opposing coalition
Misspelled SAM type (SA10A vs SA10B) Falls back to UNKNOWN defaults Check the supported types table above
Spaces in group name Parser can't match Use hyphens only, no spaces
SAM-SA-10-NORTH-1 (extra hyphen) Type parsed as SA, not SA10 No hyphens within the type: SAM-SA10-NORTH-1
EW placed in a valley DCS radar has blind spots from terrain Place EWs on high ground with clear sightlines
SAM 200 NM from nearest EW EW can't see that far, SAM stays DARK forever Move EW closer or add a nearer EW

Dual Coalition

Untested

Dual coalition is supported by the architecture but has not been validated in a live DCS session. If you try it, let us know how it goes.

You can run IADS for both sides simultaneously:

local redIADS = AEGIS:New("red", { debug = true })
redIADS:Activate()

local blueIADS = AEGIS:New("blue", { debug = true })
blueIADS:Activate()

Same naming conventions on both sides. Each AEGIS instance only sees its own coalition's groups.


Quick Reference

All naming patterns in one place:

EW-{SECTOR}[-{ID}][-DET{range}]          EW radar
SAM-{TYPE}-{SECTOR}-{ID}[-suffixes]       SAM site (standalone)
PD-{TYPE}-{SECTOR}-{ID}                   Point defense (bodyguard)
PWR-{target-group-name}                   Power source
EA-{TYPE}-{ANYTHING}[-{ID}]               Jammer (opposing coalition)
Prefix Starts As Needs EW? Key Behavior
EW- Active Scans, feeds contacts to sector SAMs
SAM- DARK Yes for cues Activates on EW contact in actRange; EMCON if EW dies
PD- DARK Via parent Mirrors parent state; defends against HARMs; promotes if parent dies
PWR- Destroy to permanently kill linked node
EA- Suppresses IADS with physics-based jamming
Suffix Applies To Effect
NEZ SAM Ambush mode (No-Escape Zone)
NEZ25 SAM NEZ at custom range
WEZ15 SAM WEZ at custom range
ACT35 SAM Activation range override
MOB SAM Mobile — position polled periodically
DET120 EW Detection range cap

Next Steps

  • Quick Start — cheat sheet with all naming patterns and config options at a glance
  • How It Works — full state machine, HARM reaction tree, EMCON mechanics
  • Electronic Attack — jamming mechanics, burn-through physics, pilot usage
  • Tuning Guide — every parameter explained with recommended values