Razzmatazzz / RemnantSaveGuardian

Tool to backup your saves and view your world rolls
GNU General Public License v3.0
348 stars 51 forks source link

Translate Remnant Save Guardian into your language #18

Open Razzmatazzz opened 1 year ago

Razzmatazzz commented 1 year ago

Remnant Save Guardian is built to support multiple languages, but it requires people who speak those languages to do the translating. To make a translation, these are the steps to follow:

  1. Download Strings.resx and GameStrings.resx to your computer. Strings is used for the interface of the app and GameStrings is used to translate in-game item event, item, etc. names.
  2. Edit those files to change the values to the translation in your language: image Only change the value (underlined in red in the above picture) and not the name. Zeta Resource Editor can be helpful in editing the .resx files (h/t crackedmind).
  3. Rename the files to Strings.xx.resx and GameStrings.xx.resx where xx is the two-letter ISO 639-1 code for your language. The code can optionally include a culture code, e.g. en-US, en-GB, zh-CN, zh-TW, etc.
  4. Post the translated files here.

Note: GameStrings.resx is currently very incomplete. It will likely have lots more English entries added to it. You may want to wait to translate that file until it is more complete.

If you'd more technically inclined and prefer to fork the repo, perform steps 1-4 and then submit a pull request, that works too. Bonus is you'll automatically get credit via GitHub for contributing to the project.

Full or partial translations are currently available in the following languages:

chocosobo commented 1 year ago

few fixes and location translation added for Korean

GameStrings.ko.zip

crackedmind commented 1 year ago

@Razzmatazzz May be you pin this issue and add help wanted label?

puffbro commented 1 year ago

zh-TW locales.zip Here's the files for traditional chinese translation. I could not find the translation for some of the events so some of them remains in english.

puffbro commented 1 year ago

zh.zip Updated missing translation for zh-TW and zh-HK.

puffbro commented 1 year ago

Screenshot of 1.0.1.7, seems not all the text are available for translate in resx. Thank you for making this amazing tool!

Razzmatazzz commented 1 year ago

It's available, even if it isn't in the default .resx file. Just add a new name/value pair. The name is the text that you see in English and the value is what the translation should be.

puffbro commented 1 year ago

zh.zip I see, I've translated and added new name/value pairs that were showing in English.

image Btw the Asylum location seems to be bugged? "Losomn: Asylum: Asylum: Tormented Asylum"

ButcherOfBlaviken commented 1 year ago

Hello, I have question about changing the app's language, I can't find the language option...

Razzmatazzz commented 1 year ago

The language is set automatically according to Windows' Regional Format setting.

ButcherOfBlaviken commented 1 year ago

zh-Hans-CN.zip Hello, I just makde a translation for zh-Hans-CN (simplified Chinese), hope it can help.

Razzmatazzz commented 1 year ago

Thanks! Will be included in the next release.

yuyi1111 commented 1 year ago

zh-CN.zip Hello, I found some mistakes in Burcher‘s file(simplified Chinese) and corrected them.

plygame commented 1 year ago

This is the more comprehensive version I translated in zh-CN. zh-CN.zip

puffbro commented 1 year ago

zh-Hant.zip Added most of the missing translations. Uses zh-Hant instead of zh-HK and zh-TW as language code so it should handles all regions that uses traditional chinese. Old zh-HK and zh-TW files can be removed.

Razzmatazzz commented 1 year ago

Thanks! Will add in the next version.

chocosobo commented 1 year ago

ko locales.zip

Korean updated for new app strings, analyzer item strings

plygame commented 1 year ago

zh-CN.zip

Updated Simplified Chinese translation for the new version and fixed some translation issues.

plygame commented 1 year ago

zh-CN.zip

Updated

chocosobo commented 1 year ago

ko locales.zip

update for 1.0.1.12

SpikyKnight commented 1 year ago

@Razzmatazzz are there any plans to add locale selection options to the app?

crackedmind commented 1 year ago

Need to test new localizations for game strings I added automated translations for game strings (direct from game localization files) to: de, es, fr, it, ja, pt-BR, zh-Hans

Regenerated ko (@chocosobo can you check?)

@plygame Can you check zh-Hans? If zh-hans == zh-cn

Didn't generate zh-Hant because i think it's incomplete, game localization file is ~600 kb instead of ~3-4 mb for others

