Skip to content

Add map los angeles (with roads)#3708

Open
PatrickPlaysBadly wants to merge 15 commits intoopenfrontio:mainfrom
PatrickPlaysBadly:Add-Map-Los-Angeles-(with-Roads)
Open

Add map los angeles (with roads)#3708
PatrickPlaysBadly wants to merge 15 commits intoopenfrontio:mainfrom
PatrickPlaysBadly:Add-Map-Los-Angeles-(with-Roads)

Conversation

@PatrickPlaysBadly
Copy link
Copy Markdown
Contributor

@PatrickPlaysBadly PatrickPlaysBadly commented Apr 17, 2026

Description:

Add Map - Los Angeles (With Roads)
Whats NY without LA? What is LA without its roads? Here is a larger map where I have turned LAs road network into rivers. Nations named to areas of the city or surrounding area. Map geo data is from OpenTopography. I stenciled the highways from screenshots of online maps and some artistic choice.

https://discord.com/channels/1284581928254701718/1482605671697613081/1482605671697613081
https://www.youtube.com/watch?v=6td9wiQKE9s

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

##Discord username
PlaysBadly

@coderabbitai
Copy link
Copy Markdown
Contributor

coderabbitai bot commented Apr 17, 2026

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: 857ac4a6-ec63-4312-bb8a-66c5a6d2552b

📥 Commits

Reviewing files that changed from the base of the PR and between b35c3e8 and fb2a31b.

📒 Files selected for processing (3)
  • map-generator/assets/maps/losangeles/info.json
  • resources/lang/en.json
  • resources/maps/losangeles/manifest.json
✅ Files skipped from review due to trivial changes (3)
  • resources/lang/en.json
  • resources/maps/losangeles/manifest.json
  • map-generator/assets/maps/losangeles/info.json

Walkthrough

Adds a new "Los Angeles" map across map-generator assets, resource manifests, TypeScript map enum and categories, localization, and playlist frequency.

Changes

Cohort / File(s) Summary
Map Data & Manifest
map-generator/assets/maps/losangeles/info.json, resources/maps/losangeles/manifest.json
Added Los Angeles map metadata and manifest: map dimensions and scaled variants, plus named regions with name, coordinates, and flag: "California".
Map Generator Registry
map-generator/main.go
Registered new non-test map losangeles in the maps slice (minor indentation adjustments).
Type Definitions
src/core/game/Game.ts
Added GameMapType.LosAngeles = "Los Angeles" and included it in mapCategories.regional.
Localization
resources/lang/en.json
Added "losangeles": "Los Angeles" under the map object.
Playlist Weighting
src/server/MapPlaylist.ts
Added frequency entry LosAngeles: 8 to the playlist frequency table.

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~10 minutes

Poem

🌴 New streets and stars on the game-day stage,
Coordinates placed on a sunny page,
From Malibu sands to downtown lights,
Los Angeles joins the virtual nights,
Map stitched in code — roll on the play! 🎮✨

🚥 Pre-merge checks | ✅ 3
✅ Passed checks (3 passed)
Check name Status Explanation
Title check ✅ Passed The title directly reflects the main change: adding a Los Angeles map with roads as a new game map.
Description check ✅ Passed The description is clearly related to the changeset, providing context about the map's purpose, data sources, and implementation details.
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.


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

Caution

Some comments are outside the diff and can’t be posted inline due to platform limitations.

⚠️ Outside diff range comments (1)
src/core/game/Game.ts (1)

211-228: ⚠️ Potential issue | 🟡 Minor

Move the stylized LA map to fantasy.

Because this map uses roads as rivers, it is not a normal real-world regional map. Put it under fantasy so the UI category matches the gameplay geography.

Proposed fix
-    GameMapType.LosAngeles,
   ],
   fantasy: [
     GameMapType.Pangaea,
     GameMapType.Pluto,
     GameMapType.Mars,
     GameMapType.DeglaciatedAntarctica,
     GameMapType.Achiran,
     GameMapType.BaikalNukeWars,
     GameMapType.FourIslands,
     GameMapType.Svalmel,
     GameMapType.Surrounded,
     GameMapType.TradersDream,
     GameMapType.Passage,
     GameMapType.MilkyWay,
     GameMapType.Dyslexdria,
     GameMapType.Luna,
+    GameMapType.LosAngeles,
   ],

Based on learnings, maps with altered geography from real-world counterparts should be categorized as fantasy rather than regional, even if based on real locations.

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

