New and updated categories for maps (#4254)

Resolves #4250

## Description:

Huge update for the map categories:


https://github.com/user-attachments/assets/b7dc6344-efdc-4073-b15a-92b6dccdcc19

**New Categories**

- Re-adds Continental category, with the 7 traditional continents

- Re-adds the category of Arcade along all its maps.

- Renames "Other" to "Fictional", so that tag is more specific and feels
more in-theme with the others. The info.json's of the maps that had the
Other category got changed to Fictional

**Map Category changes**

- **achiran**: adds Europe (while the map is fictional, it is made up of
real islands from ireland. (Since world includes Dyslexdria and
Antarctica has Deglaciated Antarctica, both fictional , i figured for
consistency we could include these mash-up maps too)
- **aegean**: adds Asia category (Turkey is in Asia)
- **arctic**: adds Asia category 
- **choppingblock**: updated "other" to "fictional", added to "new"
- **deglaciatedantarctica**: updated "other" to "fictional"
- **didier**: re-added to Arcade
- **didierfrance**: re-added to Arcade
- **dyslexdria**: updated "other" to "fictional"
- **fourislands**: updated "other" to "fictional"
- **hawaii**: remove north_america tag (while part of the US, hawaii is
geographically only in Oceania)
- **labyrinth**: added to new, re-added to Arcade
- **marenostrum**: added africa and asia tags, the continents which the
mediterranean borders
- **onion**: re-added to Arcade
- **pangaea**: updated "other" to "fictional"
- **passage**: updated "other" to "fictional"
- **sierpinski** re-added to Arcade
- **surrounded**: updated "other" to "fictional"
- **svalmel**: updated "other" to "fictional", added to europe and
north_america (same logic as achiran)
- **thebox**: re-added to Arcade
- **tradersdream**: updated "other" to "fictional"
- **worldinverted**: updated "other" to "fictional", added to "new"
- **africa**: added to Continental
- **antarctica**: added to Continental
- **asia**: added to Continental
- **europe**: added to Continental
- **northamerica**: added to Continental
- **southamerica**: added to Continental
- **oceania**: added to Continental
- **mississippiriver**: added to "new"
- **korea**: added to "new"
- **middleeast**: added to "new"
- **balkans**: added to "new"
- **indiansubcontinent**: added to "new"
- **taiwanstrait**: added to "new"
- **northwestpassage**: added to "new"
- **southeastasia**: added to "new"
- **venice**: added to "new"
- **yellowsea**: added to "new"
- **hongkong**: added to "new"
- **titan**: added to "new"
- **caribbean**: added to "new"
- **juandefucastrait**: added to "new"
- **danishstraits**: added to "new"

## 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-13 14:42:24 -06:00
committed by GitHub
parent ccec87943f
commit e494f83e8e
96 changed files with 156 additions and 144 deletions
+55 -49
View File
@@ -104,7 +104,9 @@ export type GameMapName = keyof typeof GameMapType;
export type MapCategory =
| "featured"
| "new"
| "world"
| "continental"
| "europe"
| "asia"
| "north_america"
@@ -113,13 +115,16 @@ export type MapCategory =
| "oceania"
| "antarctica"
| "cosmic"
| "tournament"
| "other";
| "fictional"
| "arcade"
| "tournament";
// Category display order in the map picker.
export const mapCategoryOrder: readonly MapCategory[] = [
"featured",
"new",
"world",
"continental",
"europe",
"asia",
"north_america",
@@ -128,8 +133,9 @@ export const mapCategoryOrder: readonly MapCategory[] = [
"oceania",
"antarctica",
"cosmic",
"fictional",
"arcade",
"tournament",
"other",
];
export interface MapInfo {
@@ -154,14 +160,14 @@ export const maps: readonly MapInfo[] = [
id: "Achiran",
type: GameMapType.Achiran,
translationKey: "map.achiran",
categories: ["other"],
categories: ["fictional", "europe"],
multiplayerFrequency: 5,
},
{
id: "Aegean",
type: GameMapType.Aegean,
translationKey: "map.aegean",
categories: ["europe"],
categories: ["europe", "asia"],
multiplayerFrequency: 6,
specialTeamCount: 2,
},
@@ -169,7 +175,7 @@ export const maps: readonly MapInfo[] = [
id: "Africa",
type: GameMapType.Africa,
translationKey: "map.africa",
categories: ["featured", "africa"],
categories: ["featured", "continental", "africa"],
multiplayerFrequency: 7,
featuredRank: 6,
},
@@ -191,7 +197,7 @@ export const maps: readonly MapInfo[] = [
id: "Antarctica",
type: GameMapType.Antarctica,
translationKey: "map.antarctica",
categories: ["antarctica"],
categories: ["antarctica", "continental"],
multiplayerFrequency: 1,
},
{
@@ -205,14 +211,14 @@ export const maps: readonly MapInfo[] = [
id: "Arctic",
type: GameMapType.Arctic,
translationKey: "map.arctic",
categories: ["europe", "north_america"],
categories: ["europe", "north_america", "asia"],
multiplayerFrequency: 6,
},
{
id: "Asia",
type: GameMapType.Asia,
translationKey: "map.asia",
categories: ["featured", "asia"],
categories: ["featured", "continental", "asia"],
multiplayerFrequency: 6,
featuredRank: 5,
},
@@ -235,7 +241,7 @@ export const maps: readonly MapInfo[] = [
id: "BaikalNukeWars",
type: GameMapType.BaikalNukeWars,
translationKey: "map.baikalnukewars",
categories: ["other"],
categories: ["fictional"],
multiplayerFrequency: 0,
},
{
@@ -249,7 +255,7 @@ export const maps: readonly MapInfo[] = [
id: "Balkans",
type: GameMapType.Balkans,
translationKey: "map.balkans",
categories: ["europe"],
categories: ["new", "europe"],
multiplayerFrequency: 6,
},
{
@@ -308,7 +314,7 @@ export const maps: readonly MapInfo[] = [
id: "Caribbean",
type: GameMapType.Caribbean,
translationKey: "map.caribbean",
categories: ["north_america"],
categories: ["new", "north_america"],
multiplayerFrequency: 5,
},
{
@@ -322,7 +328,7 @@ export const maps: readonly MapInfo[] = [
id: "ChoppingBlock",
type: GameMapType.ChoppingBlock,
translationKey: "map.choppingblock",
categories: ["other"],
categories: ["new", "arcade"],
multiplayerFrequency: 5,
specialTeamCount: 4,
},
@@ -338,35 +344,35 @@ export const maps: readonly MapInfo[] = [
id: "DanishStraits",
type: GameMapType.DanishStraits,
translationKey: "map.danishstraits",
categories: ["europe"],
categories: ["new", "europe"],
multiplayerFrequency: 5,
},
{
id: "DeglaciatedAntarctica",
type: GameMapType.DeglaciatedAntarctica,
translationKey: "map.deglaciatedantarctica",
categories: ["antarctica"],
categories: ["antarctica", "fictional"],
multiplayerFrequency: 4,
},
{
id: "Didier",
type: GameMapType.Didier,
translationKey: "map.didier",
categories: ["other"],
categories: ["arcade"],
multiplayerFrequency: 1,
},
{
id: "DidierFrance",
type: GameMapType.DidierFrance,
translationKey: "map.didierfrance",
categories: ["other"],
categories: ["arcade"],
multiplayerFrequency: 1,
},
{
id: "Dyslexdria",
type: GameMapType.Dyslexdria,
translationKey: "map.dyslexdria",
categories: ["world"],
categories: ["world", "fictional"],
multiplayerFrequency: 8,
},
{
@@ -380,7 +386,7 @@ export const maps: readonly MapInfo[] = [
id: "Europe",
type: GameMapType.Europe,
translationKey: "map.europe",
categories: ["featured", "europe"],
categories: ["featured", "continental", "europe"],
multiplayerFrequency: 7,
featuredRank: 2,
},
@@ -388,7 +394,7 @@ export const maps: readonly MapInfo[] = [
id: "EuropeClassic",
type: GameMapType.EuropeClassic,
translationKey: "map.europeclassic",
categories: ["europe"],
categories: ["europe", "continental"],
multiplayerFrequency: 0,
},
{
@@ -410,7 +416,7 @@ export const maps: readonly MapInfo[] = [
id: "FourIslands",
type: GameMapType.FourIslands,
translationKey: "map.fourislands",
categories: ["other"],
categories: ["fictional"],
multiplayerFrequency: 4,
specialTeamCount: 4,
},
@@ -454,14 +460,14 @@ export const maps: readonly MapInfo[] = [
id: "Hawaii",
type: GameMapType.Hawaii,
translationKey: "map.hawaii",
categories: ["north_america", "oceania"],
categories: ["oceania"],
multiplayerFrequency: 4,
},
{
id: "HongKong",
type: GameMapType.HongKong,
translationKey: "map.hongkong",
categories: ["asia"],
categories: ["new", "asia"],
multiplayerFrequency: 6,
},
{
@@ -475,7 +481,7 @@ export const maps: readonly MapInfo[] = [
id: "IndianSubcontinent",
type: GameMapType.IndianSubcontinent,
translationKey: "map.indiansubcontinent",
categories: ["asia"],
categories: ["new", "asia"],
multiplayerFrequency: 8,
},
{
@@ -497,7 +503,7 @@ export const maps: readonly MapInfo[] = [
id: "JuanDeFucaStrait",
type: GameMapType.JuanDeFucaStrait,
translationKey: "map.juandefucastrait",
categories: ["north_america"],
categories: ["new", "north_america"],
multiplayerFrequency: 4,
specialTeamCount: 3,
},
@@ -505,14 +511,14 @@ export const maps: readonly MapInfo[] = [
id: "Korea",
type: GameMapType.Korea,
translationKey: "map.korea",
categories: ["asia"],
categories: ["new", "asia"],
multiplayerFrequency: 5,
},
{
id: "Labyrinth",
type: GameMapType.Labyrinth,
translationKey: "map.labyrinth",
categories: ["other"],
categories: ["new", "arcade"],
multiplayerFrequency: 6,
},
{
@@ -555,7 +561,7 @@ export const maps: readonly MapInfo[] = [
id: "MareNostrum",
type: GameMapType.MareNostrum,
translationKey: "map.marenostrum",
categories: ["europe"],
categories: ["europe", "asia", "africa"],
multiplayerFrequency: 6,
},
{
@@ -576,7 +582,7 @@ export const maps: readonly MapInfo[] = [
id: "MiddleEast",
type: GameMapType.MiddleEast,
translationKey: "map.middleeast",
categories: ["asia"],
categories: ["new", "asia"],
multiplayerFrequency: 8,
},
{
@@ -590,7 +596,7 @@ export const maps: readonly MapInfo[] = [
id: "MississippiRiver",
type: GameMapType.MississippiRiver,
translationKey: "map.mississippiriver",
categories: ["north_america"],
categories: ["new", "north_america"],
multiplayerFrequency: 3,
},
{
@@ -618,7 +624,7 @@ export const maps: readonly MapInfo[] = [
id: "NorthAmerica",
type: GameMapType.NorthAmerica,
translationKey: "map.northamerica",
categories: ["featured", "north_america"],
categories: ["featured", "continental", "north_america"],
multiplayerFrequency: 5,
featuredRank: 3,
},
@@ -626,35 +632,35 @@ export const maps: readonly MapInfo[] = [
id: "NorthwestPassage",
type: GameMapType.NorthwestPassage,
translationKey: "map.northwestpassage",
categories: ["north_america"],
categories: ["new", "north_america"],
multiplayerFrequency: 5,
},
{
id: "Oceania",
type: GameMapType.Oceania,
translationKey: "map.oceania",
categories: ["oceania"],
categories: ["oceania", "continental"],
multiplayerFrequency: 0,
},
{
id: "Onion",
type: GameMapType.Onion,
translationKey: "map.onion",
categories: ["other"],
categories: ["new", "arcade"],
multiplayerFrequency: 2,
},
{
id: "Pangaea",
type: GameMapType.Pangaea,
translationKey: "map.pangaea",
categories: ["other"],
categories: ["fictional"],
multiplayerFrequency: 5,
},
{
id: "Passage",
type: GameMapType.Passage,
translationKey: "map.passage",
categories: ["other"],
categories: ["fictional"],
multiplayerFrequency: 4,
},
{
@@ -676,14 +682,14 @@ export const maps: readonly MapInfo[] = [
id: "Sierpinski",
type: GameMapType.Sierpinski,
translationKey: "map.sierpinski",
categories: ["other"],
categories: ["arcade"],
multiplayerFrequency: 10,
},
{
id: "SouthAmerica",
type: GameMapType.SouthAmerica,
translationKey: "map.southamerica",
categories: ["featured", "south_america"],
categories: ["featured", "continental", "south_america"],
multiplayerFrequency: 5,
featuredRank: 4,
},
@@ -691,7 +697,7 @@ export const maps: readonly MapInfo[] = [
id: "SoutheastAsia",
type: GameMapType.SoutheastAsia,
translationKey: "map.southeastasia",
categories: ["asia"],
categories: ["new", "asia"],
multiplayerFrequency: 5,
},
{
@@ -721,7 +727,7 @@ export const maps: readonly MapInfo[] = [
id: "Surrounded",
type: GameMapType.Surrounded,
translationKey: "map.surrounded",
categories: ["other"],
categories: ["fictional"],
multiplayerFrequency: 4,
specialTeamCount: 4,
},
@@ -729,28 +735,28 @@ export const maps: readonly MapInfo[] = [
id: "Svalmel",
type: GameMapType.Svalmel,
translationKey: "map.svalmel",
categories: ["other"],
categories: ["fictional", "europe", "north_america"],
multiplayerFrequency: 8,
},
{
id: "TaiwanStrait",
type: GameMapType.TaiwanStrait,
translationKey: "map.taiwanstrait",
categories: ["asia"],
categories: ["new", "asia"],
multiplayerFrequency: 5,
},
{
id: "TheBox",
type: GameMapType.TheBox,
translationKey: "map.thebox",
categories: ["other"],
categories: ["arcade"],
multiplayerFrequency: 3,
},
{
id: "Titan",
type: GameMapType.Titan,
translationKey: "map.titan",
categories: ["cosmic"],
categories: ["new", "cosmic"],
multiplayerFrequency: 3,
},
{
@@ -785,7 +791,7 @@ export const maps: readonly MapInfo[] = [
id: "TradersDream",
type: GameMapType.TradersDream,
translationKey: "map.tradersdream",
categories: ["other"],
categories: ["fictional"],
multiplayerFrequency: 4,
specialTeamCount: 2,
},
@@ -800,14 +806,14 @@ export const maps: readonly MapInfo[] = [
id: "Venice",
type: GameMapType.Venice,
translationKey: "map.venice",
categories: ["europe"],
categories: ["new", "europe"],
multiplayerFrequency: 6,
},
{
id: "WarshipWarship",
type: GameMapType.WarshipWarship,
translationKey: "map.warshipwarship",
categories: ["other"],
categories: ["arcade", "new"],
multiplayerFrequency: 3,
},
{
@@ -822,14 +828,14 @@ export const maps: readonly MapInfo[] = [
id: "WorldInverted",
type: GameMapType.WorldInverted,
translationKey: "map.worldinverted",
categories: ["world"],
categories: ["new", "world", "fictional"],
multiplayerFrequency: 8,
},
{
id: "YellowSea",
type: GameMapType.YellowSea,
translationKey: "map.yellowsea",
categories: ["asia"],
categories: ["new", "asia"],
multiplayerFrequency: 5,
},
{