docs: draft v33 release notes - #4752
Conversation
Compiled from the 215 commits on main since the v32 branch point (2026-06-17). Structured to match the v32 release body. Still needs before publishing: - Translators section (comes from Crowdin) - GitHub handles instead of git display names - Flavor text for the new maps Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
WalkthroughAdds a complete v33 release-notes document covering major gameplay changes, player-facing features, platform updates, administration, performance, and security. Changesv33 release documentation
Estimated code review effort: 1 (Trivial) | ~3 minutes Suggested reviewers: Poem
🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
There was a problem hiding this comment.
Actionable comments posted: 4
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In `@v33-release-notes.md`:
- Around line 240-242: Replace the placeholder under the “Translators” section
in v33-release-notes.md with the finalized translator acknowledgments exported
from Crowdin, preserving the existing release-notes structure and formatting.
- Line 233: Update the release-note entry to say “Reject late spawn intents from
already-spawned players,” matching the guard implemented in SpawnExecution
rather than implying all post-phase spawn intents are rejected.
- Around line 53-69: Complete the missing flavor-text descriptions for the 12
new map entries in the release notes, adding each description between its map
title/author and the next entry. Preserve the existing flavor text for entries
that already have descriptions and ensure all 17 map entries contain flavor text
before publishing.
- Around line 18-39: Normalize every contributor attribution in the release
notes to the contributor’s GitHub handle, replacing display names such as
“Navaneeth Prabha” and “Patrick Plays Badly” while preserving existing handles
and the changelog entries themselves.
🪄 Autofix (Beta)
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: Organization UI
Review profile: CHILL
Plan: Pro Plus
Run ID: dbd1a7c8-3a54-4ced-bc86-5ce4ad4b9195
📒 Files selected for processing (1)
v33-release-notes.md
| - Added the Doomsday Clock battle-royale zone gamemode — Zixer1 | ||
| - Rebalanced the Doomsday Clock: 10-minute grace period, wave squeeze, slower troop drain, gentler-but-steeper warship attrition — Zixer1 | ||
| - Doomsday Clock now decays warships alongside troops for doomed sides, and floors the drain at 5% of max instead of wiping to zero — Zixer1 | ||
| - Doomsday Clock judges teams against the same bar as solo sides — Zixer1 | ||
| - Doomed warships stay on patrol instead of idling at ports — Zixer1 | ||
| - Added warship veterancy, with updated in-game instructions — bijx | ||
| - MIRV warheads are now standard nukes: real flight, normal SAM interception, per-type speeds — Evan | ||
| - Missile silos go on cooldown when launching a MIRV — Evan | ||
| - Added impassable terrain — FloPinguin | ||
| - Fixed minimap priority for impassable terrain pathfinding — FloPinguin | ||
| - Added a custom alliance duration lobby control — Zixer1 | ||
| - Fixed pirating not being disabled when a warship's owner has no port in that body of water — TKTK123456 | ||
| - Fixed transport ships targeting unreachable inland-lake shores — Navaneeth Prabha | ||
| - Fixed transport ship troop counts not updating when a hydrogen bomb hits the player — AmanorsElliot | ||
| - Fixed the rail network path length limit and re-added its tests — TKTK123456 | ||
| - Fixed the factory ghost radius — TKTK123456 | ||
| - Fixed non-structures being deletable — unne27 | ||
| - Fixed the nuke preview showing teammate SAMs as threats — Evan | ||
| - Highlight the owner of hovered naval units — unne27 | ||
| - Reduced compact map chance in 1v1 from 50% to 20% — FloPinguin | ||
| - Removed the ports-disabled modifier from public games — Evan | ||
|
|
There was a problem hiding this comment.
📐 Maintainability & Code Quality | 🟡 Minor | ⚡ Quick win
Normalize contributor attribution to GitHub handles.
This document still mixes display names such as Navaneeth Prabha and Patrick Plays Badly with handles such as Zixer1 and bijx. Replace all contributor suffixes with GitHub handles before publishing.
As per PR objectives, author attribution still needs this update.
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
In `@v33-release-notes.md` around lines 18 - 39, Normalize every contributor
attribution in the release notes to the contributor’s GitHub handle, replacing
display names such as “Navaneeth Prabha” and “Patrick Plays Badly” while
preserving existing handles and the changelog entries themselves.
| - **Sol** 🪐 — Massive map of the Solar System (by RickD004) | ||
| - **Russia** 🇷🇺 — Big-map treatment of Russia (by RickD004) | ||
| - **United States** 🇺🇸 — Built for the new impassable terrain feature (by RickD004) | ||
| - **Germany** 🇩🇪 — With state flags (by SpeakIsntThere) | ||
| - **China** 🇨🇳 (by crunchybbb) | ||
| - **Scandinavia** 🇸🇪 (by crunchybbb) | ||
| - **Baltics** (by RickD004) | ||
| - **Caspian Sea** — With team spawns (by crunchybbb) | ||
| - **Crimea** (by crunchybbb) | ||
| - **Finger Lakes** (by crunchybbb) | ||
| - **Gulf of Guinea** (by RickD004) | ||
| - **Hecate Strait** (by Liam Langford) | ||
| - **Irish Sea** (by RickD004) | ||
| - **Levant** (by RickD004) | ||
| - **Tierra del Fuego** — Featuring impassable terrain (by RickD004) | ||
| - **Branching Paths** (by NotRocketfish) | ||
| - **More than luck** (by Patrick Plays Badly) |
There was a problem hiding this comment.
📐 Maintainability & Code Quality | 🟡 Minor | ⚡ Quick win
Complete the missing map flavor text.
Most new-map entries currently contain only a title and author. Add the remaining flavor text before publishing.
As per PR objectives, flavor text is still pending for 12 of the 17 new maps.
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
In `@v33-release-notes.md` around lines 53 - 69, Complete the missing flavor-text
descriptions for the 12 new map entries in the release notes, adding each
description between its map title/author and the next entry. Preserve the
existing flavor text for entries that already have descriptions and ensure all
17 map entries contain flavor text before publishing.
|
|
||
| ### 🔒 Security & Anti-Cheat | ||
|
|
||
| - Reject spawn intents after the spawn phase (anti-teleport) — iamlewis |
There was a problem hiding this comment.
🎯 Functional Correctness | 🟡 Minor | ⚡ Quick win
Narrow the spawn-intent wording.
src/core/execution/SpawnExecution.ts:40-95 ignores late spawn intents only for players who have already spawned. “Reject spawn intents after the spawn phase” sounds broader than the implemented guard; say “Reject late spawn intents from already-spawned players” instead.
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
In `@v33-release-notes.md` at line 233, Update the release-note entry to say
“Reject late spawn intents from already-spawned players,” matching the guard
implemented in SpawnExecution rather than implying all post-phase spawn intents
are rejected.
| ### 🌐 Translators | ||
|
|
||
| _(To be filled in from Crowdin before publishing.)_ |
There was a problem hiding this comment.
📐 Maintainability & Code Quality | 🟡 Minor | ⚡ Quick win
Replace the Crowdin placeholder before publishing.
The translators section is still incomplete and contains only a placeholder.
As per PR objectives, this section still needs to be filled from Crowdin.
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
In `@v33-release-notes.md` around lines 240 - 242, Replace the placeholder under
the “Translators” section in v33-release-notes.md with the finalized translator
acknowledgments exported from Crowdin, preserving the existing release-notes
structure and formatting.
Draft release notes for v33, compiled from the 215 commits on
mainsince thev32branch point (2026-06-17). Structure follows the v32 release body.Still needs before publishing
Evan,Ryan,Zixer1,RickD004, …) rather than GitHub handles. v32 used a mix; note git sayscrunchybbbwhere v32 creditedcrunchybbb2.Notes
v33branch on the remote yet, so the diff base isorigin/v32. Two commits in the range explicitly reference v33, which confirms the range is right.v33-release-notes.md. Happy to move it (or drop it entirely and just paste the body into the GitHub release) — it isn't wired into the build.resources/changelog.mdis overwritten at build time from the release body, so this file is purely for review.🤖 Generated with Claude Code