veafNamedPoints — Named Map Positions¶
Module ID: NAMEDPOINTS | File: veafNamedPoints.lua
Purpose¶
Allows mission makers (and players with appropriate permissions) to define named positions on the map. Named points can be referenced by other systems (convoys, missions, smoke commands) and can optionally expose an ATC frequency or TACAN channel.
Dependencies¶
veafMarkers— for the_name pointmarker commandveafRadio— optional radio menu entry
Enable¶
veafNamedPoints.initialize()
Configuration (mission.yaml)¶
modules:
NAMEDPOINTS:
enabled: true # default: true
logLevel: info # optional log level override
custom_points: # pre-defined named points
- name: "Battle Area Alpha" # point name (referenced in commands)
lat: "41.123456" # latitude as string (decimal degrees)
lon: "44.987654" # longitude as string (decimal degrees)
- name: "FARP Bravo"
lat: "41.200000"
lon: "44.100000"
| Field | Type | Default | Required | Description |
|---|---|---|---|---|
enabled |
boolean | true |
No | Enable or disable the module |
logLevel |
string | (global) | No | Per-module log level override |
custom_points |
object[] | [] |
No | Pre-defined named points |
custom_points[].name |
string | — | Yes | Point name — referenced in spawn commands and radio menus |
custom_points[].lat |
string | — | Yes | Latitude as a decimal string (e.g. "41.123456") |
custom_points[].lon |
string | — | Yes | Longitude as a decimal string (e.g. "44.987654") |
Coordinates are geographic (WGS84). Use decimal degrees as strings.
Minimal example¶
modules:
NAMEDPOINTS:
enabled: true
custom_points:
- name: "BULLSEYE"
lat: "41.100000"
lon: "43.850000"
Key Constants¶
| Constant | Default | Description |
|---|---|---|
veafNamedPoints.Keyphrase |
"_name point" |
Marker command prefix |
veafNamedPoints.RadioMenuName |
"NAMED POINTS" |
F10 submenu label |
Pre-defining Points in mission-script.lua¶
Named points can be pre-defined programmatically. addPoint(name, point) takes a vec3 ({x=…, y=0, z=…}; y defaults to 0). ATC/TACAN/ILS/tower data is attached via addDataToPoint(point, data):
veafNamedPoints.initialize()
-- Add a static named point
local point = veafNamedPoints.addPoint("FARP Alpha", { x = 123456, y = 0, z = 654321 })
-- Attach ATC/TACAN/tower/ILS data to the point
veafNamedPoints.addDataToPoint(point, {
atc = true,
tower = "V131, U260",
tacan = "16X BTM",
ils = "110.30",
})
addAirbases() bulk-adds every airbase on the map (called automatically by initialize()); there is no per-airbase add function. addCities() likewise adds the theatre's cities, as hidden points: a city name then works as a convoy's destination, a shortcut's position or a transport mission's start, and the weather "at the closest point" knows them. The lists come from the game's files (see The theatres' cities); a theatre that has none yet (Kola, Iraq) says so in dcs.log at start.
A batch of points declared by a script¶
addPoint writes into the points table, which initialize() empties before filling it: a point added before initialize() is lost.
A mission that builds its own points from its data (BFR, with its airfields' TACAN) declares them as a batch instead, before or after initialize():
veafNamedPoints.declarePoints({
{ name = "Kobuleti", point = veafNamedPoints.addDataToPoint(coord.LLtoLO(41.93, 41.86), { tacan = "67X KBL" }) },
{ name = "Senaki", point = { x = -281000, y = 0, z = 648000 } },
})
Each entry has the shape of initialize(customPoints); an entry without a name or a position is skipped, with a line in the log.
Player Marker Command¶
Players can create named points via map markers (if allowed by security):
_name point Alpha
Places a named point called "Alpha" at the marker position.
Referencing Named Points¶
Named points can be used as destinations in spawn commands:
_spawn convoy, dest Alpha, speed 40
A convoy accepts several dest and walks the points in the order written, so an itinerary can be composed out of named points:
_spawn convoy, dest Alpha, dest Bravo, dest Charlie, speed 40
See veafSpawn.
See Also¶
- veafSpawn — uses named points for convoy destinations
- Lua API Reference — full
veafNamedPointsAPI