Add new map: Bosphorus Straits (#2927)

## Description:

Adds a new Bosphorus Map (Turkey). One of the key strategic locations in
the world and control access to the Black Sea. Smaller map that most to
facilitate smaller FFA and Team games. Added are a selection of nations
that correspond to the location.

<img width="1000" height="612" alt="image"
src="https://github.com/user-attachments/assets/27a6debc-a33b-4b54-b522-69ab814c39f0"
/>

![Image 16-01-2026 at 17
39](https://github.com/user-attachments/assets/9660de13-53b3-4a94-852f-95ba16e4bb73)
![Image 16-01-2026 at 17 39
(1)](https://github.com/user-attachments/assets/d3372919-da4e-4507-a3b8-4bfbdde1ccd4)


## Please complete the following:

- [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

## Please put your Discord username so you can be contacted if a bug or
regression is found:

TSProphet

---------

Co-authored-by: Ryan <7389646+ryanbarlow97@users.noreply.github.com>
Co-authored-by: iamlewis <lewismmmm@gmail.com>
This commit is contained in:
TsProphet94
2026-02-28 22:19:59 +00:00
committed by GitHub
parent 11d3228608
commit 5542ac12e1
11 changed files with 153 additions and 0 deletions
Binary file not shown.

After

Width:  |  Height:  |  Size: 314 KiB

@@ -0,0 +1,65 @@
{
"name": "Bosphorus Straits",
"nations": [
{
"coordinates": [520, 300],
"name": "Istanbul",
"flag": "tr"
},
{
"coordinates": [360, 280],
"name": "Thrace",
"flag": "tr"
},
{
"coordinates": [220, 260],
"name": "Edirne",
"flag": "tr"
},
{
"coordinates": [650, 360],
"name": "Bursa",
"flag": "tr"
},
{
"coordinates": [690, 290],
"name": "Izmit",
"flag": "tr"
},
{
"coordinates": [430, 430],
"name": "Canakkale",
"flag": "tr"
},
{
"coordinates": [320, 330],
"name": "Tekirdag",
"flag": "tr"
},
{
"coordinates": [610, 320],
"name": "Yalova",
"flag": "tr"
},
{
"coordinates": [720, 260],
"name": "Kocaeli",
"flag": "tr"
},
{
"coordinates": [160, 120],
"name": "Varna",
"flag": "bg"
},
{
"coordinates": [220, 150],
"name": "Burgas",
"flag": "bg"
},
{
"coordinates": [820, 470],
"name": "Aegean Isles",
"flag": "gr"
}
]
}
+1
View File
@@ -31,6 +31,7 @@ var maps = []struct {
{Name: "betweentwoseas"},
{Name: "beringstrait"},
{Name: "blacksea"},
{Name: "bosphorusstraits"},
{Name: "britannia"},
{Name: "britanniaclassic"},
{Name: "deglaciatedantarctica"},
+1
View File
@@ -327,6 +327,7 @@
"didier": "Didier",
"didierfrance": "Didier (France)",
"amazonriver": "Amazon River",
"bosphorusstraits": "Bosphorus Straits",
"beringstrait": "Bering Strait",
"tradersdream": "Traders Dream",
"hawaii": "Hawaii",
@@ -0,0 +1,80 @@
{
"map": {
"height": 612,
"num_land_tiles": 387974,
"width": 1000
},
"map16x": {
"height": 153,
"num_land_tiles": 22991,
"width": 250
},
"map4x": {
"height": 306,
"num_land_tiles": 95321,
"width": 500
},
"name": "Bosphorus Straits",
"nations": [
{
"coordinates": [520, 300],
"flag": "tr",
"name": "Istanbul"
},
{
"coordinates": [360, 280],
"flag": "tr",
"name": "Thrace"
},
{
"coordinates": [220, 260],
"flag": "tr",
"name": "Edirne"
},
{
"coordinates": [650, 360],
"flag": "tr",
"name": "Bursa"
},
{
"coordinates": [690, 290],
"flag": "tr",
"name": "Izmit"
},
{
"coordinates": [430, 430],
"flag": "tr",
"name": "Canakkale"
},
{
"coordinates": [320, 330],
"flag": "tr",
"name": "Tekirdag"
},
{
"coordinates": [610, 320],
"flag": "tr",
"name": "Yalova"
},
{
"coordinates": [720, 260],
"flag": "tr",
"name": "Kocaeli"
},
{
"coordinates": [160, 120],
"flag": "bg",
"name": "Varna"
},
{
"coordinates": [220, 150],
"flag": "bg",
"name": "Burgas"
},
{
"coordinates": [820, 470],
"flag": "gr",
"name": "Aegean Isles"
}
]
}
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: 3.3 KiB

+2
View File
@@ -128,6 +128,7 @@ export enum GameMapType {
Didier = "Didier",
DidierFrance = "Didier France",
AmazonRiver = "Amazon River",
BosphorusStraits = "Bosphorus Straits",
BeringStrait = "Bering Strait",
Yenisei = "Yenisei",
TradersDream = "Traders Dream",
@@ -180,6 +181,7 @@ export const mapCategories: Record<string, GameMapType[]> = {
GameMapType.TwoLakes,
GameMapType.StraitOfHormuz,
GameMapType.AmazonRiver,
GameMapType.BosphorusStraits,
GameMapType.BeringStrait,
GameMapType.Yenisei,
GameMapType.Hawaii,
+1
View File
@@ -64,6 +64,7 @@ const frequency: Partial<Record<GameMapName, number>> = {
DidierFrance: 1,
Didier: 1,
AmazonRiver: 3,
BosphorusStraits: 3,
BeringStrait: 4,
Sierpinski: 10,
TheBox: 3,