Skip to content

Add Map - Dyslexdria#3282

Closed
patrickbadly-hub wants to merge 21 commits intoopenfrontio:mainfrom
patrickbadly-hub:main
Closed

Add Map - Dyslexdria#3282
patrickbadly-hub wants to merge 21 commits intoopenfrontio:mainfrom
patrickbadly-hub:main

Conversation

@patrickbadly-hub
Copy link

Description: Submission of working map Dyslexdria.

Describe the PR.

  • en.json and game.ts updated. Listed in game as " World " as first public use is desired to be on April Fools Day. Titled " World " to prevent conflict with "World". Set to Solo play only. Listed under Other maps with regular World thumbnail.
  • Map files uploaded to map-generator and resources folders.
    -Pre edited map source is the high res world map provided in the MapGenerator files.

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

PlaysBadly

I've never done a pull request before, so feel free to check my work. This was tested on a local server using an up to date copy of the local git. I then manually updated my forked repository.

@CLAassistant
Copy link

CLAassistant commented Feb 23, 2026

CLA assistant check
All committers have signed the CLA.

@coderabbitai
Copy link
Contributor

coderabbitai bot commented Feb 23, 2026

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

Adds two new maps, Dyslexdria and Conakry: JSON map assets and manifests, registers both in the game map enum and categories, updates English localization entries for both maps, and adds small placeholder temp files for Conakry.

Changes

Cohort / File(s) Summary
Dyslexdria Map Assets & Manifest
map-generator/assets/maps/dyslexdria/info.json, resources/maps/dyslexdria/manifest.json
New map asset and manifest for "Dyslexdria": top-level name plus an extensive nations array (each with coordinates, flag, name), and manifest metadata (dimensions and scaled variants with land tile counts).
Conakry Map Assets & Manifest
map-generator/assets/maps/conakry/info.json, resources/maps/conakry/manifest.json
New map asset and manifest for "conakry": top-level name and nations array, plus manifest metadata (dimensions and scaled variants with land tile counts).
Placeholders
map-generator/assets/maps/conakry/temp, resources/maps/conakry/temp
Added empty placeholder temp files (no functional content).
Game Integration
src/core/game/Game.ts
Added Dyslexdria and Conakry members to GameMapType and included them in mapCategories.fantasy and mapCategories.regional respectively.
Localization
resources/lang/en.json
Added map.dyslexdria and map.conakry English translation keys.

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~20 minutes

Poem

🗺️ Two new maps upon the fold,
Names and flags in rows of gold,
Dyslexdria, Conakry take their place,
Tiny nations scattered in space,
JSON maps, a cartographer's grace.

🚥 Pre-merge checks | ✅ 3
✅ Passed checks (3 passed)
Check name Status Explanation
Title check ✅ Passed The title 'Add Map - Dyslexdria' clearly summarizes the main change: adding a new map to the codebase.
Description check ✅ Passed The description is directly related to the changeset, explaining the purpose of adding the Dyslexdria map, configuration details, and file locations.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.

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

📝 Coding Plan
  • Generate coding plan for human review comments

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
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

🧹 Nitpick comments (1)
map-generator/assets/maps/dyslexdria/info.json (1)

74-78: Inconsistent indentation on two entries.

Lines 74 and 194 have non-standard leading whitespace compared to the rest of the array (4-space indent). Minor cosmetic issue.

