季节

季节

四个可自定义的季节。每个季节有不同的视觉风格,季节变化影响游戏玩法。冬季有结冰的水面与浮冰。不同的天气、袭击、光照和商人商品。春季特有的新草种。对帧数影响极小。

模型和纹理

如果你遇到 FPS 问题

如果你注意到 FPS 下降,你的 GPU 可能处理更多负载。可以尝试在 Valheim 的 Steam 启动选项中添加以下参数:

-gfx-enable-gfx-jobs -gfx-enable-native-gfx-jobs

这样可以为游戏解锁更多 GPU 性能,可能会有帮助。这比编辑 boot.config 文件更方便,并且可以安全尝试。

如果你使用了 RenderLimits 模组,并将“距离区域”设置大于 10,可能会在树木密集的区域导致明显的 FPS 损失。仅靠模组工具无法进一步优化。

每个季节可以自定义的内容

  • 环境:添加新天气类型、修改天气属性或移除天气。
  • 随机事件:调整事件频率、移除事件或更改生物群落限制。
  • 光照:控制不同时段和室内的亮度及雾密度。
  • 属性:修改恢复速度、耐力消耗、技能等级、技能获取速度、伤害修正等。
  • 季节设置:调整季节长度、夜晚长度、产出速率和其他乘数。
  • 商人物品:添加季节性商人库存以平衡资源获取。

配置模组

该模组通过 BepInEx 配置使用通用设置。

自定义设置

自定义季节设置使用 JSON 文件定义。 模组会在 BepInEx config 文件夹内创建一个 shudnal.Seasons 目录。默认和自定义设置均存储于此。

默认设置

每次加载世界时,模组会生成一个包含默认值文件的 默认设置 文件夹。

BepInEx\config\shudnal.Seasons\Default settings

安装模组后,你至少需要启动世界一次以生成这些默认文件。

重要提示:不要直接编辑 默认设置 文件夹内的文件。任何更改都会在你下次加载世界或更新模组时被覆盖。

如何创建自定义设置:

  1. 打开文件夹:BepInEx\config\shudnal.Seasons\Default settings
  2. 复制你要编辑的文件(例如 Winter.json)。
  3. 将其粘贴到主 shudnal.Seasons 配置文件夹中:BepInEx\config\shudnal.Seasons\
  4. 根据需要编辑复制的文件。

如果你的更改已应用,你会在 BepInEx 控制台或 LogOutput.log 中看到此消息:

[Info : Seasons] Settings updated: Winter

注意:自定义文件中未定义的任何属性将使用 默认设置 中的值。这样可以保持你的自定义文件尽可能精简,只包含你想要更改的设置。

示例:更改冬季长度

要将冬季从 10 天改为持续 20 天:

  1. BepInEx\config\shudnal.Seasons\Default settings 复制 Winter.jsonBepInEx\config\shudnal.Seasons\
  2. 打开复制后的文件,修改:
    "daysInSeason": 10
    
    为:
    "daysInSeason": 20
    
  3. 保存文件。当季节系统更新时,更改将在游戏中生效。

纹理重新着色

该模组不包含内置纹理;它们会在首次启动时生成。 如果你不喜欢默认设置,可以调整缓存设置。缓存设置在登录时从服务器同步。

纹理及其应用规则存储在:

BepInEx\cache\shudnal.Seasons

如果你遇到任何纹理问题,或只想重建缓存,可以安全地删除此文件夹内的文件。

默认情况下,缓存保存为不可读的二进制文件以加快加载速度。它也可以保存为 JSON 和 PNG 文件。

你可以使用自定义纹理部分描述的方法,用你自己的自定义纹理替换生成的纹理。无需修改缓存文件夹中的文件。

该模组的主要思想是改变原版颜色,而不改变对象的其他属性。 重新着色设置

季节性设置

基本的季节性设置位于 JSON 文件中:Spring.json Summer.json Fall.json Winter.json 请参阅上面的“默认设置”和自定义说明。

