What's Changed
- Lobby Team Preview UI by @abdallahbahrawi1 in #2444
- New Map! "Four Islands" 🏝️ by @FloPinguin in #2482
- Bump glob from 10.4.5 to 10.5.0 in the npm_and_yarn group across 1 directory by @dependabot[bot] in #2481
- Change wiki site from miraheze to openfront.wiki by @Lavodan in #2483
- Implement donation troops/gold between human players after forming an alliance by @LoackyBit in #2450
- Optimize edge lookup railnetwork by @scamiv in #2493
- feat: added retaliate button by @RjManhas in #2426
- Fix: Correct percentage (%) placement in Persian UI (RTL handling) by @MRGhust in #2501
- Bugfix: nation strength undefined in only place it is used by @VariableVince in #2498
- Workflows: better message for missing PR Milestone by @VariableVince in #2510
- Fix: prevent desync after clan team assignment for profane username by @VariableVince in #2511
- Fix: 'Mini Map' to 'Compact Map' for Private Lobby Modal by @VariableVince in #2520
- BUG FIX: Gold double deduction + Rmoval of UnitType.Construction by @CrackeRR11 in #2378
- Add factory & train emojis by @DevelopingTom in #2522
- Nations no longer send random boats to their bordering enemies 🚢 by @FloPinguin in #2526
- Alliance icon does no longer stretch/disappear 🖌️ by @FloPinguin in #2527
- Remove border around in game time by @14ROVI in #2544
- Fix Territory Skins option by @Lavodan in #2538
- Add Gulf of St. Lawrence Map and Related Flags by @jachisc in #2524
- Fix clients able to join above max players by @Lavodan in #2547
- Add the Lisbon Map and Credit Copernicus DEM by @jachisc in #2545
- Fixes lobby team preview: clan players aren't assigned a team + add nation count + other small fixes by @VariableVince in #2536
- Correct Gulf of St. Lawrence map by @jachisc in #2555
- fix failing nationNameLength test by @Lavodan in #2556
- Fix: firefox back button not working by @Lavodan in #2557
- Special bot names by @VariableVince in #2552
- Fix spacing in player team label display by @VariableVince in #2560
- Alert frame: add to in-game settings, orange for attack instead of red by @VariableVince in #2561
- feat: Nuke Trajectory SAM intercept prediction by @bibizu in #2541
- optimize(RailroadLayer): throttle color scans, cull blits, and remove by @wraith4081 in #2565
- Lobby team size by @scamiv in #2591
- Load env vars before server config init by @Ahmet-Dedeler in #2586
- Fix obvious typos by @Ahmet-Dedeler in #2585
- Remove unused strings from en.json by @Aotumuri in #2582
- Fix: Filter out in construction buildings for totalunitlevels by @VariableVince in #2580
- Enhance: missile silo shows SAM previews by @bibizu in #2578
- Consistent border radius and padding from edge of screen for in game UI by @14ROVI in #2576
- Fix: update renderSprites based on user settings in SpriteFactory by @Aotumuri in #2574
- Add format:map-generator command by @Tidwell in #2563
- Add map-generator --maps flag to process a subset of maps by @Tidwell in #2595
- Block UI actions while GameStartingModal is visible (#2587) by @leivadev in #2596
- UI Improvement: Add rank to stats modal in the lobby for clarity by @Henry-Santa in #2562
- Add New York City Map by @Tidwell in #2542
- Update game timer UI by @14ROVI in #2577
- Add Svalmel by @Duwibi in #2600
- Revamp nation/bot enemy selection 🗡️ by @FloPinguin in #2550
- perf: Optimize cluster calculation with DFS and zero-allocation patterns by @scamiv in #2539
- Bump node-forge from 1.3.1 to 1.3.2 in the npm_and_yarn group across 1 directory by @dependabot[bot] in #2530
- Prevent keyboard shortcuts from firing while typing in quick chat search by @Aotumuri in #2528
- Fixed events panel scroll position not staying at the bottom 🛠️ by @FloPinguin in #2613
- Special bot names 2 by @VariableVince in #2609
- Fix: GulfOfStLawrence map name not being translated by @Aotumuri in #2616
- Remove troop ratio slider and description by @Aotumuri in #2617
- Improved the nation alliance request logic 🤝 Massive upgrade to singleplayer fun by @FloPinguin in #2606
- Rebalance nation configs, they are getting too strong to beat 📊 by @FloPinguin in #2618
- Fixes & cleans up Username input by @VariableVince in #2619
- increase mirv price with total number of merged launched by @evanpelle in #2621
- Create a docs folder, add auth & architecture docs by @evanpelle in #2623
- perf Optimize removeClusters by replacing sort with linear scan by @scamiv in #2614
- Add Manicouagan Map and Credit OpenTopography by @jachisc in #2620
- Task: Unify username validation and remove username sanitation by @Lavodan in #2622
- Show max troops in PlayerInfoOverlay and leaderboard 🖌️ by @FloPinguin in #2625
- Christmas Themed FX by @DevelopingTom in #2624
- Christmas Themed Homepage by @Restart2008 in #2608
- Fix nation relation exploit 🔧 by @FloPinguin in #2523
New Contributors
- @LoackyBit made their first contribution in #2450
- @MRGhust made their first contribution in #2501
- @CrackeRR11 made their first contribution in #2378
- @jachisc made their first contribution in #2524
- @bibizu made their first contribution in #2541
- @wraith4081 made their first contribution in #2565
- @Ahmet-Dedeler made their first contribution in #2586
- @Tidwell made their first contribution in #2563
- @leivadev made their first contribution in #2596
- @Henry-Santa made their first contribution in #2562
- @Restart2008 made their first contribution in #2608
Full Changelog: v0.27.10...v0.28.0-beta-v1