-
Notifications
You must be signed in to change notification settings - Fork 797
mls (v4.13) #2907
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
mls (v4.13) #2907
Conversation
|
|
WalkthroughThree language localization files updated with new UI text entries, key renames, and removed deprecated entries across lobbies, modals, maps, game features, and player interface components. Changes span Bulgarian, Japanese, and Dutch translations with consistent structural additions. Changes
Estimated code review effort🎯 2 (Simple) | ⏱️ ~12 minutes Possibly related PRs
Suggested labels
Suggested reviewers
Poem
🚥 Pre-merge checks | ✅ 2 | ❌ 1❌ Failed checks (1 inconclusive)
✅ Passed checks (2 passed)
✏️ 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. Comment |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 0
Caution
Some comments are outside the diff and can’t be posted inline due to platform limitations.
⚠️ Outside diff range comments (2)
resources/lang/ja.json (1)
498-499: Translation mismatch:ground_attacklabeled as boat attack.The
ground_attackkey and its description both reference "ボート攻撃" (boat attack), which appears to be a copy-paste from theboat_attackentry above. The ground attack should have its own distinct translation.Suggested fix
- "ground_attack": "ボート攻撃", - "ground_attack_desc": "カーソルの位置に合わせた土地にボート攻撃を送ります。", + "ground_attack": "地上攻撃", + "ground_attack_desc": "カーソルの位置に合わせた土地に地上攻撃を送ります。",resources/lang/nl.json (1)
100-114: Potential whitespace artifact detected on line 113.There appears to be a zero-width space or double space between "een" and "vijand" in the
ally_donatetranslation text. This might be a copy-paste artifact that could cause rendering inconsistencies.Suggested fix
- "ally_donate": "Doneer een deel van je troepen aan je bondgenoot. Gebruikt wanneer ze weinig troepen hebben en worden aangevallen, of wanneer ze die extra kracht nodig hebben om een vijand te verpletteren.", + "ally_donate": "Doneer een deel van je troepen aan je bondgenoot. Gebruikt wanneer ze weinig troepen hebben en worden aangevallen, of wanneer ze die extra kracht nodig hebben om een vijand te verpletteren.",
🧹 Nitpick comments (1)
resources/lang/bg.json (1)
288-288: Optional: Check spelling of "Обкражен".The standard Bulgarian spelling for "surrounded" is "Обкръжен" (with "ъ"), not "Обкражен" (with "а"). This might be a typo.
Suggested fix
- "surrounded": "Обкражен", + "surrounded": "Обкръжен",
📜 Review details
Configuration used: Organization UI
Review profile: CHILL
Plan: Pro
📒 Files selected for processing (3)
resources/lang/bg.jsonresources/lang/ja.jsonresources/lang/nl.json
🧰 Additional context used
🧠 Learnings (7)
📓 Common learnings
Learnt from: TheGiraffe3
Repo: openfrontio/OpenFrontIO PR: 884
File: resources/lang/en.json:456-461
Timestamp: 2025-08-16T10:52:08.292Z
Learning: In OpenFrontIO, translation files in resources/lang/*.json (except en.json) should not be updated in regular PRs. Only dedicated translation PRs titled "mls" and made by Aotumori should update non-English locale files. Regular PRs should only update en.json when adding or modifying translation keys.
Learnt from: andrewNiziolek
Repo: openfrontio/OpenFrontIO PR: 1007
File: resources/lang/de.json:115-115
Timestamp: 2025-06-02T14:27:37.609Z
Learning: For OpenFrontIO project: When localization keys are renamed in language JSON files, the maintainers separate technical changes from translation content updates. They wait for community translators to update the actual translation values rather than attempting to translate in the same PR. This allows technical changes to proceed while ensuring accurate translations from native speakers.
Learnt from: scottanderson
Repo: openfrontio/OpenFrontIO PR: 949
File: resources/lang/en.json:8-10
Timestamp: 2025-05-30T03:53:52.231Z
Learning: For the OpenFrontIO project, do not suggest updating translation files in resources/lang/*.json except for en.json. The project has a dedicated translation team that handles all other locale files.
Learnt from: mokizzz
Repo: openfrontio/OpenFrontIO PR: 1940
File: resources/lang/en.json:763-766
Timestamp: 2025-08-27T08:12:19.610Z
Learning: In OpenFrontIO, some country entries in src/client/data/countries.json may have similar names but different codes (e.g., "Empire of Japan" vs "Empire of Japan1"). Each unique code requires its own translation key in resources/lang/en.json after normalization. Always verify against countries.json before suggesting removal of translation keys.
Learnt from: Aotumuri
Repo: openfrontio/OpenFrontIO PR: 1357
File: resources/lang/de.json:523-540
Timestamp: 2025-07-12T08:41:35.101Z
Learning: In OpenFrontIO project localization files, always check the en.json source file before flagging potential spelling errors in other language files, as some keys may intentionally use non-standard spellings that need to be consistent across all translations.
Learnt from: andrewNiziolek
Repo: openfrontio/OpenFrontIO PR: 1007
File: resources/lang/he.json:138-138
Timestamp: 2025-06-02T14:27:23.893Z
Learning: andrewNiziolek's project uses community translation for internationalization. When updating map names or other user-facing text, they update the keys programmatically but wait for community translators to provide accurate translations in each language rather than using machine translations.
Learnt from: TheGiraffe3
Repo: openfrontio/OpenFrontIO PR: 1864
File: resources/maps/arabianpeninsula/manifest.json:13-170
Timestamp: 2025-08-19T11:00:55.422Z
Learning: In OpenFrontIO, nation names in map manifests are displayed directly in the UI without translation. They do not need to be added to resources/lang/en.json or processed through translateText(). This is the established pattern across all existing maps including Europe, World, Asia, Africa, and others.
📚 Learning: 2025-06-02T14:27:37.609Z
Learnt from: andrewNiziolek
Repo: openfrontio/OpenFrontIO PR: 1007
File: resources/lang/de.json:115-115
Timestamp: 2025-06-02T14:27:37.609Z
Learning: For OpenFrontIO project: When localization keys are renamed in language JSON files, the maintainers separate technical changes from translation content updates. They wait for community translators to update the actual translation values rather than attempting to translate in the same PR. This allows technical changes to proceed while ensuring accurate translations from native speakers.
Applied to files:
resources/lang/nl.jsonresources/lang/bg.jsonresources/lang/ja.json
📚 Learning: 2025-08-16T10:52:08.292Z
Learnt from: TheGiraffe3
Repo: openfrontio/OpenFrontIO PR: 884
File: resources/lang/en.json:456-461
Timestamp: 2025-08-16T10:52:08.292Z
Learning: In OpenFrontIO, translation files in resources/lang/*.json (except en.json) should not be updated in regular PRs. Only dedicated translation PRs titled "mls" and made by Aotumori should update non-English locale files. Regular PRs should only update en.json when adding or modifying translation keys.
Applied to files:
resources/lang/nl.jsonresources/lang/bg.jsonresources/lang/ja.json
📚 Learning: 2025-08-19T11:00:55.422Z
Learnt from: TheGiraffe3
Repo: openfrontio/OpenFrontIO PR: 1864
File: resources/maps/arabianpeninsula/manifest.json:13-170
Timestamp: 2025-08-19T11:00:55.422Z
Learning: In OpenFrontIO, nation names in map manifests are displayed directly in the UI without translation. They do not need to be added to resources/lang/en.json or processed through translateText(). This is the established pattern across all existing maps including Europe, World, Asia, Africa, and others.
Applied to files:
resources/lang/nl.jsonresources/lang/bg.json
📚 Learning: 2025-05-30T03:53:52.231Z
Learnt from: scottanderson
Repo: openfrontio/OpenFrontIO PR: 949
File: resources/lang/en.json:8-10
Timestamp: 2025-05-30T03:53:52.231Z
Learning: For the OpenFrontIO project, do not suggest updating translation files in resources/lang/*.json except for en.json. The project has a dedicated translation team that handles all other locale files.
Applied to files:
resources/lang/nl.json
📚 Learning: 2025-08-27T08:12:19.610Z
Learnt from: mokizzz
Repo: openfrontio/OpenFrontIO PR: 1940
File: resources/lang/en.json:763-766
Timestamp: 2025-08-27T08:12:19.610Z
Learning: In OpenFrontIO, some country entries in src/client/data/countries.json may have similar names but different codes (e.g., "Empire of Japan" vs "Empire of Japan1"). Each unique code requires its own translation key in resources/lang/en.json after normalization. Always verify against countries.json before suggesting removal of translation keys.
Applied to files:
resources/lang/nl.jsonresources/lang/bg.jsonresources/lang/ja.json
📚 Learning: 2025-07-12T08:41:35.101Z
Learnt from: Aotumuri
Repo: openfrontio/OpenFrontIO PR: 1357
File: resources/lang/de.json:523-540
Timestamp: 2025-07-12T08:41:35.101Z
Learning: In OpenFrontIO project localization files, always check the en.json source file before flagging potential spelling errors in other language files, as some keys may intentionally use non-standard spellings that need to be consistent across all translations.
Applied to files:
resources/lang/nl.json
🔇 Additional comments (11)
resources/lang/bg.json (1)
1-934: LGTM! Bulgarian localization updates look good.This MLS PR adds comprehensive Bulgarian translations for new UI elements including:
- Game info modal with statistics labels
- Public lobby team options (Duos, Trios, Quads)
- Matchmaking button and ranked play strings
- Account modal restructuring with sign-in flow
- New map names and categories
- Various user setting and player panel additions
JSON structure is valid, placeholders are consistent with expected format (
{variable}), and translations align with the coordinated localization expansion across other language files. Based on learnings, this is the correct workflow for non-English locale updates.resources/lang/ja.json (1)
1-934: LGTM! Japanese localization updates are well-structured.The translation file follows consistent patterns throughout. New keys for account management, game info modal, map categories, team modes, and matchmaking features are properly added. Placeholder formats (
{var}for simple interpolation,{{var}}for tooltip contexts) are used consistently with existing conventions.Based on learnings, this MLS PR by Aotumuri is the appropriate channel for updating non-English locale files.
resources/lang/nl.json (9)
1-24: LGTM - Common section updates look good.New keys
back,none,copied, andclick_to_copyare properly added with appropriate Dutch translations. JSON structure is valid.
25-52: LGTM - Main menu key renames and additions are consistent.The renamed keys (
create,join,solo) and new entries (game_info,play,news,store,options,keys,stats,account,help,menu,pick_pattern) align with the broader UI expansion described in the summary.
178-200: LGTM - Account modal expansion is well-structured.The new authentication flow keys (
connected_as,save_progress_title,save_progress_desc,link_discord,link_via_email_placeholder,link_button,welcome_back,sign_in_desc,or,email_placeholder,get_magic_link,linked_account,recovery_email_sent,not_found,clear_session,failed_to_send_recovery_email,enter_email_address) use consistent placeholder format with{email}and{account_name}.
219-241: LGTM - New game_info_modal section added.All keys for the game info modal (
players,atoms,hydros,mirv,bombs,total_gold,all_gold,trade,conquest_gold,stolen_gold,num_of_conquests,duration,survival_time,war,economy,conquests,pirate,conquered,loading_game_info,no_winner) are properly structured.
242-299: LGTM - Map and category additions are complete.New map entries (
newyorkcity,lisbon,svalmel,manicouagan,lemnos,sierpinski,twolakes,straitofhormuz,surrounded,didier,didierfrance,amazonriver,britanniaclassic) and updated categories (fantasy,special,arcade) align with cross-language consistency goals.
317-337: LGTM - Team variants and matchmaking updates use consistent placeholders.The team labels (
teams_Duos,teams_Trios,teams_Quads) correctly use{team_count}placeholder, andteams_hvn_detailedproperly uses{num}for both human and nation counts. The ELO display key uses{elo}placeholder appropriately.
401-415: LGTM - Difficulty labels simplified and public_game_modifier section added.The difficulty keys are now nation-focused (
easy,medium,hard,impossible) with cleaner labels. Newpublic_game_modifiersection properly definesrandom_spawnandcompact_mapoptions.
816-821: LGTM - Heads-up message additions for pause states.New keys
singleplayer_game_pausedandmultiplayer_game_pausedprovide clear Dutch translations for the game pause indicators, distinguishing between solo and lobby-hosted pauses.
929-934: LGTM - New matchmaking_button section properly structured.The competitive matchmaking UI keys (
play_ranked,description,login_required,must_login) are complete and provide clear messaging for the ranked play feature.
✏️ Tip: You can disable this entire section by setting review_details to false in your review settings.
## Description: mls for v29 Version identifier within MLS: 4.13 ## Please complete the following: - [x] I have added screenshots for all UI updates - [x] I process any text displayed to the user through translateText() and I've added it to the en.json file - [x] I have added relevant tests to the test directory - [x] I confirm I have thoroughly tested these changes and take full responsibility for any bugs introduced ## Please put your Discord username so you can be contacted if a bug or regression is found: aotumuri
Description:
mls for v29
Version identifier within MLS: 4.13
Please complete the following:
Please put your Discord username so you can be contacted if a bug or regression is found:
aotumuri