设置说明:

  • daysInSeason (整型, 默认 10):季节长度(天数)。更改此值会立即重新计算当前日期和季节。
  • nightLength (整型, 默认 30):夜间占一天时间的百分比。30 表示一天中 30% 的时间是夜晚。
  • torchAsFiresource (布尔值):使火把提供温暖,但耐久度消耗更快。
  • torchDurabilityDrain (浮点数):默认消耗为 0.0333;取暖火把的消耗速度为 0.1。
  • plantsGrowthMultiplier (浮点数):植物和可采集物生长速度的乘数。
  • beehiveProductionMultiplier (浮点数):蜂箱生产速度的乘数。
  • foodDrainMultiplier (浮点数):食物消耗速度的乘数。
  • staminaDrainMultiplier (浮点数):影响所有消耗耐力的动作。
  • fireplaceDrainMultiplier (浮点数):壁炉、烤箱和浴池的木材消耗乘数。
  • sapCollectingSpeedMultiplier (浮点数):收集树液速度的乘数。
  • rainProtection (布尔值):防止建筑构件受到天气损害。
  • woodFromTreesMultiplier (浮点数):从树木和灌木中获得木材的乘数。
  • windIntensityMultiplier (浮点数):风力乘数(影响船只和风车)。
  • restedBuffDurationMultiplier (浮点数):休息增益持续时间的乘数。
  • livestockProcreationMultiplier (浮点数):影响生物的繁殖速度和条件。
  • overheatIn2WarmClothes (布尔值):穿戴两件防霜冻护甲部件会施加“温暖”效果,减少 20% 的耐力和 Eitr 恢复。
  • meatFromAnimalsMultiplier (浮点数):从动物身上获取肉类的乘数。
  • treesRegrowthChance (浮点数):树桩被破坏后留下树苗的几率。

默认设置背后的理念:

  • 默认季节长度为 10 天,平衡了挑战和季节性收益。
  • 夏夜短、冬夜长,反映了斯堪的纳维亚的周期。冬季即使在夜晚也有白雪,使环境看起来更亮。
  • 植物在秋季生长缓慢,冬季停止生长,但在春季和夏季生长迅速。
  • 蜜蜂在冬季休眠,但在夏季和秋季更努力地工作。
  • 冬季的雪不会对建筑物造成损害。
  • 夏季和秋季风更大。
  • 如果在夏季穿两件保暖衣物会过热。更换你的披风或食用冰霜之眼来避免过热。
  • 在秋季和冬季的某些时刻,你可能会面临冻伤。使用火把取暖很方便。
  • 春季和夏季需要的柴火较少,但秋季和冬季需要更多。
  • 在冬季更难保持休息状态。

季节性环境

默认的原版环境数据存储在:

  • Default environments.json(天气列表)
  • Default biome environments.json(按生物群落的天气分布)

这些文件仅供参考。

环境结构:

  • m_default (布尔值):默认天气("Clear" 为 true)。
  • m_name (字符串):环境名称,必须唯一。
  • m_isWet (布尔值):角色获得潮湿减益。
  • m_isFreezing (布尔值):角色获得冻伤减益。
  • m_isFreezingAtNight (布尔值):仅在夜晚获得冻伤减益。
  • m_isCold (布尔值):角色获得寒冷减益。
  • m_isColdAtNight (布尔值):仅在夜晚获得寒冷减益。
  • m_alwaysDark (布尔值):使所有颜色变暗(例如沼泽)。
  • m_psystems (字符串):粒子系统名称(雾、雨、雪等)。以逗号分隔。
  • m_ambientLoop (字符串):循环播放的环境音效(风声、雪声、雨声等)。 自定义属性:
  • m_cloneFrom (字符串):应从哪个原版环境属性复制到自定义环境。

生物群落环境

生物群落环境文件定义了每个生物群落的天气分布。

自定义的生物群落环境设置:

  • m_name (字符串):生物群落设置的名称,大多数情况下是生物群落名称。
  • m_environments:由名称和权重表示的环境数组。环境的权重越大,表示这种天气出现的频率越高。