Steel missing game events, because they didn't have any translated names i guess. So anyway need to do some manual work, but less :)

Below log from my tool for each locale.

Missing entries from de locale "Key: Alchemist" Value: "Alchemist", "Key: Amulet_Samoflange" Value: "Samoflange", "Key: Archon" Value: "Archon", "Key: Armor_Alchemist" Value: "Alchemist", "Key: Armor_Archon" Value: "Archon", "Key: Brabus" Value: "Brabus", "Key: Cass" Value: "Cass", "Key: FaeArchon" Value: "Magister Dullain", "Key: FaelinFaerlin" Value: "Faelin", "Key: Faerin" Value: "Faerin", "Key: Item_HiddenContainer_Material_Engram_Alchemist" Value: "Alchemist", "Key: Item_HiddenContainer_Material_Engram_Archon" Value: "Archon", "Key: LurkerVents" Value: "W.D. 109", "Key: MetaGem_Bandit" Value: "Bandit", "Key: MetaGem_Momentum" Value: "Momentum", "Key: Mods" Value: "Mods", "Key: Mod_Helix" Value: "Helix", "Key: Reggie" Value: "Reggie", "Key: Ring_DranMemento" Value: "Dran Memento", "Key: RootCultist" Value: "Legion", "Key: TowerHeist" Value: "E.D. Alpha", "Key: Trait_Amplitude" Value: "Amplitude", "Key: Trait_Expertise" Value: "Expertise", "Key: Trait_Fitness" Value: "Fitness", "Key: Weapon_AssaultRifle" Value: "Blackmaw AR-47", "Key: Weapon_Enigma" Value: "Enigma", "Key: Weapon_LeverAction" Value: "Wrangler 1860", "Key: Weapon_Meridian" Value: "Meridian", "Key: Weapon_Nebula" Value: "Nebula", "Key: Weapon_SMG" Value: "MP60-R", "Key: World_Fae" Value: "Losomn", "Key: World_Jungle" Value: "Yaesha", "Key: World_Labyrinth" Value: "Labyrinth"
Missing entries from es locale "Key: Brabus" Value: "Brabus", "Key: Cass" Value: "Cass", "Key: FaelinFaerlin" Value: "Faelin", "Key: Faerin" Value: "Faerin", "Key: Flautist" Value: "Root Nexus", "Key: Gunslinger" Value: "Gunslinger", "Key: Hatchery" Value: "Primogenitor", "Key: Item_HiddenContainer_Material_Engram_Gunslinger" Value: "Gunslinger", "Key: Mod_Familiar" Value: "Familiar", "Key: Reggie" Value: "Reggie", "Key: RootNexus" Value: "Root Nexus", "Key: Trait_Vigor" Value: "Vigor", "Key: Weapon_Enigma" Value: "Enigma", "Key: Weapon_LeverAction" Value: "Wrangler 1860", "Key: Weapon_SMG" Value: "MP60-R", "Key: World_Fae" Value: "Losomn", "Key: World_Jungle" Value: "Yaesha"
Missing entries from fr locale "Key: AsylumChainsaw" Value: "Ripsaw", "Key: Brabus" Value: "Brabus", "Key: Cass" Value: "Cass", "Key: FaelinFaerlin" Value: "Faelin", "Key: Faerin" Value: "Faerin", "Key: Oink" Value: "Gorge", "Key: Reggie" Value: "Reggie", "Key: TalRatha" Value: "Tal'Ratha", "Key: Traits" Value: "Traits", "Key: Trait_Amplitude" Value: "Amplitude", "Key: Trait_Endurance" Value: "Endurance", "Key: Trait_Expertise" Value: "Expertise", "Key: Weapon_AssaultRifle" Value: "Blackmaw AR-47", "Key: Weapon_LeverAction" Value: "Wrangler 1860", "Key: Weapon_SMG" Value: "MP60-R", "Key: World_Fae" Value: "Losomn", "Key: World_Jungle" Value: "Yaesha", "Key: World_Nerud" Value: "N'Erud"
Missing entries from it locale "Key: Brabus" Value: "Brabus", "Key: Cass" Value: "Cass", "Key: FaelinFaerlin" Value: "Faelin", "Key: Faerin" Value: "Faerin", "Key: LurkerVents" Value: "W.D. 109", "Key: MetaGem_Overdrive" Value: "Overdrive", "Key: Reggie" Value: "Reggie", "Key: RootCultist" Value: "Legion", "Key: TalRatha" Value: "Tal'Ratha", "Key: Ward13" Value: "Ward 13", "Key: Weapon_AssaultRifle" Value: "Blackmaw AR-47", "Key: Weapon_Enigma" Value: "Enigma", "Key: Weapon_LeverAction" Value: "Wrangler 1860", "Key: Weapon_Revolver" Value: "Western Classic", "Key: Weapon_SMG" Value: "MP60-R", "Key: Weapon_TommyGun" Value: "Chicago Typewriter", "Key: World_Fae" Value: "Losomn", "Key: World_Jungle" Value: "Yaesha"
Missing entries from ja locale "Key: LurkerVents" Value: "W.D. 109", "Key: Weapon_SMG" Value: "MP60-R"
Missing entries from ko locale "Key: CottonsKiln" Value: "Cotton's Kiln", "Key: LurkerVents" Value: "W.D. 109", "Key: ShatteredGallery" Value: "Shattered Gallery", "Key: Weapon_SMG" Value: "MP60-R"
Missing entries from pt-BR locale "Key: Brabus" Value: "Brabus", "Key: Cass" Value: "Cass", "Key: FaelinFaerlin" Value: "Faelin", "Key: Faerin" Value: "Faerin", "Key: LurkerVents" Value: "W.D. 109", "Key: ManyFaces" Value: "Corruptor", "Key: Mods" Value: "Mods", "Key: Mod_Familiar" Value: "Familiar", "Key: Mod_Tremor" Value: "Tremor", "Key: Quest_Story_AllFather_DranCity2_Template" Value: "Ironborough", "Key: Reggie" Value: "Reggie", "Key: Ring_Microcompressor" Value: "Microcompressor", "Key: Trait_Amplitude" Value: "Amplitude", "Key: Trait_Expertise" Value: "Expertise", "Key: Weapon_Enigma" Value: "Enigma", "Key: Weapon_LeverAction" Value: "Wrangler 1860", "Key: Weapon_SMG" Value: "MP60-R", "Key: Weapon_TommyGun" Value: "Chicago Typewriter", "Key: World_Fae" Value: "Losomn", "Key: World_Jungle" Value: "Yaesha"
Missing entries from zh-Hans locale "Key: LurkerVents" Value: "W.D. 109"

