Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
119 commits
Select commit Hold shift + click to select a range
452952d
Enforce minimum test coverage (#1646)
1brucben Oct 17, 2025
6df48fc
Fix for two formatPercentage functions (#1659)
1brucben Oct 17, 2025
e160b74
Betray on MIRV launch (#1668)
1brucben Oct 17, 2025
c9d6c6f
Fix the stale disconnected (Zzz) icon persisting when a client reconn…
1brucben Oct 17, 2025
c53d186
Shift scroll only increase (#1625)
1brucben Oct 17, 2025
4e22f77
Loosen coverage requirements slightly (#1669)
1brucben Oct 17, 2025
7dd9637
Handle canvas context loss and restoration by redrawing (#1667)
1brucben Oct 17, 2025
96afc4e
Private Lobbies: Add kick player functionality (#1436)
1brucben Oct 17, 2025
1ddb89e
Further Darken Background Image for Dark Mode - Issue #1238 (#1653)
1brucben Oct 17, 2025
3a3229e
don't kick client for invalid message (#1673)
1brucben Oct 17, 2025
46732a3
Add support for merge groups (#1674)
1brucben Oct 17, 2025
c869156
Convert GameServer's message handler from if to switch #1639 Open (#1…
1brucben Oct 17, 2025
47abc9e
Remove gold from dead players (#1450)
1brucben Oct 17, 2025
d25b890
feature/prevent-from-accident-reloading (#1411)
1brucben Oct 17, 2025
14263d4
Lower function coverage
1brucben Oct 17, 2025
accc559
Enhance dark mode support (#1682)
1brucben Oct 17, 2025
d80e1e8
Remove unused processName util and twemoji dependency (#1683)
1brucben Oct 17, 2025
8e3759c
Lower lines coverage
1brucben Oct 17, 2025
76c3056
Add random shell damage (#1665)
1brucben Oct 17, 2025
5962328
Fix Race conditions on alliances (#1605)
1brucben Oct 17, 2025
31db734
Merge group (#1689)
1brucben Oct 17, 2025
e058dbd
Merge group (#1691)
1brucben Oct 17, 2025
17b985f
add SEO & Open Graph (#1692)
1brucben Oct 17, 2025
a58f743
Fix invite link in Join Lobby (#1695)
1brucben Oct 17, 2025
9b14981
Update player info to include nationality in attack and shell random …
1brucben Oct 17, 2025
dbdf73e
Fix remaining errors and enable strict mode (#1628)
1brucben Oct 17, 2025
0c0bba2
Update viewport meta to contain user-scalable=no (#1666)
1brucben Oct 17, 2025
4a1af6a
Use OR instead of nullish operator on TokenSchema (#1702)
1brucben Oct 17, 2025
4cfd29a
remove unload warning. (#1704)
1brucben Oct 17, 2025
f4bd002
Fix: Modal background color does not cover entire content when always…
1brucben Oct 17, 2025
1f4b6fa
Fix: Sync Dark Mode Button State (#1708)
1brucben Oct 17, 2025
c88be5d
mls (v4.4) (#1753)
1brucben Oct 17, 2025
fff15ed
restrict problematic flags fixes #1690 (#1805)
1brucben Oct 17, 2025
ac4ec20
Fix flag preview not updating after selecting a new flag (#1812)
1brucben Oct 17, 2025
ac69a53
Use seedrandom to back PseudoRandom.ts (#1828)
1brucben Oct 17, 2025
24229ce
allow names to go on top of radiation (#1840)
1brucben Oct 17, 2025
ac406c1
increase MIRV warhead distance, after improved pseudorandom (#1839)
1brucben Oct 17, 2025
c83dc08
fix team color (#1888)
1brucben Oct 17, 2025
db27cab
Switch to @swc/jest to speed up tests Fixes #1679 (#1680)
1brucben Oct 17, 2025
7bbe511
Add basic ICU message format support for translations (#1645)
1brucben Oct 17, 2025
f856635
Bump the npm_and_yarn group across 1 directory with 2 updates (#1481)
1brucben Oct 17, 2025
0bb885f
Cancel alliance requests if the recipient attacks (#1733)
1brucben Oct 17, 2025
cfa8299
Remove deprecated SWC core packages from package-lock.json
1brucben Oct 17, 2025
4efbb93
Implement feature X to enhance user experience and fix bug Y in module Z
1brucben Oct 17, 2025
7e53931
Fix casing of map names in unit grid range tests for consistency
1brucben Oct 17, 2025
c5c32d3
Fix casing of map names in unit grid range tests for consistency
1brucben Oct 17, 2025
c654d0d
more chat messages (#1938)
1brucben Oct 17, 2025
bd31cef
Refactor myPlayer initialization to ensure consistent player retrieval
1brucben Oct 17, 2025
5d64818
Refactor redraw method to improve canvas initialization and image dat…
1brucben Oct 17, 2025
fb19d7c
Fix Open Graph image URL for correct asset path
1brucben Oct 17, 2025
e078d19
feat(logo): Add new logo and update index.html (#50)
1brucben Oct 17, 2025
39aff01
feat(research-tree): implement research tree modal and selection logic
1brucben Oct 18, 2025
ebf690b
feat(research): add tech descriptions and casualty modifiers for combat
1brucben Oct 19, 2025
e5a00e8
style(research-tree-modal): adjust tooltip positioning to display on …
1brucben Oct 19, 2025
0fbc5d8
feat(ui): introduce submarine panel styling for improved visual consi…
1brucben Oct 18, 2025
317358f
feat(ui): update submarine panel styles for improved readability and …
1brucben Oct 19, 2025
3970a0b
feat(ui): update color scheme and styles for improved visual consiste…
1brucben Oct 24, 2025
8ef429e
style(ui): enhance range input styles for improved visibility and con…
1brucben Oct 24, 2025
e3b1357
style(PublicLobby): add styling to game map display for improved visi…
1brucben Oct 24, 2025
5f6f756
style(ui): update selected option card styles for improved visibility…
1brucben Oct 24, 2025
667b1f9
style(PublicLobby): enhance lobby card styles for improved visibility…
1brucben Oct 24, 2025
c481db4
fix(ci): add npm cache to test job for improved performance
1brucben Oct 24, 2025
d796140
Implement feature X to enhance user experience and fix bug Y in module Z
1brucben Oct 24, 2025
7f850d6
fix(ci): remove npm cache from test job for consistency
1brucben Oct 24, 2025
f3910f3
feat: implement road speed feature with adjustable construction speed
1brucben Oct 24, 2025
71fdb74
feat: add road investment feature to manage income allocation for roa…
1brucben Oct 24, 2025
b5fa0b9
refactor: remove road speed feature and update investment calculation…
1brucben Oct 24, 2025
c4a4097
feat: implement coupled investment constraint for production and road…
1brucben Oct 24, 2025
5f936dd
feat: initialize investment rates to zero and persist settings for ro…
1brucben Oct 24, 2025
64ffa04
feat: add visual indicators for disabled road investment and lock bad…
1brucben Oct 24, 2025
d9e3d5a
feat: enforce investment cap to prevent exceeding allowed total for p…
1brucben Oct 24, 2025
390d9cd
feat: improve investment cap enforcement with proportional reductions…
1brucben Oct 24, 2025
98b0f79
feat: add research investment functionality with associated events an…
1brucben Oct 24, 2025
fe1b4fd
feat: remove gold cost display next to the research investment slider
1brucben Oct 24, 2025
1245ed7
feat: implement investment slider locking mechanism and adjust cap en…
1brucben Oct 24, 2025
c47b176
feat: enhance research tech system with metadata and automatic road u…
1brucben Oct 24, 2025
5f3a899
style(PublicLobby): Change background, logo and logo size (#52)
El-Magico777 Oct 25, 2025
74372b6
New icons (#1287)
jrouillard Jun 28, 2025
3e33cc7
feat: enhance StructureLayer to support construction state and update…
1brucben Oct 25, 2025
c05a643
Add new icon shapes and filter for filtering icons on the layer (#1348)
1brucben Oct 25, 2025
ee3ed62
feat: update icon assets for Anchor, Factory, SamLauncher, and Shield…
1brucben Oct 25, 2025
8ddbce1
feat: update icon imports and enhance rendering logic for structure i…
1brucben Oct 25, 2025
c024fb8
feat: enhance rendering logic for structure units with consistent fil…
1brucben Oct 25, 2025
21a1516
feat: enhance icon rendering logic and support for new shapes in Stru…
1brucben Oct 25, 2025
b67c9cf
feat: simplify RoadLayer rendering by removing offscreen canvas and o…
1brucben Oct 25, 2025
b913eac
feat: enhance RoadLayer rendering by adjusting road width calculation…
1brucben Oct 25, 2025
8423693
feat: update RoadLayer and StructureLayer for improved rendering cons…
1brucben Oct 25, 2025
33a779a
feat: optimize RoadLayer rendering by caching geometry and reducing r…
1brucben Oct 25, 2025
2e31f98
feat: enhance pathfinding by including planned connections in RoadMan…
1brucben Oct 25, 2025
eaa97e3
feat: enhance pathfinding by introducing planned tiles cache and bias…
1brucben Oct 25, 2025
449834c
Upgraded licensing to agpl v3, moved image files,
1brucben Oct 25, 2025
47638d8
feat: enhance FakeHumanExecution to research Economy tech and set roa…
1brucben Oct 25, 2025
0bb6bde
feat: simplify road outline rendering by using a fixed neutral color …
1brucben Oct 26, 2025
dc26456
feat: increase max road length and neighbor search radius to enhance …
1brucben Oct 26, 2025
e5bf81b
feat: refactor road segment management and improve construction clean…
1brucben Oct 26, 2025
b818888
feat: implement cancellation of planned and in-progress road construc…
1brucben Oct 26, 2025
b0a514e
feat: optimize rendering by separating world-space and UI layer passes
1brucben Oct 26, 2025
ee2deeb
feat: enhance cargo truck rendering with trailer position caching and…
1brucben Oct 26, 2025
a3c0f5d
feat: improve rendering performance by snapping to integer pixels and…
1brucben Oct 26, 2025
4257037
feat: remove RoadCache and refactor road management logic for improve…
1brucben Oct 26, 2025
8b88951
feat: optimize unit rendering by caching sprite sizes and precomputin…
1brucben Oct 26, 2025
5597f4b
feat: introduce direction change penalty to optimize road laying for …
1brucben Oct 26, 2025
28ca07a
feat: adjust road investment parameters and enhance neighbor enumerat…
1brucben Oct 26, 2025
378cce8
feat: enhance pathfinding efficiency by introducing scratch buffers a…
1brucben Oct 26, 2025
c28166d
feat: refactor movement deltas and cost scale to class-level constant…
1brucben Oct 26, 2025
7d4a9c8
feat: implement road network KPIs and enhance player data exposure fo…
1brucben Oct 26, 2025
5a03fa7
feat: add road network length tracking and logging for human players
1brucben Oct 26, 2025
06dfe77
feat: enhance road removal logic to reconnect former neighbors and al…
1brucben Oct 26, 2025
157d938
feat: enhance road management to support multi-owner attribution for …
1brucben Oct 26, 2025
0c08808
feat: implement road management enhancements with authoritative lengt…
1brucben Oct 26, 2025
59c6fbe
feat: implement road quality dynamics and expose road network quality…
1brucben Oct 26, 2025
7880bd4
feat: adjust road construction cost and maintenance multiplier for ba…
1brucben Oct 26, 2025
e05ca95
feat: optimize ImageData allocation to avoid costly GPU->CPU readbacks
1brucben Oct 26, 2025
de0e9e4
feat: enhance road construction logic to revalidate and recalculate q…
1brucben Oct 26, 2025
5bfddd5
feat: optimize pathfinding by hoisting structures and caching positio…
1brucben Oct 27, 2025
56696c2
feat: update road investment rate and worker allocation for improved …
1brucben Oct 27, 2025
9dc326a
fix: standardize case for map names in unit grid range tests
1brucben Oct 27, 2025
1e073b4
refactor: simplify null checks using nullish coalescing operator
1brucben Oct 27, 2025
cb9d457
feat(lobby): Ensure peace timer updates in custom lobbies
El-Magico777 Oct 27, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 4 additions & 1 deletion .github/workflows/ci.yml
Original file line number Diff line number Diff line change
@@ -1,6 +1,9 @@
name: 🧪 CI

on:
merge_group:
types:
- checks_requested
pull_request:
push:
branches: [main]
Expand Down Expand Up @@ -41,7 +44,7 @@ jobs:
with:
node-version: 20
- run: npm ci
- run: npm test
- run: npm run test:coverage

eslint:
name: 🔍 ESLint
Expand Down
26 changes: 20 additions & 6 deletions .github/workflows/pr-description.yml
Original file line number Diff line number Diff line change
@@ -1,6 +1,9 @@
name: 🧼 PR

on:
merge_group:
types:
- checks_requested
pull_request:
types:
- demilestoned
Expand All @@ -20,6 +23,11 @@ jobs:
- uses: actions/github-script@v7
with:
script: |
if (context.eventName === 'merge_group') {
// Ignore merge_group events
return;
}

const body = context.payload.pull_request.body || '';

const errors = [];
Expand Down Expand Up @@ -60,10 +68,16 @@ jobs:
- uses: actions/github-script@v7
with:
script: |
// Get the pull request data
const milestone = context.payload.pull_request.milestone;
if (!milestone) {
core.setFailed('❌ Pull request must have a milestone assigned before merging.');
return;
if (context.eventName === 'merge_group') {
// Ignore merge_group events
} else if (context.eventName === 'pull_request') {
// Get the pull request data
const milestone = context.payload.pull_request.milestone;
if (!milestone) {
core.setFailed('❌ Pull request must have a milestone assigned before merging.');
return;
}
console.log(`✅ Milestone found: ${milestone.title}`);
} else {
core.setFailed(`❌ Unknown event type ${context.eventName}.`);
}
console.log(`✅ Milestone found: ${milestone.title}`);
3 changes: 1 addition & 2 deletions .husky/pre-commit
Original file line number Diff line number Diff line change
@@ -1,5 +1,4 @@
#!/usr/bin/env sh
. "$(dirname -- "$0")/_/husky.sh"


# Add PATH setup to ensure npx is found
export PATH="/usr/local/bin:$HOME/.npm-global/bin:$HOME/.nvm/versions/node/$(node -v)/bin:$PATH"
Expand Down
16 changes: 16 additions & 0 deletions .swcrc
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
{
"jsc": {
"parser": {
"syntax": "typescript",
"tsx": true,
"decorators": true
},
"transform": {
"decoratorMetadata": true
},
"target": "es2022"
},
"module": {
"type": "es6"
}
}
37 changes: 37 additions & 0 deletions .vscode/tasks.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@
{
"version": "2.0.0",
"tasks": [
{
"label": "npm test",
"type": "shell",
"command": "npm",
"args": ["test"],
"problemMatcher": ["$tsc", "$eslint - stylish"],
"group": "build"
},
{
"label": "npm lint",
"type": "shell",
"command": "npm",
"args": ["run", "lint"],
"problemMatcher": ["$tsc", "$eslint - stylish"],
"group": "build"
},
{
"label": "npm test",
"type": "shell",
"command": "npm",
"args": ["test"],
"problemMatcher": ["$tsc", "$eslint - stylish"],
"group": "build"
},
{
"label": "npm lint",
"type": "shell",
"command": "npm",
"args": ["run", "lint"],
"problemMatcher": ["$tsc", "$eslint - stylish"],
"group": "build"
}
]
}
1 change: 0 additions & 1 deletion CODEOWNERS

This file was deleted.

Loading
Loading