天气是根据所有客户端通用的伪随机值从环境列表中选择的。

自定义环境

文件 Custom environments.json 定义了自定义天气,类似于环境属性,但仅列出更改。 主要是原版天气的季节性变体。

自定义音乐

将音乐文件放置在:

BepInEx\config\shudnal.Seasons\Custom music

任何 Unity 兼容的音频文件都将作为音乐曲目加载。创建一个与你的曲目同名的 .json 文件来定义设置。

例如,曲目 "runichills.mp3" 将被作为 "runichills" 音乐曲目加载。它会尝试查找 "runichills.json" 设置文件,否则将使用默认设置。 要为自定义音乐曲目创建设置,请创建一个扩展名为 .json 且与音乐曲目同名的文件。

示例(默认设置):

{
  "m_enabled": true,
  "m_volume": 1.0,
  "m_fadeInTime": 3.0,
  "m_alwaysFadeout": false,
  "m_loop": true,
  "m_resume": true,
  "m_ambientMusic": true
}
  • m_enabled (布尔值) - 音乐已启用
  • m_volume (浮点数) - 该曲目的音量级别
  • m_fadeInTime (浮点数) - 曲目开始时音量逐渐增大的时间(秒)
  • m_alwaysFadeout (布尔值) - 无论是否与另一首曲目交叉,该曲目将始终有淡出效果
  • m_loop (布尔值) - 如果启用,曲目将连续播放;如果禁用,则仅播放一次,并随机开始间隔
  • m_resume (布尔值) - 从之前停止的位置恢复曲目播放
  • m_ambientMusic (布尔值) - 如果设置为 true,则在游戏设置启用“连续音乐”时循环播放该曲目

音乐曲目和 json 设置文件应通过模组包或手动方式与所有客户端共享。否则音乐将无法播放。

自定义生物群落环境

文件 "Custom Biome Environments.json" 包含默认的自定义环境及其在季节之间的分布。

在属性 "add" 中设置的环境将被添加到原版生物群落环境的 m_environments 列表中。在属性 "replace" 中设置的环境将替换原版生物群落环境 m_environments 列表中具有相同权重的 "m_environment"。在属性 "remove" 中设置的环境将从生物群落环境中完全移除。

使用 Add 向生物群落环境添加全新的天气。如果你制作了天气的季节性变体(例如将草地 "LightRain" 天气中的粒子系统从 "Rain" 改为 "Snow"),请使用 Replace,这意味着以前的雨天变成了雪天,而其他参数不变。使用 Remove 来移除某些天气。

默认设置背后的一些解释和想法

  • 冬季变体中的降雨成分已替换为降雪
  • 添加了没有潮湿状态的夏季沼泽天气
  • 添加了夏季沼泽暗地天气(稍微不同的配色方案)
  • 冬季天气变体结合了冻结状态(夜晚或在潮湿的雨/风暴中冻结)
  • 添加了夜间不寒冷的夏季天气变体
  • 夏季增加更多晴朗天气
  • 秋季增加更多雨天
  • 春季为默认天气
  • 添加了冬季天气的黑暗变体(以代表现实中的阴天)

随机事件

默认的原版随机事件保存在 "Default events.json" 中。它们代表事件的名称和生物群落分布。权重值可以忽略。此文件仅供参考,用于复制事件名称和生物群落。

自定义事件

文件 "Custom events.json" 包含默认的自定义事件及其在季节之间的分布。其他所有设置在季节逻辑中没有实际意义,因此被省略。

事件结构:

  • m_name (字符串) - 具有此名称的事件将被修改
  • m_biomes (字符串) - 可以触发该事件的生物群落列表,以逗号分隔
  • m_weight (整型) - 该事件被触发的几率。0 表示从不,1 表示通常概率

这些参数仅在选择可能的事件时起作用。

