arn-c0de / arn-c0de/InteractiveChecklists
Feature: πΊοΈ Add map markers for a new DCS map
- Dominant language
- Kotlin
- Stars
- 45
- Forks
- 4
- PR merge metrics
- No merged PRs in 30d
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__markers.py` (use existing scripts as templates)
- [ ] Script CLI: `python add__markers.py [--replace]` to optionally clear existing data
- [ ] Implement `def _samples() -> List[Location]:` returning sample locations
- [ ] Include for each `Location(...)`:
- `name`, `latitude`, `longitude`, `marker_type`
- `icaoiata` (if known, else empty string)
- `elevation_m`, `runways` (as `Runway(...)` 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 π
```py
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__markers.py [--replace]`
The `--replace` option deletes existing location data before inserting the samples.
---
### How to test π§ͺ
1. **Insert markers:**
```bash
python scripts/MapDatabaseTools/add__markers.py
```
2. **Replace existing (fresh start):**
```bash
python scripts/MapDatabaseTools/add__markers.py --replace
```
3. Verify console output shows inserted locations with IDs
4. (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__markers.py` created 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! π
Contributor guide
Assessment
This issue has not been assessed yet.