Skip to content

Interactive Commands Reference

Complete reference for interactive ATC control commands in radarcontrol.io.

Overview

Interactive control mode allows you to take direct control of aircraft and issue clearances using text commands or control buttons, similar to real-world ATC operations. Commands follow the format:

CALLSIGN command1 command2 ...

Multiple commands can be chained together in a single clearance.

Altitude Commands

Climb/Descend to Flight Level

Clear aircraft to climb or descend to a flight level.

Syntax:

  • cfl[LEVEL] - Climb/descend to flight level
  • c[LEVEL] - Climb/descend to flight level (short form)

Examples:

AAL123 cfl200        # Climb/descend to FL200 (20,000 ft)
DAL456 c350          # Climb/descend to FL350 (35,000 ft)
UAL789 cfl100        # Descend to FL100 (10,000 ft)

TIP

Flight levels are hundreds of feet (FL200 = 20,000 ft). The simulator automatically determines whether to climb or descend based on current altitude.

Climb/Descend to Feet

Clear aircraft to a specific altitude in feet.

Syntax:

  • c[ALTITUDE]ft - Climb/descend to altitude in feet

Examples:

AAL123 c35000ft      # Climb/descend to 35,000 feet
DAL456 c10000ft      # Descend to 10,000 feet

Speed Commands

Assign Speed

Assign a speed restriction to an aircraft.

Syntax:

  • s[SPEED] - Set speed in knots (IAS)

Examples:

AAL123 s400          # Speed 400 knots
DAL456 s250          # Reduce speed to 250 knots
UAL789 s320          # Speed 320 knots

Speed Guidelines

  • Normal cruise: 400-450 knots
  • Sequencing: 320-380 knots
  • Approach: 250 knots
  • Minimum: 180-200 knots

Direct To Commands

Clear Direct to Waypoint

Clear aircraft direct to a waypoint, bypassing other route waypoints.

Syntax:

  • dr [WAYPOINT] - Direct to waypoint
  • d [WAYPOINT] - Direct to waypoint (short form)

Examples:

AAL123 dr KMART      # Proceed direct to KMART
DAL456 d ROBUC       # Proceed direct to ROBUC
UAL789 dr DEN        # Proceed direct to DEN

Waypoint Validation

  • Waypoint name must be 3-5 characters
  • Waypoint must exist in the current airspace
  • Invalid waypoints will be rejected with an error message
  • This removes intermediate waypoints from the route

Route Commands

Set Entire Route

Clear aircraft to fly a complete route with multiple waypoints. This command must be the last command in a clearance as all remaining tokens are interpreted as waypoints.

Syntax:

  • r [WAYPOINT] [WAYPOINT] ... - Set complete route (space-separated)
  • route [WAYPOINT] [WAYPOINT] ... - Set complete route (full form)

Parameters:

  • Waypoints must be separated by spaces
  • All waypoints must exist in the current airspace
  • Minimum 2 waypoints required
  • Route command consumes all remaining tokens, so it must be last

Examples:

AAL123 r COORS DEN              # Route via COORS, DEN
DAL456 route KMART ROBUC DEN    # Route via KMART, ROBUC, DEN
UAL789 r KELSI COORS RAMMS DEN  # Multi-waypoint route
AAL123 cfl200 s400 r COORS DEN  # Climb FL200, speed 400, then route via COORS, DEN

Route Building with Autocomplete

  • Direct To (dr) - Removes intermediate waypoints, proceeds direct
  • Route (r) - Overwrites entire route with new waypoints
  • Route must be the last command - all tokens after r are waypoints
  • Autocomplete behavior:
    • After selecting a waypoint, a space is automatically added
    • Continue typing the next waypoint name to get suggestions
    • Autocomplete shows waypoint number (e.g., "waypoint #2")
    • Example flow: Type r C → Select COORS → Space added → Type D → Select DEN → Press Enter

Offset Commands

Lateral Offset

Apply a lateral offset to the aircraft's route.

Syntax:

  • or[NM] or offr[NM] - Offset right by nautical miles
  • ol[NM] or offl[NM] - Offset left by nautical miles
  • o[+/-NM] or off[+/-NM] - Offset with sign (+ = right, - = left)

Examples:

AAL123 or5           # Offset 5nm right of route
DAL456 ol3           # Offset 3nm left of route
UAL789 o+5           # Offset 5nm right
SWA321 o-5           # Offset 5nm left

TIP

Use offsets for lateral separation or weather avoidance. Offset is perpendicular to the current route.

Hold Commands

Issue Holding Pattern

Clear aircraft to hold at a waypoint.

