## Description:
This PR adds a **User Settings** modal accessible from the main UI.
Currently available settings include:
- Toggle for Dark Mode
- Writing Speed Multiplier (slider)
- Bug Count (number input)
- Troop and Worker Ratio (slider)
- Left Click to Open Menu
- Emoji toggle
Settings are saved via `localStorage` and persist across sessions.
There's also a hidden Easter Egg...
https://discord.com/channels/1284581928254701718/1286741605310533653/1355900228712009908
<img width="787" alt="スクリーンショット 2025-03-31 8 40 08"
src="https://github.com/user-attachments/assets/a9943834-cf40-4fa6-b828-06a8476172da"
/>
Fixes#482
## Please complete the following:
- [x] I have added screenshots for all UI updates
- [x] I confirm I have thoroughly tested these changes and take full
responsibility for any bugs introduced
- [x] I understand that submitting code with bugs that could have been
caught through manual testing blocks releases and new features for all
contributors
## Please put your Discord username so you can be contacted if a bug or
regression is found:
<DISCORD USERNAME>
aotumuri
## Description:
This PR fixed small errors in the jsons of a few map(this includes names
of nations and a wrong flag)
Fixes#475
## Please complete the following:
- [x] I confirm I have thoroughly tested these changes and take full
responsibility for any bugs introduced
- [x] I understand that submitting code with bugs that could have been
caught through manual testing blocks releases and new features for all
contributors
## Please put your Discord username so you can be contacted if a bug or
regression is found:
<Nikola123>
## Description:
I updated the language modal to match the style of the other modals.
<img width="564" alt="スクリーンショット 2025-04-05 18 17 56"
src="https://github.com/user-attachments/assets/bbca2157-6842-46f7-83f7-f76b255d35b7"
/>
Fixes#473
## Please complete the following:
- [x] I have added screenshots for all UI updates
- [x] I confirm I have thoroughly tested these changes and take full
responsibility for any bugs introduced
- [x] I understand that submitting code with bugs that could have been
caught through manual testing blocks releases and new features for all
contributors
## Please put your Discord username so you can be contacted if a bug or
regression is found:
aotumuri
## Description:
before
<img width="410" alt="スクリーンショット 2025-04-05 16 45 08"
src="https://github.com/user-attachments/assets/f4f53783-ad11-4e81-9cd3-813515610129"
/>
now
<img width="359" alt="スクリーンショット 2025-04-05 16 44 43"
src="https://github.com/user-attachments/assets/3f3f556d-8c89-4b08-9544-c93d20b516cc"
/>
Fixes#474
## Please complete the following:
- [x] I have added screenshots for all UI updates
- [x] I confirm I have thoroughly tested these changes and take full
responsibility for any bugs introduced
- [x] I understand that submitting code with bugs that could have been
caught through manual testing blocks releases and new features for all
contributors
## Please put your Discord username so you can be contacted if a bug or
regression is found:
Aotumuri
## Description:
This PR adds a 50/50 English/US flag that represents the English
language in the language selection menu.
## Please put your Discord username so you can be contacted if a bug or
regression is found:
<Nikola123>
## Description:
Allows the player to Alt + Click to send emotes to other players or
themself in order to ease communication.
Of course, the hotkey can be something different. Alt + Click is just a
suggestion.

