Adds onion map (#4057)

If this PR fixes an issue, link it below. If not, delete these two
lines.
Resolves #4055 

## Description:

Adds a 512*512 onion map with 3 nations (Leafer Confederation, Outer
Enclave and Inner Tribe)

<img width="128" height="128" alt="thumbnail"
src="https://github.com/user-attachments/assets/8d97d8dc-6286-4e79-a459-767c936d49ec"
/>


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

tktk1234567
This commit is contained in:
TKTK123456
2026-05-29 18:58:02 -04:00
committed by GitHub
parent 326b882cf2
commit 9d4080fbe8
11 changed files with 63 additions and 0 deletions
Binary file not shown.

After

Width:  |  Height:  |  Size: 30 KiB

+20
View File
@@ -0,0 +1,20 @@
{
"name": "onion",
"nations": [
{
"coordinates": [51, 188],
"name": "Leafer Confederation",
"flag": ""
},
{
"coordinates": [252, 199],
"name": "Outer Enclave",
"flag": ""
},
{
"coordinates": [252, 233],
"name": "Inner Tribe",
"flag": ""
}
]
}
+1
View File
@@ -83,6 +83,7 @@ var maps = []struct {
{Name: "northamerica"},
{Name: "northwestpassage"},
{Name: "oceania"},
{Name: "onion"},
{Name: "pangaea"},
{Name: "passage"},
{Name: "pluto"},
+1
View File
@@ -605,6 +605,7 @@
"korea": "Korea",
"indiansubcontinent": "Indian Subcontinent",
"balkans": "Balkans",
"onion": "Onion",
"yellowsea": "Yellow Sea",
"labyrinth": "Labyrinth"
},
+35
View File
@@ -0,0 +1,35 @@
{
"map": {
"height": 512,
"num_land_tiles": 210555,
"width": 512
},
"map16x": {
"height": 128,
"num_land_tiles": 12499,
"width": 128
},
"map4x": {
"height": 256,
"num_land_tiles": 51713,
"width": 256
},
"name": "onion",
"nations": [
{
"coordinates": [51, 188],
"flag": "",
"name": "Leafer Confederation"
},
{
"coordinates": [252, 199],
"flag": "",
"name": "Outer Enclave"
},
{
"coordinates": [252, 233],
"flag": "",
"name": "Inner Tribe"
}
]
}
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: 1.9 KiB

+2
View File
@@ -179,6 +179,7 @@ export enum GameMapType {
Balkans = "Balkans",
YellowSea = "Yellow Sea",
Labyrinth = "Labyrinth",
Onion = "Onion",
}
export type GameMapName = keyof typeof GameMapType;
@@ -272,6 +273,7 @@ export const mapCategories: Record<string, GameMapType[]> = {
GameMapType.DidierFrance,
GameMapType.Labyrinth,
GameMapType.Sierpinski,
GameMapType.Onion,
],
tournament: [
GameMapType.Tourney1,
+1
View File
@@ -107,6 +107,7 @@ const FREQUENCY: Partial<Record<GameMapName, number>> = {
YellowSea: 5,
Yenisei: 6,
Labyrinth: 6,
Onion: 2,
};
const TEAM_WEIGHTS: { config: TeamCountConfig; weight: number }[] = [