Skip to content

Add Simplified Chinese (zh_cn) localization - #301

Merged
igentuman merged 1 commit into
igentuman:1.21from
KagurazakaNyaa:1.21
Oct 24, 2026
Merged

igentuman merged 1 commit into
igentuman:1.21from
KagurazakaNyaa:1.21

Conversation

@KagurazakaNyaa

Copy link
Copy Markdown
Contributor

Summary

Adds a complete Simplified Chinese localization: src/main/resources/assets/nuclearcraft/lang/zh_cn.json.

2805 entries, matching en_us.json one-to-one — every key generated by ModLanguageProvider is covered, with no missing and no extra keys.

The file lives next to ru_ru.json in src/main/resources rather than src/generated, since it is a hand-maintained translation rather than datagen output (same reasoning as the Russian file).

Coverage

Group Count Example
Items 1239 Uranium 235 Ni → 铀-235-氮化物
Fluid types 493 Molten Uranium 238 Ox → 熔融铀-238-氧化物
Blocks 296 Active Water Heat Sink → 运行中水散热器
UI / tooltips / ponder 792 see below

Naming conventions

Translations follow the shapes already established by the older zh_cn file that existed up to 1.20, so existing players' muscle memory still works:

  • Materials: <material><form> — Aluminum Ingot → 铝锭, Boron Dust → 硼粉
  • Fluid buckets: 桶装 — Steam Bucket → 桶装蒸汽
  • Fission fuels keep the classic scheme: Fuel Uranium HEU-235 OX → 高浓度铀-235-氧化物燃料, Depleted Uranium LEU-233 → 枯竭低浓度铀-233燃料
  • Isotope cladding uses hyphen separators for readability: Uranium 235 Za → 铀-235-锆合金
  • Tier words move before the head noun, as Chinese requires: Plate Elite → 精英板, Solar Panel Advanced → 高级太阳能板

Deliberately left in English

TRISO, QNP, FLiBe, HEV, grid sizes like 3x3, and the jukebox song titles — all are proper nouns or notation where a translation would hurt readability.

Verification

  • Key coverage: 2805 / 2805, zero missing, zero extra
  • Format specifiers (%s, %d, %1$s, %%): verified as an exact multiset match against en_us.json for all 2805 keys
  • Unit strings (FE/t, H/t, keV, MK, …) preserved verbatim
  • Punctuation: full-width throughout, no half-width punctuation adjacent to CJK
  • Multi-line tooltips keep their newline structure
  • ./gradlew clean build passes; the file is packaged into the jar at assets/nuclearcraft/lang/zh_cn.json (md5 verified against source)

Note on a pre-existing gap (not touched by this PR)

While cross-checking I noticed that 75 keys referenced from Java (e.g. multiblock.validation.wrong_outer, multiblock.turbine.bearing_count) have no English entry in en_us.json — so English players currently see raw key strings for multiblock validation failures. The same gap exists in ru_ru.json. I left this alone to keep this PR a pure translation change; happy to submit a follow-up if you'd like.


Translated with careful attention to the nuclear terminology (α/β decay, isotopes, cladding forms) and to preserving the mod's dry humour in the Ponder tutorials and the Resonite crystal patron anecdotes.

Full zh_cn translation covering every key generated by ModLanguageProvider,
2805 entries in total, matching en_us.json key-for-key.

Naming conventions:
- Materials follow the shape <material><form> (Aluminum Ingot -> 铝锭)
- Buckets read 桶装<fluid> (Steam Bucket -> 桶装蒸汽)
- Fission fuels keep the classic NC scheme, e.g.
  Fuel Uranium HEU-235 OX -> 高浓度铀-235-氧化物燃料
- Isotope cladding uses hyphen separators for readability
  (Uranium 235 Ni -> 铀-235-氮化物)

Hard-coded English strings kept as-is: TRISO, QNP, FLiBe, HEV, 3x3 and the
jukebox song titles.

Format specifiers (%s, %d, %1$s, %%) verified to match en_us.json one-to-one.
Copilot AI balanced review requested due to automatic review settings October 23, 2026 15:47

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copilot wasn't able to review any files in this pull request. Check if the Files changed in this pull request are included in default exclusions.

@igentuman
igentuman merged commit 66dbff6 into igentuman:1.21 Oct 24, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants