23 Commits
Author SHA1 Message Date
mystya 44b1ad6ea8 pack script 2026-09-23 21:06:24 +08:00
mystya db70619170 split back 2026-09-23 20:51:01 +08:00
mystya 92bccf96de 修理中庭前庭混乱,回滚 longcha 的全选替换误伤问题,描述 convert_male_v_to_a,以及一些小润色 2026-09-23 20:48:57 +08:00
mystya 74ec2b29de split nsfw/nsfw_meme 2026-09-23 20:20:53 +08:00
mystya 5761248cfe fix code bug, update readme to zh 2026-09-23 20:12:14 +08:00
mystya c67302fd95 make.ts: split meme/nomeme, add KEEP_SAME_OVERRIDE_LINES env for disable merge same key feature 2026-09-22 20:26:30 +08:00
mystya f7ac1b523d create pack template 2026-09-22 18:04:37 +08:00
mystya 807e452c01 split back 2026-09-22 16:04:34 +08:00
mystya efb5f6e739 merge same line|合并相同行 2026-09-22 15:49:13 +08:00
mystya cb716a9442 typo 2026-09-22 15:40:42 +08:00
mystya eb1e6a800a sync the newline num in config desc|同步配置文件描述中换行符的数量 2026-09-22 15:34:32 +08:00
mystya 00c256d5e6 Bad Idea Beacon -> 电脑配件配送员 2026-09-22 15:27:14 +08:00
mystya c92c66e089 merge same line|合并相同行 2026-09-22 15:25:32 +08:00
mystya 2b9db46d7b typo 2026-09-22 15:21:12 +08:00
mystya b0113bfdbb typo 2026-09-22 15:17:09 +08:00
mystya 92af819731 修理错位|fix lang str wrong place 2026-09-22 15:15:52 +08:00
mystya 911a0da239 merge longcha third change 2026-09-22 14:26:44 +08:00
mystya 4e876fe372 merge longcha second change(pr #14) 2026-09-22 14:24:34 +08:00
mystya 6290c4041f merge longcha's translate 2026-09-21 22:15:52 +08:00
mystya 344757c8d3 split back to lang file 2026-09-19 18:55:52 +08:00
mystya d411339915 filled 统一使用精液过载/胶水过载;统计信息规范化(如Minecraft汉化一样加入次数)并修正错误;修正部分进度没有sfw/nsfw分离的情况;补充nsfw下SFW mode btn 的翻译。 2026-09-19 18:51:38 +08:00
mystya cdb3638549 generate merged file 2026-09-19 18:21:51 +08:00
mystya d7299daeaa language file merge/split tool 2026-09-19 18:20:31 +08:00
19 changed files with 4276 additions and 113 deletions
+2
View File
@@ -0,0 +1,2 @@
/node_modules/
/build/
+25 -30
View File
@@ -1,9 +1,9 @@
{
"item.needsofnature.flower_mix": "花卉混合物",
"item.needsofnature.iron_plug": "钻石肛塞",
"item.needsofnature.protector_v": "小穴保护器",
"item.needsofnature.protector_a": "后庭保护器",
"item.needsofnature.protector_av": "通用保护器",
"item.needsofnature.iron_plug": "铁塞",
"item.needsofnature.protector_v": "小穴贞操带",
"item.needsofnature.protector_a": "菊花贞操带",
"item.needsofnature.protector_av": "通用贞操带",
"item.needsofnature.diaphragm": "避孕套",
"item.needsofnature.strapon": "可穿戴假阳具",
"item.needsofnature.strapon_advanced": "储液式可穿戴假阳具",
@@ -33,16 +33,16 @@
"item.needsofnature.horse_liquid_collector": "种马取精器",
"item.needsofnature.mixed_liquid_bottle": "混合精液瓶",
"entity.needsofnature.horse_liquid_collector": "种马取精器",
"trinkets.slot.legs.v": "小穴V",
"trinkets.slot.legs.a": "后门a",
"trinkets.slot.legs.d": "肉棒d",
"trinkets.slot.legs.v": "小穴",
"trinkets.slot.legs.a": "菊花",
"trinkets.slot.legs.d": "肉棒",
"key.needsofnature.start_manual_peak": "开始自慰",
"config.needsofnature.category.liquid": "精液",
"config.needsofnature.category.pregnancy": "怀孕",
"config.needsofnature.pregnancy_title": "自然之需怀孕",
"config.needsofnature.liquid_settings_title": "自然之需精液",
"config.needsofnature.debug_spin_mode": "SFW 模式:",
"config.needsofnature.convert_male_v_to_a": "将男性专用V注入转换为A:",
"config.needsofnature.convert_male_v_to_a": "对于男性,将小穴动画获得的精液注入菊花:",
"config.needsofnature.peak_loop_seconds": "高潮阶段秒数(1-300):",
"config.needsofnature.player_skin_model.section.belly": "孕肚",
"config.needsofnature.belly_settings": "孕肚设置...",
@@ -50,11 +50,9 @@
"config.needsofnature.belly_rendering": "你的孕肚:",
"config.needsofnature.max_liquid_belly_size": "最大精液量时孕肚大小:",
"config.needsofnature.max_pregnancy_belly_size": "怀孕最大值孕肚大小:",
"config.needsofnature.intiface_energized_level": "性压抑 %s 基础/脉冲:",
"config.needsofnature.intiface_peak_reactiveimpact": "高潮冲击:",
"config.needsofnature.intiface_oscillator_peak_speed": "高潮阶段速度:",
"config.needsofnature.intiface_stroker_peak_duration": "高潮阶段移动时长:",
"config.needsofnature.section.intiface_energized": "性压抑心跳",
"config.needsofnature.section.liquid_based_pregnancy": "基于精液的怀孕",
"config.needsofnature.section.pregnancy_timing": "怀孕时机",
"config.needsofnature.section.pregnancy_behavior": "怀孕行为",
@@ -67,7 +65,6 @@
"config.needsofnature.keep_liquid_tank_after_death": "死后保留精液槽:",
"config.needsofnature.keep_pregnancy_after_death": "死后保留怀孕状态:",
"config.needsofnature.pvp_max_heat_escape_strength_percent": "最大性压抑时的逃脱强度(0-200%):",
"config.needsofnature.pvp_zero_heat_attack_strength_percent": "零性压抑时的攻击强度(0-200%):",
"config.needsofnature.attack_outcome_failsafe_threshold": "攻击者连续高潮次数(1-50):",
"config.needsofnature.give_up_chained_peaks": "连续高潮后可“放弃”的次数 (1-50):",
"config.needsofnature.attack_creative_players": "允许创造模式玩家被动进入性行为:",
@@ -108,7 +105,6 @@
"config.needsofnature.tooltip.belly_rendering": "开启:始终显示你的孕肚。原始躯干:仅当你的角色使用原始玩家躯干时显示。关闭:对所有玩家隐藏你的孕肚。",
"config.needsofnature.tooltip.max_liquid_belly_size": "完全填满精液槽时达到的最大孕肚动画大小。",
"config.needsofnature.tooltip.max_pregnancy_belly_size": "临产时达到的最大孕肚动画大小。",
"config.needsofnature.tooltip.intiface_energized": "性压抑激活时的基础振动,加上与心跳脉冲同步的心跳峰值强度。左滑块为基础,右滑块为脉冲峰值。",
"config.needsofnature.tooltip.intiface_peak_reactiveimpact": "高潮反应式冲击提示的强度滑块和持续时间(毫秒)。",
"config.needsofnature.tooltip.intiface_oscillator_peak_speed": "您在高潮动画阶段时的振荡器速度。设为0%以禁用。",
"config.needsofnature.tooltip.intiface_stroker_peak_duration": "高潮反应式冲击提示时,活塞API移动到最大或最小位置所用的毫秒数。设为0ms以禁用。",
@@ -146,7 +142,6 @@
"config.needsofnature.tooltip.offspring_count_reset": "将怀孕配置文件行重置为NoNpack默认值。",
"config.needsofnature.tooltip.liquid_gain_entry_ml": "该实体作为注入器时提供的精液获取毫升数。",
"config.needsofnature.tooltip.entity_profile_entry_chance": "该实体的怀孕几率覆盖。留空以使用显示的默认/全局值。",
"effect.needsofnature.energized": "充满性压抑",
"effect.needsofnature.fertility_increaser": "易孕",
"effect.needsofnature.filled": "精液过载",
"effect.needsofnature.pregnant": "怀孕",
@@ -184,38 +179,38 @@
"item.minecraft.potion.effect.needsofnature.liquid": "精液瓶",
"stat.needsofnature.peaked_animations_total": "NoN:高潮动画",
"stat.needsofnature.liquid_gained_ml_total": "NoN:获取精液总量(毫升)",
"stat.needsofnature.attack_animations_started_total": "NoN:被战败次数",
"stat.needsofnature.attack_escapes_success_total": "NoN:从战败中逃脱次数",
"stat.needsofnature.attack_animations_started_total": "NoN:被强奸次数",
"stat.needsofnature.attack_escapes_success_total": "NoN:从强奸中逃脱次数",
"stat.needsofnature.m_injector_peaks_ml_total": "NoN:口交精液量(毫升)",
"stat.needsofnature.manual_peaks_total": "NoN:手动高潮次数",
"stat.needsofnature.bottles_filled_total": "NoN:收集精液瓶次数",
"stat.needsofnature.pregnancies_started_total": "NoN:受精次数",
"stat.needsofnature.pregnancies_completed_total": "NoN:生产次数",
"advancements.needsofnature.natural_curiosity.title": "伊甸园的禁果",
"advancements.needsofnature.natural_curiosity.description": "首次进入高潮。",
"advancements.needsofnature.root.description": "春天来了,万物复苏,又到了动物们交配的季节。",
"advancements.needsofnature.natural_curiosity.description": "达到高潮。",
"advancements.needsofnature.filled_to_the_brim.description": "完全填满你的精液槽。",
"advancements.needsofnature.favouritism.description": "仅被一种生物类型灌满精液。",
"advancements.needsofnature.mother_nature.description": "孕育了 25 次生命。",
"advancements.needsofnature.group_activity.title": "淫趴",
"advancements.needsofnature.group_activity.description": "与三个生物做爱。",
"advancements.needsofnature.tossed_around.description": "连续触发五次战败动画。你就是故意来看动画的",
"advancements.needsofnature.collectors_habit.title": "禁止套娃",
"advancements.needsofnature.tossed_around.title": "无限高潮",
"advancements.needsofnature.tossed_around.description": "连续触发五次战败动画。",
"advancements.needsofnature.collectors_habit.description": "用你体内的精液填满 25 个玻璃瓶。",
"advancements.needsofnature.field_research.title": "赴一线进行实地调研",
"advancements.needsofnature.field_research.description": "在一个游戏日之内榨取五种不同的生物的精液。",
"advancements.needsofnature.bad_idea_beacon.title": "电脑配件配送员",
"advancements.needsofnature.bad_idea_beacon.description": "衣物完全破损时达到最大性压抑。",
"advancements.needsofnature.udderly_unfortunate.description": "孕期不要喝牛奶。",
"advancements.needsofnature.emergency_snack.description": "在饥饿难耐时,喝下精液。味道有点腥。",
"advancements.needsofnature.bad_idea_beacon.title": "性欲信标",
"advancements.needsofnature.bad_idea_beacon.description": "衣服全破并性压抑爆表。",
"advancements.needsofnature.productive_pregnancy.description": "一次产下了多个幼崽。",
"advancements.needsofnature.udderly_unfortunate.description": "孕期喝牛奶。",
"advancements.needsofnature.emergency_snack.description": "通过口交或饮用精液瓶缓解饥饿。",
"advancements.needsofnature.stable_diet.description": "连续喝下三次精液,中间不食用其他食物。",
"advancements.needsofnature.acquire_hardware.description": "使用胡萝卜或金胡萝卜自慰。",
"advancements.needsofnature.bad.description": "对着发情满级的生物用喷液枪,喷水。",
"advancements.needsofnature.special_delivery.description": "用你体内的“精液”给别人做一次面部护理。对方没躲开就算成功喵。",
"advancements.needsofnature.shocking_experience.description": "与一只闪电苦力怕亲密接触。感受它体内电光火石的一哆嗦~。",
"advancements.needsofnature.baby_on_board.description": "孕期骑上任意载具。震得宝宝都在里面翻跟头了喵~小心别把羊水颠出来哟。",
"advancements.needsofnature.bad.description": "当某个生物性兴奋到极致时,给它一点警告。",
"advancements.needsofnature.shocking_experience.description": "与一只闪电苦力怕亲密接触。",
"advancements.needsofnature.baby_on_board.title": "宝宝巴士",
"advancements.needsofnature.baby_on_board.description": "孕期骑上任意载具。",
"advancements.needsofnature.head_in_the_clouds.description": "这个高潮可真是物理意义的高。",
"advancements.needsofnature.absolute_bottom.description": "在 Y<-55 的位置高潮",
"advancements.needsofnature.dimensional_traveler.title": "跟我一起迷失吧",
"advancements.needsofnature.absolute_bottom.description": "在 Y<-55 的位置高潮。",
"advancements.needsofnature.dimensional_traveler.title": "三界通吃",
"advancements.needsofnature.dimensional_traveler.description": "在主世界、下界、末地处处留情。",
"gui.needsofnature.player_profiles.tooltip": "设置您的默认和每位玩家的动画请求偏好。\n(自动通过请求动画点左下角允许的配置文件/满压抑左键强制性交)",
"gui.needsofnature.player_request.protected": "装备的贞操带阻止了动画。",
+44 -23
View File
@@ -1,27 +1,48 @@
# NoN translation Repo :3
## SFW and NSFW
### SFW
These are the lang files shiped into the NoN mod jar. They are SFW, meaning that they use 'liquid' instead of cum, 'energy' instead of heat etc
### NSFW
These are included in the lang files in the default pack and overwrite the keys that used liquid etc to now use cum, heat and so on.
# NoN 中文翻译工作区(和多版本翻译整合工具)
目前我们开了三个翻译版本:
## Additional info
As a reminder, please double check that things are really translation mistakes. Some keys might look wrong but make sense in the context so compare it to the english counterpart. Example:
## zh_cn_sfw
这是准备交付到 mod jar 层的内容,不应包含任何色情词汇。
```json
"item.needsofnature.accessory.tooltip.liquid_decay_reduced": "Cum decay %s",
"item.needsofnature.accessory.tooltip.liquid_decay_increased": "Cum decay %s",
```
```json
"item.needsofnature.accessory.tooltip.player_energy_gain.increased": "Heat buildup %s",
"item.needsofnature.accessory.tooltip.player_energy_gain.reduced": "Heat buildup %s",
```
These might look incorrect but with `%s` inserted it will be things like
"Heat buildup -10%" and "Cum decay +25%" so keep that in mind when looking for errors.
- todo:就“中庭锁”、“性压抑”等词语,寻找更加SFW的版本。
## Terminology
## zh_cn_nsfw
这是准备交付到 NoN default pack 默认动画包中内嵌的版本,其应该覆盖掉 `zh_cn_sfw` 中那些不色情的词汇
- `skin`, `player skin`, and `base skin` refer to a Minecraft character appearance or texture, never human tissue. Use the language's established Minecraft or gaming term.
- `destroyed skin` and `ripped skin` refer to NoN's ripped-clothing appearance. Prefer wording about a damaged appearance, outfit, or clothing when a literal translation would imply bodily injury.
- Keep filenames and paths such as `destroyed_skin.png`, `destroyed_skin_mask_%s.png`, and `config/needsofnature` unchanged.
- Keep mod and project names such as `Quick Skin`, `Skin Overrides`, `CPM`, `Figura`, `NoFigura`, and `NoN` unchanged.
- todo:就“性压抑”等词语寻找更准确的翻译。
## zh_cn_nsfw_meme
这是对 LongCha 翻译的保留,将单独打成 zh_cn_meme 的空动画包(应用此包将覆盖 zh_cn_nsfw 的部分进度描述以提高节目效果)
- 为什么不使用资源包?由于 mod 的逻辑,动画包优先级高于资源包,导致资源包不可能覆盖动画包的内容。
## 翻译工具
`make.ts` 将多个跨版本的 lang json 文件合并为一个,并且按照顺序排列好,使得相同的字串排列在相邻的位置。
- 还能找出相同的字符串并删掉覆盖层的内容,从而减少额外的行。
- 同时,还会自动排序为官方 lang 文件顺序。
### 使用方法
1. 打开 `make.ts`,编辑 `targetLangFiles` and the `workFile` 两项
2. 执行 `make.ts`(或者是 `ts-node make.ts` / `deno make.ts`),合并的语言文件会被输出到 `workFile` 变量的位置。
3. 编辑输出的合并版文件
4. 再次执行,脚本会根据时间戳决定改为将文件拆回去
5. 如果你不想覆盖某个特定的文件,给对应项加上 `ro: true`
6. 如果你不想自动合并重复行,加上环境变量 `KEEP_SAME_OVERRIDE_LINES`
## Translation Utility
make.ts merges multiple language files into one for easy editing, then splits them back into separate files. This tool lets you:
- find the original text without searching another file
- automatically remove duplicate text to save space
- sort your i18n files according to the official order
### Usage
1. Open `make.ts` and edit the `targetLangFiles` and the `workFile` fields, change `zh_cn` to your language. please notice that The `suffix` and `file` values must be unique.
2. Run `./make.ts` (or `ts-node make.ts` / `deno make.ts`). The language files will be merged into the `workFile` location (e.g. `zh_cn.json`).
3. Edit the output file.
4. Run `./make.ts` again. If the workfile is newer than the other files, the script will write the changes back to the language files (at the locations specified by `targetLangFiles`).
5. If you don't want a language to be written back, add `ro: true` to its entry in `targetLangFiles`.
6. use env `KEEP_SAME_OVERRIDE_LINES` to avoid remove same line in override layer.
+60 -60
View File
@@ -4,11 +4,11 @@
"item.needsofnature.energy_augmenter": "性压抑提升器",
"item.needsofnature.energy_diminisher": "性压抑减弱器",
"item.needsofnature.energy_stabilizer": "性压抑稳定器",
"item.needsofnature.iron_plug": "钻石插件",
"item.needsofnature.protector_v": "中庭锁(女用防交配神器)",
"item.needsofnature.protector_a": "后庭锁(男用防后入神器)",
"item.needsofnature.protector_av": "通用锁(人售保险)",
"item.needsofnature.diaphragm": "当幸福来敲门",
"item.needsofnature.iron_plug": "铁插件",
"item.needsofnature.protector_v": "前庭保护器",
"item.needsofnature.protector_a": "后庭保护器",
"item.needsofnature.protector_av": "通用保护器",
"item.needsofnature.diaphragm": "计生用具",
"item.needsofnature.strapon": "穿戴式用具",
"item.needsofnature.strapon_advanced": "穿戴式注液用具",
"item.needsofnature.accessory.tooltip.liquid_decay_reduced": "液体衰减 %s",
@@ -39,9 +39,9 @@
"item.needsofnature.accessory.tooltip.player_energy_aura.reduced": "性压抑光环 %s",
"item.needsofnature.accessory.tooltip.near_animation_mob_energy.increased": "附近动画生物性压抑 %s",
"item.needsofnature.accessory.tooltip.near_animation_mob_energy.reduced": "附近动画生物性压抑 %s",
"item.needsofnature.accessory.tooltip.blocks_injector_v": "阻止中庭动画",
"item.needsofnature.accessory.tooltip.blocks_injector_v": "阻止前庭动画",
"item.needsofnature.accessory.tooltip.blocks_injector_a": "阻止后庭动画",
"item.needsofnature.accessory.tooltip.blocks_injector_av": "阻止中庭/后庭动画",
"item.needsofnature.accessory.tooltip.blocks_injector_av": "阻止前庭/后庭动画",
"item.needsofnature.accessory.tooltip.occupies_av": "同时占据前后庭",
"item.needsofnature.accessory.tooltip.ignore_injector_slot_effect_suppression": "在对应的动画期间保持激活",
"item.needsofnature.accessory.tooltip.blocks_pregnancy": "防止中奖",
@@ -54,13 +54,13 @@
"item.needsofnature.mixed_liquid_bottle": "混合液体瓶",
"entity.needsofnature.horse_liquid_collector": "种马收集器",
"itemGroup.needsofnature.main": "自然之需",
"trinkets.slot.legs.v": "V中庭",
"trinkets.slot.legs.a": "A后庭",
"trinkets.slot.legs.d": "D棒子",
"trinkets.slot.legs.v": "前庭",
"trinkets.slot.legs.a": "后庭",
"trinkets.slot.legs.d": "香肠",
"key.categories.needsofnature": "自然之需",
"key.categories.needsofnature.main": "自然之需",
"key.category.needsofnature.main": "自然之需",
"key.needsofnature.start_manual_peak": "安抚动画",
"key.needsofnature.start_manual_peak": "手动动画",
"key.needsofnature.player_preferences": "打开玩家偏好",
"key.needsofnature.give_up": "放弃",
"key.needsofnature.model_alignment": "调整动画参与者对齐",
@@ -188,7 +188,7 @@
"config.needsofnature.debug_chat_mode": "调试聊天模式:",
"config.needsofnature.debug_spin_mode": "调试旋转模式:",
"config.needsofnature.debug_spin_mode.value": "%s",
"config.needsofnature.convert_male_v_to_a": "将男性中庭重定向到后庭:",
"config.needsofnature.convert_male_v_to_a": "将男性前庭重定向到后庭:",
"config.needsofnature.destroyed_skin_tint": "破损Minecraft皮肤的色调:",
"config.needsofnature.destroyed_skin_tint.pick": "选择破损Minecraft皮肤的色调...",
"config.needsofnature.destroyed_skin_tint.pick_title": "选择破损Minecraft皮肤的色调",
@@ -408,7 +408,7 @@
"config.needsofnature.offset_profiles.reload": "重新加载",
"config.needsofnature.offset_profiles.open": "打开文件夹",
"config.needsofnature.offset_profiles.name": "形象名称",
"config.needsofnature.offset_profiles.model_mismatch": "警告:此配置文件是为其他型号创建的。它仍然可以选择安抚兼容性设置。",
"config.needsofnature.offset_profiles.model_mismatch": "警告:此配置文件是为其他型号创建的。它仍然可以选择手动兼容性设置。",
"config.needsofnature.tooltip.offset_profiles.active": "打开形象列表。切换在动画期间立即应用。",
"config.needsofnature.tooltip.offset_profiles.local_avatar": "未选择便携式配置文件。正在使用活动 Figura 头像中保存的偏移量。",
"config.needsofnature.tooltip.offset_profiles.create": "创建并选择下一个 <model name>01、<model name>02...配置文件。",
@@ -486,7 +486,7 @@
"config.needsofnature.female_gender.momentum": "晃动:",
"config.needsofnature.female_gender.preview_unavailable": "预览不可用",
"config.needsofnature.armor_shed_effect": "护甲脱落的动画效果:",
"config.needsofnature.action_sound_volume": "行为音量:",
"config.needsofnature.action_sound_volume": "动作音量:",
"config.needsofnature.action_sound_volume.value": "%s%%",
"config.needsofnature.intiface_title": "自然之需 Buttplug.io",
"config.needsofnature.intiface_toy_title": "玩具设置",
@@ -498,7 +498,7 @@
"config.needsofnature.intiface_auto_connect": "加入世界时自动连接:",
"config.needsofnature.intiface_stop_on_disconnect": "断开时停止:",
"config.needsofnature.intiface_animation_baseline": "动画基线:",
"config.needsofnature.intiface_energized_level": "性欲 %s 基础/脉冲:",
"config.needsofnature.intiface_energized_level": "性压抑 %s 基础/脉冲:",
"config.needsofnature.intiface_reactiveimpact": "普通冲击:",
"config.needsofnature.intiface_peak_reactiveimpact": "最终冲击:",
"config.needsofnature.intiface_cooldown": "脉冲冷却(毫秒):",
@@ -568,7 +568,7 @@
"config.needsofnature.section.intiface_connection": "Buttplug.io连接",
"config.needsofnature.section.intiface_libraries": "Buttplug.io库",
"config.needsofnature.section.intiface_baseline": "动画基线",
"config.needsofnature.section.intiface_energized": "性欲心跳",
"config.needsofnature.section.intiface_energized": "性压抑心跳",
"config.needsofnature.section.intiface_reactiveimpact": "反应式冲击",
"config.needsofnature.section.intiface_controls": "连接控制",
"config.needsofnature.section.intiface_toy_settings": "玩具设置",
@@ -641,7 +641,7 @@
"config.needsofnature.pvp_full_health_escape_bonus_percent": "满血逃脱强度加成(0-200%):",
"config.needsofnature.pvp_critical_health_mash_strength_percent": "濒死逃脱强度(0-200%):",
"config.needsofnature.pvp_max_heat_escape_strength_percent": "满压抑逃脱强度(0-200%):",
"config.needsofnature.pvp_zero_heat_attack_strength_percent": "零压抑攻击强度(0-200%):",
"config.needsofnature.pvp_zero_heat_attack_strength_percent": "零性压抑时的攻击强度(0-200%):",
"config.needsofnature.attack_escape_invulnerability_seconds": "逃脱后无敌秒数(0-10):",
"config.needsofnature.attack_escape_animation_protection_seconds": "逃脱后性行为保护秒数(0-10):",
"config.needsofnature.post_escape_gather_max_mobs": "逃脱后追击人数(0-64):",
@@ -764,13 +764,13 @@
"config.needsofnature.tooltip.category.liquid": "液体获取、衰减、瓶装和液体过载效果设置。",
"config.needsofnature.tooltip.category.pregnancy": "中奖几率、时长和卵孵化设置。",
"config.needsofnature.tooltip.category.interface": "移动 NoN HUD 元素以获得更好的对齐。",
"config.needsofnature.tooltip.category.intiface": "Buttplug.io(蓝牙链接玩具,用于您自己玩具进行动画互动,下载 Intiface Central 并链接玩具)。",
"config.needsofnature.tooltip.category.intiface": "Buttplug.io(蓝牙链接玩具,用于您自己玩具进行动画互动。需要下载 Intiface Central 并链接玩具)。",
"config.needsofnature.tooltip.category.debug_advanced": "调试输出和面向性能的高级选项。",
"config.needsofnature.tooltip.category.disabled_in_toggles": "在“开关”中已禁用。",
"config.needsofnature.tooltip.toggle.pregnancy": "全局启用或禁用中奖机制。",
"config.needsofnature.tooltip.toggle.liquid_tank": "全局启用或禁用玩家液体槽机制。",
"config.needsofnature.tooltip.toggle.mess_system": "全局启用或禁用液体渍获取、清理和可见液体渍覆盖层。",
"config.needsofnature.tooltip.toggle.destroyed_skin_system": "全局启用或禁用撕裂衣服损坏、修复、安抚剪切和可见损坏的 Minecraft 皮肤覆盖层。",
"config.needsofnature.tooltip.toggle.destroyed_skin_system": "全局启用或禁用撕裂衣服损坏、修复、手动剪切和可见损坏的 Minecraft 皮肤覆盖层。",
"config.needsofnature.tooltip.toggle.vanilla_overrides": "全局启用或禁用所有NoN原版覆盖机制。",
"config.needsofnature.tooltip.initial_energy_max": "生物生成时自带的最大随机性压抑值。",
"config.needsofnature.tooltip.energy_gain_rate": "生物自然性压抑数值获取的全局倍率。",
@@ -832,7 +832,7 @@
"config.needsofnature.tooltip.intiface_auto_connect": "加入世界时自动连接 Buttplug.io 。",
"config.needsofnature.tooltip.intiface_stop_on_disconnect": "离开世界时向已连接设备发送停止命令。",
"config.needsofnature.tooltip.intiface_animation_baseline": "您在动画期间的低强度振动。反应式冲击会暂时在其之上产生峰值。设为0%以禁用。",
"config.needsofnature.tooltip.intiface_energized": "性欲激活时的基础振动,加上与心跳脉冲同步的心跳峰值强度。左滑块为基础,右滑块为脉冲峰值。",
"config.needsofnature.tooltip.intiface_energized": "性压抑激活时的基础振动,加上与心跳脉冲同步的心跳峰值强度。左滑块为基础,右滑块为脉冲峰值。",
"config.needsofnature.tooltip.intiface_reactiveimpact": "普通反应式冲击提示的强度滑块和持续时间(毫秒)。",
"config.needsofnature.tooltip.intiface_peak_reactiveimpact": "收尾阶段反应式冲击提示的强度滑块和持续时间(毫秒)。",
"config.needsofnature.tooltip.intiface_cooldown": "脉冲之间的最小毫秒数。设为0以允许每个匹配提示。",
@@ -856,7 +856,7 @@
"config.needsofnature.tooltip.female_gender.breast_physics": "为此破损阶段配置文件启用或禁用女性性别模组胸部物理。",
"config.needsofnature.tooltip.female_gender.dual_physics": "开启使用独立的左右物理。关闭则写入女性性别模组的“单胸”设置。",
"config.needsofnature.tooltip.armor_shed_effect": "客户端视觉效果,当您进入新的动画时,装备的护甲会飞脱。",
"config.needsofnature.tooltip.manual_peak_selection_hold_time": "打开动画选择界面前,必须按住安抚动画键的时长。更早松开会执行普通快捷操作。",
"config.needsofnature.tooltip.manual_peak_selection_hold_time": "打开动画选择界面前,必须按住手动动画键的时长。更早松开会执行普通快捷操作。",
"config.needsofnature.tooltip.action_sound_volume": "缩放从动画声音提示解析的NoN动作音量。Minecraft的正常声音分类滑块仍然适用。",
"config.needsofnature.tooltip.male_male_chance": "同性男性配对进行的随机几率。",
"config.needsofnature.tooltip.female_female_chance": "同性女性配对进行的随机几率。",
@@ -939,7 +939,7 @@
"config.needsofnature.tooltip.destroyed_skin_tint.disabled_system": "已禁用,因为损坏的 Minecraft 皮肤系统在切换中处于关闭状态。",
"config.needsofnature.tooltip.destroyed_skin_tint.default_skin": "已禁用,因为所选的默认 Minecraft 皮肤有其自己损坏的 Minecraft 皮肤纹理。默认损坏的 Minecraft 皮肤会忽略生成的 Minecraft 皮肤色调。",
"config.needsofnature.tooltip.destroyed_skin_system.disabled_setting": "已禁用,因为损坏的 Minecraft 皮肤系统在切换中处于关闭状态。",
"config.needsofnature.tooltip.destroyed_skin_tint.auto": "清除安抚色调,以便 NoN 再次从您的 Minecraft 皮肤中自动检测到它。",
"config.needsofnature.tooltip.destroyed_skin_tint.auto": "清除手动色调,以便 NoN 再次从您的 Minecraft 皮肤中自动检测到它。",
"config.needsofnature.tooltip.cpm_texture_profile": "为选中的自定义纹理CPM模型创建破损皮肤和污渍模板。",
"config.needsofnature.tooltip.cpm_texture_profile.create": "创建所有缺失的配置文件而不替换现有编辑,然后打开文件夹。",
"config.needsofnature.tooltip.cpm_texture_profile.refresh": "仅用模型当前最终纹理图集替换 reference_texture.png。",
@@ -1079,62 +1079,62 @@
"stat.needsofnature.attack_animations_started_total": "NoN:开始被攻击动画次数",
"stat.needsofnature.attack_escapes_success_total": "NoN:从攻击中逃脱次数",
"stat.needsofnature.m_injector_peaks_ml_total": "NoN:摄入液体量(毫升)",
"stat.needsofnature.manual_peaks_total": "NoN:安抚动画次数",
"stat.needsofnature.manual_peaks_total": "NoN:手动动画次数",
"stat.needsofnature.bottles_filled_total": "NoN:收集液体瓶次数",
"stat.needsofnature.pregnancies_started_total": "NoN:中奖次数",
"stat.needsofnature.pregnancies_completed_total": "NoN:兑奖次数",
"stat.needsofnature.offspring_spawned_total": "NoN:产下后代数量",
"advancements.needsofnature.root.title": "自然之需",
"advancements.needsofnature.root.description": "丛林躁动不安",
"advancements.needsofnature.root.description": "春天来了,万物复苏...",
"advancements.needsofnature.natural_curiosity.title": "自然之趣",
"advancements.needsofnature.natural_curiosity.description": "完成动画。",
"advancements.needsofnature.filled_to_the_brim.title": "热腾腾的",
"advancements.needsofnature.filled_to_the_brim.description": "装满液一瓶体。",
"advancements.needsofnature.favouritism.title": "偏爱",
"advancements.needsofnature.filled_to_the_brim.title": "满满当当",
"advancements.needsofnature.filled_to_the_brim.description": "装满一瓶液体。",
"advancements.needsofnature.favouritism.title": "三千宠爱于一身",
"advancements.needsofnature.favouritism.description": "使用一种生物的液体灌满槽位。",
"advancements.needsofnature.first_pregnancy.title": "第一胎",
"advancements.needsofnature.first_pregnancy.description": "一个新生命悄然萌芽。",
"advancements.needsofnature.mother_nature.title": "好女孩",
"advancements.needsofnature.first_pregnancy.description": "生下你的第一个孩子。",
"advancements.needsofnature.mother_nature.title": "自然之母",
"advancements.needsofnature.mother_nature.description": "出产 25 次。",
"advancements.needsofnature.messed_up.title": "这是人体彩绘!",
"advancements.needsofnature.messed_up.description": "满身污渍AVM三个部位完全充满污垢。",
"advancements.needsofnature.group_activity.title": "这是共斗游戏?",
"advancements.needsofnature.group_activity.description": "生出两个以上孩子。",
"advancements.needsofnature.tossed_around.title": "战败cg享受者",
"advancements.needsofnature.tossed_around.description": "连续进行五次动画。你是故意看动画的?",
"advancements.needsofnature.collectors_habit.title": "禁止套娃!",
"advancements.needsofnature.messed_up.title": "狼狈不堪",
"advancements.needsofnature.messed_up.description": "身上每个部位都充满污垢。",
"advancements.needsofnature.group_activity.title": "团建",
"advancements.needsofnature.group_activity.description": "与三个生物共赴巫山。",
"advancements.needsofnature.tossed_around.title": "控到死",
"advancements.needsofnature.tossed_around.description": "连续进行五次动画。",
"advancements.needsofnature.collectors_habit.title": "收集癖",
"advancements.needsofnature.collectors_habit.description": "从自身液体槽收集 25 个液体瓶。",
"advancements.needsofnature.field_research.title": "实地调查研究",
"advancements.needsofnature.field_research.description": "在一个游戏日之内从五种不同的生物身上提取液体。",
"advancements.needsofnature.bad_idea_beacon.title": "恶堕",
"advancements.needsofnature.bad_idea_beacon.title": "坏念头信标",
"advancements.needsofnature.bad_idea_beacon.description": "衣服全破并欲望爆表。",
"advancements.needsofnature.productive_pregnancy.title": "多子多福",
"advancements.needsofnature.productive_pregnancy.description": "一次产下了2个以上的幼崽。",
"advancements.needsofnature.udderly_unfortunate.title": "《以撒的结合:重开》",
"advancements.needsofnature.productive_pregnancy.description": "多胞胎。",
"advancements.needsofnature.udderly_unfortunate.title": "乳糖不耐",
"advancements.needsofnature.udderly_unfortunate.description": "有些时候不适合喝牛奶。",
"advancements.needsofnature.emergency_snack.title": "酸面包",
"advancements.needsofnature.emergency_snack.description": "喝下一瓶液体。",
"advancements.needsofnature.stable_diet.title": "百家饭",
"advancements.needsofnature.emergency_snack.title": "应急零食",
"advancements.needsofnature.emergency_snack.description": "通过M注入或饮用一瓶液体来缓解饥饿。",
"advancements.needsofnature.stable_diet.title": "稳定膳食",
"advancements.needsofnature.stable_diet.description": "连续喝下三次液体,中间不食用其他食物。",
"advancements.needsofnature.acquire_hardware.title": "刹那抓住了未来",
"advancements.needsofnature.acquire_hardware.description": "使用萝卜等物品自行解决问题。",
"advancements.needsofnature.bad.title": "静心",
"advancements.needsofnature.bad.description": "对着满身爱心的生物用喷液枪,喷水。",
"advancements.needsofnature.measured_dose.title": "电脑配件",
"advancements.needsofnature.measured_dose.description": "有些药水也不一定非得喝下去。",
"advancements.needsofnature.special_delivery.title": "全弹发射",
"advancements.needsofnature.special_delivery.description": "用液体给别人做一次面部护理。",
"advancements.needsofnature.sweet_tooth.title": "哈基米爱好者",
"advancements.needsofnature.sweet_tooth.description": "把蜂蜜瓶装填进喷液枪里,然后瞄准关键部位。",
"advancements.needsofnature.shocking_experience.title": "触核电,轻而易举啊!",
"advancements.needsofnature.shocking_experience.description": "与一只闪电苦力怕“触电”。",
"advancements.needsofnature.baby_on_board.title": "宝宝巴士",
"advancements.needsofnature.acquire_hardware.title": "安装插件",
"advancements.needsofnature.acquire_hardware.description": "使用物品自行解决问题。",
"advancements.needsofnature.bad.title": "不乖!",
"advancements.needsofnature.bad.description": "当某个生物兴奋到极致时,给它一点警告。",
"advancements.needsofnature.measured_dose.title": "定量给药",
"advancements.needsofnature.measured_dose.description": "有些时候不一定非得喝下去。",
"advancements.needsofnature.special_delivery.title": "白色污渍",
"advancements.needsofnature.special_delivery.description": "这可不好洗。",
"advancements.needsofnature.sweet_tooth.title": "甜食爱好者",
"advancements.needsofnature.sweet_tooth.description": "瞄准关键部位。",
"advancements.needsofnature.shocking_experience.title": "触电般的体验",
"advancements.needsofnature.shocking_experience.description": "与闪电苦力怕共舞。",
"advancements.needsofnature.baby_on_board.title": "车内有宝宝",
"advancements.needsofnature.baby_on_board.description": "中奖状态下骑上任意载具。",
"advancements.needsofnature.head_in_the_clouds.title": "熙熙攘攘我们的城市",
"advancements.needsofnature.head_in_the_clouds.title": "神游云外",
"advancements.needsofnature.head_in_the_clouds.description": "这首歌的高潮部分可真是物理意义的高。",
"advancements.needsofnature.absolute_bottom.title": "我在奈落之底等你",
"advancements.needsofnature.absolute_bottom.title": "谁在下面?",
"advancements.needsofnature.absolute_bottom.description": "Y<-55 的深层矿区又湿又滑……",
"advancements.needsofnature.dimensional_traveler.title": "和我一起迷失吧!",
"advancements.needsofnature.dimensional_traveler.title": "巡回演出",
"advancements.needsofnature.dimensional_traveler.description": "在主世界、下界、末地都进行过动画。",
"gui.needsofnature.player_profiles.title": "玩家互动配置文件",
"gui.needsofnature.player_profiles.tooltip": "设置您的默认和每位玩家的动画请求偏好。",
@@ -1152,7 +1152,7 @@
"gui.needsofnature.player_profiles.mode.requests_and_attacks": "除请求外,攻击强制性交",
"gui.needsofnature.player_profiles.mode.auto_accept": "自动接受请求",
"gui.needsofnature.manual_peak_selection.title": "选择动画",
"gui.needsofnature.manual_peak_selection.none": "没有可用的已启用安抚、挑逗、受困或败北动画。",
"gui.needsofnature.manual_peak_selection.none": "没有可用的已启用手动、挑逗、受困或败北动画。",
"gui.needsofnature.manual_peak_selection.section.tease": "挑逗动画",
"gui.needsofnature.manual_peak_selection.section.available": "可用动画",
"gui.needsofnature.manual_peak_selection.section.defeated": "败北动画",
@@ -1225,7 +1225,7 @@
"config.needsofnature.animation.force_vanilla_entity_textures": "强制使用原版实体贴图(忽略资源包)",
"config.needsofnature.animation.block_search_radius": "方块搜索半径",
"config.needsofnature.animation.auto_switch_third_person": "动画开始时自动切换到第三人称",
"config.needsofnature.manual_peak_selection_hold_time": "安抚动画菜单按住时长:",
"config.needsofnature.manual_peak_selection_hold_time": "手动动画菜单按住时长:",
"config.needsofnature.animation.debug_menu": "调试选项",
"config.needsofnature.animation.open": "打开",
"config.needsofnature.animation.debug_title": "自然之需 动画调试",
@@ -0,0 +1,412 @@
CC-BY-NC 4.0
https://creativecommons.org/licenses/by-nc/4.0/
Attribution-NonCommercial 4.0 International
=======================================================================
Creative Commons Corporation ("Creative Commons") is not a law firm and
does not provide legal services or legal advice. Distribution of
Creative Commons public licenses does not create a lawyer-client or
other relationship. Creative Commons makes its licenses and related
information available on an "as-is" basis. Creative Commons gives no
warranties regarding its licenses, any material licensed under their
terms and conditions, or any related information. Creative Commons
disclaims all liability for damages resulting from their use to the
fullest extent possible.
Using Creative Commons Public Licenses
Creative Commons public licenses provide a standard set of terms and
conditions that creators and other rights holders may use to share
original works of authorship and other material subject to copyright
and certain other rights specified in the public license below. The
following considerations are for informational purposes only, are not
exhaustive, and do not form part of our licenses.
Considerations for licensors: Our public licenses are
intended for use by those authorized to give the public
permission to use material in ways otherwise restricted by
copyright and certain other rights. Our licenses are
irrevocable. Licensors should read and understand the terms
and conditions of the license they choose before applying it.
Licensors should also secure all rights necessary before
applying our licenses so that the public can reuse the
material as expected. Licensors should clearly mark any
material not subject to the license. This includes other CC-
licensed material, or material used under an exception or
limitation to copyright. More considerations for licensors:
wiki.creativecommons.org/Considerations_for_licensors
Considerations for the public: By using one of our public
licenses, a licensor grants the public permission to use the
licensed material under specified terms and conditions. If
the licensor's permission is not necessary for any reason--for
example, because of any applicable exception or limitation to
copyright--then that use is not regulated by the license. Our
licenses grant only permissions under copyright and certain
other rights that a licensor has authority to grant. Use of
the licensed material may still be restricted for other
reasons, including because others have copyright or other
rights in the material. A licensor may make special requests,
such as asking that all changes be marked or described.
Although not required by our licenses, you are encouraged to
respect those requests where reasonable. More considerations
for the public:
wiki.creativecommons.org/Considerations_for_licensees
=======================================================================
Creative Commons Attribution-NonCommercial 4.0 International Public
License
By exercising the Licensed Rights (defined below), You accept and agree
to be bound by the terms and conditions of this Creative Commons
Attribution-NonCommercial 4.0 International Public License ("Public
License"). To the extent this Public License may be interpreted as a
contract, You are granted the Licensed Rights in consideration of Your
acceptance of these terms and conditions, and the Licensor grants You
such rights in consideration of benefits the Licensor receives from
making the Licensed Material available under these terms and
conditions.
Section 1 -- Definitions.
a. Adapted Material means material subject to Copyright and Similar
Rights that is derived from or based upon the Licensed Material
and in which the Licensed Material is translated, altered,
arranged, transformed, or otherwise modified in a manner requiring
permission under the Copyright and Similar Rights held by the
Licensor. For purposes of this Public License, where the Licensed
Material is a musical work, performance, or sound recording,
Adapted Material is always produced where the Licensed Material is
synched in timed relation with a moving image.
b. Adapter's License means the license You apply to Your Copyright
and Similar Rights in Your contributions to Adapted Material in
accordance with the terms and conditions of this Public License.
c. Copyright and Similar Rights means copyright and/or similar rights
closely related to copyright including, without limitation,
performance, broadcast, sound recording, and Sui Generis Database
Rights, without regard to how the rights are labeled or
categorized. For purposes of this Public License, the rights
specified in Section 2(b)(1)-(2) are not Copyright and Similar
Rights.
d. Effective Technological Measures means those measures that, in the
absence of proper authority, may not be circumvented under laws
fulfilling obligations under Article 11 of the WIPO Copyright
Treaty adopted on December 20, 1996, and/or similar international
agreements.
e. Exceptions and Limitations means fair use, fair dealing, and/or
any other exception or limitation to Copyright and Similar Rights
that applies to Your use of the Licensed Material.
f. Licensed Material means the artistic or literary work, database,
or other material to which the Licensor applied this Public
License.
g. Licensed Rights means the rights granted to You subject to the
terms and conditions of this Public License, which are limited to
all Copyright and Similar Rights that apply to Your use of the
Licensed Material and that the Licensor has authority to license.
h. Licensor means the individual(s) or entity(ies) granting rights
under this Public License.
i. NonCommercial means not primarily intended for or directed towards
commercial advantage or monetary compensation. For purposes of
this Public License, the exchange of the Licensed Material for
other material subject to Copyright and Similar Rights by digital
file-sharing or similar means is NonCommercial provided there is
no payment of monetary compensation in connection with the
exchange.
j. Share means to provide material to the public by any means or
process that requires permission under the Licensed Rights, such
as reproduction, public display, public performance, distribution,
dissemination, communication, or importation, and to make material
available to the public including in ways that members of the
public may access the material from a place and at a time
individually chosen by them.
k. Sui Generis Database Rights means rights other than copyright
resulting from Directive 96/9/EC of the European Parliament and of
the Council of 11 March 1996 on the legal protection of databases,
as amended and/or succeeded, as well as other essentially
equivalent rights anywhere in the world.
l. You means the individual or entity exercising the Licensed Rights
under this Public License. Your has a corresponding meaning.
Section 2 -- Scope.
a. License grant.
1. Subject to the terms and conditions of this Public License,
the Licensor hereby grants You a worldwide, royalty-free,
non-sublicensable, non-exclusive, irrevocable license to
exercise the Licensed Rights in the Licensed Material to:
a. reproduce and Share the Licensed Material, in whole or
in part, for NonCommercial purposes only; and
b. produce, reproduce, and Share Adapted Material for
NonCommercial purposes only.
2. Exceptions and Limitations. For the avoidance of doubt, where
Exceptions and Limitations apply to Your use, this Public
License does not apply, and You do not need to comply with
its terms and conditions.
3. Term. The term of this Public License is specified in Section
6(a).
4. Media and formats; technical modifications allowed. The
Licensor authorizes You to exercise the Licensed Rights in
all media and formats whether now known or hereafter created,
and to make technical modifications necessary to do so. The
Licensor waives and/or agrees not to assert any right or
authority to forbid You from making technical modifications
necessary to exercise the Licensed Rights, including
technical modifications necessary to circumvent Effective
Technological Measures. For purposes of this Public License,
simply making modifications authorized by this Section 2(a)
(4) never produces Adapted Material.
5. Downstream recipients.
a. Offer from the Licensor -- Licensed Material. Every
recipient of the Licensed Material automatically
receives an offer from the Licensor to exercise the
Licensed Rights under the terms and conditions of this
Public License.
b. No downstream restrictions. You may not offer or impose
any additional or different terms or conditions on, or
apply any Effective Technological Measures to, the
Licensed Material if doing so restricts exercise of the
Licensed Rights by any recipient of the Licensed
Material.
6. No endorsement. Nothing in this Public License constitutes or
may be construed as permission to assert or imply that You
are, or that Your use of the Licensed Material is, connected
with, or sponsored, endorsed, or granted official status by,
the Licensor or others designated to receive attribution as
provided in Section 3(a)(1)(A)(i).
b. Other rights.
1. Moral rights, such as the right of integrity, are not
licensed under this Public License, nor are publicity,
privacy, and/or other similar personality rights; however, to
the extent possible, the Licensor waives and/or agrees not to
assert any such rights held by the Licensor to the limited
extent necessary to allow You to exercise the Licensed
Rights, but not otherwise.
2. Patent and trademark rights are not licensed under this
Public License.
3. To the extent possible, the Licensor waives any right to
collect royalties from You for the exercise of the Licensed
Rights, whether directly or through a collecting society
under any voluntary or waivable statutory or compulsory
licensing scheme. In all other cases the Licensor expressly
reserves any right to collect such royalties, including when
the Licensed Material is used other than for NonCommercial
purposes.
Section 3 -- License Conditions.
Your exercise of the Licensed Rights is expressly made subject to the
following conditions.
a. Attribution.
1. If You Share the Licensed Material (including in modified
form), You must:
a. retain the following if it is supplied by the Licensor
with the Licensed Material:
i. identification of the creator(s) of the Licensed
Material and any others designated to receive
attribution, in any reasonable manner requested by
the Licensor (including by pseudonym if
designated);
ii. a copyright notice;
iii. a notice that refers to this Public License;
iv. a notice that refers to the disclaimer of
warranties;
v. a URI or hyperlink to the Licensed Material to the
extent reasonably practicable;
b. indicate if You modified the Licensed Material and
retain an indication of any previous modifications; and
c. indicate the Licensed Material is licensed under this
Public License, and include the text of, or the URI or
hyperlink to, this Public License.
2. You may satisfy the conditions in Section 3(a)(1) in any
reasonable manner based on the medium, means, and context in
which You Share the Licensed Material. For example, it may be
reasonable to satisfy the conditions by providing a URI or
hyperlink to a resource that includes the required
information.
3. If requested by the Licensor, You must remove any of the
information required by Section 3(a)(1)(A) to the extent
reasonably practicable.
4. If You Share Adapted Material You produce, the Adapter's
License You apply must not prevent recipients of the Adapted
Material from complying with this Public License.
Section 4 -- Sui Generis Database Rights.
Where the Licensed Rights include Sui Generis Database Rights that
apply to Your use of the Licensed Material:
a. for the avoidance of doubt, Section 2(a)(1) grants You the right
to extract, reuse, reproduce, and Share all or a substantial
portion of the contents of the database for NonCommercial purposes
only;
b. if You include all or a substantial portion of the database
contents in a database in which You have Sui Generis Database
Rights, then the database in which You have Sui Generis Database
Rights (but not its individual contents) is Adapted Material; and
c. You must comply with the conditions in Section 3(a) if You Share
all or a substantial portion of the contents of the database.
For the avoidance of doubt, this Section 4 supplements and does not
replace Your obligations under this Public License where the Licensed
Rights include other Copyright and Similar Rights.
Section 5 -- Disclaimer of Warranties and Limitation of Liability.
a. UNLESS OTHERWISE SEPARATELY UNDERTAKEN BY THE LICENSOR, TO THE
EXTENT POSSIBLE, THE LICENSOR OFFERS THE LICENSED MATERIAL AS-IS
AND AS-AVAILABLE, AND MAKES NO REPRESENTATIONS OR WARRANTIES OF
ANY KIND CONCERNING THE LICENSED MATERIAL, WHETHER EXPRESS,
IMPLIED, STATUTORY, OR OTHER. THIS INCLUDES, WITHOUT LIMITATION,
WARRANTIES OF TITLE, MERCHANTABILITY, FITNESS FOR A PARTICULAR
PURPOSE, NON-INFRINGEMENT, ABSENCE OF LATENT OR OTHER DEFECTS,
ACCURACY, OR THE PRESENCE OR ABSENCE OF ERRORS, WHETHER OR NOT
KNOWN OR DISCOVERABLE. WHERE DISCLAIMERS OF WARRANTIES ARE NOT
ALLOWED IN FULL OR IN PART, THIS DISCLAIMER MAY NOT APPLY TO YOU.
b. TO THE EXTENT POSSIBLE, IN NO EVENT WILL THE LICENSOR BE LIABLE
TO YOU ON ANY LEGAL THEORY (INCLUDING, WITHOUT LIMITATION,
NEGLIGENCE) OR OTHERWISE FOR ANY DIRECT, SPECIAL, INDIRECT,
INCIDENTAL, CONSEQUENTIAL, PUNITIVE, EXEMPLARY, OR OTHER LOSSES,
COSTS, EXPENSES, OR DAMAGES ARISING OUT OF THIS PUBLIC LICENSE OR
USE OF THE LICENSED MATERIAL, EVEN IF THE LICENSOR HAS BEEN
ADVISED OF THE POSSIBILITY OF SUCH LOSSES, COSTS, EXPENSES, OR
DAMAGES. WHERE A LIMITATION OF LIABILITY IS NOT ALLOWED IN FULL OR
IN PART, THIS LIMITATION MAY NOT APPLY TO YOU.
c. The disclaimer of warranties and limitation of liability provided
above shall be interpreted in a manner that, to the extent
possible, most closely approximates an absolute disclaimer and
waiver of all liability.
Section 6 -- Term and Termination.
a. This Public License applies for the term of the Copyright and
Similar Rights licensed here. However, if You fail to comply with
this Public License, then Your rights under this Public License
terminate automatically.
b. Where Your right to use the Licensed Material has terminated under
Section 6(a), it reinstates:
1. automatically as of the date the violation is cured, provided
it is cured within 30 days of Your discovery of the
violation; or
2. upon express reinstatement by the Licensor.
For the avoidance of doubt, this Section 6(b) does not affect any
right the Licensor may have to seek remedies for Your violations
of this Public License.
c. For the avoidance of doubt, the Licensor may also offer the
Licensed Material under separate terms or conditions or stop
distributing the Licensed Material at any time; however, doing so
will not terminate this Public License.
d. Sections 1, 5, 6, 7, and 8 survive termination of this Public
License.
Section 7 -- Other Terms and Conditions.
a. The Licensor shall not be bound by any additional or different
terms or conditions communicated by You unless expressly agreed.
b. Any arrangements, understandings, or agreements regarding the
Licensed Material not stated herein are separate from and
independent of the terms and conditions of this Public License.
Section 8 -- Interpretation.
a. For the avoidance of doubt, this Public License does not, and
shall not be interpreted to, reduce, limit, restrict, or impose
conditions on any use of the Licensed Material that could lawfully
be made without permission under this Public License.
b. To the extent possible, if any provision of this Public License is
deemed unenforceable, it shall be automatically reformed to the
minimum extent necessary to make it enforceable. If the provision
cannot be reformed, it shall be severed from this Public License
without affecting the enforceability of the remaining terms and
conditions.
c. No term or condition of this Public License will be waived and no
failure to comply consented to unless expressly agreed to by the
Licensor.
d. Nothing in this Public License constitutes or may be interpreted
as a limitation upon, or waiver of, any privileges and immunities
that apply to the Licensor or You, including from the legal
processes of any jurisdiction or authority.
=======================================================================
Creative Commons is not a party to its public
licenses. Notwithstanding, Creative Commons may elect to apply one of
its public licenses to material it publishes and in those instances
will be considered the “Licensor.” The text of the Creative Commons
public licenses is dedicated to the public domain under the CC0 Public
Domain Dedication. Except for the limited purpose of indicating that
material is shared under a Creative Commons public license or as
otherwise permitted by the Creative Commons policies published at
creativecommons.org/policies, Creative Commons does not authorize the
use of the trademark "Creative Commons" or any other trademark or logo
of Creative Commons without its prior written consent including,
without limitation, in connection with any unauthorized modifications
to any of its public licenses or any other arrangements,
understandings, or agreements concerning use of licensed material. For
the avoidance of doubt, this paragraph does not form part of the
public licenses.
Creative Commons may be contacted at creativecommons.org.
@@ -0,0 +1,17 @@
{
"pack": {
"pack_format": 64,
"supported_formats": [64, 81],
"min_format": 64,
"max_format": 81,
"description": "自然之需汉化包-玩梗版本"
},
"animationframework": {
"id": "needsofnature:zh_cn_nomeme",
"default_model_revision": 1,
"name": "自然之需玩梗汉化",
"version": "1.5.1",
"author": "LongCha & mystya(仅校对)",
"description": "此包无动画,仅为语言包"
}
}
Binary file not shown.

After

Width:  |  Height:  |  Size: 2.7 KiB

@@ -0,0 +1,412 @@
CC-BY-NC 4.0
https://creativecommons.org/licenses/by-nc/4.0/
Attribution-NonCommercial 4.0 International
=======================================================================
Creative Commons Corporation ("Creative Commons") is not a law firm and
does not provide legal services or legal advice. Distribution of
Creative Commons public licenses does not create a lawyer-client or
other relationship. Creative Commons makes its licenses and related
information available on an "as-is" basis. Creative Commons gives no
warranties regarding its licenses, any material licensed under their
terms and conditions, or any related information. Creative Commons
disclaims all liability for damages resulting from their use to the
fullest extent possible.
Using Creative Commons Public Licenses
Creative Commons public licenses provide a standard set of terms and
conditions that creators and other rights holders may use to share
original works of authorship and other material subject to copyright
and certain other rights specified in the public license below. The
following considerations are for informational purposes only, are not
exhaustive, and do not form part of our licenses.
Considerations for licensors: Our public licenses are
intended for use by those authorized to give the public
permission to use material in ways otherwise restricted by
copyright and certain other rights. Our licenses are
irrevocable. Licensors should read and understand the terms
and conditions of the license they choose before applying it.
Licensors should also secure all rights necessary before
applying our licenses so that the public can reuse the
material as expected. Licensors should clearly mark any
material not subject to the license. This includes other CC-
licensed material, or material used under an exception or
limitation to copyright. More considerations for licensors:
wiki.creativecommons.org/Considerations_for_licensors
Considerations for the public: By using one of our public
licenses, a licensor grants the public permission to use the
licensed material under specified terms and conditions. If
the licensor's permission is not necessary for any reason--for
example, because of any applicable exception or limitation to
copyright--then that use is not regulated by the license. Our
licenses grant only permissions under copyright and certain
other rights that a licensor has authority to grant. Use of
the licensed material may still be restricted for other
reasons, including because others have copyright or other
rights in the material. A licensor may make special requests,
such as asking that all changes be marked or described.
Although not required by our licenses, you are encouraged to
respect those requests where reasonable. More considerations
for the public:
wiki.creativecommons.org/Considerations_for_licensees
=======================================================================
Creative Commons Attribution-NonCommercial 4.0 International Public
License
By exercising the Licensed Rights (defined below), You accept and agree
to be bound by the terms and conditions of this Creative Commons
Attribution-NonCommercial 4.0 International Public License ("Public
License"). To the extent this Public License may be interpreted as a
contract, You are granted the Licensed Rights in consideration of Your
acceptance of these terms and conditions, and the Licensor grants You
such rights in consideration of benefits the Licensor receives from
making the Licensed Material available under these terms and
conditions.
Section 1 -- Definitions.
a. Adapted Material means material subject to Copyright and Similar
Rights that is derived from or based upon the Licensed Material
and in which the Licensed Material is translated, altered,
arranged, transformed, or otherwise modified in a manner requiring
permission under the Copyright and Similar Rights held by the
Licensor. For purposes of this Public License, where the Licensed
Material is a musical work, performance, or sound recording,
Adapted Material is always produced where the Licensed Material is
synched in timed relation with a moving image.
b. Adapter's License means the license You apply to Your Copyright
and Similar Rights in Your contributions to Adapted Material in
accordance with the terms and conditions of this Public License.
c. Copyright and Similar Rights means copyright and/or similar rights
closely related to copyright including, without limitation,
performance, broadcast, sound recording, and Sui Generis Database
Rights, without regard to how the rights are labeled or
categorized. For purposes of this Public License, the rights
specified in Section 2(b)(1)-(2) are not Copyright and Similar
Rights.
d. Effective Technological Measures means those measures that, in the
absence of proper authority, may not be circumvented under laws
fulfilling obligations under Article 11 of the WIPO Copyright
Treaty adopted on December 20, 1996, and/or similar international
agreements.
e. Exceptions and Limitations means fair use, fair dealing, and/or
any other exception or limitation to Copyright and Similar Rights
that applies to Your use of the Licensed Material.
f. Licensed Material means the artistic or literary work, database,
or other material to which the Licensor applied this Public
License.
g. Licensed Rights means the rights granted to You subject to the
terms and conditions of this Public License, which are limited to
all Copyright and Similar Rights that apply to Your use of the
Licensed Material and that the Licensor has authority to license.
h. Licensor means the individual(s) or entity(ies) granting rights
under this Public License.
i. NonCommercial means not primarily intended for or directed towards
commercial advantage or monetary compensation. For purposes of
this Public License, the exchange of the Licensed Material for
other material subject to Copyright and Similar Rights by digital
file-sharing or similar means is NonCommercial provided there is
no payment of monetary compensation in connection with the
exchange.
j. Share means to provide material to the public by any means or
process that requires permission under the Licensed Rights, such
as reproduction, public display, public performance, distribution,
dissemination, communication, or importation, and to make material
available to the public including in ways that members of the
public may access the material from a place and at a time
individually chosen by them.
k. Sui Generis Database Rights means rights other than copyright
resulting from Directive 96/9/EC of the European Parliament and of
the Council of 11 March 1996 on the legal protection of databases,
as amended and/or succeeded, as well as other essentially
equivalent rights anywhere in the world.
l. You means the individual or entity exercising the Licensed Rights
under this Public License. Your has a corresponding meaning.
Section 2 -- Scope.
a. License grant.
1. Subject to the terms and conditions of this Public License,
the Licensor hereby grants You a worldwide, royalty-free,
non-sublicensable, non-exclusive, irrevocable license to
exercise the Licensed Rights in the Licensed Material to:
a. reproduce and Share the Licensed Material, in whole or
in part, for NonCommercial purposes only; and
b. produce, reproduce, and Share Adapted Material for
NonCommercial purposes only.
2. Exceptions and Limitations. For the avoidance of doubt, where
Exceptions and Limitations apply to Your use, this Public
License does not apply, and You do not need to comply with
its terms and conditions.
3. Term. The term of this Public License is specified in Section
6(a).
4. Media and formats; technical modifications allowed. The
Licensor authorizes You to exercise the Licensed Rights in
all media and formats whether now known or hereafter created,
and to make technical modifications necessary to do so. The
Licensor waives and/or agrees not to assert any right or
authority to forbid You from making technical modifications
necessary to exercise the Licensed Rights, including
technical modifications necessary to circumvent Effective
Technological Measures. For purposes of this Public License,
simply making modifications authorized by this Section 2(a)
(4) never produces Adapted Material.
5. Downstream recipients.
a. Offer from the Licensor -- Licensed Material. Every
recipient of the Licensed Material automatically
receives an offer from the Licensor to exercise the
Licensed Rights under the terms and conditions of this
Public License.
b. No downstream restrictions. You may not offer or impose
any additional or different terms or conditions on, or
apply any Effective Technological Measures to, the
Licensed Material if doing so restricts exercise of the
Licensed Rights by any recipient of the Licensed
Material.
6. No endorsement. Nothing in this Public License constitutes or
may be construed as permission to assert or imply that You
are, or that Your use of the Licensed Material is, connected
with, or sponsored, endorsed, or granted official status by,
the Licensor or others designated to receive attribution as
provided in Section 3(a)(1)(A)(i).
b. Other rights.
1. Moral rights, such as the right of integrity, are not
licensed under this Public License, nor are publicity,
privacy, and/or other similar personality rights; however, to
the extent possible, the Licensor waives and/or agrees not to
assert any such rights held by the Licensor to the limited
extent necessary to allow You to exercise the Licensed
Rights, but not otherwise.
2. Patent and trademark rights are not licensed under this
Public License.
3. To the extent possible, the Licensor waives any right to
collect royalties from You for the exercise of the Licensed
Rights, whether directly or through a collecting society
under any voluntary or waivable statutory or compulsory
licensing scheme. In all other cases the Licensor expressly
reserves any right to collect such royalties, including when
the Licensed Material is used other than for NonCommercial
purposes.
Section 3 -- License Conditions.
Your exercise of the Licensed Rights is expressly made subject to the
following conditions.
a. Attribution.
1. If You Share the Licensed Material (including in modified
form), You must:
a. retain the following if it is supplied by the Licensor
with the Licensed Material:
i. identification of the creator(s) of the Licensed
Material and any others designated to receive
attribution, in any reasonable manner requested by
the Licensor (including by pseudonym if
designated);
ii. a copyright notice;
iii. a notice that refers to this Public License;
iv. a notice that refers to the disclaimer of
warranties;
v. a URI or hyperlink to the Licensed Material to the
extent reasonably practicable;
b. indicate if You modified the Licensed Material and
retain an indication of any previous modifications; and
c. indicate the Licensed Material is licensed under this
Public License, and include the text of, or the URI or
hyperlink to, this Public License.
2. You may satisfy the conditions in Section 3(a)(1) in any
reasonable manner based on the medium, means, and context in
which You Share the Licensed Material. For example, it may be
reasonable to satisfy the conditions by providing a URI or
hyperlink to a resource that includes the required
information.
3. If requested by the Licensor, You must remove any of the
information required by Section 3(a)(1)(A) to the extent
reasonably practicable.
4. If You Share Adapted Material You produce, the Adapter's
License You apply must not prevent recipients of the Adapted
Material from complying with this Public License.
Section 4 -- Sui Generis Database Rights.
Where the Licensed Rights include Sui Generis Database Rights that
apply to Your use of the Licensed Material:
a. for the avoidance of doubt, Section 2(a)(1) grants You the right
to extract, reuse, reproduce, and Share all or a substantial
portion of the contents of the database for NonCommercial purposes
only;
b. if You include all or a substantial portion of the database
contents in a database in which You have Sui Generis Database
Rights, then the database in which You have Sui Generis Database
Rights (but not its individual contents) is Adapted Material; and
c. You must comply with the conditions in Section 3(a) if You Share
all or a substantial portion of the contents of the database.
For the avoidance of doubt, this Section 4 supplements and does not
replace Your obligations under this Public License where the Licensed
Rights include other Copyright and Similar Rights.
Section 5 -- Disclaimer of Warranties and Limitation of Liability.
a. UNLESS OTHERWISE SEPARATELY UNDERTAKEN BY THE LICENSOR, TO THE
EXTENT POSSIBLE, THE LICENSOR OFFERS THE LICENSED MATERIAL AS-IS
AND AS-AVAILABLE, AND MAKES NO REPRESENTATIONS OR WARRANTIES OF
ANY KIND CONCERNING THE LICENSED MATERIAL, WHETHER EXPRESS,
IMPLIED, STATUTORY, OR OTHER. THIS INCLUDES, WITHOUT LIMITATION,
WARRANTIES OF TITLE, MERCHANTABILITY, FITNESS FOR A PARTICULAR
PURPOSE, NON-INFRINGEMENT, ABSENCE OF LATENT OR OTHER DEFECTS,
ACCURACY, OR THE PRESENCE OR ABSENCE OF ERRORS, WHETHER OR NOT
KNOWN OR DISCOVERABLE. WHERE DISCLAIMERS OF WARRANTIES ARE NOT
ALLOWED IN FULL OR IN PART, THIS DISCLAIMER MAY NOT APPLY TO YOU.
b. TO THE EXTENT POSSIBLE, IN NO EVENT WILL THE LICENSOR BE LIABLE
TO YOU ON ANY LEGAL THEORY (INCLUDING, WITHOUT LIMITATION,
NEGLIGENCE) OR OTHERWISE FOR ANY DIRECT, SPECIAL, INDIRECT,
INCIDENTAL, CONSEQUENTIAL, PUNITIVE, EXEMPLARY, OR OTHER LOSSES,
COSTS, EXPENSES, OR DAMAGES ARISING OUT OF THIS PUBLIC LICENSE OR
USE OF THE LICENSED MATERIAL, EVEN IF THE LICENSOR HAS BEEN
ADVISED OF THE POSSIBILITY OF SUCH LOSSES, COSTS, EXPENSES, OR
DAMAGES. WHERE A LIMITATION OF LIABILITY IS NOT ALLOWED IN FULL OR
IN PART, THIS LIMITATION MAY NOT APPLY TO YOU.
c. The disclaimer of warranties and limitation of liability provided
above shall be interpreted in a manner that, to the extent
possible, most closely approximates an absolute disclaimer and
waiver of all liability.
Section 6 -- Term and Termination.
a. This Public License applies for the term of the Copyright and
Similar Rights licensed here. However, if You fail to comply with
this Public License, then Your rights under this Public License
terminate automatically.
b. Where Your right to use the Licensed Material has terminated under
Section 6(a), it reinstates:
1. automatically as of the date the violation is cured, provided
it is cured within 30 days of Your discovery of the
violation; or
2. upon express reinstatement by the Licensor.
For the avoidance of doubt, this Section 6(b) does not affect any
right the Licensor may have to seek remedies for Your violations
of this Public License.
c. For the avoidance of doubt, the Licensor may also offer the
Licensed Material under separate terms or conditions or stop
distributing the Licensed Material at any time; however, doing so
will not terminate this Public License.
d. Sections 1, 5, 6, 7, and 8 survive termination of this Public
License.
Section 7 -- Other Terms and Conditions.
a. The Licensor shall not be bound by any additional or different
terms or conditions communicated by You unless expressly agreed.
b. Any arrangements, understandings, or agreements regarding the
Licensed Material not stated herein are separate from and
independent of the terms and conditions of this Public License.
Section 8 -- Interpretation.
a. For the avoidance of doubt, this Public License does not, and
shall not be interpreted to, reduce, limit, restrict, or impose
conditions on any use of the Licensed Material that could lawfully
be made without permission under this Public License.
b. To the extent possible, if any provision of this Public License is
deemed unenforceable, it shall be automatically reformed to the
minimum extent necessary to make it enforceable. If the provision
cannot be reformed, it shall be severed from this Public License
without affecting the enforceability of the remaining terms and
conditions.
c. No term or condition of this Public License will be waived and no
failure to comply consented to unless expressly agreed to by the
Licensor.
d. Nothing in this Public License constitutes or may be interpreted
as a limitation upon, or waiver of, any privileges and immunities
that apply to the Licensor or You, including from the legal
processes of any jurisdiction or authority.
=======================================================================
Creative Commons is not a party to its public
licenses. Notwithstanding, Creative Commons may elect to apply one of
its public licenses to material it publishes and in those instances
will be considered the “Licensor.” The text of the Creative Commons
public licenses is dedicated to the public domain under the CC0 Public
Domain Dedication. Except for the limited purpose of indicating that
material is shared under a Creative Commons public license or as
otherwise permitted by the Creative Commons policies published at
creativecommons.org/policies, Creative Commons does not authorize the
use of the trademark "Creative Commons" or any other trademark or logo
of Creative Commons without its prior written consent including,
without limitation, in connection with any unauthorized modifications
to any of its public licenses or any other arrangements,
understandings, or agreements concerning use of licensed material. For
the avoidance of doubt, this paragraph does not form part of the
public licenses.
Creative Commons may be contacted at creativecommons.org.
@@ -0,0 +1,17 @@
{
"pack": {
"pack_format": 64,
"supported_formats": [64, 81],
"min_format": 64,
"max_format": 81,
"description": "自然之需汉化包-无玩梗版本"
},
"animationframework": {
"id": "needsofnature:zh_cn_nomeme",
"default_model_revision": 1,
"name": "自然之需无梗汉化",
"version": "1.5.1",
"author": "mystya & LongCha",
"description": "此包无动画,仅为语言包"
}
}
Binary file not shown.

After

Width:  |  Height:  |  Size: 3.4 KiB

Executable
+119
View File
@@ -0,0 +1,119 @@
#!/usr/bin/env ts-node
import fs from 'fs';
// a sample tool that merge (zh|en)(sfw|nsfw) ver together for edit faster
// for other language translator: if you need to use this script, just edit `targetLangFiles` and `workFile`.
const targetLangFiles: LanguageInstance[] = [
{suffix: "en_us_nsfw", file: "NSFW (Default Pack)/en_us.json", overrideSuffix: "en_us_sfw", ro: true},
{suffix: "en_us_sfw", file: "SFW (baked in NoN)/en_us.json", ro: true},
{suffix: "zh_cn_nsfw", file: "NSFW (Default Pack)/zh_cn.json", overrideSuffix: "zh_cn_sfw"},
{suffix: "zh_cn_nsfw_meme", file: "zh_cn_meme.json", overrideSuffix: "zh_cn_sfw"},
{suffix: "zh_cn_sfw", file: "SFW (baked in NoN)/zh_cn.json"}
]
const workFile = "zh_cn.json"
type LanguageInstance = {
suffix: string,
file: string,
data?: Record<string, string>,
outputBuffer?: KVPair[];
overrideSuffix?: string,
override?: LanguageInstance,
ro?: boolean // read only, don't edit.
}
const mainLangFile = "SFW (baked in NoN)/en_us.json";
const KEEP_SAME_OVERRIDE_LINES = !(process.env.KEEP_SAME_OVERRIDE_LINES ?? "").match(/^(0|false)?$/i)
if(KEEP_SAME_OVERRIDE_LINES) console.warn("enabled KEEP_SAME_OVERRIDE_LINES, same lines will not be removed")
const targetLangFilesBySuffix: Record<string, LanguageInstance> = {}
for (let l of targetLangFiles) {
if (!l.suffix.match(/^[a-z0-9-_]+$/i)) throw new Error(`bad Suffix: ${JSON.stringify(l.suffix)} that not match ^[a-z0-9-_]+$ (ignore case)`)
targetLangFilesBySuffix[l.suffix] = l
}
for (let l of targetLangFiles) {
if (l.overrideSuffix) l.override = targetLangFilesBySuffix[l.overrideSuffix]
}
type KVPair = [string, string];
function parseOrdered(src: string): KVPair[] {
const o: KVPair[] = [];
JSON.parse(src, (k, v) => {
if (k === '') return v
if (typeof k !== "string" || typeof v !== "string") throw new Error(`unexpected k/v:${JSON.stringify([k, v])}`)
o.push([k, v])
return v;
});
return o;
}
function stringify(data: KVPair[]): string {
const s = JSON.stringify
const body = data.map(([k, v]) => ` ${s(k)}: ${s(v)}`).join(",\n")
return `{\n${body}\n}\n`
}
const keyOrder = parseOrdered(fs.readFileSync(mainLangFile, "utf-8")).map(([k, v]) => k)
function genMergedLang(): void {
for (const l of targetLangFiles) {
l.data = JSON.parse(fs.readFileSync(l.file, "utf-8")) as Record<string, string>
}
const output: KVPair[] = []
for (let key of keyOrder) {
for (let l of targetLangFiles) {
let value = l.data?.[key];
if (l.override?.data?.[key] === value) value = undefined
if (typeof value === "undefined" && KEEP_SAME_OVERRIDE_LINES) value = l.override?.data?.[key]
if (value) output.push([`${key}.${l.suffix}`, value])
}
}
fs.writeFileSync(workFile, stringify(output))
}
function writeBackLang() {
const mergedKeys: Record<string, string> = JSON.parse(fs.readFileSync(workFile, "utf-8"));
for (let l of targetLangFiles) {
l.outputBuffer = []
}
for (let key of keyOrder) {
for (let l of targetLangFiles) {
let s = mergedKeys[`${key}.${l.suffix}`]
if (typeof s !== "string" && KEEP_SAME_OVERRIDE_LINES && l.override?.suffix) s = mergedKeys[`${key}.${l.override.suffix}`]
if (typeof s === "string") l.outputBuffer?.push([key, s])
}
}
for (let l of targetLangFiles) {
if (l.ro || !l.outputBuffer) continue
fs.writeFileSync(l.file, stringify(l.outputBuffer))
}
}
;(() => {
let files = [targetLangFiles.map(l => l.file), workFile].flat()
let latestFile = files.reduce<{ mtime: Date, fileName: string } | null>(
(latest, file) => {
if (!fs.existsSync(file)) return latest
let stat = fs.statSync(file);
if (!latest) return {mtime: stat.mtime, fileName: file};
return stat.mtime > latest.mtime ? {mtime: stat.mtime, fileName: file} : latest
}, null);
if (!latestFile) return
if (latestFile.fileName === workFile) {
console.log("write back to split versions")
writeBackLang()
} else {
console.log("generate the merge version");
genMergedLang()
}
})();
Executable
+15
View File
@@ -0,0 +1,15 @@
#!/usr/bin/env bash
set -euo pipefail
cd -- "$(dirname -- $0)"
packname="non-pack-meme(longcha's)"
rm -rf build/"$packname"
cp -a "lang pack template/$packname" build/
cp zh_cn_meme.json build/non-pack-meme"(longcha's)"/assets/needsofnature/lang/zh_cn.json
(cd build/"$packname"/ && zip -r ../"$packname".zip .)
+29
View File
@@ -0,0 +1,29 @@
{
"name": "NoN-Translations",
"lockfileVersion": 3,
"requires": true,
"packages": {
"": {
"devDependencies": {
"@types/node": "^26.6.2"
}
},
"node_modules/@types/node": {
"version": "26.6.2",
"resolved": "https://registry.npmjs.org/@types/node/-/node-26.6.2.tgz",
"integrity": "sha512-X1P21scMv4zGKLYqjdGjaKa7COa0RKVYYZZN/NfvLQ1JegxFhdhpZG/Lyn8AXx6CDUavKAd11v6BvfpkDByK8g==",
"dev": true,
"license": "MIT",
"dependencies": {
"undici-types": "~8.9.0"
}
},
"node_modules/undici-types": {
"version": "8.9.0",
"resolved": "https://registry.npmjs.org/undici-types/-/undici-types-8.9.0.tgz",
"integrity": "sha512-KTDyRTYX8sWmKXAikPHHSyc63CRPETMctyjKFupcC6OBLXT3xsN0e9aF7m+mIXutFWpUXuedtowG7iLOzp0kQg==",
"dev": true,
"license": "MIT"
}
}
}
+5
View File
@@ -0,0 +1,5 @@
{
"devDependencies": {
"@types/node": "^26.6.2"
}
}
+6
View File
@@ -0,0 +1,6 @@
{
"compilerOptions": {
"module": "nodenext",
"types": ["node"]
}
}
+3073
View File
File diff suppressed because it is too large Load Diff
+38
View File
@@ -0,0 +1,38 @@
{
"item.needsofnature.iron_plug": "钻石肛塞",
"item.needsofnature.protector_v": "小穴保护器(女用防交配神器)",
"item.needsofnature.protector_a": "后庭保护器(男用防后入神器)",
"item.needsofnature.protector_av": "通用保护器(人售保险)",
"item.needsofnature.diaphragm": "当幸福来敲门",
"advancements.needsofnature.root.description": "丛林变得焦躁不安……",
"advancements.needsofnature.filled_to_the_brim.title": "热腾腾的",
"advancements.needsofnature.first_pregnancy.description": "一个新生命悄然萌芽。",
"advancements.needsofnature.mother_nature.title": "好女孩",
"advancements.needsofnature.messed_up.title": "这是人体彩绘!",
"advancements.needsofnature.messed_up.description": "满身污渍,AVM三个部位完全充满污垢。",
"advancements.needsofnature.group_activity.title": "这是共斗游戏?",
"advancements.needsofnature.tossed_around.title": "战败cg享受者",
"advancements.needsofnature.tossed_around.description": "连续触发五次战败动画。你就是故意来看动画的吧?",
"advancements.needsofnature.collectors_habit.title": "禁止套娃!",
"advancements.needsofnature.field_research.title": "赴一线进行实地调研",
"advancements.needsofnature.bad_idea_beacon.title": "电脑配件配送员",
"advancements.needsofnature.udderly_unfortunate.title": "《以撒的结合:重开》",
"advancements.needsofnature.emergency_snack.title": "酸面包",
"advancements.needsofnature.emergency_snack.description": "在饥饿难耐时,喝下精液。味道有点腥。",
"advancements.needsofnature.stable_diet.title": "百家饭",
"advancements.needsofnature.acquire_hardware.title": "刹那抓住了未来",
"advancements.needsofnature.bad.title": "静心",
"advancements.needsofnature.bad.description": "对着发情满级的生物用喷液枪,喷水。",
"advancements.needsofnature.measured_dose.title": "电脑配件",
"advancements.needsofnature.measured_dose.description": "有些药水也不一定非得喝下去。",
"advancements.needsofnature.special_delivery.title": "全弹发射",
"advancements.needsofnature.special_delivery.description": "用你体内的“鲜奶”给别人做一次面部护理。\n\n对方没躲开就算成功喵。",
"advancements.needsofnature.sweet_tooth.title": "哈基米爱好者",
"advancements.needsofnature.sweet_tooth.description": "把蜂蜜瓶装填进喷液枪里,然后瞄准关键部位。",
"advancements.needsofnature.shocking_experience.title": "触核电,轻而易举啊!",
"advancements.needsofnature.shocking_experience.description": "与一只闪电苦力怕亲密接触。感受它体内电光火石的一哆嗦~。",
"advancements.needsofnature.baby_on_board.description": "孕期骑上任意载具。震得宝宝都在里面翻跟头了喵~小心别把羊水颠出来哟。",
"advancements.needsofnature.head_in_the_clouds.title": "熙熙攘攘我们的城市",
"advancements.needsofnature.absolute_bottom.title": "我在奈落之底等你",
"advancements.needsofnature.dimensional_traveler.title": "跟我一起迷失吧"
}