# DCS World

## Connection Method

**UDP** — DCS World sends telemetry data over UDP via a Lua plugin that runs inside the game.

* **Default IP**: `127.0.0.1`
* **Default Port**: `4135`
* **Update Rate**: Up to 120 Hz

## Automatic Setup

1. Select **DCS World** as your source in DR Sim Manager.
2. Click the **Settings** icon (⚙) next to the source.
3. Click **Install DCS Plugin** — this will automatically install the telemetry Lua scripts to your DCS `Scripts/Hooks` folder.
4. Click **Check Installation** to verify the plugin was installed correctly.
5. Launch (or restart) DCS World.

The automatic installer handles both **DCS Stable** and **DCS Open Beta** installations. It installs the plugin hook file and all required module files.

## Manual Setup

If you prefer to install manually:

1. **Locate the Lua plugin file**:

   ```
   C:\Users\<Username>\AppData\Local\DRSimManager\Plugins\DCSWorld\
   ```

   Copy the file `DRSM_Telemetry.lua` and the entire `DRSM` folder.
2. **Paste into your DCS Scripts/Hooks folder**:
   * For **DCS Stable**:

     ```
     C:\Users\<Username>\Saved Games\DCS\Scripts\Hooks\
     ```
   * For **DCS Open Beta**:

     ```
     C:\Users\<Username>\Saved Games\DCS.openbeta\Scripts\Hooks\
     ```
   * If the `Hooks` folder does not exist, create it first.
   * Place both `DRSM_Telemetry.lua` and the `DRSM` folder inside `Hooks`.
3. Launch DCS World.

## Configuring the Port

If you need to change the UDP port (e.g., to avoid conflicts with other software):

1. Click the **Settings** icon next to the DCS World source in DR Sim Manager.
2. Change the **Listen Port** to your desired value.
3. Click **Apply** — if the plugin is already installed, DR Sim Manager will update the plugin's port configuration automatically.

## Available Telemetry

DCS World's plugin provides the most comprehensive flight telemetry available:

* **Orientation**: Pitch, Roll, Yaw
* **Acceleration**: Full 3-axis body-frame acceleration (in Gs, converted to m/s²)
* **Velocity**: Global velocity (transformed to local frame)
* **Angular Velocity**: Full 3-axis rotation rates
* **Speed**: True airspeed and indicated airspeed
* **Mach**: Mach number
* **Altitude**: AGL and MSL
* **Angle of Attack**: Per-aircraft AOA
* **Sideslip**: Angle of sideslip
* **Stall Warning**: Stall indicator
* **Wind**: Wind vector
* **Engine Data**: Left/right engine RPM, propeller RPM, rotor RPM, afterburner status
* **Surfaces**: Flaps, speedbrakes, landing gear (with individual gear positions), canopy
* **Weapons**: Cannon rounds fired, missiles/bombs/rockets released, flares and chaff counts
* **Damage**: Total damage percentage
* **Panel Shake**: Per-aircraft cockpit shake intensity
* **Vehicle Name**: Aircraft type detected automatically

### Telemetry Quality: ★★★★★

The DRSM telemetry plugin provides aircraft-specific data by reading cockpit instrument arguments. This means the telemetry adapts to each aircraft type for the most accurate motion experience.

## Recommended Starting Settings

DCS aircraft vary enormously — from slow prop trainers to high-G fighters:

* **Primary Cue Gain**: 50–80% for fighters, 70–100% for GA/props
* **Smoothing**: Low to medium
* **Washout**: Medium — fighters sustain high G for extended periods
* **Wind Simulator**: Enable if you have a wind output — DCS provides wind data

## Known Quirks

* **Modular plugin architecture**: The DCS plugin consists of a main hook file and several module files in a `DRSM` folder (aerodynamics, engine, rotor, weapons, etc.). All files must be present for full functionality.
* **Per-aircraft data**: The plugin reads aircraft-specific cockpit arguments for RPM, panel shake, and other systems. Some modules or older third-party aircraft may not expose all data.
* **Global-to-local velocity conversion**: DCS provides velocity in world space. DR Sim Manager converts this to the aircraft's local reference frame using orientation data.
* **Gravity compensation**: The plugin accounts for gravitational components in the acceleration data based on the aircraft's pitch and roll.
* **Plugin port updating**: If you change the listening port in DR Sim Manager's settings, the installed plugin files are updated automatically to match.

## Advanced: Telemetry Protocol Reference

The DCS World telemetry plugin is open source. The [repository README](https://github.com/DepartedReality/dcs-telemetry) documents the full telemetry data sent by the plugin — including all available data fields, their types, units, and an example packet.

## Troubleshooting

### No telemetry data

1. Verify the plugin files are in the correct `Scripts/Hooks` folder. Use **Check Installation** in DR Sim Manager's settings.
2. Make sure you are in a mission and flying an aircraft (not in the main menu or mission editor).
3. Check that the port numbers match — the plugin sends to the port configured in its Lua files, and DR Sim Manager listens on its configured port (default `4135`).
4. Check Windows Firewall — allow DCS World through the firewall for UDP.
5. If using DCS **Open Beta**, make sure the plugin is installed in `DCS.openbeta` not `DCS`.

### Plugin was working but stopped after a DCS update

* DCS updates generally do not affect the Scripts/Hooks folder. However, re-run **Check Installation** to verify files are still present.
* If DCS was reinstalled or moved to a different drive, reinstall the plugin.

### "Legacy" plugin files from older versions

* If you previously used an older version of the DRSM DCS plugin (e.g., `DCS_Telemetry.lua` or `DRSM_Telemetry_v2.lua`), the automatic installer will clean up these legacy files and replace them with the current modular version.

### Motion works for some aircraft but not others

* Some third-party aircraft modules may not expose all cockpit arguments. Core motion data (orientation, acceleration, velocity) should always work. RPM and other aircraft-specific data may be unavailable for certain modules.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.departedreality.com/dr-sim-manager/general/sources/dcs-world.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
