Commit Graph

997 Commits

Author SHA1 Message Date
Scott Anderson 2a67b84163 Merge main into strict 2025-05-14 22:18:35 -04:00
Scott Anderson 30977e0deb src/client/graphics/layers/UnitLayer.ts 2025-05-14 22:15:36 -04:00
Scott Anderson 1ea0c3832a src/client/graphics/layers/TerritoryLayer.ts 2025-05-14 22:15:36 -04:00
Scott Anderson c3be640fb9 src/client/graphics/layers/SpawnTimer.ts 2025-05-14 22:15:36 -04:00
Scott Anderson ef80b97b73 src/client/graphics/layers/RadialMenu.ts 2025-05-14 22:15:36 -04:00
Scott Anderson 61e0c0ca95 src/client/graphics/layers/PlayerPanel.ts 2025-05-14 22:15:36 -04:00
Scott Anderson 5da577d879 src/client/graphics/layers/PlayerInfoOverlay.ts 2025-05-14 22:15:36 -04:00
Scott Anderson b39c5526a1 src/client/graphics/layers/OptionsMenu.ts 2025-05-14 22:15:36 -04:00
Scott Anderson c0c675088c src/client/graphics/layers/MultiTabModal.ts 2025-05-14 22:15:36 -04:00
Scott Anderson 4f06126b00 src/client/graphics/layers/ChatModal.ts 2025-05-14 22:15:36 -04:00
Scott Anderson cc5b6adfbc src/client/graphics/layers/ChatDisplay.ts 2025-05-14 22:15:36 -04:00
Scott Anderson 272e29fe67 src/client/graphics/SpriteLoader.ts 2025-05-14 22:15:36 -04:00
Léo Kosman 87fd9c3219 Feat : focus unit when clicking on warnings in chat (#699)
## Description:

Enables you to click on the `Naval invasion incoming from X` or `X -
atom bomb inbound` messages to focus the camera on the incoming unit
(boat or nuke). Works for boats, atom bombs, hydrogen bombs and MIRVs.

Nothing changes in looks, only the fact that the messages are clickable.

closes #641 

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

leo21_
2025-05-14 17:18:46 -04:00
Aotumuri 1dfa62f998 mls-3 (#752)
## Description:

## Please complete the following:

- [ ] 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>
2025-05-14 15:36:31 -04:00
Scott Anderson 829e690428 src/client/Transport.ts 2025-05-14 02:26:26 -04:00
Scott Anderson 329a692ef0 src/client/SinglePlayerModal.ts 2025-05-14 02:26:23 -04:00
Scott Anderson 18550ff8aa src/client/PublicLobby.ts 2025-05-14 02:26:21 -04:00
Scott Anderson ef2287782a src/client/Main.ts 2025-05-14 02:26:18 -04:00
Scott Anderson 81c2d88add src/client/LocalServer.ts 2025-05-14 02:26:16 -04:00
Scott Anderson 90f728734d src/client/HostLobbyModal.ts 2025-05-14 02:26:13 -04:00
Scott Anderson dabe61f6ab src/client/ClientGameRunner.ts 2025-05-14 02:26:11 -04:00
Scott Anderson a38d3d986f fix 2025-05-13 03:41:59 -04:00
Scott Anderson 781ddb5911 Merge main into strict 2025-05-13 03:41:42 -04:00
Scott Anderson fd16b8f0e8 Merge commit 'd49272e17e6b162b9bf4a6934d0f89de3285316e' into HEAD 2025-05-13 03:40:58 -04:00
DevelopingTom 7c163e2361 Curved nuke trajectory (#734)
## Description:

Change nuke trajectory to follow a curve, and add a trail behind them.


![image](https://github.com/user-attachments/assets/f0fac8a0-d173-4e13-a889-3d19c36f85b8)

### Details:
- Use a look-up table to approximate the distance travelled, so the
speed remains constant along the curve
- The nuke speed is higher than a single pixel, so draw a line behind
for the trail
- Added a new "utility" file for the Bresenham/Bezier algorith: please
tell me if that's ok

### Edge cases (literally the edges):
The control points remains in the map so the curve can never go outside:


![image](https://github.com/user-attachments/assets/bb3a02fd-d76d-4643-a123-8bbc48c0ca87)



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

---------

Co-authored-by: Scott Anderson <scottanderson@users.noreply.github.com>
2025-05-13 01:30:31 -04:00
evan 36759eaa87 remove tournament advert from win/lose modal 2025-05-12 21:03:20 -07:00
Scott Anderson f8a052a6ce Client JWT authentication (#723)
## Description:

Send JWT to the game server for verification.

## Please complete the following:

- [x] I have added screenshots for all UI updates
- [ ] 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>
2025-05-12 11:51:40 -07:00
Bastien SIGURET b402a3549e fix(dark-mode-button): delete the duplicated dark mode button (#735)
## Description:

Fix the overlapping dark mode button. It happened because there was a
duplicate in the index.html

Linked issue: https://github.com/openfrontio/OpenFrontIO/issues/659

I tested in game + mobile to find out if there was no reason for this
duplicate. I'm not 100% familiar with the project so feel free to double
check 🙏

## Media

Before:


https://github.com/user-attachments/assets/09ab3449-1503-4da0-84d9-e0d1fa61507b

After:


https://github.com/user-attachments/assets/0c0ef2ad-5071-4030-baa9-a9fb85edd1e9

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

Nilsfram
2025-05-12 07:04:39 -07:00
evan 6711dbfbf7 move privacy button to the top right 2025-05-11 21:44:45 -07:00
evan 95919d2392 add addinplay ads 2025-05-11 21:40:40 -07:00
evanpelle 0dc68ced31 Add pause button when replaying (#726)
## Description:

This PR does two things:

1. Allow pausing on replay
2. As part of the refactoring, in singleplayer games, LocalServer now
waits for the last turn to complete execution before sending the next
turn. Previously, low end devices would sometimes fall behind getting
the "playing the past" bug where commands were delayed. Now when a
devices cannot keep up, the entire game slows down.

## Please complete the following:

- [ ] I have added screenshots for all UI updates
- [ ] I confirm I have thoroughly tested these changes and take full
responsibility for any bugs introduced
- [ ] 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>

Co-authored-by: evan <openfrontio@gmail.com>
2025-05-11 13:28:38 -07:00
evanpelle 1d0732d3d9 Refactor UnitSpecific info => AllUnitParams type union (#701)
## Description:

By using a type union we get better type safety, enforcing each unit
type have the appropriate params when initializing

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

---------

Co-authored-by: evan <openfrontio@gmail.com>
2025-05-10 11:40:47 -07:00
DevelopingTom 890972cb0c Add checkered colors for defended borders (#691)
## Description:

The borders near a defense post are currently colored differently, but
too discreetly for the user.

I suggest coloring them with a checkerboard pattern.


![image](https://github.com/user-attachments/assets/8f414976-bada-4793-812a-10f28da911f5)

![image](https://github.com/user-attachments/assets/81261148-88e3-4498-9f29-27a6a201b6c5)


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

IngloriousTom
2025-05-10 06:17:51 -07:00
Rouillard 1c6c4c0512 Clear the sprites in a first loop before drawing (#692)
## Description:
Split the clearRect from the drawImage in a first loop so that moving
units don't erase other units. There should not be a perfomance
lowering.
There is still an issue of unit erasing other units when the other unit
is not updated (unit didn't move) but it's a rare case and the fix would
be to update all units regardless of their activity, so I think this
might be a good compromise, performance wise.

before:

![image](https://github.com/user-attachments/assets/c0f500ca-2465-4986-9755-0d5f07a17bd7)

after:

![image](https://github.com/user-attachments/assets/ebaef73e-9bf1-485f-8a79-da96c949e4f5)


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

Vivacious Box
2025-05-10 06:12:48 -07:00
Scott Anderson 843bfe40d3 Remove unused fields (#695)
## Description:

- Remove unnecessary parsing of inferred types.
- Remove unused persistentID from log message.

## 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>
2025-05-10 06:10:41 -07:00
Aotumuri ed370554de Fix leaderboard overlapping quick chat modal (#694)
## Description:
Fix the issue where the leaderboard appears on top of the quick chat
modal.
## 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-10 04:20:11 -04:00
Aotumuri d6170f67ab MLS for Quick Chat (#686)
## Description:
<img width="842" alt="スクリーンショット 2025-05-09 17 51 27"
src="https://github.com/user-attachments/assets/b9a2cb5b-74d2-4c07-aed2-01d719de6eb4"
/>

MLS
## 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
2025-05-10 00:50:56 -04:00
Duwibi 47f76b5b29 Add Baikal map (fixed) (#690)
## Description:
This PR adds the "Baikal" map which is a cutout from the whole real life
lake, as the lake itself is very large vertically and wouldn't make as a
very good map by itself. This map has some rivers and a very big sort of
water body that seperates the map in two(it was kind of designed for the
teams gamemode). It's nations are some features around that region.

## Please complete the following:

- [ ] 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:

Nikola123
2025-05-10 00:27:18 -04:00
evan c5152f035f add endpoint to kick players from a game given admin token, game id & client id 2025-05-09 13:00:39 -07:00
Duwibi ce7a7c555d Add Falkland Islands map (#681)
## Description:
This PR adds the Falkland Islands map. It has 12 nations - most of the
regions of the islands. All use the Falkland Island flag as they don't
have their own.

## Please complete the following:

- [ ] 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>
Nikola123
2025-05-08 14:34:13 -07:00
evan c58ac10835 add news button for update release notes 2025-05-08 13:15:01 -07:00
Aotumuri 5ddc25897f Add quick chat (#412)
## Description:

Fixes #480 

## Please complete the following:

- [ ] I have added screenshots for all UI updates
- [ ] I confirm I have thoroughly tested these changes and take full
responsibility for any bugs introduced
- [ ] 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>
2025-05-08 09:00:25 -07:00
Scott Anderson cb9b5a7a17 Remove clientID, persistentID, gameID from ClientBaseMessageSchema, TurnSchema (#666)
## Description:

Remove the devils `clientID`, `persistentID`, and `gameID` from
`ClientBaseMessageSchema`, as well as `gameID` from `TurnSchema`. These
values are already known through the `Client` object that is hoisted
into the relevant handler.

## 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>
2025-05-07 11:11:18 -07:00
Aotumuri a62bbbc6b1 Add anonymous name toggle to user settings (#661)
## Description:
Added a new toggle to user settings 
I deleted some leftover files that were no longer in use in order to
eliminate errors.

## 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-07 08:55:01 -07:00
Aotumuri cddcc681dd Added custom disable settings (#593)
## Description:
I will write an issue later as I don't have time.

![スクリーンショット 2025-04-23 22 04
24](https://github.com/user-attachments/assets/77754140-eee9-46bd-a98f-a3abec35ca6a)
<img width="735" alt="スクリーンショット 2025-04-23 22 04 40"
src="https://github.com/user-attachments/assets/24bb3461-8e05-418c-8dbf-2ba1a624fe27"
/>
<img width="790" alt="スクリーンショット 2025-04-23 22 04 47"
src="https://github.com/user-attachments/assets/33387200-d0af-4394-9d60-af1f88a036e9"
/>

## 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-07 06:14:54 -07:00
Scott Anderson 8479fab49d Add logout button (#653)
## Description:

- Add a logout button, and post to the `/logout` endpoint to end the
session server-side.
- Add an option to log out all sessions by calling the `/revoke`
endpoint. There is button for this yet.
- Depends on https://github.com/openfrontio/infra/pull/32
- This is the last part of #559

## 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>
2025-05-05 15:48:12 -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
Scott Anderson 5d828f7d42 Add a new apiHost configuration for local development (#655)
## Description:

Allow developers to override the API base.

## 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>
2025-05-05 09:13:53 -07:00
Aotumuri 7092e9c166 Added keybinding configuration. (#548)
## Description:
Added support for customizable keybind settings.

fixes #549

fixed these bug
https://discord.com/channels/1284581928254701718/1363254158341308668
https://discord.com/channels/1284581928254701718/1362159209642459166

## 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 08:40:52 -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