Commit Graph

55 Commits

Author SHA1 Message Date
Aotumuri 607e5b5ff0 MLS-PACK (#355)
## 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>
2025-04-02 20:37:36 -07:00
Scott Anderson 52f64db6d3 Fix various ESLint violations (#402)
## 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>
2025-04-02 18:06:08 -07:00
Evan 8b6895d745 add prettier import plugin 2025-03-31 13:09:27 -07:00
evanpelle ab3f4fbac1 All players must join game before spawn (#380)
## Description:
The server stores all players that have joined, and once the game starts
it sends a list of players to all clients. Players cannot join after the
game has started. Server now generated the PlayerID instead of the
client.

The is necessary for team mode, we need to know how who is playing the
game before it starts so we can properly assign teams based on clans.

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

evan
2025-03-30 17:04:29 -07:00
evanpelle d8fe41de7a teams (#349) 2025-03-27 20:43:56 -07:00
Evan 9868c87a4b fix HostLobbyModal checkboxes by making ids unique 2025-03-26 17:02:43 -07:00
Evan bf12f5354b put game config after updating nuke option 2025-03-26 15:15:12 -07:00
Mittanicz 6678d6e36e Image optimalization (#343)
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
2025-03-26 10:05:45 -07:00
Aotumuri 9088adeb7a Translate all out-of-game UI (start screen, lobbies, etc.) (#316)
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>
2025-03-24 17:12:04 -07:00
Mittanicz 166ef92970 Create base components button, modal .. (#331)
Create base components with shared styles, as start of make ui better.
For now shoul look same but underhood new copoments are used.

This should be first PR that handle this and many more comes. I am in
rush due conflict with other ppl, but should work as i tested.

Testing again and look at structure

Main goal i have global css not scope in component die loading times and
size of elements. (Modal due nature of lit and shadow dom is exception,
maybe later find better way).

Documenting the components will happen later as base components
establish their usage.
2025-03-24 10:34:27 -07:00
Readixyee e02361c2f4 Disable nukes option (#237)
This makes it possible to disable all nukes as well as missile silos
from the game in privat lobbies and singleplayer games
2025-03-21 13:52:36 -07:00
evanpelle 2c9fc7307e fix config circular dependency (#296) 2025-03-19 15:42:47 -07:00
evanpelle 33292aec5c feat: replay archived games, gamestate hash verification (#195)
create endpoint to load archived game. when joining game client first
checks if the game is active, if not it requests the game archive from
the server. the archive is sent to LocalServer to replay the game
locally. Every 10 ticks a hash is stored on the archive, and during
replay the LocalServer verifies this hash.
2025-03-09 14:24:39 -07:00
Evan 4c8eeb0cc1 merge branch v0.17.3 2025-03-06 15:46:57 -08:00
Evan 2d3c18ab87 add debounce on bot update to prevent hitting rate limit 2025-03-06 10:30:12 -08:00
Evan d936a3aca6 fix put path 2025-03-06 09:41:28 -08:00
nwcubeok 5c9d266623 Close button sticky in every modal 2025-03-06 17:25:28 +01:00
Evan 3a0bc594ae use api prefix 2025-03-05 18:04:22 -08:00
Evan 2b26cfbbc9 update aws deployment, have client get env from server 2025-03-05 12:37:37 -08:00
Evan 9fd1203d50 format HostLobbyModal 2025-03-03 14:46:29 -08:00
Todd Groff c648da2277 Merge branch 'main' into randmap 2025-03-02 16:29:57 -05:00
NewHappyRabbit 9b85651ad8 Fixed dark mode class being added in different places (body and html elements).
Fixed flag "None" (xx.svg) being able to be set and used ingame.

All menu modals will now close if you click outside of them.

Fixed info icon in instructions.

Added an icon to show the number of new events that happened while the events panel is hidden.

Removed opacity from the svg icons files and added it to the player-icons div, making them have the same opacity and being more visible.
2025-03-02 09:39:36 -08:00
Evan 38365fd9d0 configure nginx to run in container 2025-03-02 09:39:36 -08:00
Evan a029b4277f use node cluster to shard server 2025-03-02 09:39:09 -08:00
Todd db9a75a3d9 consistency and fixed typo 2025-03-02 03:00:05 -05:00
Todd 5763abd30f Added random map option to SinglePlayerModal and HostLobbyModal 2025-03-02 02:46:48 -05:00
Evan f540d0302c configure nginx to run in container 2025-02-27 19:21:18 -08:00
Evan 3494c54906 use node cluster to shard server 2025-02-27 10:45:30 -08:00
evanpelle 3c163140c2 Merge pull request #79 from NewHappyRabbit/creative-mode
Customizable creative mode
2025-02-24 13:27:14 -08:00
NewHappyRabbit 02d5060352 Customizable creative mode 2025-02-24 23:06:50 +02:00
NewHappyRabbit d9beeb8c60 Reduced modals height on mobile, fixed public lobby button bug 2025-02-24 20:52:06 +02:00
NewHappyRabbit aa24d317c8 Added PWA and mobile improvements to the UI 2025-02-24 11:49:58 +02:00
NewHappyRabbit 303543d246 Lobby urls! Server will server index.html and act as a SPA. 2025-02-12 21:18:23 +02:00
NewHappyRabbit e1a6c5f7bd Merge branch 'main' of https://github.com/openfrontio/OpenFrontIO into SPA 2025-02-12 20:03:26 +02:00
Evan 40966ca3b9 format all files with prettier 2025-02-12 08:28:15 -08:00
q8gazy 9c0c5b667c styling the checkboxes 2025-02-12 08:51:27 +03:00
Evan 2ca6c6d04c fix compile error from bad merge 2025-02-11 21:14:59 -08:00
q8gazy b691d7f771 Merge branch 'main' into ui/modal-overlay-improvements 2025-02-12 06:58:36 +03:00
q8gazy a3c1f2a2c5 fix 2025-02-12 06:53:42 +03:00
NewHappyRabbit 1e1942ab1c TODO: Keep working 2025-02-12 02:08:29 +02:00
NewHappyRabbit 7fcbaa8584 Added creative mode. Everything costs 0 gold, builds instantly and you start with 100k population 2025-02-12 00:15:30 +02:00
q8gazy 65db3cb630 modal overlay improvements 2025-02-11 12:49:42 +03:00
NewHappyRabbit 684b0bb2e0 Added checkboxes to disable Bots and NPCs for single player and private lobbies 2025-02-11 03:29:56 +02:00
Evan 4ee37323f9 format codebase with prettier 2025-02-01 12:05:11 -08:00
evanpelle 0d764eb885 update gamemap, rename gamemap enum => gamemaptype 2025-02-01 12:05:11 -08:00
Mittani aba8e5dd81 + add validation server side 2024-12-31 13:06:43 -08:00
evanpelle 44d6962b88 have private lobby show players 2024-12-24 11:47:11 -08:00
evanpelle 0d3d49fdd0 use consolex in client folder 2024-12-18 14:01:34 -08:00
evanpelle 601f606a7f save game stats to bigquery, update enums 2024-12-10 20:28:39 -08:00
Evan 2d2df14ae3 add GameConfig to Game 2024-12-07 09:45:39 -08:00