Commit Graph

48 Commits

Author SHA1 Message Date
Demonessica 3a481d3d16 Main menu UI cleanup (#857)
## Description:

- Fixes right side of the username box not being aligned with the rest
of the menu by fully hiding the news button
- Styled news button to match flag button (although a style more like
the secondary buttons would be better IMO, this is more of a temp fix)
- Invalid username popup no longer vertically shifts the rest of the
menu


![image](https://github.com/user-attachments/assets/451d0184-3f0f-44af-9b2c-a93f9dc38e49)


I uhhh kinda forgot how branches work and ended up pushing some changes
to the public lobby button to the same branch:

![image](https://github.com/user-attachments/assets/cee68ac3-361a-4185-a5c5-70602dbbb040)

![image](https://github.com/user-attachments/assets/fb9067e7-6e28-464e-b50e-dcd2ba5afdc3)


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

Demonessica

---------

Co-authored-by: evanpelle <evanpelle@gmail.com>
2025-05-27 20:29:52 -07:00
VariableVince 01eaf00bd6 Fix misaligned public lobbies text (#819)
## Description:

Fix misaligned public lobbies text. The texts are not in a straight
line.

Before:
![Before with edge element
inspect](https://github.com/user-attachments/assets/abf83fab-128f-46c3-8c02-d1d5b6679f0a)

![Before with known
world](https://github.com/user-attachments/assets/13e3f2ed-207f-499f-ab04-c03fa3f73a9d)

![before
3](https://github.com/user-attachments/assets/b2fb5e87-0e29-4698-b76c-ed935083fd69)


![now](https://github.com/user-attachments/assets/f97e2cbf-3b69-488f-b286-ba6ca85cfa5d)


After:

![After](https://github.com/user-attachments/assets/ab597f35-968a-468a-a647-a4bcc797ce00)


![pr](https://github.com/user-attachments/assets/257a2617-a420-49e7-87f4-cee988a86578)


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

tryout33
2025-05-21 18:11:14 -04:00
Scott Anderson 70745faac4 Enable strictNullChecks, eqeqeq (#436)
## Description:

Improve type safety and runtime correctness by:
1. Enabling TypeScript's
[strictNullChecks](https://www.typescriptlang.org/tsconfig/#strictNullChecks)
compiler option.
2. Replacing all loose equality operators (`==` and `!=`) with strict
equality operators (`===` and `!==`).
3. Cleaning up of type declarations, null handling logic, and equality
expressions throughout the project.

Currently, the code allows implicit assumptions that `null` and
`undefined` are interchangeable, and relies on type-coercing equality
checks that can introduce subtle bugs. These practices make it difficult
to reason about when values may be absent and hinder the effectiveness
of static analysis.

Migrating to strict null checks and enforcing strict equality
comparisons will clarify intent, reduce bugs, and make the codebase
safer and easier to maintain.

Fixes #466 

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

---------

Co-authored-by: Scott Anderson <662325+scottanderson@users.noreply.github.com>
Co-authored-by: evanpelle <openfrontio@gmail.com>
2025-05-15 16:39:40 -07:00
Aotumuri 29076f84c5 fixed team count (#654)
## Description:
fixed .w.

<img width="541" alt="スクリーンショット 2025-05-05 11 22 34"
src="https://github.com/user-attachments/assets/4c324d64-a9cd-44a8-a72b-2465849303c9"
/>

## 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
2025-05-05 09:14:55 -07:00
Aotumuri 3d3f1261e9 display team count (#648)
## Description:
I added a display for the number of teams in public lobbies.
![スクリーンショット 2025-05-04 20 59
02](https://github.com/user-attachments/assets/ab24de77-fcac-4c2d-b272-2bc3ce29187f)
## 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
2025-05-04 13:25:50 -07:00
Evan 118a826025 Add teams to public lobby 2025-04-02 13:46:11 -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
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
Ilan Schemoul a1d0c87232 remove Game starts when ... in lobby (#233) 2025-03-13 06:02:45 -07:00
Ilan Schemoul 07ad7912bc feat: timer starts if enough player or enough time (#229)
Avoid these huge lobbies
2025-03-12 14:18:34 -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
evanpelle b77bc46a80 store lobby start time on first fetch for smoother countdown (#183) 2025-03-08 11:28:23 -08:00
Evan edcfac2fe7 give public lobbies smoother countdown, use admin token in server. 2025-03-06 19:43:56 -08:00
Evan 4c8eeb0cc1 merge branch v0.17.3 2025-03-06 15:46:57 -08:00
Evan 3a0bc594ae use api prefix 2025-03-05 18:04:22 -08:00
Bruno Jurković 8498c0d398 simple debouncer preventing join spam 2025-03-03 12:11:46 +01:00
Evan c6b16aba74 remove lobbies logging 2025-03-02 09:39:54 -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
Evan f540d0302c configure nginx to run in container 2025-02-27 19:21:18 -08:00
ilan schemoul 5243d6a3e1 update the button to "Join next game" so it's clear it's a button 2025-02-27 23:01:25 +01:00
Evan 3494c54906 use node cluster to shard server 2025-02-27 10:45:30 -08:00
NewHappyRabbit d9beeb8c60 Reduced modals height on mobile, fixed public lobby button bug 2025-02-24 20:52:06 +02:00
NewHappyRabbit 9565a0cffa Added map image preview for public lobby 2025-02-18 14:52:09 +02:00
Evan f448785476 have client stop polling for public servers after game starts 2025-02-12 12:08:50 -08:00
Evan 40966ca3b9 format all files with prettier 2025-02-12 08:28:15 -08:00
Evan b3498976fb show game map name in public lobby 2025-02-09 13:15:06 -08:00
q8gazy 078619fcc4 Update PublicLobby button styling and layout 2025-02-09 09:25:01 +03:00
Evan 4ee37323f9 format codebase with prettier 2025-02-01 12:05:11 -08:00
Evan f8cc4baf7e style front page, default to prod config 2025-02-01 12:05:11 -08:00
evanpelle 3d58ef185c improve front page UI 2025-02-01 12:05:11 -08:00
evanpelle 031a452558 improve front page 2025-02-01 12:05:11 -08:00
evanpelle 633e93f21b use tailwind for frontpage 2025-02-01 12:05:11 -08:00
Evan 3aeff1df29 improve front page 2025-02-01 12:05:11 -08:00
evanpelle 0d764eb885 update gamemap, rename gamemap enum => gamemaptype 2025-02-01 12:05:11 -08:00
Evan f6b739e263 validate usernames on change, fix public lobby highlight bug, validate
strings with zod for safety
2025-01-02 09:02:23 -08:00
Mittani af6c519d77 * updata validation on public games 2024-12-31 13:06:43 -08:00
evanpelle eb261fe103 make front page mobile friendly 2024-12-31 12:44:31 -08:00
evanpelle 0d3d49fdd0 use consolex in client folder 2024-12-18 14:01:34 -08:00
Evan 7669105a1b record games in gcs 2024-12-07 18:30:04 -08:00
Evan 2d2df14ae3 add GameConfig to Game 2024-12-07 09:45:39 -08:00
Evan 56d4b924fa add difficulties 2024-10-23 21:08:24 -07:00
evanpelle 42a6a2fcef can creater & join lobby 2024-10-14 20:45:31 -07:00
evanpelle 5da1c2f620 can select map private game 2024-10-12 20:54:18 -07:00
evanpelle ac46c786c9 implement single player 2024-10-12 18:20:41 -07:00
evanpelle cecbe8c313 create single player modal 2024-10-12 12:32:40 -07:00
evanpelle a02d148151 Created PublicLobby lit element 2024-10-12 08:56:11 -07:00