Syntax:

  • h WAYPOINT - Hold at waypoint (uses ICAO standard defaults)
  • h WAYPOINT L|R - Hold with specified turn direction
  • h WAYPOINT L|R LEGNM - Hold with custom leg length
  • h WAYPOINT L|R LEGNM e TIME - Hold with EFC (Expect Further Clearance) time

Parameters:

  • WAYPOINT - Fix name (3-5 characters, must exist in airspace)
  • L or R - Turn direction (Left or Right), default: R (ICAO standard)
  • LEGNM - Leg length in nautical miles, default: 4nm (ICAO 1-minute standard)
  • TIME - EFC time in seconds (optional)

Examples:

AAL123 h KMART             # Hold at KMART (right turns, 4nm legs - ICAO standard)
DAL456 h KMART L           # Hold at KMART, left turns, 4nm legs
UAL789 h ROBUC R 10        # Hold at ROBUC, right turns, 10nm legs
SWA321 h KMART L 10 e 3600 # Hold with EFC at time 3600

ICAO Standards

The ICAO standard holding pattern uses:

  • Right turns (default)
  • 1-minute legs below FL140 (~4nm at typical speeds)
  • 1.5-minute legs at or above FL140 (~6nm)

For simplicity, the simulator defaults to 4nm legs at all altitudes.

STA Commands (Scheduled Time of Arrival)

Assign Scheduled Arrival Time

Assign a scheduled time for the aircraft to cross a waypoint.

Syntax:

  • sta WAYPOINT @ TIME - Schedule crossing time

Parameters:

  • WAYPOINT - Fix name (3-5 characters)
  • TIME - Crossing time in seconds (simulation time)

Examples:

AAL123 sta KMART @ 3600    # Cross KMART at time 3600
DAL456 sta ROBUC @ 4200    # Cross ROBUC at time 4200

TIP

Time is in seconds since simulation start. Aircraft will adjust speed to meet the constraint. Useful for metering and sequencing.

Handoff Commands

Transfer Aircraft to Another Sector

Hand off aircraft to the next sector.

Syntax:

  • ho SECTOR - Handoff to sector

Examples:

AAL123 ho ZDV        # Handoff to Denver Center (ZDV)
DAL456 ho ZKC        # Handoff to Kansas City Center (ZKC)

Command Chaining

Multiple commands can be combined in a single clearance. If using a route command, it must be the last command.

Examples:

AAL123 cfl200 s400 dr KMART        # Climb FL200, speed 400, direct KMART
DAL456 c35000ft s320 or5           # Climb 35000ft, speed 320, offset 5nm right
UAL789 cfl300 s450 r KMART DEN     # Climb FL300, speed 450, route KMART-DEN
SWA321 h KMART s250                # Hold at KMART (standard pattern), speed 250

Validation

  • Commands are executed in order
  • Invalid commands will reject the entire clearance
  • Waypoints must exist in the current airspace
  • Invalid waypoint names will be rejected before execution

Quick Reference

ALTITUDE
  cfl200, c200        Climb/descend FL200
  c35000ft            Climb/descend 35,000 ft

SPEED
  s400                Speed 400 knots

NAVIGATION
  dr KMART, d ROBUC   Direct to waypoint
  r COORS DEN         Set route (space-separated, must be last)
  or5, ol5            Offset 5nm right/left
  o+5, o-5            Offset with sign

HOLDING (defaults: right turns, 4nm legs)
  h KMART            Hold at KMART (ICAO standard)
  h KMART L          Hold at KMART, left turns
  h KMART R 10       Hold with 10nm legs
  h KMART L 10 e 3600 Hold with EFC

TIME
  sta KMART @ 3600    Cross KMART at time 3600

HANDOFF
  ho ZDV              Handoff to sector

EXAMPLES
  AAL123 cfl200 s400 dr KMART
  DAL456 c35000ft s320 h KMART
  UAL789 cfl300 s450 r KMART DEN
  SWA321 sta KMART @ 3600 s250

Interactive Mode vs Scripting Mode

Features Only in Interactive Mode

  • Holding Patterns - h KMART L 10 syntax
  • STA (Scheduled Time of Arrival) - sta KMART @ 3600 syntax
  • Button-based Controls - Point and click interface for common commands

Features Only in Scripting Mode

  • Turn Commands - aircraft.turn.left(), aircraft.turn.right()
  • Event Callbacks - aircraft.over(), aircraft.before(), aircraft.reach()
  • Traffic Queries - traffic.all(), traffic.byCallsign()
  • Event Handlers - onTick(), onSpawn(), onConflict()
  • Weather API - weather.windAt()
  • Utility Functions - flightlevel(), fl(), distance(), headingTo()

See the API Reference for scripting mode details.