默认设置背后的一些解释和想法

  • 在冬季,狼可能不仅出现在山脉和平原
  • 冬季没有骷髅、史莱姆、巨魔和焰灵,但龙和狼袭击的几率增加
  • 由于多雨天气,秋季有更多的尸鬼、史莱姆和骷髅
  • 夏季没有狼,但有更多的焰灵、蝙蝠和尖叫哥布林
  • 春季有更多的巨魔、野猪和灰矮人

这样,总体上的袭击应该达到平衡和沉浸感。

自定义光照

文件 "Custom lightings.json" 包含默认的自定义光照设置及其在季节之间的分布。

这里有针对早晨、白天、傍晚、夜晚和室内的不同亮度和雾密度设置。"luminanceMultiplier" 控制环境光照 HSL 颜色模型的亮度分量。"fogDensityMultiplier" 控制“空气”本身阻挡光线的程度。

你最好自己测试一下,看看实际效果如何。

设置 "lightIntensityDayMultiplier" 和 "lightIntensityNightMultiplier" 控制来自太阳和月亮的光量。较低的 luminanceMultiplier 和较高的 lightIntensityNightMultiplier 使夜晚更真实,月光下的沼泽看起来很恐怖。

默认设置背后的一些解释和想法

  • 春季为默认设置
  • 夏季夜晚的光线更多
  • 秋季光线较暗
  • 冬季夜晚黑暗,但更多的月光和整体白色的环境反射更多光线,弥补了这一点

自定义属性

文件 "Custom stats.json" 包含默认的自定义属性设置及其在季节之间的分布。

当前属性提示将显示在年鉴中,以查看实际效果。在后台属性配置更改后,请重新打开年鉴。

属性文件结构反映了原版 SE_Stats 状态效果,具有以下属性:

  • m_tickInterval (浮点数) - 应用 m_healthPerTick 伤害或治疗的时间间隔(秒)
  • m_healthPerTickMinHealthPercentage (浮点数) - 你被 m_healthPerTick 治疗/伤害影响时的最大生命值百分比
  • m_healthPerTick (浮点数) - 实际的生命值数值。如果 m_healthPerTick > 0,你将被治疗,否则受到伤害
  • m_healthHitType (字符串) - m_healthPerTick 伤害的类型
  • m_staminaDrainPerSec (浮点数) - 每秒消耗的耐力值
  • m_runStaminaDrainModifier (浮点数) - 1.0 代表 100%,0.1 代表 10%,-0.5 代表减少 50% 的耐力消耗
  • m_jumpStaminaUseModifier (浮点数) - 1.0 代表 100%,0.1 代表 10%,-0.5 代表减少 50% 的耐力消耗
  • m_healthRegenMultiplier (浮点数) - 1.2 代表 +20% 恢复,0.8 代表 -20% 恢复
  • m_staminaRegenMultiplier (浮点数) - 1.2 代表 +20% 恢复,0.8 代表 -20% 恢复
  • m_eitrRegenMultiplier (浮点数) - 1.2 代表 +20% 恢复,0.8 代表 -20% 恢复
  • m_raiseSkills (字符串, 浮点数) - 设置技能及其提升倍率的配对,意味着该动作获得更多/更少的技能点
  • m_skillLevels (字符串, 浮点数) - 设置普通技能及其加成的配对,例如 "Jump": 15.0 表示跳跃技能 +15
  • m_modifyAttackSkills (字符串, 浮点数) - 设置武器技能及其加成的配对,例如 "Swords": 15.0 表示剑术技能 +15
  • m_damageModifiers (字符串, 字符串) - 设置下面列出的伤害类型和伤害修正的配对
  • m_noiseModifier (浮点数) - 0.2 代表产生噪音增加 20%,-0.2 代表产生噪音减少 20%
  • m_stealthModifier (浮点数) - 0.2 代表潜行效果提升 20%,-0.2 代表潜行效果降低 20%
  • m_speedModifier (浮点数) - 0.05 代表移动速度 +5%,-0.05 代表移动速度 -5%
  • m_maxMaxFallSpeed (浮点数) - 羽毛缓落披风的默认值为 5
  • m_fallDamageModifier (浮点数) - 坠落伤害修正,0.7 代表减少 30% 的坠落伤害

