[Feature] Adds Tribe Themes to all real world maps + Custom Tribes w/coords on LA - #4806
Conversation
…/crunchybbb2/OpenFrontIO into TribeThemesLosAngelesTribeCoords
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Organization UI Review profile: CHILL Plan: Pro Plus Run ID: 📒 Files selected for processing (3)
🚧 Files skipped from review as they are similar to previous changes (1)
WalkthroughThe change adds ChangesMap metadata and generated definitions
Estimated code review effort: 3 (Moderate) | ~20 minutes Possibly related PRs
Suggested labels: Suggested reviewers: Poem
🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✨ Finishing Touches 💡 1🛠️ Fix failing CI checks 💡
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: 1
🧹 Nitpick comments (1)
map-generator/assets/maps/losangeles/info.json (1)
140-692: 🎯 Functional Correctness | 🔵 Trivial | ⚡ Quick winMake positioned Los Angeles tribes safe before relying on them.
TribeSpawner.spawnTribes()processescustomTribesin file order until the bot cap and then marks the remaining entries as unavailable, so many Los Angeles custom names can fail silently. Update the analytics guard, and validate every coordinate against water, impassable terrain, and nation tiles before spawning it.🤖 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 `@map-generator/assets/maps/losangeles/info.json` around lines 140 - 692, Update the Los Angeles custom_tribes handling so every positioned tribe is validated against water, impassable terrain, and nation tiles before spawning, and adjust the analytics guard to reflect that validation. Ensure validation occurs before TribeSpawner.spawnTribes() applies the bot cap or marks later entries unavailable, preserving only safe coordinates for spawning.
🤖 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/losangeles/info.json`:
- Around line 665-668: Correct the city name from “Hormosa Beach” to “Hermosa
Beach” in map-generator/assets/maps/losangeles/info.json lines 665-668, then
regenerate resources/maps/losangeles/manifest.json lines 528-531 and
src/core/game/Maps.gen.ts line 743 so both generated entries preserve
coordinates [891, 1165] and use the corrected name.
---
Nitpick comments:
In `@map-generator/assets/maps/losangeles/info.json`:
- Around line 140-692: Update the Los Angeles custom_tribes handling so every
positioned tribe is validated against water, impassable terrain, and nation
tiles before spawning, and adjust the analytics guard to reflect that
validation. Ensure validation occurs before TribeSpawner.spawnTribes() applies
the bot cap or marks later entries unavailable, preserving only safe coordinates
for spawning.
🪄 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: c5d30dee-be35-4db6-ba1b-08521ef9a9e5
📒 Files selected for processing (179)
map-generator/assets/maps/achiran/info.jsonmap-generator/assets/maps/aegean/info.jsonmap-generator/assets/maps/africa/info.jsonmap-generator/assets/maps/alps/info.jsonmap-generator/assets/maps/amazonriver/info.jsonmap-generator/assets/maps/archipelagosea/info.jsonmap-generator/assets/maps/arctic/info.jsonmap-generator/assets/maps/asia/info.jsonmap-generator/assets/maps/australia/info.jsonmap-generator/assets/maps/baikal/info.jsonmap-generator/assets/maps/bajacalifornia/info.jsonmap-generator/assets/maps/balkans/info.jsonmap-generator/assets/maps/balkhash/info.jsonmap-generator/assets/maps/baltics/info.jsonmap-generator/assets/maps/beringsea/info.jsonmap-generator/assets/maps/beringstrait/info.jsonmap-generator/assets/maps/betweentwoseas/info.jsonmap-generator/assets/maps/blacksea/info.jsonmap-generator/assets/maps/bosphorusstraits/info.jsonmap-generator/assets/maps/britannia/info.jsonmap-generator/assets/maps/britanniaclassic/info.jsonmap-generator/assets/maps/caribbean/info.jsonmap-generator/assets/maps/caspiansea/info.jsonmap-generator/assets/maps/caucasus/info.jsonmap-generator/assets/maps/china/info.jsonmap-generator/assets/maps/clearwaterlakes/info.jsonmap-generator/assets/maps/conakry/info.jsonmap-generator/assets/maps/crimea/info.jsonmap-generator/assets/maps/danishstraits/info.jsonmap-generator/assets/maps/eastasia/info.jsonmap-generator/assets/maps/europe/info.jsonmap-generator/assets/maps/europeclassic/info.jsonmap-generator/assets/maps/falklandislands/info.jsonmap-generator/assets/maps/faroeislands/info.jsonmap-generator/assets/maps/fingerlakes/info.jsonmap-generator/assets/maps/france/info.jsonmap-generator/assets/maps/gatewaytotheatlantic/info.jsonmap-generator/assets/maps/germany/info.jsonmap-generator/assets/maps/greatlakes/info.jsonmap-generator/assets/maps/gulfofguinea/info.jsonmap-generator/assets/maps/gulfofstlawrence/info.jsonmap-generator/assets/maps/halkidiki/info.jsonmap-generator/assets/maps/hawaii/info.jsonmap-generator/assets/maps/hecatestrait/info.jsonmap-generator/assets/maps/hongkong/info.jsonmap-generator/assets/maps/iceland/info.jsonmap-generator/assets/maps/indiansubcontinent/info.jsonmap-generator/assets/maps/irishsea/info.jsonmap-generator/assets/maps/italia/info.jsonmap-generator/assets/maps/japan/info.jsonmap-generator/assets/maps/juandefucastrait/info.jsonmap-generator/assets/maps/korea/info.jsonmap-generator/assets/maps/lasvegasstrip/info.jsonmap-generator/assets/maps/lemnos/info.jsonmap-generator/assets/maps/levant/info.jsonmap-generator/assets/maps/lisbon/info.jsonmap-generator/assets/maps/losangeles/info.jsonmap-generator/assets/maps/manicouagan/info.jsonmap-generator/assets/maps/marenostrum/info.jsonmap-generator/assets/maps/mena/info.jsonmap-generator/assets/maps/middleeast/info.jsonmap-generator/assets/maps/mississippiriver/info.jsonmap-generator/assets/maps/montreal/info.jsonmap-generator/assets/maps/newyorkcity/info.jsonmap-generator/assets/maps/niledelta/info.jsonmap-generator/assets/maps/northamerica/info.jsonmap-generator/assets/maps/northwestpassage/info.jsonmap-generator/assets/maps/oceania/info.jsonmap-generator/assets/maps/russia/info.jsonmap-generator/assets/maps/sanfrancisco/info.jsonmap-generator/assets/maps/scandinavia/info.jsonmap-generator/assets/maps/sol/info.jsonmap-generator/assets/maps/southamerica/info.jsonmap-generator/assets/maps/southeastasia/info.jsonmap-generator/assets/maps/straitofgibraltar/info.jsonmap-generator/assets/maps/straitofhormuz/info.jsonmap-generator/assets/maps/straitofmalacca/info.jsonmap-generator/assets/maps/svalmel/info.jsonmap-generator/assets/maps/taiwanstrait/info.jsonmap-generator/assets/maps/tierradelfuego/info.jsonmap-generator/assets/maps/twolakes/info.jsonmap-generator/assets/maps/unitedstates/info.jsonmap-generator/assets/maps/venice/info.jsonmap-generator/assets/maps/vietnam/info.jsonmap-generator/assets/maps/yellowsea/info.jsonmap-generator/assets/maps/yenisei/info.jsonresources/maps/achiran/manifest.jsonresources/maps/aegean/manifest.jsonresources/maps/africa/manifest.jsonresources/maps/alps/manifest.jsonresources/maps/amazonriver/manifest.jsonresources/maps/archipelagosea/manifest.jsonresources/maps/arctic/manifest.jsonresources/maps/asia/manifest.jsonresources/maps/australia/manifest.jsonresources/maps/baikal/manifest.jsonresources/maps/bajacalifornia/manifest.jsonresources/maps/balkans/manifest.jsonresources/maps/balkhash/manifest.jsonresources/maps/baltics/manifest.jsonresources/maps/beringsea/manifest.jsonresources/maps/beringstrait/manifest.jsonresources/maps/betweentwoseas/manifest.jsonresources/maps/blacksea/manifest.jsonresources/maps/bosphorusstraits/manifest.jsonresources/maps/britannia/manifest.jsonresources/maps/britanniaclassic/manifest.jsonresources/maps/caribbean/manifest.jsonresources/maps/caspiansea/manifest.jsonresources/maps/caucasus/manifest.jsonresources/maps/china/manifest.jsonresources/maps/clearwaterlakes/manifest.jsonresources/maps/conakry/manifest.jsonresources/maps/crimea/manifest.jsonresources/maps/danishstraits/manifest.jsonresources/maps/eastasia/manifest.jsonresources/maps/europe/manifest.jsonresources/maps/europeclassic/manifest.jsonresources/maps/falklandislands/manifest.jsonresources/maps/faroeislands/manifest.jsonresources/maps/fingerlakes/manifest.jsonresources/maps/france/manifest.jsonresources/maps/gatewaytotheatlantic/manifest.jsonresources/maps/germany/manifest.jsonresources/maps/greatlakes/manifest.jsonresources/maps/gulfofguinea/manifest.jsonresources/maps/gulfofstlawrence/manifest.jsonresources/maps/halkidiki/manifest.jsonresources/maps/hawaii/manifest.jsonresources/maps/hecatestrait/manifest.jsonresources/maps/hongkong/manifest.jsonresources/maps/iceland/manifest.jsonresources/maps/indiansubcontinent/manifest.jsonresources/maps/irishsea/manifest.jsonresources/maps/italia/manifest.jsonresources/maps/japan/manifest.jsonresources/maps/juandefucastrait/manifest.jsonresources/maps/korea/manifest.jsonresources/maps/lasvegasstrip/manifest.jsonresources/maps/lemnos/manifest.jsonresources/maps/levant/manifest.jsonresources/maps/lisbon/manifest.jsonresources/maps/losangeles/manifest.jsonresources/maps/manicouagan/manifest.jsonresources/maps/marenostrum/manifest.jsonresources/maps/mena/manifest.jsonresources/maps/middleeast/manifest.jsonresources/maps/mississippiriver/manifest.jsonresources/maps/montreal/manifest.jsonresources/maps/newyorkcity/manifest.jsonresources/maps/niledelta/manifest.jsonresources/maps/northamerica/manifest.jsonresources/maps/northwestpassage/manifest.jsonresources/maps/oceania/manifest.jsonresources/maps/russia/manifest.jsonresources/maps/sanfrancisco/manifest.jsonresources/maps/scandinavia/manifest.jsonresources/maps/sol/manifest.jsonresources/maps/southamerica/manifest.jsonresources/maps/southeastasia/manifest.jsonresources/maps/straitofgibraltar/manifest.jsonresources/maps/straitofhormuz/manifest.jsonresources/maps/straitofmalacca/manifest.jsonresources/maps/svalmel/manifest.jsonresources/maps/taiwanstrait/manifest.jsonresources/maps/tierradelfuego/manifest.jsonresources/maps/twolakes/manifest.jsonresources/maps/unitedstates/manifest.jsonresources/maps/venice/manifest.jsonresources/maps/vietnam/manifest.jsonresources/maps/yellowsea/manifest.jsonresources/maps/yenisei/manifest.jsonsrc/core/game/Maps.gen.tstests/testdata/maps/big_plains/manifest.jsontests/testdata/maps/giantworldmap/manifest.jsontests/testdata/maps/half_land_half_ocean/manifest.jsontests/testdata/maps/ocean_and_land/manifest.jsontests/testdata/maps/plains/manifest.jsontests/testdata/maps/world/manifest.json
Add approved & assigned issue number here:
Resolves #4805 (issue number)
Description:
Tribe themes were created by @FloPinguin: #4647;
However, they were not implemented, this PR will implement them.
Also I want to sneak the Custom Tribes w/ Coordinates (by @FloPinguin #4697) into the Los Angeles map so it isn't a "feature that isn't implemented" (we should have one map using it for testing and feedback purposes)
This is for v33 (Last minute feature release lol)
"categories": ["europe"]"themes": ["europe"]Please complete the following:
Please put your Discord username so you can be contacted if a bug or regression is found:
DISCORD_USERNAME crunchybbbbb