Skip to content

Adds new Hecate Strait map#4552

Open
killerwombat02 wants to merge 12 commits into
openfrontio:mainfrom
killerwombat02:main
Open

Adds new Hecate Strait map#4552
killerwombat02 wants to merge 12 commits into
openfrontio:mainfrom
killerwombat02:main

Conversation

@killerwombat02

Copy link
Copy Markdown

Resolves #4529

Description:

I made the Hecate Strait map and thoroughly tested it.
I added the Haida flag to use for the map.
2248 x 1935, 4.3 million total volume ~1.5 million water, ~0.5 million blank
28 nations
As realistic as I could make it for the northern BC Canada coast.

Please complete the following:

  • I have added screenshots for all UI updates
  • 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

Please put your Discord username so you can be contacted if a bug or regression is found:

killerwombat02

@coderabbitai

coderabbitai Bot commented Jul 9, 2026

Copy link
Copy Markdown
Contributor

Review Change Stack

Note

Reviews paused

It looks like this branch is under active development. To avoid overwhelming you with review comments due to an influx of new commits, CodeRabbit has automatically paused this review. You can configure this behavior by changing the reviews.auto_review.auto_pause_after_reviewed_commits setting.

Use the following commands to manage reviews:

  • @coderabbitai resume to resume automatic reviews.
  • @coderabbitai review to trigger a single review.

Use the checkboxes below for quick actions:

  • ▶️ Resume reviews
  • 🔍 Trigger review

Walkthrough

This PR adds Hecate Strait as a new map. It includes map data, terrain sizing, nation entries, Haida country data and flags, localization, and generated registry updates.

Changes

Hecate Strait map addition

Layer / File(s) Summary
Map data and manifest for Hecate Strait
map-generator/assets/maps/hecatestrait/info.json, resources/maps/hecatestrait/manifest.json
Adds map metadata, terrain sizing, multiplayer frequency, and nation entries, including selected Haida flags.
Haida and map registration wiring
resources/countries.json, src/core/game/Maps.gen.ts, resources/lang/en.json
Adds Haida country data, the Hecatestrait map type and registry entry, and the localized display name.

Estimated code review effort: 1 (Trivial) | ~5 minutes

Possibly related PRs

Suggested reviewers: evanpelle, FloPinguin

Poem

A new strait joins the map tonight,
With Haida flags shining bright.
Names and shores now find their place,
Hecate Strait enters the race. 🗺️

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Title check ✅ Passed The title clearly names the main change: adding the Hecate Strait map.
Description check ✅ Passed The description matches the change set and mentions the new map and Haida flag.
Linked Issues check ✅ Passed The PR adds the Hecate Strait map, Haida flag, localization, and map registry data, which aligns with issue #4529.
Out of Scope Changes check ✅ Passed The changes appear focused on the new map, its localization, and supporting country data.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.

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.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 3

🤖 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 `@map-generator/assets/maps/hecatestrait/info.json`:
- Around line 1-157: The JSON in the Hecate Strait map metadata needs both
Prettier reformatting and nation-name validation fixes in the nations array.
Update the invalid names in this file and the matching entries in the
corresponding manifest so they pass the test constraints: normalize Gitxaała
Nation to remove the invalid character, shorten Laxgalts'ap Village Government
and Gitlaxt'aamix Village Government to fit the 27-character limit, and replace
the invalid apostrophe character in Ts'il Kaz Koh with the standard straight
apostrophe. Keep the names consistent between info.json and manifest.json after
reformatting.

In `@resources/maps/hecatestrait/manifest.json`:
- Around line 1-259: This manifest is failing CI due to formatting and
nation-name validation issues. Update the JSON in the hecatestrait manifest to
match the Prettier style used elsewhere, and fix the nation entries in the
nations array that violate the name constraints: the entries for Gitxaała
Nation, Laxgalts'ap Village Government, Gitlaxt'aamix Village Government, and
Ts’il Kaz Koh need the same compliant name adjustments as the corresponding
entries in info.json. Keep the changes consistent across both files and use the
nation names within the nations array to locate them.

In `@src/core/game/Maps.gen.ts`:
- Line 52: The new GameMapType member is using a lowercase key instead of the
established PascalCase convention. Update the enum entry for hecatestrait in
Maps.gen.ts to match the other GameMapType members (for example, UpperCamelCase
like Achiran/BeringStrait), and make sure the related maps array entry uses the
same identifier in both the id field and the type reference so MapInfo and the
generated enum stay aligned.
🪄 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

Run ID: 15f131f7-419e-41f1-bca6-f92939a4580e

📥 Commits

Reviewing files that changed from the base of the PR and between 901b271 and dc00709.

⛔ Files ignored due to path filters (5)
  • map-generator/assets/maps/hecatestrait/image.png is excluded by !**/*.png
  • resources/flags/haida_flag.svg is excluded by !**/*.svg
  • resources/maps/hecatestrait/map.bin is excluded by !**/*.bin
  • resources/maps/hecatestrait/map16x.bin is excluded by !**/*.bin
  • resources/maps/hecatestrait/map4x.bin is excluded by !**/*.bin
📒 Files selected for processing (5)
  • map-generator/assets/maps/hecatestrait/info.json
  • resources/lang/en.json
  • resources/maps/hecatestrait/manifest.json
  • resources/maps/hecatestrait/thumbnail.webp
  • src/core/game/Maps.gen.ts

Comment thread map-generator/assets/maps/hecatestrait/info.json
Comment thread resources/maps/hecatestrait/manifest.json Outdated
Comment thread src/core/game/Maps.gen.ts Outdated
@github-project-automation github-project-automation Bot moved this from Triage to Development in OpenFront Release Management Jul 9, 2026
@RickD004 RickD004 added the Maps A new map, or adjustments to an existing map itself, its json, etc, label Jul 10, 2026
@evanpelle

Copy link
Copy Markdown
Collaborator

CI is failing

@RickD004 RickD004 added this to the v33 milestone Jul 11, 2026
coderabbitai[bot]
coderabbitai Bot previously approved these changes Jul 11, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Maps A new map, or adjustments to an existing map itself, its json, etc,

Projects

Status: Development

Development

Successfully merging this pull request may close these issues.

Add map - Hecate Strait

3 participants