Adds "Juan De Fuca Strait" map - 3 way team map (#4215)

Resolves #4148

## Description:

Adds "Juan de Fuca Strait" map. This is the Strait in Washington and
British Columbia: https://en.wikipedia.org/wiki/Strait_of_Juan_de_Fuca

This map is meant to be a brand new 3-team way map, since all the team
maps we have are either made for 2 or 4 teams.
The map is bumped towards this gamemode similar to how Baikal is bumped
to 2 teams.

Map also has Additional Nations, for a total fof 62, for Human vs
Nations and solo games
<img width="1365" height="602" alt="image"
src="https://github.com/user-attachments/assets/9cb86727-db06-4fcb-bee4-85e7b5d47d15"
/>
<img width="1319" height="488" alt="image"
src="https://github.com/user-attachments/assets/13fd9a01-7ec6-49ab-81c3-40b566cbf6e0"
/>
data from OpenTopography, already credited

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

## 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-06-10 21:00:53 -06:00
committed by GitHub
parent a39413c947
commit af2849a2d7
11 changed files with 683 additions and 1 deletions
Binary file not shown.

After

Width:  |  Height:  |  Size: 969 KiB

@@ -0,0 +1,329 @@
{
"name": "Juan De Fuca Strait",
"nations": [
{
"coordinates": [1812, 445],
"name": "Victoria",
"flag": "britishcolumbia"
},
{
"coordinates": [1519, 512],
"name": "Sooke",
"flag": "britishcolumbia"
},
{
"coordinates": [1016, 319],
"name": "Port Renfrew",
"flag": "britishcolumbia"
},
{
"coordinates": [366, 11],
"name": "Bamfield",
"flag": "britishcolumbia"
},
{
"coordinates": [1742, 165],
"name": "Sidney",
"flag": "britishcolumbia"
},
{
"coordinates": [2065, 346],
"name": "Friday Harbor",
"flag": "Washington"
},
{
"coordinates": [2532, 77],
"name": "Bellingham",
"flag": "Washington"
},
{
"coordinates": [1762, 867],
"name": "Port Angeles",
"flag": "Washington"
},
{
"coordinates": [749, 556],
"name": "Neah Bay",
"flag": "Washington"
},
{
"coordinates": [1003, 1014],
"name": "Forks",
"flag": "Washington"
},
{
"coordinates": [2747, 992],
"name": "Everett",
"flag": "Washington"
},
{
"coordinates": [2402, 389],
"name": "Anacortes",
"flag": "Washington"
},
{
"coordinates": [2654, 479],
"name": "Mount Vermon",
"flag": "Washington"
},
{
"coordinates": [2407, 615],
"name": "Oak Harbor",
"flag": "Washington"
},
{
"coordinates": [2280, 850],
"name": "Port Townsend",
"flag": "Washington"
},
{
"coordinates": [2764, 714],
"name": "Arlington",
"flag": "Washington"
}
],
"additionalNations": [
{
"coordinates": [2654, 216],
"name": "Alger",
"flag": "Washington"
},
{
"coordinates": [2741, 530],
"name": "Big Lake",
"flag": "Washington"
},
{
"coordinates": [2093, 1000],
"name": "Blyn",
"flag": "Washington"
},
{
"coordinates": [2580, 301],
"name": "Bow",
"flag": "Washington"
},
{
"coordinates": [2648, 377],
"name": "Burlington",
"flag": "Washington"
},
{
"coordinates": [1903, 924],
"name": "Carlsborg",
"flag": "Washington"
},
{
"coordinates": [1117, 9],
"name": "Caycuse",
"flag": "britishcolumbia"
},
{
"coordinates": [1020, 714],
"name": "Clallam Bay",
"flag": "Washington"
},
{
"coordinates": [1666, 525],
"name": "Colwood",
"flag": "britishcolumbia"
},
{
"coordinates": [1773, 338],
"name": "Cordova Bay",
"flag": "britishcolumbia"
},
{
"coordinates": [2399, 748],
"name": "Coupeville",
"flag": "Washington"
},
{
"coordinates": [1578, 154],
"name": "Cowichan Bay",
"flag": "Washington"
},
{
"coordinates": [2175, 1060],
"name": "Discovery Bay",
"flag": "Washington"
},
{
"coordinates": [1533, 41],
"name": "Duncan",
"flag": "britishcolumbia"
},
{
"coordinates": [1977, 833],
"name": "Dungeness",
"flag": "Washington"
},
{
"coordinates": [2184, 137],
"name": "Eastsound",
"flag": "Washington"
},
{
"coordinates": [1646, 910],
"name": "Elwha",
"flag": "Washington"
},
{
"coordinates": [2450, 944],
"name": "Freeland",
"flag": "Washington"
},
{
"coordinates": [1725, 43],
"name": "Fulford Harbour",
"flag": "britishcolumbia"
},
{
"coordinates": [2908, 338],
"name": "Hamilton",
"flag": "Washington"
},
{
"coordinates": [1241, 58],
"name": "Honeymoon Bay",
"flag": "britishcolumbia"
},
{
"coordinates": [1258, 462],
"name": "Jordan River",
"flag": "britishcolumbia"
},
{
"coordinates": [1380, 813],
"name": "Joyce",
"flag": "Washington"
},
{
"coordinates": [1360, 43],
"name": "Lake Cowichan",
"flag": "britishcolumbia"
},
{
"coordinates": [2886, 977],
"name": "Lake Stevens",
"flag": "Washington"
},
{
"coordinates": [1632, 420],
"name": "Langford",
"flag": "britishcolumbia"
},
{
"coordinates": [2577, 975],
"name": "Langley",
"flag": "Washington"
},
{
"coordinates": [2184, 366],
"name": "Lopez",
"flag": "Washington"
},
{
"coordinates": [1581, 844],
"name": "Lower Elwha",
"flag": "Washington"
},
{
"coordinates": [2455, 1],
"name": "Marietta-Alderwood",
"flag": "Washington"
},
{
"coordinates": [2739, 887],
"name": "Marysville",
"flag": "Washington"
},
{
"coordinates": [1635, 222],
"name": "Mill Bay",
"flag": "Washington"
},
{
"coordinates": [893, 760],
"name": "Old Royal",
"flag": "Washington"
},
{
"coordinates": [1496, 1082],
"name": "Olympic National Park",
"flag": "Washington"
},
{
"coordinates": [737, 816],
"name": "Ozette",
"flag": "Washington"
},
{
"coordinates": [2320, 1037],
"name": "Port Hadlock-Irondale",
"flag": "Washington"
},
{
"coordinates": [1182, 777],
"name": "Pysht",
"flag": "Washington"
},
{
"coordinates": [842, 983],
"name": "Quillayute",
"flag": "Washington"
},
{
"coordinates": [1997, 256],
"name": "Roche Harbor",
"flag": "Washington"
},
{
"coordinates": [1060, 836],
"name": "Sappho",
"flag": "Washington"
},
{
"coordinates": [2750, 358],
"name": "Sedro-Woolley",
"flag": "Washington"
},
{
"coordinates": [2025, 972],
"name": "Sequim",
"flag": "Washington"
},
{
"coordinates": [967, 915],
"name": "Shuwah",
"flag": "Washington"
},
{
"coordinates": [2605, 123],
"name": "Sudden Valley",
"flag": "Washington"
}
],
"teamGameSpawnAreas": {
"3": [
{
"height": 550,
"width": 2360,
"x": 0,
"y": 0
},
{
"height": 550,
"width": 2360,
"x": 0,
"y": 550
},
{
"height": 1100,
"width": 640,
"x": 2360,
"y": 0
}
]
}
}
+1
View File
@@ -68,6 +68,7 @@ var maps = []struct {
{Name: "indiansubcontinent"},
{Name: "italia"},
{Name: "japan"},
{Name: "juandefucastrait"},
{Name: "korea"},
{Name: "labyrinth"},
{Name: "lemnos"},
+2 -1
View File
@@ -614,7 +614,8 @@
"choppingblock": "Chopping Block",
"southeastasia": "Southeast Asia",
"mississippiriver": "Mississippi River",
"hongkong": "Hong Kong"
"hongkong": "Hong Kong",
"juandefucastrait": "Juan De Fuca Strait"
},
"map_categories": {
"featured": "Featured",
@@ -0,0 +1,344 @@
{
"additionalNations": [
{
"coordinates": [2654, 216],
"flag": "Washington",
"name": "Alger"
},
{
"coordinates": [2741, 530],
"flag": "Washington",
"name": "Big Lake"
},
{
"coordinates": [2093, 1000],
"flag": "Washington",
"name": "Blyn"
},
{
"coordinates": [2580, 301],
"flag": "Washington",
"name": "Bow"
},
{
"coordinates": [2648, 377],
"flag": "Washington",
"name": "Burlington"
},
{
"coordinates": [1903, 924],
"flag": "Washington",
"name": "Carlsborg"
},
{
"coordinates": [1117, 9],
"flag": "britishcolumbia",
"name": "Caycuse"
},
{
"coordinates": [1020, 714],
"flag": "Washington",
"name": "Clallam Bay"
},
{
"coordinates": [1666, 525],
"flag": "britishcolumbia",
"name": "Colwood"
},
{
"coordinates": [1773, 338],
"flag": "britishcolumbia",
"name": "Cordova Bay"
},
{
"coordinates": [2399, 748],
"flag": "Washington",
"name": "Coupeville"
},
{
"coordinates": [1578, 154],
"flag": "Washington",
"name": "Cowichan Bay"
},
{
"coordinates": [2175, 1060],
"flag": "Washington",
"name": "Discovery Bay"
},
{
"coordinates": [1533, 41],
"flag": "britishcolumbia",
"name": "Duncan"
},
{
"coordinates": [1977, 833],
"flag": "Washington",
"name": "Dungeness"
},
{
"coordinates": [2184, 137],
"flag": "Washington",
"name": "Eastsound"
},
{
"coordinates": [1646, 910],
"flag": "Washington",
"name": "Elwha"
},
{
"coordinates": [2450, 944],
"flag": "Washington",
"name": "Freeland"
},
{
"coordinates": [1725, 43],
"flag": "britishcolumbia",
"name": "Fulford Harbour"
},
{
"coordinates": [2908, 338],
"flag": "Washington",
"name": "Hamilton"
},
{
"coordinates": [1241, 58],
"flag": "britishcolumbia",
"name": "Honeymoon Bay"
},
{
"coordinates": [1258, 462],
"flag": "britishcolumbia",
"name": "Jordan River"
},
{
"coordinates": [1380, 813],
"flag": "Washington",
"name": "Joyce"
},
{
"coordinates": [1360, 43],
"flag": "britishcolumbia",
"name": "Lake Cowichan"
},
{
"coordinates": [2886, 977],
"flag": "Washington",
"name": "Lake Stevens"
},
{
"coordinates": [1632, 420],
"flag": "britishcolumbia",
"name": "Langford"
},
{
"coordinates": [2577, 975],
"flag": "Washington",
"name": "Langley"
},
{
"coordinates": [2184, 366],
"flag": "Washington",
"name": "Lopez"
},
{
"coordinates": [1581, 844],
"flag": "Washington",
"name": "Lower Elwha"
},
{
"coordinates": [2455, 1],
"flag": "Washington",
"name": "Marietta-Alderwood"
},
{
"coordinates": [2739, 887],
"flag": "Washington",
"name": "Marysville"
},
{
"coordinates": [1635, 222],
"flag": "Washington",
"name": "Mill Bay"
},
{
"coordinates": [893, 760],
"flag": "Washington",
"name": "Old Royal"
},
{
"coordinates": [1496, 1082],
"flag": "Washington",
"name": "Olympic National Park"
},
{
"coordinates": [737, 816],
"flag": "Washington",
"name": "Ozette"
},
{
"coordinates": [2320, 1037],
"flag": "Washington",
"name": "Port Hadlock-Irondale"
},
{
"coordinates": [1182, 777],
"flag": "Washington",
"name": "Pysht"
},
{
"coordinates": [842, 983],
"flag": "Washington",
"name": "Quillayute"
},
{
"coordinates": [1997, 256],
"flag": "Washington",
"name": "Roche Harbor"
},
{
"coordinates": [1060, 836],
"flag": "Washington",
"name": "Sappho"
},
{
"coordinates": [2750, 358],
"flag": "Washington",
"name": "Sedro-Woolley"
},
{
"coordinates": [2025, 972],
"flag": "Washington",
"name": "Sequim"
},
{
"coordinates": [967, 915],
"flag": "Washington",
"name": "Shuwah"
},
{
"coordinates": [2605, 123],
"flag": "Washington",
"name": "Sudden Valley"
}
],
"map": {
"height": 1100,
"num_land_tiles": 1666141,
"width": 3000
},
"map16x": {
"height": 275,
"num_land_tiles": 100385,
"width": 750
},
"map4x": {
"height": 550,
"num_land_tiles": 410851,
"width": 1500
},
"name": "Juan De Fuca Strait",
"nations": [
{
"coordinates": [1812, 445],
"flag": "britishcolumbia",
"name": "Victoria"
},
{
"coordinates": [1519, 512],
"flag": "britishcolumbia",
"name": "Sooke"
},
{
"coordinates": [1016, 319],
"flag": "britishcolumbia",
"name": "Port Renfrew"
},
{
"coordinates": [366, 11],
"flag": "britishcolumbia",
"name": "Bamfield"
},
{
"coordinates": [1742, 165],
"flag": "britishcolumbia",
"name": "Sidney"
},
{
"coordinates": [2065, 346],
"flag": "Washington",
"name": "Friday Harbor"
},
{
"coordinates": [2532, 77],
"flag": "Washington",
"name": "Bellingham"
},
{
"coordinates": [1762, 867],
"flag": "Washington",
"name": "Port Angeles"
},
{
"coordinates": [749, 556],
"flag": "Washington",
"name": "Neah Bay"
},
{
"coordinates": [1003, 1014],
"flag": "Washington",
"name": "Forks"
},
{
"coordinates": [2747, 992],
"flag": "Washington",
"name": "Everett"
},
{
"coordinates": [2402, 389],
"flag": "Washington",
"name": "Anacortes"
},
{
"coordinates": [2654, 479],
"flag": "Washington",
"name": "Mount Vermon"
},
{
"coordinates": [2407, 615],
"flag": "Washington",
"name": "Oak Harbor"
},
{
"coordinates": [2280, 850],
"flag": "Washington",
"name": "Port Townsend"
},
{
"coordinates": [2764, 714],
"flag": "Washington",
"name": "Arlington"
}
],
"teamGameSpawnAreas": {
"3": [
{
"height": 550,
"width": 2360,
"x": 0,
"y": 0
},
{
"height": 550,
"width": 2360,
"x": 0,
"y": 550
},
{
"height": 1100,
"width": 640,
"x": 2360,
"y": 0
}
]
}
}
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: 12 KiB

+2
View File
@@ -186,6 +186,7 @@ export enum GameMapType {
SoutheastAsia = "SoutheastAsia",
MississippiRiver = "Mississippi River",
HongKong = "Hong Kong",
JuanDeFucaStrait = "Juan De Fuca Strait",
}
export type GameMapName = keyof typeof GameMapType;
@@ -260,6 +261,7 @@ export const mapCategories: Record<string, GameMapType[]> = {
GameMapType.SoutheastAsia,
GameMapType.MississippiRiver,
GameMapType.HongKong,
GameMapType.JuanDeFucaStrait,
],
fantasy: [
GameMapType.Pangaea,
+2
View File
@@ -74,6 +74,7 @@ const FREQUENCY: Partial<Record<GameMapName, number>> = {
IndianSubcontinent: 8,
Italia: 6,
Japan: 6,
JuanDeFucaStrait: 4,
Korea: 5,
Labyrinth: 6,
Lemnos: 3,
@@ -151,6 +152,7 @@ const SPECIAL_TEAM_MAPS: ReadonlyMap<GameMapType, TeamCountConfig> = new Map([
[GameMapType.Surrounded, 4],
[GameMapType.GulfOfStLawrence, 3],
[GameMapType.ChoppingBlock, 4],
[GameMapType.JuanDeFucaStrait, 3],
]);
type ModifierKey =