✏️ Proposed fix
-        {
+    {
       "coordinates": [1370, 670],
       "flag": "ae",
       "name": "United Bara Estimates"
     },
- {
+    {
       "coordinates": [1950, 1305],
       "flag": "aq",
       "name": "Nort Pole"
     },

Also applies to: 194-198

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@map-generator/assets/maps/dyslexdria/info.json` around lines 74 - 78, Two
array entries have inconsistent leading whitespace; locate the JSON objects with
"name": "United Bara Estimates" (coordinates [1370, 670], flag "ae") and the
other entry referenced in the comment (lines ~194-198) and normalize their
indentation to match the rest of the array (use 4-space indentation for the
object opening line and its properties) so the file's formatting is consistent.
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Inline comments:
In `@resources/lang/en.json`:
- Line 329: The translation entry "dyslexdria" currently has leading/trailing
spaces (" World ") which will render visible whitespace; remove the surrounding
spaces so the display string is "World" and ensure any uniqueness/joke is
handled on the enum value (see Game.ts around the enum at line ~120) rather than
by injecting whitespace into the user-facing string; update the "dyslexdria"
value only (and adjust the enum value in Game.ts if needed) so UI displays
"World" cleanly.

---

Nitpick comments:
In `@map-generator/assets/maps/dyslexdria/info.json`:
- Around line 74-78: Two array entries have inconsistent leading whitespace;
locate the JSON objects with "name": "United Bara Estimates" (coordinates [1370,
670], flag "ae") and the other entry referenced in the comment (lines ~194-198)
and normalize their indentation to match the rest of the array (use 4-space
indentation for the object opening line and its properties) so the file's
formatting is consistent.

"surrounded": "Surrounded",
"didier": "Didier",
"didierfrance": "Didier (France)",
"dyslexdria": " World ",
Copy link
Contributor

Choose a reason for hiding this comment

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

⚠️ Potential issue | 🟡 Minor

Display value " World " with surrounding spaces will render with visible whitespace in the map selector.

Every other map entry has a clean display string. The leading/trailing spaces here will appear as extra padding around the map name in the UI, which reads as a rendering bug. If the intent is to call it "World" (to create the joke), the unique disambiguation should live at the enum-value level (see the comment on Game.ts line 120), not by injecting whitespace into the user-visible display string.

💡 Proposed fix (after fixing the enum value)
-    "dyslexdria": " World ",
+    "dyslexdria": "World",
📝 Committable suggestion

‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.

Suggested change
"dyslexdria": " World ",
"dyslexdria": "World",
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@resources/lang/en.json` at line 329, The translation entry "dyslexdria"
currently has leading/trailing spaces (" World ") which will render visible
whitespace; remove the surrounding spaces so the display string is "World" and
ensure any uniqueness/joke is handled on the enum value (see Game.ts around the
enum at line ~120) rather than by injecting whitespace into the user-facing
string; update the "dyslexdria" value only (and adjust the enum value in Game.ts
if needed) so UI displays "World" cleanly.

@github-project-automation github-project-automation bot moved this from Triage to Development in OpenFront Release Management Feb 23, 2026
@iiamlewis
Copy link
Contributor

@patrickbadly-hub would you please include a photo of the map?

@patrickbadly-hub
Copy link
Author

patrickbadly-hub commented Feb 27, 2026

thumbnail

Im not sure how to add it without resubmitting. Here is the correct thumbnail. Sorry for the delay

Original Thumbnail Uploaded
@iiamlewis iiamlewis added the Maps A new map, or adjustments to an existing map itself, its json, etc, label Mar 2, 2026
@iiamlewis iiamlewis added this to the v31 milestone Mar 2, 2026
@patrickbadly-hub
Copy link
Author

patrickbadly-hub commented Mar 5, 2026

Please let me know if I need to do anything else. Have a good day

Add folder conakry
Added Conakry assets to map gen folder
creating conakry folder
Add folder conakry
Added resources for map conakry
Copy link
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 the current code and only fix it if needed.

Inline comments:
In `@map-generator/assets/maps/conakry/info.json`:
- Around line 1-115: This PR accidentally adds a new map asset
assets/maps/conakry/info.json (map name "conakry") which will cause
map-generator/main.go to produce unwanted generated artifacts; either remove
this file from the PR entirely, or if you intend to add the Conakry map, include
the corresponding generated outputs produced by map-generator/main.go plus the
runtime game/map registration (the same place where "Dyslexdria" is registered)
so the new map is fully wired in the same PR.
🪄 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: 2701bb4d-5a8e-44aa-bbda-ca862bedf8cb

📥 Commits

Reviewing files that changed from the base of the PR and between 10549c6 and 23ece3e.

⛔ Files ignored due to path filters (1)
  • map-generator/assets/maps/conakry/image.png is excluded by !**/*.png
📒 Files selected for processing (1)
  • map-generator/assets/maps/conakry/info.json

Comment on lines +1 to +115
{
"name": "conakry",
"nations": [
{
"coordinates": [20, 360],
"name": "Boffa",
"flag": "gn"
},
{
"coordinates": [510, 420],
"name": "Koba-Tatema",
"flag": "gn"
},
{
"coordinates": [680, 150],
"name": "Kenende",
"flag": "gn"
},
{
"coordinates": [1170, 30],
"name": "Dubreka",
"flag": "gn"
},
{
"coordinates": [1280, 280],
"name": "Tamouta",
"flag": "gn"
},
{
"coordinates": [1320, 550],
"name": "Ratoma",
"flag": "gn"
},
{
"coordinates": [1350, 40],
"name": "Coyah",
"flag": "gn"
},
{
"coordinates": [1630, 160],
"name": "Maferenya",
"flag": "gn"
},
{
"coordinates": [1730, 460],
"name": "Kaback",
"flag": "gn"
},
{
"coordinates": [2130, 80],
"name": "Forecariah",
"flag": "gn"
},
{
"coordinates": [2420, 424],
"name": "Benty",
"flag": "gn"
},
{
"coordinates": [2280, 440],
"name": "Laya",
"flag": "gn"
},
{
"coordinates": [1200, 910],
"name": "Fotoba",
"flag": "gn"
},
{
"coordinates": [1333, 835],
"name": "Ilot Cabri",
"flag": "gn"
},
{
"coordinates": [716, 260],
"name": "Bolonta",
"flag": "gn"
},
{
"coordinates": [870, 370],
"name": "Kanka",
"flag": "gn"
},
{
"coordinates": [940, 115],
"name": "Mangueya",
"flag": "gn"
},
{
"coordinates": [1975, 475],
"name": "Yelibane",
"flag": "gn"
},
{
"coordinates": [1900, 115],
"name": "Dandaya",
"flag": "gn"
},
{
"coordinates": [80, 480],
"name": "Marara",
"flag": "gn"
},
{
"coordinates": [390, 210],
"name": "Boufou",
"flag": "gn"
},
{
"coordinates": [180, 130],
"name": "Dioumaya",
"flag": "gn"
}
]
}
Copy link
Contributor

Choose a reason for hiding this comment

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

⚠️ Potential issue | 🟠 Major

Remove the unrelated conakry generator asset from this PR.

This PR is wired for Dyslexdria, but this file adds a second map source named conakry. map-generator/main.go turns each assets/maps/<name>/info.json into generated map output, so keeping this here makes future generation produce conakry artifacts that are not part of the runtime map registration in this change. Please drop this file from the PR, or add the matching generated resources and game registration in the same PR if conakry is intentional.

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@map-generator/assets/maps/conakry/info.json` around lines 1 - 115, This PR
accidentally adds a new map asset assets/maps/conakry/info.json (map name
"conakry") which will cause map-generator/main.go to produce unwanted generated
artifacts; either remove this file from the PR entirely, or if you intend to add
the Conakry map, include the corresponding generated outputs produced by
map-generator/main.go plus the runtime game/map registration (the same place
where "Dyslexdria" is registered) so the new map is fully wired in the same PR.

Added map name "conakry"
Copy link
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 the current code and only fix it if needed.

Inline comments:
In `@resources/maps/conakry/manifest.json`:
- Around line 1-196: The conakry map assets are unreachable because GameMapType
lacks a Conakry entry and mapCategories in src/core/game/Game.ts doesn't
register it; add Conakry = "Conakry" to the GameMapType enum and include
GameMapType.Conakry in the appropriate category inside mapCategories (e.g.,
regional or whichever category holds similar maps), or remove
resources/maps/conakry/manifest.json and its folder; ensure
FetchGameMapLoader.ts will resolve the lowercase "conakry" folder name by the
enum entry if you choose to register it.
🪄 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: 67b87816-a32c-479c-b22f-e3cfe4af09e5

📥 Commits

Reviewing files that changed from the base of the PR and between 23ece3e and 7bf874f.

⛔ Files ignored due to path filters (3)
  • resources/maps/conakry/map.bin is excluded by !**/*.bin
  • resources/maps/conakry/map16x.bin is excluded by !**/*.bin
  • resources/maps/conakry/map4x.bin is excluded by !**/*.bin
📒 Files selected for processing (3)
  • resources/maps/conakry/manifest.json
  • resources/maps/conakry/temp
  • resources/maps/conakry/thumbnail.webp
✅ Files skipped from review due to trivial changes (1)
  • resources/maps/conakry/temp

@patrickbadly-hub
Copy link
Author

I am deleting my fork of OpenFrontIO and will resubmit this Pull Request. Original submission was not branched.

@patrickbadly-hub patrickbadly-hub closed this by deleting the head repository Mar 12, 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.

3 participants