masa-mods-chinese汉化资源包构建管线深度解析从generate.py到rename.py的Python自动化全流程【免费下载链接】masa-mods-chinese一个masa mods的汉化资源包项目地址: https://gitcode.com/gh_mirrors/ma/masa-mods-chinesemasa-mods-chinese 是一个面向 Minecraft 1.21 [Sakura Ryoko] 版本的Masa Mods 全家桶汉化资源包覆盖itemscroller、litematica、malilib、minihud、tweakeroo、syncmatica、litematica-printer共 7 个模组并支持简体中文、繁体中文两种语言。本文将完整拆解项目里的 Python 自动化构建管线带你弄懂从英文原文同步到汉化包打包重命名的每一步是怎么跑的 一、30秒看懂汉化包构建管线全景整条管线由 4 个独立的 Python 脚本串联完成每个脚本各司其职步骤脚本职责① 同步原文update_origin.py拉取 7 个模组的英文原文en_us.json② 生成资源包generate.py重组语言文件 → 写版本信息 → 压缩成 zip③ 重命名rename.py把 zip 改名为带版本的正式文件名④ 预建日志precreate_changelog.py自动生成下一版的更新日志模板核心思路一句话翻译文件是数据构建脚本是工厂。你只需要改 JSON 翻译文件剩下的一切交给脚本自动完成。二、目录结构速览3种语言 × 7个模组所有翻译文件都集中在 masa-mods-chinese/ 目录下按语言分子文件夹存放masa-mods-chinese/ ├── en_us/ # 英文原文由 update_origin.py 同步作为翻译基准 ├── zh_cn/ # 简体中文翻译 └── zh_tw/ # 繁体中文翻译每个语言目录下都有 7 个与模组同名的 JSON 文件例如 zh_cn/litematica-printer.json 中每一个键值对就把模组内的一条英文提示翻译成了中文像litematica-printer.config.hotkeys.name.print: 打印这样。翻译协作则由 crowdin.yml 统一配置以en_us目录下的文件为源语言翻译结果自动落位到对应语言目录保证了原文—译文目录结构一一对应。三、第一步update_origin.py 同步英文原文汉化最怕漏翻——模组更新了新文案翻译文件里却没有对应的键。update_origin.py 解决这个问题它内置了一张模组 → 英文原文下载地址的映射表运行后逐一把 7 个模组的en_us.json拉取到 masa-mods-chinese/en_us/ 目录。python update_origin.py这样每次上游模组更新后重新同步一次原文对比差异就知道哪些是新文案需要翻译了避免手工漏项 ✅四、第二步generate.py 一键打包资源包generate.py 是整条管线的主工厂末尾按顺序执行 4 个动作见 generate.py一次运行即可得到可分发的资源包。4.1 重组语言文件到标准 assets 目录create_resource_pack() 会遍历 7 个模组的文件清单把zh_cn和zh_tw两套翻译文件同时写入 Minecraft 资源包要求的标准结构assets/模组名/lang/zh_cn.json assets/模组名/lang/zh_tw.json其中 write_file() 做了两件关键事自动创建不存在的目录树用ensure_asciiFalse, indent4写出中文可读的 JSON不会被转义成一串\uXXXX。这是资源包能被游戏正确识别的目录规范手工打包时最容易出现错误的地方脚本帮你一步到位。4.2 自动读取 Git 标签写入 pack.mcmetarename_mcmeta() 通过git describe --tags命令获取当前最新的版本标签如v1.4.2自动更新 pack.mcmeta 中的两处信息描述文本自动拼接为§e[1.21]MASA全家桶汉化包-版本标签玩家在游戏资源包列表里能直接看到版本号格式兼容范围写入pack_format与supported_formats声明该包适配 1.21 系列格式 34~46。版本号完全由 Git 标签驱动不需要手动改配置文件发布时打一个新标签包内版本信息就自动跟上。4.3 压缩与清理zip_files() 把assets目录连同 pack.mcmeta、pack.png 压缩为masa-mods-chinese.zip随后 delete_files() 清掉中间产物assets目录让仓库始终保持干净。python generate.py运行结束看到Done!根目录下就多了一个可用的masa-mods-chinese.zip五、第三步rename.py 重命名汉化包rename.py 很短但很实用它同样读取 Git 标签把生成的masa-mods-chinese.zip重命名为玩家一眼能识别的版本化文件名[1.21]MASA全家桶汉化包-v1.4.2.zip这样发布到 Release 时下载者无需打开压缩包就知道适配版本和汉化版本减少下错版本的求助。python rename.py六、附加自动化precreate_changelog.py 预建更新日志precreate_changelog.py 是维护者的省力小工具它根据当前最新标签用正则解析出语义化版本号自动把 patch 位 1并在changelog/目录下生成一份新版本的日志模板见 precreate_changelog.py。模板已按 7 个模组预建好更新内容 / 修复错误 / 吐槽三大栏目维护者只需往空栏里填内容即可保证每版更新日志格式统一。python precreate_changelog.py七、从零开始构建汉化包的完整步骤想在本地构建一份最新汉化包只需 4 步克隆仓库只读使用请勿修改仓库文件git clone https://gitcode.com/gh_mirrors/ma/masa-mods-chinese cd masa-mods-chinese可选同步英文原文python update_origin.py生成资源包python generate.py重命名python rename.py完成后把根目录下的[1.21]MASA全家桶汉化包-版本.zip放进游戏的resourcepacks文件夹并启用即可。详细说明见 README.md。⚠️ 注意该汉化包仅适配 1.21 [Sakura Ryoko]最新版Masa Mods低版本模组使用可能出现翻译缺失或冲突若遇到汉化异常优先检查模组与汉化包是否都更新到了最新版。八、常见问题 FAQQ1为什么仓库里同时有 en_us / zh_cn / zh_tw 三个目录en_us是翻译基准源供对比新文案zh_cn与zh_tw是两套实际随包发布的译文generate.py 会把两者一起打进资源包。Q2改了一个翻译需要重新跑全部脚本吗只需要重新运行python generate.py以及python rename.py即可update_origin.py仅在模组英文原文更新时才需要跑。Q3版本号是从哪里来的全部来自 Git 标签。pack.mcmeta 中的描述、zip 文件名、更新日志模板三者都由标签统一推导实现一处打标、处处同步。九、小结masa-mods-chinese 的构建管线麻雀虽小五脏俱全update_origin.py 负责原料同步generate.py 负责生产加工重组目录、写入版本、压缩打包rename.py 负责贴标签precreate_changelog.py 负责文档预备。所有脚本零第三方依赖除同步脚本用到requests一条命令即可完成从源码到可分发汉化资源包的完整流程是资源包类项目自动化构建的一个精简范例。【免费下载链接】masa-mods-chinese一个masa mods的汉化资源包项目地址: https://gitcode.com/gh_mirrors/ma/masa-mods-chinese创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
