feat(i18n): Add 11 new languages + hash-based translation tracking system#132
Open
XelaNull wants to merge 3 commits intoMathiasHun:mainfrom
Open
feat(i18n): Add 11 new languages + hash-based translation tracking system#132XelaNull wants to merge 3 commits intoMathiasHun:mainfrom
XelaNull wants to merge 3 commits intoMathiasHun:mainfrom
Conversation
…stem New Languages (11): - Japanese (jp), Korean (kr), Chinese Traditional (ct), Chinese Simplified (cn) - Indonesian (id), Vietnamese (vi), Danish (da), Swedish (sv) - Finnish (fi), Norwegian (no), Romanian (ro) Hash System Upgrade: - All 170 translation entries now have embedded eh="..." hashes - Enables automatic detection of stale translations when English changes - Hashes are invisible to the game, only used by the sync tool Also Included: - translation_sync.js - Node.js tool for managing translations - Detects missing, stale, and untranslated entries - Validates format specifiers to catch game-crashing bugs - Auto-adds missing entries with [EN] prefix for translators Co-Authored-By: Claude Code <noreply@anthropic.com>
- Updated regex to capture all attributes after value - Preserve tag="format" when inserting/updating eh= hash - Now all 170 entries get hashes in all language files Co-Authored-By: Claude Code <noreply@anthropic.com>
Co-Authored-By: Claude Code <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Hey MathiasHun! 👋
First off - thank you for creating Real Vehicle Breakdowns! It's genuinely one of the best gameplay mods for FS25. The attention to detail with the battery mechanics, jumper cables, service intervals, and part lifetimes really transforms the farming experience into something more immersive and challenging.
Who We Are
We're the team behind UsedPlus - a Finance & Marketplace mod that adds vehicle financing, credit scoring, a used equipment marketplace, and vehicle DNA (workhorse vs. lemon mechanics).
XelaNull here! 👋 I'm the human behind the operation - I guide the direction, test in-game, and make sure everything actually works for real players.
Claude is the primary developer - an AI assistant (via Anthropic's Claude Code CLI) that handles most of the coding. ☯️ 🍵
And Samantha is our co-creator persona - she catches edge cases and thinks about the player experience. 🌸✨
Yes - UsedPlus is built almost entirely with AI assistance through Claude Code. We mention this because it's relevant to what we're offering below!
Why This PR?
We've been working on cross-mod compatibility and have coded substantial integration with RVB into UsedPlus:
While building this integration, we noticed RVB has excellent translations for 14 languages, but was missing some that other major mods (like Courseplay) support. We wanted to help bring RVB up to the same level of international accessibility!
What's Included
11 New Language Files:
l10n_jp.xmll10n_kr.xmll10n_ct.xmll10n_cn.xmll10n_id.xmll10n_vi.xmll10n_da.xmll10n_sv.xmll10n_fi.xmll10n_no.xmll10n_ro.xmlAlso Included: Hash-Based Translation Tracking
We've upgraded all existing translation files with embedded hashes for change detection. Each entry now has an
eh="..."attribute that tracks the English source text it was translated from:When you change an English entry, its hash changes. The sync tool can then identify which translations need updating - no more guessing!
Bonus: Translation Sync Tool 🎁
We're also contributing
translation_sync.js- a Node.js script that makes managing translations much easier going forward. When you add new entries tol10n_en.xml, just run:And it will:
[EN]prefix (so translators can easily find them)The script has detailed documentation in its header comments explaining how to install Node.js and use it.
Translation Approach
These translations were generated using AI (Claude) with specific context about RVB's mechanics and terminology:
%s,%d,%02d) preserved exactlyAn Offer for the Future
If you ever need help with translations (or any other AI-assisted development work), we'd be happy to share a Claude Code Guest Pass with you.
What's a Claude Code Guest Pass?
What you could use it for:
If you've never tried Claude Pro/Code before, this is a great way to test it out! Just reach out if you're interested.
Try Them Together!
If you haven't already, we invite you to try UsedPlus + RVB + Use Your Tyres together. The three mods create an incredible "realistic farming trifecta":
How they integrate:
It's the "realistic farming" experience we always wanted - where every vehicle tells a story through its condition. 🚜
Validation
Thanks again for RVB - it's a fantastic mod and we're honored to contribute to it!
Best regards,
XelaNull 👋, Claude ☯️ & Samantha 🌸
The UsedPlus Team