Commit Graph

2002 Commits

Author SHA1 Message Date
1brucben 65115eb4ee add hospital visual 2025-06-05 18:02:38 +02:00
1brucben 71e677ce4c fix console 2025-06-05 16:44:56 +02:00
DevelopingTom e6209a41b0 SAMs should target only nukes aimed at nearby targets (#1038)
## Description:

Currently, SAMs target any nuke within range. This can be frustrating
when a random SAM from another player intercepts your nuke, especially
since nukes follow a curved trajectory, leaving little room to adjust
their path.

This change modifies how SAMs intercept nukes: they will now only target
those whose impact points are near the SAM.
The “target range” is still generous, allowing players to defend against
Hydrogen bombs, while preventing random SAMs to intercept your valued
nukes.

In this example, the target was the opponent missile silo:


https://github.com/user-attachments/assets/0d8be2ac-e04d-44a4-a67e-54836cce8899



## 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
- [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-06-05 16:14:54 +02:00
Scott Anderson 9ab4c455e2 Close socket on ClientMessageSchema, improve zod error (#1003)
## Description:

- Close the socket on parse failure.
- Use `safeParse` and `prettifyError` to improve logging output on zod
validation failures.

## 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
- [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 <evanpelle@gmail.com>
2025-06-05 16:14:48 +02:00
Andrew Niziolek 776516b3a7 Rev: Update "Japan and Neighbors" map to "East Asia" (#1007)
**Closes Issue #1001.**

_Will require updates to translations for each language but English is
in place as are pointers to relevant map files and thumbnails._

## Description:
All assets and references to the Japan and Neighbors map have been
updated to reflect East Asia.

**New Behavior**
![East Asia
Map](https://github.com/user-attachments/assets/64192590-bbb7-4408-a99b-7455de295d2b)

**Old Behavior**
![Japan and Neighbors named
map](https://github.com/user-attachments/assets/ba44dd56-1470-4c74-a70d-bd7fd8f3c795)

Game test is functioning. Other languages will need to be updated for
their displayed text to align.

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

ajaxburger
_My git name is included in my nickname on the server._

---------

Co-authored-by: evanpelle <evanpelle@gmail.com>
2025-06-05 16:14:41 +02:00
Demonessica 73853dca1f Center map on start (#1013)
## Description:
- Adds logic to hard-set the transform handler directly to a new
position, without a movement animation
- Implements #1004

![image](https://github.com/user-attachments/assets/e7298f33-fd8f-4828-94f7-2422c8e5cdb0)

![image](https://github.com/user-attachments/assets/6177c164-da68-47c3-9fc5-1c445027b881)

![image](https://github.com/user-attachments/assets/c0580034-0c7d-48b5-96f8-0d84fcb0f738)


- removed a second initialization of the TransformHandler to prevent
transformation desyncs between layers. Incidentally this probably fixes
#62

## 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
- [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: tnhnblgl <51187395+tnhnblgl@users.noreply.github.com>
2025-06-05 16:14:33 +02:00
falc 07916d46bf Changed consolex to console logging (#1036)
## Description:
Changed from consolex to console
## 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
- [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:

@qqkedsi
2025-06-05 16:14:27 +02:00
Scott Anderson 410d9a1909 Fix discord login issue (#1028)
Fixes #1016

## Description:

Fix the zod user schema validation to make roles optional. This was
causing a validation error when looking up the user's roles.

## 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
- [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-06-05 16:14:20 +02:00
Scott Anderson 89f159cf49 Add a status check for the milestone field (#1029)
## Description:

Add a status check for the milestone field.

## 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
- [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-06-05 16:14:14 +02:00
evanpelle 74d38352c5 ensure that player records maintain the same order as in start info, this caused replay issues, as players were assigned to the wrong team 2025-06-05 16:14:06 +02:00
evanpelle 618c520de7 bugfix: checking is socket was null broke hash verification on replay 2025-06-05 16:13:57 +02:00
evanpelle d62b47e2b9 page.redirect was not a function, causing the url not to redirect. als remove the # check so we are no longer serving ads 2025-06-05 16:13:46 +02:00
falc 48d7c9ca9f added ratio controls (#963)
## Description:
added custom controls for attack ration to user setting
## 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
- [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:

@qqkedsi
![Screenshot from 2025-05-31
01-18-30](https://github.com/user-attachments/assets/2460aab2-51ef-46d9-9d05-53e84dd57b29)

Co-authored-by: evanpelle <evanpelle@gmail.com>
2025-06-05 16:11:35 +02:00
1brucben 0e809e4e19 force modal 2025-06-05 16:09:15 +02:00
1brucben 3bf3d7172b restore total pop 2025-06-05 00:32:38 +02:00
1brucben 38f41a42f5 remove pop cap 2025-06-04 23:57:08 +02:00
1brucben 285fb98bb5 description 2025-06-04 19:57:30 +02:00
1brucben 8aa4271941 adjust hospital description 2025-06-04 19:57:10 +02:00
1brucben 10ac6cb54b cap hospital at 40% bonus 2025-06-04 19:41:47 +02:00
1brucben 90baeda59a boost hospitals 2025-06-04 18:07:58 +02:00
1brucben 65b19dd236 c1.1 2025-06-04 17:49:19 +02:00
1brucben 97891d019f hospitals change 2025-06-03 20:59:43 +02:00
1brucben 9f46efe2a0 hospital adjust 2025-06-03 20:58:26 +02:00
1brucben 426653eab5 Adjust hospital 2025-06-03 19:51:44 +02:00
1brucben fe10240a5d bug fix 2025-06-03 19:03:14 +02:00
1brucben b309922b84 info overlay 2025-06-03 18:30:07 +02:00
1brucben cc9ad11aff add hospital unit 2025-06-03 18:22:03 +02:00
1brucben 62fd44ab6b label version 2025-06-03 16:53:08 +02:00
Doo 8f85b94334 Fixnukeboatbug (#1011)
## Description:
Fixes : https://github.com/openfrontio/OpenFrontIO/issues/958
Use the actual troop count on the boat unit when it lands, not the
original this.troops value.
Tested locally with all nukes type and it works fine.



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

.doo

---------

Co-authored-by: rldtech <r.le-disez+oplab@groupeonepoint.com>
Co-authored-by: tnhnblgl <51187395+tnhnblgl@users.noreply.github.com>
2025-06-03 16:50:55 +02:00
evanpelle 1eb8e2d1c3 bugfix: ships in alternate view have incorrect color due to bad sprite caching, cached as [Object], not color string 2025-06-03 16:50:50 +02:00
evanpelle 55e232435f fix build errors due to bad merge 2025-06-03 16:50:45 +02:00
Noface 7b7e079eb2 this is a fix for the "possibly null" error. dosent seem to cause runtime issues but does cause the compiler to throw an error (#1005)
## Description:
this is a fix for the "possibly null" error. dosent seem to cause
runtime issues but does cause the compiler to throw an error this just
adds a safety check

## Please complete the following:

- [x] I have added screenshots for all UI updates (No UI Updates)
- [x] I process any text displayed to the user through translateText()
and I've added it to the en.json file (No Text Updates)
- [x] I have added relevant tests to the test directory (No Tests to
add)
- [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:

jerryslang
2025-06-03 16:50:39 +02:00
Scott Anderson 3d032192e1 Validate incoming API data with zod (#891)
## Description:

Validate incoming API data with zod.

## 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
- [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-06-03 16:50:34 +02:00
Théodore Léon 8dc6941fe7 Fix : Donation when max pop already reached (#904)
## Description:

Only donate up to what the receiving player can get so we don't silently
loose troops

See the chat here :

![image](https://github.com/user-attachments/assets/95b0917c-b7f3-47a0-b3a0-156110e727aa)


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

theodoreleon.aetarax

---------

Co-authored-by: tnhnblgl <51187395+tnhnblgl@users.noreply.github.com>
2025-06-03 16:50:28 +02:00
Scott Anderson e763ade705 Use bigint for gold (#1000) 2025-06-03 16:50:11 +02:00
Guillaume Quarmeau cbecfac981 Added support for dark mode icons for Alliance Request Icon and Embargo Icon (#993)
## Description:
Alliance Request and Embargo icons now switch from white to black
according to whether dark mode is enabled.

![Screenshot 2025-06-01
120058](https://github.com/user-attachments/assets/ccc97b7b-088c-4294-953b-63fdfb0c354e)
*Dark mode off*

![Screenshot 2025-06-01
120011](https://github.com/user-attachments/assets/1ff3f9bb-c01e-4c49-b03b-97851914af1b)
*Dark mode on*

## Potential issue:
The only caveat is that upon changing the theme when both icons are
displayed, the display order is not conserved, so they may appear in a
different order than before.
This seems however to be a very small use case, and rather insignificant
as icons don't have an order to begin with.
Do let me know if this is a problem though!

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

@vermylion
2025-06-03 16:42:02 +02:00
Scott Anderson bb5b064555 Equalize team sizes (#992)
## Description:

Ensure that team sizes are equal.

Closes #841

## 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
- [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-06-03 16:41:55 +02:00
Shaan 2c9bb9a80f Synced the single player and host files together, and fix issue withc… (#991)
## Description:
This is a UI fix that addresses the issue where the nuke related options
were not able to be deselected in private lobby's, these are now able to
done.

## Please complete the following:
- [x] I have added screenshots for all UI updates
- [x] I understand that submitting code with bugs that could have been
caught through manual testing blocks releases and new features for all
contributors
- [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:

Shaan160

Fixes #989 


![image](https://github.com/user-attachments/assets/78ae73ed-b73e-49f7-a2dd-bade3bcfa8bc)
2025-06-03 16:41:47 +02:00
Andrew Niziolek 266968c130 Scroll bar Behavior on Chromium Browsers, c-modal_content (#976)
_Related to Issue #972_

## Description:
Updating the modal_content overflow behavior from "scroll" to "auto"
presents the scroll-bar when content overflows on the Y axis but hides
it when not necessary to view all content.

**New behavior**

![image](https://github.com/user-attachments/assets/0a2365ed-f676-4267-8bd7-22d77ea43f90)

**Previous behavior**

![image2](https://github.com/user-attachments/assets/b2175f4a-e044-4262-b751-22c917bf519a)

This maintains the functionality of the Language dialog but hides the
scrollbar when necessary in the Join Lobby dialog. This automatic
behavior should further apply to any dialogs making use of the
`c-modal_content` class.


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

ajaxburger
2025-06-03 16:41:38 +02:00
Erwan Huon cfbe8bfe87 Fix Player Name Monospaced Text Overflow on PlayerInfo (#975)
## Description:
This PR addresses the issue of long continuous strings (without spaces)
overflowing their container in the user interface. By adding the CSS
property word-break: break-all (via the Tailwind class break-all) to the
text container, we ensure that lengthy words will wrap properly and
maintain the layout integrity across different screen sizes.


![image](https://github.com/user-attachments/assets/358c0871-a9b8-4828-8401-610acd7eb242)
_Before_



![image](https://github.com/user-attachments/assets/d6c820de-f2bf-479a-90c9-54eec51b4425)
_After_


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

RTHOne

Co-authored-by: evanpelle <evanpelle@gmail.com>
2025-06-03 16:41:28 +02:00
Erwan Huon 86a231eb56 Add dynamic sorting to leaderboard by tiles, gold, and troops (#961)
### Description:
This PR adds dynamic sorting to the in-game leaderboard. Players can now
sort the leaderboard by tiles owned (default), gold, or troops by
clicking the respective column headers. The currently selected sort is
indicated with a downward arrow (⬇️). This improves usability and makes
it easier to compare player stats mid-game.

### Please complete the following:
[] I have added screenshots for all UI updates


https://github.com/user-attachments/assets/d0238698-a187-4fc7-9407-04d11cccbc32

[] I process any text displayed to the user through translateText() and
I've added it to the en.json file

[] I have added relevant tests to the test directory

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

Closes #923

---------

Co-authored-by: evanpelle <openfrontio@gmail.com>
Co-authored-by: evanpelle <evanpelle@gmail.com>
2025-06-03 16:41:21 +02:00
Erwan Huon 037796971a Fix text overflow in instructions for longer translations (#971)
## Description:

This pull request addresses a layout issue where text in instructions
(player icon) would overflow or be cut off, especially when translated
into languages with longer word structures (e.g., Dutch, German, French,
...)


![image](https://github.com/user-attachments/assets/8fe77f1c-91e1-44ad-91b4-2dbec720fee3)
_Before_ (web app view)



![image](https://github.com/user-attachments/assets/5c867453-4b3c-49e2-b45d-a3ec5af8c2ab)
_After_ (mobile layout)

### 🔧 Changes made:
Removed fixed height classes h-8 and md:h-10 from description
containers.

Allowed natural text wrapping and height growth by relying on min-h only
where needed.

Added text-center for better alignment and break-words to handle long
words gracefully.

### 🧪 Tested in:

Dutch 

German

French

English

Responsive layouts (mobile and desktop)

## 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 -> UI only
- [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:

RTHOne
2025-06-03 16:40:51 +02:00
1brucben 1cc4827a77 nerf port gold again 2025-06-02 23:40:01 +02:00
1brucben a2c1e41d86 lower attacker losses 2025-06-02 22:45:21 +02:00
1brucben 2ffc3e7f9a restore worker 2025-06-02 18:27:52 +02:00
1brucben a83d0cd4ac remove shield. adjust natoins 2025-06-02 18:08:42 +02:00
1brucben 526b2f7f3f no shield 2025-06-02 18:05:10 +02:00
1brucben 5d9f10e00e eliminate worker growth 2025-06-02 18:04:24 +02:00
1brucben 3b7eb2057c slight speed boost 2025-06-02 17:27:05 +02:00
1brucben a73ba83191 reduce port spawns 2025-06-02 17:23:19 +02:00