Add Nile Delta map (#3306)

## Description:
Add Nile Delta as a new regional map. Features 11 nations across the
delta region (Alexandria, Damietta, Faraskur, Sheremsah, El
Senbellawein, Aga, Mit Ghamr, Cairo, Heliopolis, Memphis, El Mansoura).
1.36M land tiles at 1556x1280, terrain generated from real relief data.
Includes the Suez Canal. Playlist frequency: 4.

![Nile Delta
thumbnail](https://raw.githubusercontent.com/gabigabogabu/OpenFrontIO/feature/nile-delta-map/resources/maps/niledelta/thumbnail.webp)

## Checklist
- [x] I have added screenshots for all UI updates
- [x] I process any text displayed to the user through translateText()
and I've added it to the en.json file
- [x] I have added relevant tests to the test directory
- [x] I confirm I have thoroughly tested these changes and take full
responsibility for any bugs introduced

Source: https://commons.wikimedia.org/wiki/File:Niledelta_33.svg
Discord: gabigabogabu
This commit is contained in:
gabigabogabu
2026-03-02 05:14:26 +01:00
committed by GitHub
parent 4aa0f174ad
commit 9ca342e510
12 changed files with 149 additions and 1 deletions
+5
View File
@@ -49,6 +49,11 @@ Copyright © opentopography.org. All Rights Reserved. [Terms of Use](https://ope
[USA Hawaii relief location map](https://commons.wikimedia.org/wiki/File:USA_Hawaii_relief_location_map.svg) by NordNordWest
Licensed under [CC BY-SA 3.0 DE](https://creativecommons.org/licenses/by-sa/3.0/de/deed.en)
### Nile Delta Map
[Niledelta 33](https://commons.wikimedia.org/wiki/File:Niledelta_33.svg) by John187
Licensed under [CC BY-SA 4.0](https://creativecommons.org/licenses/by-sa/4.0/)
## Icons
### [The Noun Project](https://thenounproject.com/)
Binary file not shown.

After

Width:  |  Height:  |  Size: 351 KiB

@@ -0,0 +1,60 @@
{
"name": "Nile Delta",
"nations": [
{
"coordinates": [305, 414],
"name": "Alexandria",
"flag": "eg"
},
{
"coordinates": [1146, 303],
"name": "Damietta",
"flag": "eg"
},
{
"coordinates": [1100, 348],
"name": "Faraskur",
"flag": "eg"
},
{
"coordinates": [1050, 423],
"name": "Sheremsah",
"flag": "eg"
},
{
"coordinates": [954, 492],
"name": "El Senbellawein",
"flag": "eg"
},
{
"coordinates": [920, 963],
"name": "Aga",
"flag": "eg"
},
{
"coordinates": [915, 547],
"name": "Mit Ghamr",
"flag": "eg"
},
{
"coordinates": [888, 1012],
"name": "Cairo",
"flag": "eg"
},
{
"coordinates": [895, 1108],
"name": "Heliopolis",
"flag": "eg"
},
{
"coordinates": [895, 663],
"name": "Memphis",
"flag": "eg"
},
{
"coordinates": [993, 579],
"name": "El Mansoura",
"flag": "eg"
}
]
}
+1
View File
@@ -73,6 +73,7 @@ var maps = []struct {
{Name: "yenisei"},
{Name: "tradersdream"},
{Name: "hawaii"},
{Name: "niledelta"},
{Name: "big_plains", IsTest: true},
{Name: "half_land_half_ocean", IsTest: true},
{Name: "ocean_and_land", IsTest: true},
+2 -1
View File
@@ -332,7 +332,8 @@
"beringstrait": "Bering Strait",
"tradersdream": "Traders Dream",
"hawaii": "Hawaii",
"alps": "Alps"
"alps": "Alps",
"niledelta": "Nile Delta"
},
"map_categories": {
"featured": "Featured",
+75
View File
@@ -0,0 +1,75 @@
{
"map": {
"height": 1280,
"num_land_tiles": 1363238,
"width": 1556
},
"map16x": {
"height": 320,
"num_land_tiles": 82743,
"width": 389
},
"map4x": {
"height": 640,
"num_land_tiles": 337280,
"width": 778
},
"name": "Nile Delta",
"nations": [
{
"coordinates": [305, 414],
"flag": "eg",
"name": "Alexandria"
},
{
"coordinates": [1146, 303],
"flag": "eg",
"name": "Damietta"
},
{
"coordinates": [1100, 348],
"flag": "eg",
"name": "Faraskur"
},
{
"coordinates": [1050, 423],
"flag": "eg",
"name": "Sheremsah"
},
{
"coordinates": [954, 492],
"flag": "eg",
"name": "El Senbellawein"
},
{
"coordinates": [920, 963],
"flag": "eg",
"name": "Aga"
},
{
"coordinates": [915, 547],
"flag": "eg",
"name": "Mit Ghamr"
},
{
"coordinates": [888, 1012],
"flag": "eg",
"name": "Cairo"
},
{
"coordinates": [895, 1108],
"flag": "eg",
"name": "Heliopolis"
},
{
"coordinates": [895, 663],
"flag": "eg",
"name": "Memphis"
},
{
"coordinates": [993, 579],
"flag": "eg",
"name": "El Mansoura"
}
]
}
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
Binary file not shown.

After

Width:  |  Height:  |  Size: 6.6 KiB

+2
View File
@@ -134,6 +134,7 @@ export enum GameMapType {
TradersDream = "Traders Dream",
Hawaii = "Hawaii",
Alps = "Alps",
NileDelta = "Nile Delta",
}
export type GameMapName = keyof typeof GameMapType;
@@ -186,6 +187,7 @@ export const mapCategories: Record<string, GameMapType[]> = {
GameMapType.Yenisei,
GameMapType.Hawaii,
GameMapType.Alps,
GameMapType.NileDelta,
],
fantasy: [
GameMapType.Pangaea,
+1
View File
@@ -74,6 +74,7 @@ const frequency: Partial<Record<GameMapName, number>> = {
TradersDream: 4,
Hawaii: 4,
Alps: 4,
NileDelta: 4,
};
const TEAM_WEIGHTS: { config: TeamCountConfig; weight: number }[] = [