RemnantSaveGuardian_test_localizations.zip

GameStrings.de.zip GameStrings.es.zip GameStrings.fr.zip GameStrings.it.zip GameStrings.ja.zip GameStrings.ko.zip GameStrings.pt-BR.zip GameStrings.zh-Hans.zip

crackedmind commented 1 year ago

@Razzmatazzz are there any plans to add locale selection options to the app?

I work on it, need to fix some issues.

chocosobo commented 1 year ago

weapon names like WD109 is justr WD109 some locations, items are not translated "In-Game", dev missed that sadly

they are normal, for now

plygame commented 1 year ago

@crackedmind I have already checked. W.D. 109 does not need to be translated.

Some strings were incorrectly translated as "职业精通解锁"

key: "Trait_Longshot" value: "Longshot", Should be translated as "远射" key: "Trait_Kinship" value: "Kinship", Should be translated as "亲朋好友" key: "Trait_StrongBack" value: "Strong Back", Should be translated as "强壮脊背"

crackedmind commented 1 year ago

@plygame wrong translation in game or my tool found wrong translation? zh-Hans and zh-CN is the same?

plygame commented 1 year ago

@plygame wrong translation in game or my tool found wrong translation? zh-Hans and zh-CN is the same?

your tool found wrong translation. zh-Hans and zh-CN are the same.

crackedmind commented 1 year ago

@plygame wrong translation in game or my tool found wrong translation? zh-Hans and zh-CN is the same?

your tool found wrong translation. zh-Hans and zh-CN are the same.

Thnx. check this.

blackhandkr commented 1 year ago

GameStrings.ko.zip Hello, I made updated Korean locale file based on 1.2.1.0 data.

Razzmatazzz commented 1 year ago

Thanks, just released a new version with this new translation.

Ted853 commented 1 month ago

GameStrings.zh-Hans.zip DLC 2 & DLC 3 zh-Hans translation added