伤害类型

  • Blunt
  • Slash
  • Pierce
  • Chop
  • Pickaxe
  • Fire
  • Frost
  • Lightning
  • Poison
  • Spirit
  • Physical
  • Elemental

伤害修正

  • Normal
  • Resistant
  • Weak
  • Immune
  • Ignore
  • VeryResistant
  • VeryWeak

默认设置背后的一些解释和想法

  • 春季有毒抗性和缓慢治疗
  • 春季和夏季行动更轻松,并能从这些行动中获得更多技能
  • 秋季和冬季侧重于资源收集和钓鱼
  • 夏季移动更快,消耗更少耐力,产生更少噪音,隐藏得更好
  • 夏季的好天气使生命值恢复更快
  • 秋季的悲观思绪使 Eitr 恢复更快
  • 冬季清新的空气使耐力恢复更快
  • 冬季对火焰的抗性更高
  • 在雪地上会产生更多噪音,更难隐藏
  • 在雪地中行走会降低 5% 的移动速度
  • 但在雪地中坠落受到的伤害更少

自定义商人物品

文件 "Custom trader items.json" 包含默认的自定义商人物品及其在季节之间的分布。

物品可以在不同季节和商人之间进行独特的自定义。你可以使用自定义的商人名称。

你可以从 TradersExtended 中改编物品列表,因为它共享相同的物品结构。

商人名称

你可以使用同一商人的不同名称。不区分大小写。

  • 原始预制件名称(内部 ID,哈多尔有 "Haldor")
  • 未本地化的名称(m_name 值,哈多尔有 "$npc_haldor")
  • 本地化的名称(将未本地化的名称翻译成当前语言的结果,在英文中 "$npc_haldor" 变为 "Haldor")
  • 对于原版的 Haldor 和 Hildir,直接使用 "haldor" 和 "hildir" 即可。

商人物品

商人物品的结构反映了游戏中可交易物品的描述。

  • prefab (字符串) - 游戏对象预制件名称。当前物品列表 在此。错误的预制件名称将被忽略。
  • stack (整型) - 出售的物品数量
  • price (整型) - 每组的售价
  • requiredGlobalKey (字符串) - 用于追踪游戏世界进度的全局键。当前键列表 在此

默认设置背后的一些解释和想法

  • Hildir 的帽子只是作为文件结构的示例。但既然是季节性帽子,她为什么没有呢?
  • Haldor 在冬季囤积肉类,以便在春季卖给你。
  • Haldor 在当前秋季有一些收获的盈余(你可以得到一些为冬季做准备)。
  • Haldor 在冬季有一些可能无法获取的物品。
  • Haldor 在冬季有一些种子,因为他知道你在春季会需要。

季节性杂物

有 3 个新的杂物预制件:

  • 草地花朵(红色和蓝色)
  • 黑暗森林花朵(粉色)
  • 沼泽花朵(白色)

默认情况下,这些预制件仅在春季启用,增添了一些急需的特色。

文件 "Custom clutter settings.json" 包含季节性杂物在季节之间的分布设置。

你可以使用其他模组添加你自己的杂物,并通过该文件控制其季节性状态。

季节性杂物设置:

  • clutterName (字符串) - 在 ClutterSystem.m_clutter 中设置的杂物名称
  • spring (布尔值) - 是否在春季启用
  • summer (布尔值) - 是否在夏季启用
  • fall (布尔值) - 是否在秋季启用
  • winter (布尔值) - 是否在冬季启用

自定义纹理

自定义纹理可以放置在 \BepInEx\config\shudnal.Seasons\Custom textures 文件夹中。

模组附带一些预定义的默认纹理。它们将被放置在 \BepInEx\config\shudnal.Seasons\Custom textures\Defaults 文件夹中。默认纹理将在模组版本更改后被覆盖。

如果你想修改默认纹理,请将需要的文件夹复制到 \BepInEx\config\shudnal.Seasons\Custom textures

