Adds Northwest Passage map (using new additionalNations feature) (#3920)

## Description:

Adds map "Northwest Passage", map of the Canadian Arctic Archipelago ,
Greenland and surroundings. "Northwest Passage" (NWP) is the sea lane
between the Atlantic and Pacific oceans
(https://en.wikipedia.org/wiki/Northwest_Passage) .

21 default nations, based on the towns of the region.

This map uses the brand new additionalNations feature made by FloPinguin
https://github.com/openfrontio/OpenFrontIO/pull/3902 . Adds 39 extra
nations for a total of 60 nations (so that in gamemodes like Humans vs
Nations all the nations have names of real places)

Comparison: 
- Map with default nations
- Map with extra named nations, tested by raising the number of nations
in Solo

<img width="1050" height="412" alt="image"
src="https://github.com/user-attachments/assets/12ed94f1-0615-4fb3-b0d0-dcecb65006ea"
/>
<img width="1089" height="436" alt="image"
src="https://github.com/user-attachments/assets/6e7c11bf-7382-4e36-9433-229a9d463b68"
/>

Terrain source from OpenTopography, already credited in CREDITS.md

## 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:

tri.star1011
This commit is contained in:
RickD004
2026-05-14 20:27:46 -06:00
committed by GitHub
parent 4250320c9c
commit 7359e2bc3b
11 changed files with 638 additions and 1 deletions
Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 MiB

@@ -0,0 +1,307 @@
{
"name": "Northwest Passage",
"nations": [
{
"coordinates": [1203, 592],
"name": "Qaanaaq",
"flag": "gl"
},
{
"coordinates": [2104, 125],
"name": "Jan Mayen",
"flag": "sj"
},
{
"coordinates": [2391, 513],
"name": "Reykjavik",
"flag": "is"
},
{
"coordinates": [1906, 1159],
"name": "Nuuk",
"flag": "gl"
},
{
"coordinates": [2200, 1194],
"name": "Qaqortoq",
"flag": "gl"
},
{
"coordinates": [2100, 823],
"name": "Tasiilaq",
"flag": "gl"
},
{
"coordinates": [2010, 410],
"name": "Ittoqqortoormiit",
"flag": "gl"
},
{
"coordinates": [1439, 41],
"name": "Nord",
"flag": "gl"
},
{
"coordinates": [1758, 897],
"name": "Ilulissat",
"flag": "gl"
},
{
"coordinates": [1052, 362],
"name": "Alert",
"flag": "Nunavut"
},
{
"coordinates": [862, 792],
"name": "Resolute",
"flag": "Nunavut"
},
{
"coordinates": [1208, 1009],
"name": "Pond Inlet",
"flag": "Nunavut"
},
{
"coordinates": [1479, 1317],
"name": "Iqaluit",
"flag": "Nunavut"
},
{
"coordinates": [903, 1643],
"name": "Rankin Inlet",
"flag": "Nunavut"
},
{
"coordinates": [578, 1216],
"name": "Cambridge Bay",
"flag": "Nunavut"
},
{
"coordinates": [1022, 759],
"name": "Grise Fiord",
"flag": "Nunavut"
},
{
"coordinates": [361, 1592],
"name": "Yellowknife",
"flag": "northwestterritories"
},
{
"coordinates": [629, 1612],
"name": "Baker Lake",
"flag": "Nunavut"
},
{
"coordinates": [1118, 1235],
"name": "Igloolik",
"flag": "Nunavut"
},
{
"coordinates": [418, 1139],
"name": "Ulukhaktok",
"flag": "northwestterritories"
},
{
"coordinates": [51, 1024],
"name": "Inuvik",
"flag": "northwestterritories"
}
],
"additionalNations": [
{
"coordinates": [1052, 1023],
"name": "Arctic Bay",
"flag": "Nunavut"
},
{
"coordinates": [2400, 400],
"name": "Austurland",
"flag": "is"
},
{
"coordinates": [601, 1361],
"name": "Bathurst Inlet",
"flag": "Nunavut"
},
{
"coordinates": [1365, 1065],
"name": "Clyde River",
"flag": "Nunavut"
},
{
"coordinates": [1880, 319],
"name": "Daneborg",
"flag": "gl"
},
{
"coordinates": [120, 1566],
"name": "Fort Simpson",
"flag": "northwestterritories"
},
{
"coordinates": [826, 1277],
"name": "Gjoa Haven",
"flag": "Nunavut"
},
{
"coordinates": [2069, 1221],
"name": "Ivittuut",
"flag": "gl"
},
{
"coordinates": [1862, 1014],
"name": "Kangerlussuaq",
"flag": "gl"
},
{
"coordinates": [1461, 1446],
"name": "Kimmirut",
"flag": "Nunavut"
},
{
"coordinates": [1328, 1440],
"name": "Kinggait",
"flag": "Nunavut"
},
{
"coordinates": [980, 1316],
"name": "Kugaaruk",
"flag": "Nunavut"
},
{
"coordinates": [387, 1260],
"name": "Kugluktuk",
"flag": "Nunavut"
},
{
"coordinates": [2115, 808],
"name": "Kulusuk",
"flag": "gl"
},
{
"coordinates": [1852, 1113],
"name": "Maniitsoq",
"flag": "gl"
},
{
"coordinates": [1935, 414],
"name": "Mestersvig",
"flag": "gl"
},
{
"coordinates": [1595, 337],
"name": "NE National Park",
"flag": "gl"
},
{
"coordinates": [2234, 1199],
"name": "Nanortalik",
"flag": "gl"
},
{
"coordinates": [2154, 1223],
"name": "Narsaq",
"flag": "gl"
},
{
"coordinates": [1072, 1395],
"name": "Naujaat",
"flag": "Nunavut"
},
{
"coordinates": [88, 1258],
"name": "Norman Wells",
"flag": "northwestterritories"
},
{
"coordinates": [1218, 413],
"name": "Nyboe Land",
"flag": "gl"
},
{
"coordinates": [2025, 1211],
"name": "Paamiut",
"flag": "gl"
},
{
"coordinates": [1531, 1247],
"name": "Pangnirtung",
"flag": "Nunavut"
},
{
"coordinates": [255, 1125],
"name": "Paulatuk",
"flag": "northwestterritories"
},
{
"coordinates": [1321, 218],
"name": "Peary Land",
"flag": "gl"
},
{
"coordinates": [1787, 962],
"name": "Qasigiannguit",
"flag": "gl"
},
{
"coordinates": [1692, 960],
"name": "Qeqertarsuaq",
"flag": "gl"
},
{
"coordinates": [1965, 1176],
"name": "Qeqertarsuatsiaat",
"flag": "gl"
},
{
"coordinates": [329, 952],
"name": "Sachs harbour",
"flag": "northwestterritories"
},
{
"coordinates": [1179, 1508],
"name": "Salliq",
"flag": "Nunavut"
},
{
"coordinates": [1801, 1055],
"name": "Sisimiut",
"flag": "gl"
},
{
"coordinates": [892, 1198],
"name": "Taloyoak",
"flag": "Nunavut"
},
{
"coordinates": [1266, 655],
"name": "Thule AFB",
"flag": "us"
},
{
"coordinates": [86, 1341],
"name": "Tulita",
"flag": "northwestterritories"
},
{
"coordinates": [1495, 737],
"name": "Upernavik",
"flag": "gl"
},
{
"coordinates": [1670, 818],
"name": "Uummannaq",
"flag": "gl"
},
{
"coordinates": [359, 1450],
"name": "Wekweeti",
"flag": "northwestterritories"
},
{
"coordinates": [1819, 325],
"name": "Zackenberg",
"flag": "gl"
}
]
}
+1
View File
@@ -76,6 +76,7 @@ var maps = []struct {
{Name: "newyorkcity"},
{Name: "niledelta"},
{Name: "northamerica"},
{Name: "northwestpassage"},
{Name: "oceania"},
{Name: "pangaea"},
{Name: "passage"},
+2 -1
View File
@@ -510,7 +510,8 @@
"archipelagosea": "Archipelago Sea",
"bajacalifornia": "Baja California",
"taiwanstrait": "Taiwan Strait",
"thestraits": "The Straits"
"thestraits": "The Straits",
"northwestpassage": "Northwest Passage"
},
"map_categories": {
"featured": "Featured",
@@ -0,0 +1,322 @@
{
"additionalNations": [
{
"coordinates": [1052, 1023],
"flag": "Nunavut",
"name": "Arctic Bay"
},
{
"coordinates": [2400, 400],
"flag": "is",
"name": "Austurland"
},
{
"coordinates": [601, 1361],
"flag": "Nunavut",
"name": "Bathurst Inlet"
},
{
"coordinates": [1365, 1065],
"flag": "Nunavut",
"name": "Clyde River"
},
{
"coordinates": [1880, 319],
"flag": "gl",
"name": "Daneborg"
},
{
"coordinates": [120, 1566],
"flag": "northwestterritories",
"name": "Fort Simpson"
},
{
"coordinates": [826, 1277],
"flag": "Nunavut",
"name": "Gjoa Haven"
},
{
"coordinates": [2069, 1221],
"flag": "gl",
"name": "Ivittuut"
},
{
"coordinates": [1862, 1014],
"flag": "gl",
"name": "Kangerlussuaq"
},
{
"coordinates": [1461, 1446],
"flag": "Nunavut",
"name": "Kimmirut"
},
{
"coordinates": [1328, 1440],
"flag": "Nunavut",
"name": "Kinggait"
},
{
"coordinates": [980, 1316],
"flag": "Nunavut",
"name": "Kugaaruk"
},
{
"coordinates": [387, 1260],
"flag": "Nunavut",
"name": "Kugluktuk"
},
{
"coordinates": [2115, 808],
"flag": "gl",
"name": "Kulusuk"
},
{
"coordinates": [1852, 1113],
"flag": "gl",
"name": "Maniitsoq"
},
{
"coordinates": [1935, 414],
"flag": "gl",
"name": "Mestersvig"
},
{
"coordinates": [1595, 337],
"flag": "gl",
"name": "NE National Park"
},
{
"coordinates": [2234, 1199],
"flag": "gl",
"name": "Nanortalik"
},
{
"coordinates": [2154, 1223],
"flag": "gl",
"name": "Narsaq"
},
{
"coordinates": [1072, 1395],
"flag": "Nunavut",
"name": "Naujaat"
},
{
"coordinates": [88, 1258],
"flag": "northwestterritories",
"name": "Norman Wells"
},
{
"coordinates": [1218, 413],
"flag": "gl",
"name": "Nyboe Land"
},
{
"coordinates": [2025, 1211],
"flag": "gl",
"name": "Paamiut"
},
{
"coordinates": [1531, 1247],
"flag": "Nunavut",
"name": "Pangnirtung"
},
{
"coordinates": [255, 1125],
"flag": "northwestterritories",
"name": "Paulatuk"
},
{
"coordinates": [1321, 218],
"flag": "gl",
"name": "Peary Land"
},
{
"coordinates": [1787, 962],
"flag": "gl",
"name": "Qasigiannguit"
},
{
"coordinates": [1692, 960],
"flag": "gl",
"name": "Qeqertarsuaq"
},
{
"coordinates": [1965, 1176],
"flag": "gl",
"name": "Qeqertarsuatsiaat"
},
{
"coordinates": [329, 952],
"flag": "northwestterritories",
"name": "Sachs harbour"
},
{
"coordinates": [1179, 1508],
"flag": "Nunavut",
"name": "Salliq"
},
{
"coordinates": [1801, 1055],
"flag": "gl",
"name": "Sisimiut"
},
{
"coordinates": [892, 1198],
"flag": "Nunavut",
"name": "Taloyoak"
},
{
"coordinates": [1266, 655],
"flag": "us",
"name": "Thule AFB"
},
{
"coordinates": [86, 1341],
"flag": "northwestterritories",
"name": "Tulita"
},
{
"coordinates": [1495, 737],
"flag": "gl",
"name": "Upernavik"
},
{
"coordinates": [1670, 818],
"flag": "gl",
"name": "Uummannaq"
},
{
"coordinates": [359, 1450],
"flag": "northwestterritories",
"name": "Wekweeti"
},
{
"coordinates": [1819, 325],
"flag": "gl",
"name": "Zackenberg"
}
],
"map": {
"height": 1664,
"num_land_tiles": 1569905,
"width": 2500
},
"map16x": {
"height": 416,
"num_land_tiles": 89831,
"width": 625
},
"map4x": {
"height": 832,
"num_land_tiles": 379907,
"width": 1250
},
"name": "Northwest Passage",
"nations": [
{
"coordinates": [1203, 592],
"flag": "gl",
"name": "Qaanaaq"
},
{
"coordinates": [2104, 125],
"flag": "sj",
"name": "Jan Mayen"
},
{
"coordinates": [2391, 513],
"flag": "is",
"name": "Reykjavik"
},
{
"coordinates": [1906, 1159],
"flag": "gl",
"name": "Nuuk"
},
{
"coordinates": [2200, 1194],
"flag": "gl",
"name": "Qaqortoq"
},
{
"coordinates": [2100, 823],
"flag": "gl",
"name": "Tasiilaq"
},
{
"coordinates": [2010, 410],
"flag": "gl",
"name": "Ittoqqortoormiit"
},
{
"coordinates": [1439, 41],
"flag": "gl",
"name": "Nord"
},
{
"coordinates": [1758, 897],
"flag": "gl",
"name": "Ilulissat"
},
{
"coordinates": [1052, 362],
"flag": "Nunavut",
"name": "Alert"
},
{
"coordinates": [862, 792],
"flag": "Nunavut",
"name": "Resolute"
},
{
"coordinates": [1208, 1009],
"flag": "Nunavut",
"name": "Pond Inlet"
},
{
"coordinates": [1479, 1317],
"flag": "Nunavut",
"name": "Iqaluit"
},
{
"coordinates": [903, 1643],
"flag": "Nunavut",
"name": "Rankin Inlet"
},
{
"coordinates": [578, 1216],
"flag": "Nunavut",
"name": "Cambridge Bay"
},
{
"coordinates": [1022, 759],
"flag": "Nunavut",
"name": "Grise Fiord"
},
{
"coordinates": [361, 1592],
"flag": "northwestterritories",
"name": "Yellowknife"
},
{
"coordinates": [629, 1612],
"flag": "Nunavut",
"name": "Baker Lake"
},
{
"coordinates": [1118, 1235],
"flag": "Nunavut",
"name": "Igloolik"
},
{
"coordinates": [418, 1139],
"flag": "northwestterritories",
"name": "Ulukhaktok"
},
{
"coordinates": [51, 1024],
"flag": "northwestterritories",
"name": "Inuvik"
}
]
}
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: 16 KiB

+2
View File
@@ -172,6 +172,7 @@ export enum GameMapType {
MiddleEast = "Middle East",
TaiwanStrait = "Taiwan Strait",
TheStraits = "The Straits",
NorthwestPassage = "Northwest Passage",
}
export type GameMapName = keyof typeof GameMapType;
@@ -236,6 +237,7 @@ export const mapCategories: Record<string, GameMapType[]> = {
GameMapType.MiddleEast,
GameMapType.TaiwanStrait,
GameMapType.TheStraits,
GameMapType.NorthwestPassage,
],
fantasy: [
GameMapType.Pangaea,
+1
View File
@@ -82,6 +82,7 @@ const FREQUENCY: Partial<Record<GameMapName, number>> = {
NewYorkCity: 3,
NileDelta: 4,
NorthAmerica: 5,
NorthwestPassage: 5,
Pangaea: 5,
Passage: 4,
Pluto: 6,