Files

4.9 KiB
Raw Permalink Blame History

Optional enemy reconnaissance drones

The supported package is Realistic Combat Drones by SalamiBoiDev, Workshop ID 65AD60E204191D37. Integration targets its 2.3.7 unarmed Prefabs/Drones/DJIBase/DJIBase.et airframe. Install the official package separately; Escape does not require it or include its assets. AI Use Drones, Vampire, the MANW variant and the RHS arsenal extension are not required.

Open Mods → Recommended mods → Recon drones, or HQ → Recon drones.

Setting Default Range Command
Maximum active drones (droneReconCount) 0 (disabled) 0–3 /esc mission drones set N
Launch cooldown (droneCooldownSeconds) 300 seconds 60–1800 /esc mission dronecooldown set N

Settings use the existing authenticated administration and saved mission configuration, and apply next round. Older profiles receive the disabled default. The page distinguishes installed/enabled settings from current-round readiness, active count and failure reasons. Enabling a setting does not install an addon.

Behaviour

After escape, HQ may dispatch an unarmed quadcopter from the squad responsible for a delivered sighting no older than 60 seconds. The living squad leader must carry a radio and be within 1.2 km of the reported location. The initial pad must have overhead clearance, be on land and be at least 100 m from players. Launch selection uses captured report coordinates, never the reported target's live position. Replayed reports and the drone's own reports cannot trigger launches. Nearby searches and squads already operating a drone are not duplicated.

A server autopilot drives the addon's stabilized flight controls. The addon supplies the actual airframe, physics forces, damage, rotor animation/audio and network updates. Flights climb before departure, travel towards the report and search for up to two minutes after reaching its area. The drone returns after searching or losing its operator/link. Flight time has a ten-minute upper bound; obstructed takeoff, destruction and player takeover release automatic control. Takeover preserves the player's aircraft. A returned drone stays at the launch site and resumes the addon's normal cleanup behaviour.

The reconnaissance sensor samples at most one living player per drone per second. It uses a 60-degree cone aimed at the reported search location, a 350 m range and a physical world/entity trace. The first implementation reports visible players on foot; it does not identify concealed vehicle occupants, inventory or weapons. This is an explicit geometric sensor, not native infantry perception or a thermal/smoke/weather simulation.

Observations require the original operator to remain conscious, within 1.8 km, with a clear physical link. Registered RCD jammers in range deny that link. The operator's squad must then have a usable HQ radio route: reports enter the existing delayed radio queue and only normal delivery updates HQ memory. Existing HQ response and mortar rules remain responsible for any response. Drones themselves have no weapons or explosive payload.

Bounds and optional API

  • Zero to three concurrent flights; a shared minimum launch interval.
  • Sixty-four allocations per round and a pause after three consecutive launch or pre-flight failures. Successful takeoff clears the failure streak.
  • Controls update at 20 Hz, add-on position packets at up to 10 Hz, and link/ camera checks at most once per second per drone. Jammer lookup is capped at 64 entries. No island-wide entity scan runs per frame.
  • All flight callbacks stop with the mission. Launches stop on an empty server; existing aircraft can finish their bounded flights.
  • Foreign types occur only inside a fixed dynamically compiled adapter after detecting the addon. Missing/incompatible APIs disable drones for that round.
  • The dynamic compiler is supported on dedicated servers and Workbench. Normal listen-server hosts skip this integration, matching the existing Cessna bridge.
  • Only the mission-created drone's simulation/battery callbacks are temporarily replaced; release restores them. Player drones and third-party files are not modified.

Verification

python3 tests/test_drone_recon.py executes the production scheduling, camera cone and control rules with native boundaries substituted. It also checks the optional dependency and HQ radio integration boundaries. Menu, settings migration and resource checks run through python3 tools/check.py.

The 21 October native evidence records powered takeoff/translation, injected takeover, unowned disarm and startup without the optional addon: seven assertions with no script/runtime failures. Engine resource/world/platform errors remain in both complete reports. Dedicated multiplayer, automatic sighting-to-launch-to-report flow, and a full search/return cycle remain mission-playtest requirements.