In `@src/core/game/Game.ts` around lines 211 - 228, The GameMapType.LosAngeles
entry currently lives in the regional maps array but should be moved to the
fantasy category; remove GameMapType.LosAngeles from the regional list and add
it to the fantasy array (the array labeled "fantasy" in Game.ts) so the UI
category matches gameplay geography, ensuring only a single occurrence of
GameMapType.LosAngeles remains in the file.
🤖 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/losangeles/info.json`:
- Around line 79-83: Change the JSON entry where "name" is "Skidrow" to the
standard display name "Skid Row" in the losangeles info.json record (the object
with "coordinates": [1130, 670] and "flag": "California"), then regenerate the
map manifest (manifest.json) from this source so the updated display name is
propagated to resources/maps.
- Around line 1-130: Add a CREDITS.md entry for the new map "Los Angeles" (map
name from info.json) that includes the map source URL, the license type, and any
required attribution text (e.g., author or data provider), and place it
alongside the other map attributions in CREDITS.md; ensure the entry format
matches existing ones (same fields/order) so the README/license-checking script
recognizes it.

---

Outside diff comments:
In `@src/core/game/Game.ts`:
- Around line 211-228: The GameMapType.LosAngeles entry currently lives in the
regional maps array but should be moved to the fantasy category; remove
GameMapType.LosAngeles from the regional list and add it to the fantasy array
(the array labeled "fantasy" in Game.ts) so the UI category matches gameplay
geography, ensuring only a single occurrence of GameMapType.LosAngeles remains
in the file.
🪄 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: 2d76c10a-dc86-4dbe-a170-4f44408ebbf2

📥 Commits

Reviewing files that changed from the base of the PR and between e5e1211 and fe2bc2f.

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

Comment on lines +1 to +130
{
"name": "Los Angeles",
"nations": [
{
"coordinates": [546, 16],
"flag": "California",
"name": "Santa Clarita"
},
{
"coordinates": [1100, 475],
"flag": "California",
"name": "Glendale"
},
{
"coordinates": [1310, 400],
"flag": "California",
"name": "Pasadena"
},
{
"coordinates": [1766, 1080],
"flag": "California",
"name": "Anaheim"
},
{
"coordinates": [1776, 710],
"flag": "California",
"name": "Walnut"
},
{
"coordinates": [1750, 1330],
"flag": "California",
"name": "Santa Ana"
},
{
"coordinates": [1670, 1500],
"flag": "California",
"name": "Huntington Beach"
},
{
"coordinates": [1250, 1325],
"flag": "California",
"name": "Long Beach"
},
{
"coordinates": [925, 1135],
"flag": "California",
"name": "Torrance"
},
{
"coordinates": [30, 475],
"flag": "California",
"name": "Thousand Oaks"
},
{
"coordinates": [730, 150],
"flag": "California",
"name": "San Fernando"
},
{
"coordinates": [1790, 500],
"flag": "California",
"name": "Covina"
},
{
"coordinates": [1400, 930],
"flag": "California",
"name": "Downey"
},
{
"coordinates": [760, 650],
"flag": "California",
"name": "Beverly Hills"
},
{
"coordinates": [875, 640],
"flag": "California",
"name": "Hollywood"
},
{
"coordinates": [1130, 670],
"flag": "California",
"name": "Skidrow"
},
{
"coordinates": [925, 935],
"flag": "California",
"name": "Inglewood"
},
{
"coordinates": [1180, 1010],
"flag": "California",
"name": "Compton"
},
{
"coordinates": [670, 765],
"flag": "California",
"name": "Santa Monica"
},
{
"coordinates": [270, 760],
"flag": "California",
"name": "Malibu"
},
{
"coordinates": [50, 25],
"flag": "California",
"name": "Bardsdale"
},
{
"coordinates": [750, 2100],
"flag": "California",
"name": "Santa Catalina"
},
{
"coordinates": [1350, 90],
"flag": "California",
"name": "Hidden Springs"
},
{
"coordinates": [1580, 40],
"flag": "California",
"name": "Palmdale"
},
{
"coordinates": [380, 490],
"flag": "California",
"name": "Encino"
}
]
}
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.

⚠️ Potential issue | 🟡 Minor

🧩 Analysis chain

🏁 Script executed:

# Find PR description or related documentation
git log --oneline -20 2>/dev/null | head -20

Repository: openfrontio/OpenFrontIO

Length of output: 97


🏁 Script executed:

# Search for any licensing or attribution files related to maps
find . -type f \( -name "*LICENSE*" -o -name "*ATTRIBUTION*" -o -name "*SOURCES*" \) | head -20

Repository: openfrontio/OpenFrontIO

Length of output: 166


🏁 Script executed:

# Check if there are any map-related documentation files
find map-generator -type f \( -name "*.md" -o -name "*.txt" -o -name "README*" \) 2>/dev/null | head -20

Repository: openfrontio/OpenFrontIO

Length of output: 90


🏁 Script executed:

# Look at the structure of map-generator to understand how maps are organized
ls -la map-generator/ 2>/dev/null && find map-generator -maxdepth 3 -type f -name "*.json" | head -15

Repository: openfrontio/OpenFrontIO

Length of output: 692


🏁 Script executed:

# Search for references to "Skid" to see if this is a styled name or typo
rg "Skid" --type json

Repository: openfrontio/OpenFrontIO

Length of output: 201


🏁 Script executed:

# Check if there's any documentation about map sources in the root directory
cat README.md 2>/dev/null | grep -i -A 5 -B 5 "map\|source\|attribution\|google" | head -50

Repository: openfrontio/OpenFrontIO

Length of output: 2210


🏁 Script executed:

# Check the LICENSE-ASSETS file for attribution requirements
cat LICENSE-ASSETS

Repository: openfrontio/OpenFrontIO

Length of output: 1917


🏁 Script executed:

# Check map-generator/assets/LICENSE
cat map-generator/assets/LICENSE

Repository: openfrontio/OpenFrontIO

Length of output: 332


🏁 Script executed:

# Check map-generator/README.md for map source information
cat map-generator/README.md

Repository: openfrontio/OpenFrontIO

Length of output: 6912


🏁 Script executed:

# Look for any documentation about the map source or generation process
find . -type f -name "*.md" -o -name "*.txt" | xargs grep -l "map\|source\|google" 2>/dev/null | head -10

Repository: openfrontio/OpenFrontIO

Length of output: 296


🏁 Script executed:

# Check if there's a commit message or PR info about this file
git show --stat 2>/dev/null | head -50

Repository: openfrontio/OpenFrontIO

Length of output: 2865


🏁 Script executed:

# Check if there's an image.png file for the losangeles map
ls -la map-generator/assets/maps/losangeles/

Repository: openfrontio/OpenFrontIO

Length of output: 314


🏁 Script executed:

# Check CREDITS.md to see if losangeles map has attribution listed
cat CREDITS.md | grep -i -A 5 -B 5 "los\|angeles\|google\|map"

Repository: openfrontio/OpenFrontIO

Length of output: 3212


🏁 Script executed:

# Search for any mention of Google Maps in the entire repository
rg -i "google.*map\|map.*google" --type md --type json --type ts --type go

Repository: openfrontio/OpenFrontIO

Length of output: 49


🏁 Script executed:

# Check the actual git diff for the commit to see what was changed
git show fe2bc2f3 --stat 2>/dev/null || echo "Cannot get full diff"

Repository: openfrontio/OpenFrontIO

Length of output: 50380


🏁 Script executed:

# Look for any documentation about map sources in CONTRIBUTING.md
cat CONTRIBUTING.md | grep -i -A 10 -B 5 "map\|source\|google\|attribution"

Repository: openfrontio/OpenFrontIO

Length of output: 890


🏁 Script executed:

# Check map-generator README for attribution requirements
grep -A 10 "CREDITS\|Attribution\|License" map-generator/README.md | head -20

Repository: openfrontio/OpenFrontIO

Length of output: 424


🏁 Script executed:

# Verify the losangeles entry is missing from CREDITS.md
grep -i "los\|angeles" CREDITS.md

Repository: openfrontio/OpenFrontIO

Length of output: 49


🏁 Script executed:

# Check if there's a pattern of how other recent maps are attributed
tail -30 CREDITS.md

Repository: openfrontio/OpenFrontIO

Length of output: 1271


Add Los Angeles map attribution to CREDITS.md.

The map-generator README requires adding license and source attribution for all new maps to CREDITS.md. The Los Angeles map is missing from this file. Add an entry with the map's source, license, and any required attribution before merging.

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

In `@map-generator/assets/maps/losangeles/info.json` around lines 1 - 130, Add a
CREDITS.md entry for the new map "Los Angeles" (map name from info.json) that
includes the map source URL, the license type, and any required attribution text
(e.g., author or data provider), and place it alongside the other map
attributions in CREDITS.md; ensure the entry format matches existing ones (same
fields/order) so the README/license-checking script recognizes it.

Comment thread map-generator/assets/maps/losangeles/info.json
@github-project-automation github-project-automation bot moved this from Triage to Development in OpenFront Release Management Apr 17, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

Status: Development

Development

Successfully merging this pull request may close these issues.

1 participant