\BepInEx\config\shudnal.Seasons\Custom textures 文件夹内的文件夹应以纹理名称命名。如果不同的对象使用相同的纹理,它将被全部替换。

要找到纹理名称,应将通用配置选项 "Test - Cache format" 设置为 "SaveBothLoadBinary",然后重建缓存(通过运行控制台命令或直接删除 \BepInEx\cache\shudnal.Seasons 中的旧缓存)。

之后,新的缓存文件夹将形成,包含 cache.jsoncache.bin 文件和 textures 文件夹。Cache.json 包含所有对象及其材质和将被替换的颜色。

在该文件中,你可以找到预制件和纹理编号,该编号对应 "texture" 目录中的文件夹。

在该纹理目录中,你可以找到一个文件名以 .orig.png 结尾的文件。这就是你想要替换的纹理的名称。

纹理编号可能在每次缓存构建时生成不同。

texture 文件夹内的文件对应季节和变体。命名约定是 Season_Number.png。你的纹理应相应命名。

示例

你想替换 Beech 的冬季纹理。

找到你当前的缓存修订版本文件夹。它位于 \BepInEx\cache\shudnal.Seasons 文件夹中,并以缓存修订版本号命名。要获取当前缓存修订版本号,可以启用日志记录并在日志文件中查找。或者,删除其他所有文件夹并重建缓存。

最近的文件夹将是你的当前缓存文件夹。在这个例子中是 2054891382。进入该文件夹。

打开 cache.json 文件并查找 beech 预制件名称。你可以在 Jotunn 的预制件列表 中找到其名称,或者使用 RuntimeUnityEditor

在这个例子中,cache.json 中有三个 beech 预制件。

  • Beech_Sapling - 小型可种植版本的山毛榉
  • Beech_small1 - 小变体
  • Beech_small2 - 小变体
  • Beech1 - 实际的草地大树,也是我们当前要更改纹理的目标

Beech_Sapling、Beech_small1 和 Beech_small2 共享编号为 112892 的纹理(你的编号可能不同)。

Beech1 有材质 beech_leaf 及其 _MainTex(主纹理),编号为 171264。还有树皮材质和 _MossTex。这部分可以忽略。

所以我们取出编号 171264,进入 \BepInEx\cache\shudnal.Seasons\2054891382\textures\171264 文件夹。那里有一套季节性文件、一个 properties.json 文件和一个 beech_leaf.orig.png 文件。最后一个文件是原版游戏中使用的原始纹理。原始纹理文件的命名约定是 {Texture name}.orig.png,因此我们的纹理名称将是 beech_leaf

现在我们在 \BepInEx\config\shudnal.Seasons\Custom textures 中创建一个新文件夹,并将其命名为 beech_leaf。 对于这个例子,我们将 \BepInEx\cache\shudnal.Seasons\2054891382\textures\171264 文件夹中的 Winter_1.png 文件复制到 \BepInEx\config\shudnal.Seasons\Custom textures\beech_leaf

你现在可以随意编辑该文件。它将在游戏中作为 Beech1 预制件的冬季变体编号 1 加载。 对该文件所做的任何更改都会即时应用。

只有出现在 cache.json 文件中的纹理才能被替换。

自定义生物群落设置

文件 "Custom biome settings.json" 包含生物群落地面颜色季节性覆盖和冬季小地图颜色的设置。 对该文件所做的更改需要更改当前季节才能生效。你可以直接在通用配置部分 "Season - Override" 中覆盖和更改季节。

季节性地面颜色

  • biome (字符串) - 生物群落名称,不区分大小写,支持自定义生物群落(如果生物群落名称添加正确,如 Expand World Data 中,或者你可以设置生物群落数字 ID)。
  • spring (字符串) - 该生物群落在春季应使用的地形
  • summer (字符串) - 该生物群落在夏季应使用的地形
  • fall (字符串) - 该生物群落在秋季应使用的地形
  • winter (字符串) - 该生物群落在冬季应使用的地形

