-
Notifications
You must be signed in to change notification settings - Fork 4
Description
We need community help to expand DCS map coverage! Choose a missing map from the list below and contribute a marker script with representative airfields/airstrips for testing and QA.
Available DCS maps (pick one!) πΊοΈ
Pick a map that doesn't have markers yet:
| Map | In Work | In Database | Finished | Last Updated |
|---|---|---|---|---|
| Marianas | β | β | β | 2026-01-03 |
| Caucasus | β | β | β | 2026-01-03 |
| South Atlantic | β | β | β | - |
| Kola | β | β | β | - |
| Afghanistan | β | β | β | - |
| Iraq | β | β | β | - |
| Iraq North | β | β | β | - |
| East Afghanistan | β | β | β | - |
| Southwest Afghanistan | β | β | β | - |
| Sinai | β | β | β | - |
| Syria | β | β | β | - |
| Nevada | β | β | β | - |
| Persian Gulf | β | β | β | - |
| Normandy 1944 | β | β | β | - |
| The Channel | β | β | β | - |
| CW Germany | β | β | β | 2026-01-06 |
| Normandy | β | β | β | - |
Check existing scripts in
scripts/MapDatabaseTools/before starting to avoid duplicate work!
What to do (contributor checklist) π§
- Choose your map from the list above (comment on this issue to claim it!)
- Create
scripts/MapDatabaseTools/add_<mapname>_markers.py(use existing scripts as templates) - Script CLI:
python add_<mapname>_markers.py [--replace]to optionally clear existing data - Implement
def <mapname>_samples() -> List[Location]:returning sample locations - Include for each
Location(...):name,latitude,longitude,marker_typeicaoiata(if known, else empty string)elevation_m,runways(asRunway(...)objects)frequencies,country,tags,source,map
- Use
estimate_heading_from_name()for missing runway headings - Add comments for estimated/uncertain values (e.g.,
# elevation estimated from imagery) - Include at least 5-10 representative locations (mix civilian/military if applicable)
Example code snippet π
Location(
name="Guam International Airport",
latitude=13.4834,
longitude=144.7960,
marker_type=MarkerType.AIRPORT.value,
icao="PGUM",
iata="GUM",
elevation_m=91.0,
runways=[
Runway(name="06L/24R", length_m=3048, width_m=45, heading=None, surface="asphalt"),
Runway(name="06R/24L", length_m=2743, width_m=45, heading=None, surface="asphalt")
],
frequencies={"tower": "118.1 MHz", "ground": "121.8 MHz"},
country="United States (Guam)",
tags=["civilian", "international"],
source="OurAirports / DCS Marianas",
map="Marianas"
),There is a template script for adding new map markers: add_new_map_template.py.
To create a new map file, copy and rename it (e.g. add_syria_markers.py), replace MAP_NAME and other placeholders, edit the example locations, then run:
python add_<map>_markers.py [--replace]
The --replace option deletes existing location data before inserting the samples.
How to test π§ͺ
- Insert markers:
python scripts/MapDatabaseTools/add_<mapname>_markers.py
- Replace existing (fresh start):
python scripts/MapDatabaseTools/add_<mapname>_markers.py --replace
- Verify console output shows inserted locations with IDs
- (Optional) Test in UI/app to confirm display and metadata
β οΈ Disclaimer: These are development/testing markers only β not for real-world navigation!
Acceptance criteria β
- Script
add_<mapname>_markers.pycreated and working - At least 5-10 representative locations included
- Sources cited, estimates documented in comments
- Script runs without errors and inserts to database
- PR opened with the new script
Want to contribute? Comment below with the map you're working on to avoid duplicates! π