## Please complete the following:
- [ x ] I have added screenshots for all UI updates
- [ x ] I confirm I have thoroughly tested these changes and take full
responsibility for any bugs introduced
- [ x ] I understand that submitting code with bugs that could have been
caught through manual testing blocks releases and new features for all
contributors
## Please put your Discord username so you can be contacted if a bug or
regression is found:
kanekane0448
PS: The new emoji table looks really good!
---------
Co-authored-by: kanekane0448 <no@mail.pls>
##Description:
I renamed all instances of "TwoSeas" to "BetweenTwoSeas". That way it
lowers the confusion but more importrantly - it removes the difference
between the translation strings for the map.
Please put your Discord username so you can be contacted if a bug or
regression is found:
<Nikola123>
## Description:
This PR updates the translations for: Bulgarian, Russian, Ukrainian,
German, Polish and Dutch
Acknowledgements for the MLS project:
Bulgarian🇧🇬: Nikola123 & NewHappyRabbit
Japanese🇯🇵: Aotumuri & daimyo_panda2
French🇫🇷: cldprv, gx2 & Lucasisc
Dutch🇳🇱: cldprv & tryout33
German🇩🇪: Pilkey & jacks0n
Spanish🇪🇸: 6uzm4n
Russian🇷🇺: Rulfam
Ukrainian🇺🇦: Rulfam
Polish🇵🇱: zibi, RinkyDinky & Rulfam
## Please put your Discord username so you can be contacted if a bug or
regression is found:
<Nikola123>
Expand information on
- Attack ratio mechanics
- Traitor mechanics
- Warship mechanics
For the English version only!