冬季颜色

设置为配对 "Biome": "Color Hex Code"。 原版冬季颜色是通过将原始生物群落颜色与 "#FAFAFF" 进行插值,同时保留原始 Alpha 通道生成的。#FAFAFF 也称为鬼白色,它不只是白色,还带有一点点雪色色调。

默认设置背后的一些解释和想法

  • 灰烬之地、山脉和深北的地形不会改变。
  • 所有受控的生物群落在冬季都会变成山脉,以在地面上获得雪地效果。
  • 草地在秋季具有平原的颜色,以获得偏黄的地面颜色。
  • 黑暗森林在秋季具有沼泽的颜色,以获得湿泥土地面的效果。
  • 平原地带在春季具有草地的颜色,以获得周围环境盛开的效果。

通用设置

  • 小地图将使用季节性颜色设置重新着色。
  • 季节物品将在相应的季节启用。
  • 如果你不在山脉或深北地区,你不会因冻伤减益而死亡。你将保持 1 点生命值。
  • 季节性属性仅在室外应用。在地牢中你不会获得优势。
  • 当前的季节增益可以隐藏,计时器格式可以设置为当前天数或到下一季度的剩余时间。
  • 季节在第一天早上变化。
  • 季节变化带有微小的淡入淡出效果,可以禁用。
  • 季节可以立即更改,当前季节可以被覆盖。
  • 你可以设置季节名称和提示的本地化字符串。
  • 由于蜂蜜生产和植物生长的季节变化,有设置可以显示植物和蜂箱产量的估算值(类似于 BetterUI)。
  • 季节可以设置为仅在睡觉时变化。
  • 冬季,浮冰会在设定天数内的海洋中生成。
  • 冬季,经过设定的天数后,水会结冰(可自定义天数)。
  • 当水面结冰时,船只可以被推出水面。
  • 你可以在冬季隐藏某些草地材质。

用于实时季节计算的自定义世界设置

文件 "Custom world settings.json" 包含自定义世界设置的示例条目。

你可以设置 UTC 时区的开始时间和以秒为单位的白天长度。你的世界名称应等于设置中的世界名称才能激活。

如果设置了世界设置,则季节将根据设定的日期时间,使用当前的 UTC 时间、设定的白天长度(秒)和季节设置中的季节天数来计算。

这样,你将无法在睡眠时更改季节。当时间到达时季节才会改变。

例如,你可以:

  • 将开始时间设置为星期一的 0:00
  • 将白天长度设置为 86400 秒(1 天)
  • 将季节天数设置为 7

这意味着你的世界有为期一周的季节,从设定的星期一开始。

季节性增益图标替换

你可以在配置文件夹中放置文件来替换当前的增益图标(需要重启):

  • season_fall.png
  • season_spring.png
  • season_summer.png
  • season_winter.png

季节性全局键

你可以启用与季节相关的服务器范围全局键的设置。默认情况下是禁用的。你可以根据需要自定义该键。 默认的季节键:

  • season_fall
  • season_spring
  • season_summer
  • season_winter

本地化

要添加你自己的本地化,请在 Bepinex 文件夹内的任何位置创建一个名为 Seasons.LanguageName.json 的文件。 例如,要添加法语翻译,你可以在 config 文件夹中创建一个 Seasons.French.json 文件,并在其中添加法语翻译。

本地化文件将在下次游戏启动或下次语言更改时加载。

你可以将包含你本地化的文件发送到我的 GitHub,以便我将其添加到模组包中。

语言列表

英文本地化示例位于插件 dll 旁边的 Seasons.English.json 文件中。

安装(手动)

将 Seasons.dll 文件解压到你的 BepInEx\Plugins\ 文件夹。

配置

处理配置的最佳方式是使用 Configuration Manager。 或 Official BepInEx Configuration Manager。 对于 JSON 编辑,你可以使用任何文本编辑器。或者使用 https://jsoneditoronline.org/ 以表格形式编辑。

捐助

Buy Me a Coffee

Discord

Join server