Skip to content

Add May Labyrinth#4002

Merged
evanpelle merged 12 commits into
openfrontio:mainfrom
PatrickPlaysBadly:main
May 27, 2026
Merged

Add May Labyrinth#4002
evanpelle merged 12 commits into
openfrontio:mainfrom
PatrickPlaysBadly:main

Conversation

@PatrickPlaysBadly
Copy link
Copy Markdown
Contributor

Description:

Labyrinth is a maze type map. My attempt at making a more chess style board for play. Games with bots appear stable at over 45min average run times. The map has been setup for team spawn zones for 2, 3, 4, 5, 6, and 7 teams. Some of the team spawns for odd numbers are experimental and I would like to see how they play out with live players. Additional nation names included. There are other design factors like each of the large squares being within the blast radius of a hydro; small islands are within the blast radius of nukes.

This is meant as a slower playing game. My intentions are to get some sort of literal rotation of the map in the future if easily implemented. That way every time players load the game there would be some randomization.

As an additional note one of my last edit to the map was the "+" shape to the islands to allow train passage. Zooming out I can see now that the pattern is squares and + through out. Did not fully intend on that, but it felt like good vibes.

https://discord.com/channels/1284581928254701718/1293201128858587207/threads/1497062552784605316
https://www.youtube.com/watch?v=e8c-TylT4hs
https://www.youtube.com/watch?v=0-yqrfr3nv0

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
  • I confirm I have thoroughly tested these changes and take full responsibility for any bugs introduced

Please put your Discord username

PlaysBadly

@coderabbitai
Copy link
Copy Markdown
Contributor

coderabbitai Bot commented May 24, 2026

Review Change Stack

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro

Run ID: f7346709-a068-46e7-b37b-e307ca2229a0

📥 Commits

Reviewing files that changed from the base of the PR and between b1af243 and 42101b6.

📒 Files selected for processing (4)
  • map-generator/main.go
  • resources/lang/en.json
  • src/core/game/Game.ts
  • src/server/MapPlaylist.ts
✅ Files skipped from review due to trivial changes (1)
  • src/server/MapPlaylist.ts
🚧 Files skipped from review as they are similar to previous changes (3)
  • src/core/game/Game.ts
  • map-generator/main.go
  • resources/lang/en.json

Walkthrough

Adds a new playable map "Labyrinth": registers the map type and category, supplies full map asset/manifest (nations and spawn areas), updates playlist weighting, and adds an English localization entry.

Changes

Labyrinth Map Addition

Layer / File(s) Summary
Map Type Registration and Category
src/core/game/Game.ts
GameMapType.Labyrinth is added to the enum and included in the arcade category configuration.
Map Assets, Manifest, and Generator
map-generator/assets/maps/labyrinth/info.json, resources/maps/labyrinth/manifest.json, map-generator/main.go
Adds map metadata and full manifest: nations with coordinates and empty flags, an additionalNations list, scaled map dimensions, teamGameSpawnAreas for team sizes 2–7, and registers labyrinth in the map-generator registry.
Playlist Frequency and Localization
src/server/MapPlaylist.ts, resources/lang/en.json
Adds Labyrinth to the playlist frequency table with weight 6 and inserts the labyrinth English label "Labyrinth".

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~20 minutes

Possibly related PRs

Suggested reviewers

  • evanpelle

A winding map with secrets to find,
Nations placed, their flags left behind,
Spawn zones set for every team kind,
Arcade gains a gate to unwind,
Labyrinth awaits — good luck, be kind! 🧭

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Title check ✅ Passed The title 'Add May Labyrinth' is clear and directly describes the main change: adding a new map named Labyrinth to the codebase.
Description check ✅ Passed The description is well-detailed and directly related to the changeset, explaining the map's design, gameplay characteristics, team spawn zones, and design philosophy.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

Warning

There were issues while running some tools. Please review the errors and either fix the tool's configuration or disable the tool if it's a critical failure.

🔧 golangci-lint (2.12.2)

level=error msg="[linters_context] typechecking error: pattern ./...: directory prefix . does not contain main module or its selected dependencies"


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 and usage tips.

Copy link
Copy Markdown
Contributor

@coderabbitai coderabbitai Bot left a comment

Choose a reason for hiding this comment

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

Actionable comments posted: 1

🤖 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 `@src/core/game/Game.ts`:
- Line 179: Add a unit test that verifies GameMapType.Labyrinth is registered
and present in the arcade category: import GameMapType and mapCategories, assert
that GameMapType.Labyrinth exists on the enum/collection and assert
mapCategories.arcade includes GameMapType.Labyrinth (or its string value), using
the project test framework's existing pattern for core map/category tests so the
test runs under the same suite as other src/core/ tests.
🪄 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: bfb148e2-5d92-4520-9c15-4b32db1a4ebb

📥 Commits

Reviewing files that changed from the base of the PR and between 2b45813 and a8fa6cb.

⛔ Files ignored due to path filters (4)
  • map-generator/assets/maps/labyrinth/image.png is excluded by !**/*.png
  • resources/maps/labyrinth/map.bin is excluded by !**/*.bin
  • resources/maps/labyrinth/map16x.bin is excluded by !**/*.bin
  • resources/maps/labyrinth/map4x.bin is excluded by !**/*.bin
📒 Files selected for processing (6)
  • map-generator/assets/maps/labyrinth/info.json
  • resources/lang/en.json
  • resources/maps/labyrinth/manifest.json
  • resources/maps/labyrinth/thumbnail.webp
  • src/core/game/Game.ts
  • src/server/MapPlaylist.ts

Comment thread src/core/game/Game.ts
@github-project-automation github-project-automation Bot moved this from Triage to Development in OpenFront Release Management May 24, 2026
coderabbitai[bot]
coderabbitai Bot previously approved these changes May 24, 2026
@PatrickPlaysBadly
Copy link
Copy Markdown
Contributor Author

Please recheck files. Map files were uploaded to map-gen folder 3hr ago, but folder did not update until recently.

updated main.go
coderabbitai[bot]
coderabbitai Bot previously approved these changes May 25, 2026
@evanpelle evanpelle added this to the v32 milestone May 27, 2026
@github-project-automation github-project-automation Bot moved this from Development to Final Review in OpenFront Release Management May 27, 2026
@evanpelle evanpelle merged commit 1721131 into openfrontio:main May 27, 2026
10 checks passed
@github-project-automation github-project-automation Bot moved this from Final Review to Complete in OpenFront Release Management May 27, 2026
@coderabbitai coderabbitai Bot mentioned this pull request May 28, 2026
4 tasks
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

Status: Complete

Development

Successfully merging this pull request may close these issues.

3 participants