## Description:
## Please complete the following:
- [ X ] I have added screenshots for all UI updates
- [ X ] I confirm I have thoroughly tested these changes and take full
responsibility for any bugs introduced
- [ X ] I understand that submitting code with bugs that could have been
caught through manual testing blocks releases and new features for all
contributors
## Please put your Discord username so you can be contacted if a bug or
regression is found:
kanekane0448
(I can't guarantee that I regularly check for new messages though. I
just log in when I want to talk about the game.)
---------
Co-authored-by: kanekane0448 <no@mail.pls>
## Description: Creation of the esperanto translation
## Please complete the following:
- [X] I confirm I have thoroughly tested these changes and take full
responsibility for any bugs introduced
- [X] I understand that submitting code with bugs that could have been
caught through manual testing blocks releases and new features for all
contributors
## Please put your Discord username so you can be contacted if a bug or
regression is found:
r3ms
## Please complete the following:
- [x] I have added screenshots for all UI updates
- [x] I confirm I have thoroughly tested these changes and take full
responsibility for any bugs introduced
- [x] I understand that submitting code with bugs that could have been
caught through manual testing blocks releases and new features for all
contributors
This is commit pack
This PR refactors and improves the language selection experience:
• Centralizes all language-related logic in LangSelector.ts &
LanguageModal.ts
• Redesigns the language selection UI for better UX across devices
• Adds new translations and supports more languages
Changes .w.
• Language selection is now handled entirely inside LangSelector.ts &
LanguageModal.ts
• Prevents background scrolling when open
• Highlights the current language at the top
• Always shows English second
• Shows browser language third (if different from current)
• All other languages are sorted alphabetically by English name
• Debug option is shown at the end when pressing D
• The language list is scrollable when it exceeds screen height
Supported Languages
["en", "ja", "fr", "bg", "nl", "ru", "ua", "de"]
Added Translation Keys
```
"lang": {
"en": "English",
"native": "English",
"svg": "xx"
},
"map": {
"map": "Map"
},
"game_starting_modal": {
"title": "Game is Starting...",
"desc": "Preparing for the lobby to start. Please wait."
},
"difficulty": {
"difficulty": "Difficulty"
}
```
## Please put your Discord username so you can be contacted if a bug or
regression is found:
MLS Representative
- aotumuri
Translation collaborator
- Nikola123 (He was a very big help from setting up the translation site
to adding the json. Thank you so much!)
I don't have permission from my collaborators to display their names
here, so I'll put the discord link here
https://discord.com/channels/1284581928254701718/1352553113612980224/1352553113612980224
- tryout33
Collaborators from other servers.
- CCC Group (This is not Culture Convenience Club. Think of it like a
server where developers of various games are playing.)
- People who fixed the UI and found bugs.
meow02952 (discord id) <- This person also gave me a code suggestion.
Thanks!
moon_spear (discord id)
ww_what_ww (discord id)
Azuna (he doesn't have discord account)
- People who corrected translations, etc.
_kyoyume_ (discord id)
_ultrasuper_ (discord id)
grueg (he doesn't have discord account)
# If I forgot to include your name, or if you’d like your name to be
added, please let me know via Gmail or Discord.
---------
Co-authored-by: Duwibi <86431918+Duwibi@users.noreply.github.com>
## Description:
Fixes a number of ESLint violations. Although I have tested these
changes through the local dev server, I don't have a high confidence
that the testing is sufficient, as I am new to this codebase. This
change would benefit from heightened scrutiny.
## Please complete the following:
- [x] I have added screenshots for all UI updates
- [x] I confirm I have thoroughly tested these changes and take full
responsibility for any bugs introduced
- [x] I understand that submitting code with bugs that could have been
caught through manual testing blocks releases and new features for all
contributors
## Please put your Discord username so you can be contacted if a bug or
regression is found:
fake.neo
---------
Co-authored-by: Scott Anderson <662325+scottanderson@users.noreply.github.com>
## Description:
Implementation of separate lobby playlists, one for large maps another
for small, with the implementation framework being easily adjusted for
additional playlist categories in the future (such as fantasy maps).
Addition of new map 'Between Two Seas' a small map, replacing Black Sea
in the public lobby rotation (Black Sea retained for singleplayer or
private lobbies.
Adjustments to lobbyMaxPlayer configuration function. Broke out into
tranches by map pixel count, commented to communicate to other collabs
which tranch to place their map in. This change pairs well with the
adjustment to lobby map selection to alternate between big and small
maps. For the Potato (and mobile) players.
Revision to Mena, adding lakes and rivers.
Revisions to Japan, adding lakes and rivers, slight change of bounds to
include more mainland and less ocean.



The below no longer applies, I talked to Duwibi (Nikola123) who
explained the source of the issue is outside my control, but that he was
taking the action necessary to resolve.
The only issue still present after testing the the display of the map
name for Between Two Seas on the Public Lobby button. I've asked for
assistance with this issue on the Discord and will submit a fix as soon
as I can figure out its cause. Does not impact gameplay and its 3:30am
so hopefully this issue is not enough to prevent a merge as aside from a
quick fix PR, I don't think I'll be able to do any more work until after
this weekend.
## Please complete the following:
- [x] I have added screenshots for all UI updates
- [x] I confirm I have thoroughly tested these changes and take full
responsibility for any bugs introduced
- [x] I understand that submitting code with bugs that could have been
caught through manual testing blocks releases and new features for all
contributors
## Please put your Discord username so you can be contacted if a bug or
regression is found:
aPuddle
## Description: The entire world from game of thrones
Thanks to apuddle7 on discord for helping me a lot with this map
especially the rivers



## Please complete the following:
- [X] I have added screenshots for all UI updates
- [X] I confirm I have thoroughly tested these changes and take full
responsibility for any bugs introduced
- [X] I understand that submitting code with bugs that could have been
caught through manual testing blocks releases and new features for all
contributors
## Please put your Discord username so you can be contacted if a bug or
regression is found:
Discord:
lunhuiyan1718
## Please complete the following:
- [x] I have added screenshots for all UI updates
- [x] I confirm I have thoroughly tested these changes and take full
responsibility for any bugs introduced
- [x] I understand that submitting code with bugs that could have been
caught through manual testing blocks releases and new features for all
contributors
Changed the icon for the troop donation button, as it looked like it was
donating gold.
I replaced it with a soldier icon to better reflect its function.
Additionally, I updated the icon below it to clearly represent gold
donation instead.
## Please put your Discord username so you can be contacted if a bug or
regression is found:
aotumuri
The cat is because of an extension I have put in. Please ignore it.
<img width="345" alt="スクリーンショット 2025-03-30 10 13 06"
src="https://github.com/user-attachments/assets/9088be1a-57b4-4d10-9507-ca8dc0fcc68c"
/>
<img width="396" alt="スクリーンショット 2025-03-30 10 18 10"
src="https://github.com/user-attachments/assets/2555fd24-0bbc-4b40-8f80-ccf43a1e9a75"
/>
---------
Co-authored-by: Evan <evanpelle@gmail.com>
## Description:
- Revised 55 Flags (US States and Territories) to resolve aspect ratio
scaling issues in game. Has introduced some minor visual issues with
crosses drawing past the bounds of the flag, but this is a lesser issue
than misrproportioned scaling and is only obvious in menus.
- Added 43 New flags made by N0ur
- Revised countries.json to make the new flags available for users to
select
- Revised 9 existing flags with ones made by N0ur
- New North America map (v3), which is 250,000 pixels smaller than v2,
significant additions of lakes and rivers, addressing complaints about
missing Ohio river and inaccurate Missouri river. West coast and
Central/South America now also have rivers. Updated Json to give most
bots flags.
- New South America map (v2), which has a fully realized Amazon river
system, two separate ocean exits. Southern Fjords turned up to 11.
- New Africa Map (v3), with more fleshed out river systems. size
decreased by 250,000 pixels. Great Rift lake now link up to the Congo
basin, and the rivers to their south, making most of Africa connected by
one river system with a Northern, Southern and Eastern Exit
- New Europe Map (v2), extended map bounds south, include entire North
African coast. bounds drawn in on the West, cutting off Iceland and much
ocean in favor of more detail on the continent. Rivers and lakes
implemented. Western-most edge of the Russia-Siberia massive river
network included (preview). Additional nation bots added to the map, to
fill empty areas. Coastline details significantly improved.
- Edits to the Gateway to the Atlantic json to add flags for most of the
Nation bots.
All maps were tested in game, flag selection menu item was visually
inspected for image loading issues.




## Please complete the following:
- [x] I have added screenshots for all UI updates
- [x] I confirm I have thoroughly tested these changes and take full
responsibility for any bugs introduced
- [x] I understand that submitting code with bugs that could have been
caught through manual testing blocks releases and new features for all
contributors
## Please put your Discord username so you can be contacted if a bug or
regression is found:
aPuddle
## Description:
There are fewer bots on the mainland, so taking control there can make
you more powerful.
To balance that, no rivers have been placed there, meaning you won’t
gain trade advantages from them.
The battlefield is split into two fronts, allowing for exciting
amphibious assaults with nuclear warfare.
I'm not sure about the white line on the map, but I don't think it's a
problem.
<img width="382" alt="スクリーンショット 2025-03-31 21 21 26"
src="https://github.com/user-attachments/assets/e1428ad8-febc-4eee-9c73-f27dd6fc207a"
/>
<img width="541" alt="スクリーンショット 2025-03-31 21 22 01"
src="https://github.com/user-attachments/assets/e2e63664-dde6-4d0b-a9d3-4f759d8924c6"
/>
<img width="441" alt="スクリーンショット 2025-03-31 21 22 15"
src="https://github.com/user-attachments/assets/eb386896-ed02-463b-ba2e-1b991dba8acb"
/>

## Please complete the following:
- [x] I have added screenshots for all UI updates
- [x] I confirm I have thoroughly tested these changes and take full
responsibility for any bugs introduced
- [x] I understand that submitting code with bugs that could have been
caught through manual testing blocks releases and new features for all
contributors
## Please put your Discord username so you can be contacted if a bug or
regression is found:
<DISCORD USERNAME>
aotumuri
changed the sam cooldown to be a general cooldown function and added a
missilesilo cooldown
The function either adds the current tick as the starting point of the
cooldown or sets the cooldown to null and updates the unit. That way
getcooldown function can be used to get back the tick the cooldown was
started and can be compared to the cooldown set in the config.
changed the sam test / added a missilesilo test
---------
Co-authored-by: evanpelle <evanpelle@gmail.com>
## Please complete the following:
- [X] I have added screenshots for all UI updates
- [X] I confirm I have thoroughly tested these changes and take full
responsibility for any bugs introduced
- [X] I understand that submitting code with bugs that could have been
caught through manual testing blocks releases and new features for all
contributors
## Please put your Discord username so you can be contacted if a bug or
regression is found:
`PilkeySEK`
Before vs. After (there is no good translation for "FFA" and "Teams" is
the same):


I have minify images and convert them to webp format that reduce size
and keep quality.
Reduce size of bg image since its already blured by css so no need to
have it that big.
Reduce size of thumbs and helper images in helper modals should be fine
since they will not exceed the container size. Even that make them
larger than containter just to be safe
This PR adds the strings for "enemy panel", "iceland" and "pangaea". It
also organises the json file in a different way due to the start of use
of Crowdin (it doesn't interfere in any way with the functionality of
the translations). It also edits the existing translations for the
languages.
Credits:
- Bulgarian - Nikola123
- Dutch - cldprv, tryout33
This map was made by mashing up the world map and putting it in the
general shape of the super-continent
[Pangaea](https://en.wikipedia.org/wiki/Pangaea) It's not super accurate
but the continents are generally in the right places and the nations are
more or less the same as on World, placed in the general location where
they would have been. Hope this is good enough to be added into the
game; even if only among custom lobby maps!
Adding the base bulgarian language json file and making it usable in
game. This PR is building on top of the multi language support PR. Note:
Needs PR #316 to work!
This PR adds full translation support for all out-of-game UI elements,
including the start screen, public/private lobby modals, and other
pre-game interfaces.
All static text has been externalized to en.json and ja.json for future
language support.
If you find any spots that are not yet translated (missing from the
JSON), please let me know.
Thanks a lot!
This is a follow-up to PR
[#305](https://github.com/openfrontio/OpenFrontIO/pull/305).
---------
Co-authored-by: Cldprv <dubois.cnm@tutanota.com>
Co-authored-by: jacks0n <rosty.west89@gmail.com>
This is a map of the Australian country. It has 7 bots - the 7 states of
the country. This is my first time making a pull request, so I'm sorry
if i messed something up or something doesn't work.
This pull request adds multi-language support to the start screen.
Languages are managed via JSON files, making it easy to add new
languages in the future.
I added a basic language selection button for switching between
languages.
However, I believe it would benefit from a better design — my design
skills are limited, so I apologize in advance.
Looking forward to your feedback and possible design improvements.
Just removing some bots from the densest populated parts of the map.
Hopefully will improve responsiveness of the game for some players when
on this map.
Also correcting the map dimensions in the json (I forgot to update
those).
Added functions to TerrainMapGenerator to create a bitmap from the
Minimap Terrain array with the colors being identical to those rendered
in game, with the additional change of setting the Alpha of all water to
0.
Calls added to generateTerrainMaps to actually generate the thumbnail
PNGs,
Revision to src\client\utilities\maps.ts to reflect that the images
pulled into the UI should be those ending in 'Thumb.png,'
I've tested by launching the game and starting a few matches.
hile I'd hoped that using the minimaps as the basis for the thumbnails
would speed things up I think the actual bottleneck is the writing to
the file system.
Below is a screenshot showing these thumbnails in the UI.




Finally I will say that while the code additions work, given my novice
status with typescript and asynch calls these changes may benefit more
from review and a little critical feedback before they're ready to
merge.
Replaces the existing Africa with a revised, identically sized one.
Revisions include addition of navigable rivers allowing the interior to
have access to trade.
Chnages to the json file to take the number of Nation bots from 5 to 36.
Should help prevent so much early game blobbing on this map.
Replacing existing map images with colorized ones for use in the UI.
Confirmed no unintended impacts by receating the map binaries and no
differences being identified by Git.
Africa was not colorized in this one since it is replaced entirely in PR
262.
Revised North America Map, added lakes and rivers, some manual edits
around the northern coasts to preserve the jagged fjordness, added ~53
bots to the json, to fill in all the empty space (makes for a very fun
solo run, may need to reduce somewhat once the players get a chance to
try it).
Added 50 US state flags to the resources folder.
**Can now Nuke Santa.**