VBDiving

VBDiving

潜水模组

游戏玩法

[spoiler]


VBDiving — это мод, который полностью перерабатывает механику плавания в Valheim, добавляя возможность полноценного ныряния под воду, улучшая поведение мобов в воде и добавляя визуальные/аудио эффекты погружения.

Мод делает подводный мир более живым, опасным и красивым. Теперь вы не просто плывете по поверхности — вы можете исследовать глубины, но будьте осторожны: кислород ограничен, а мобы могут преследовать вас даже под водой!

Основные возможности

Для Игрока

  • Полноценное ныряние: Нажмите Ctrl (или используйте старое управление), чтобы переключить режим погружения. Используйте взгляд вверх/вниз + движение вперед (W), чтобы контролировать глубину.
  • Система дыхания: Под водой расходуется кислород. Если он закончится, начнет тратиться выносливость, что может привести к утоплению. На поверхности кислород восстанавливается.
  • Визуальные эффекты: При погружении меняется освещение, цвета окружающей среды становятся более мрачными и подводными, появляется эффект искажения воды (Heat Distortion) и приглушается звук (Low Pass Filter).
  • HUD Кислорода: Красивый индикатор с пузырьками, показывающий текущий запас воздуха. Количество пузырьков зависит от вашего навыка плавания.
  • Улучшенная камера: Камера корректно ведет себя под водой, не застревая в текстурах поверхности.
  • Использование предметов в воде: Возможность использовать определенные инструменты и оружие (например, ножи, копья, кирки) прямо под водой. Список можно настроить в конфиге.

Для Мобов (AI)

  • Умные водные мобы: Мобы, настроенные через конфигурационные файлы, теперь умеют правильно плавать, нырять и всплывать.
  • Преследование под водой: Агрессивные мобы (например, Змеи или Левиатаны, если они настроены) будут преследовать игрока под водой, используя трехмерную навигацию.
  • Синхронизация конфигов: Настройки поведения мобов автоматически синхронизируются между сервером и клиентами. Сервер является источником истины.

Управление

По умолчанию используется новое управление:

  1. Начать/Закончить ныряние: Нажмите Ctrl (Crouch).
  2. Погружение: Смотрите вниз и идите вперед (W).
  3. Всплытие: Смотрите вверх и идите вперед (W).
  4. Отмена: Если вы находитесь близко к поверхности или выходите из воды, режим ныряния отключается автоматически.

Опционально: В настройках можно включить Legacy Controls (старое управление):

  • Зажать Ctrl — погружаться.
  • Зажать Space — всплывать.

Конфигурация

Все настройки находятся в файле VitByr.VBDiving.cfg.

Основные настройки (00 - Main)

  • EnableMod: Включить/выключить мод.
  • SyncMonsterConfigs: Синхронизировать конфиги мобов с сервера (рекомендуется true для мультиплеера).
  • UseServerMonsterConfigsOnly: Использовать ТОЛЬКО конфиги с сервера, игнорируя локальные файлы клиентов.

Управление (01 - Control)

  • UseLegacyDiveControls: Если true, используется старое управление (зажатие клавиш). Если false — новое (переключение режима).

Дыхание (02 - Breath)

  • MaxBreathSeconds: Базовое время нахождения под водой (при нулевом навыке).
  • MaxBreathBonusAtSkill100: Дополнительное время при максимальном навыке плавания (100).
  • BreathRecoveryPerSecond: Скорость восстановления кислорода на поверхности.

Интерфейс (03 - BreathHud)

  • OffsetX/Y: Смещение индикатора кислорода по горизонтали и вертикали.
  • Scale: Размер индикатора.
  • ShowLabels: Показывать ли цифровое значение секунд рядом с пузырьками.

Плавание (04 - Swimming)

  • SprintSwimMultiplier: Множитель скорости при спринте в воде.
  • BaseUnderwaterStaminaRegenPerSecond: Скорость восстановления стамины, когда вы стоите на месте у поверхности (не двигаясь).

Предметы в воде (06 - EquipInWater)

  • EiW_Custom: Список префабов предметов, которые можно использовать под водой (через запятую). По умолчанию включены ножи, копья, кирки и молот.

Настройка поведения мобов (Для админов серверов)

Мод использует YAML-конфиги для настройки того, как мобы ведут себя в воде. Файлы лежат в папке: BepInEx/config/VitByr/VBDiving/.

Если файлов нет, мод создаст пример Vanilla.yaml. Вы можете создавать свои .yaml файлы.

Пример структуры конфига:

deep_hunters: # Название группы
  min_depth: 1          # Минимальная глубина (у поверхности)
  center_depth: 5       # Предпочтительная глубина в спокойствии
  max_passive_depth: 20 # Макс. глубина, если моб спокоен
  max_agro_depth: 50    # Макс. глубина, если моб атакует
  depth_adjust_speed: 5 # Скорость изменения глубины
  use_breath: true      # Нужно ли мобу дышать?
  max_breath_seconds: 120 # Запас воздуха
  breath_recovery_speed: 1.5 # Скорость восстановления
  surface_time: 5       # Время, которое моб проводит на поверхности для дыхания
  surface_threshold_percent: 0.25 # При каком % воздуха моб начинает всплывать
  prefabs:              # Список префабов мобов
    - Serpent
    - BonemawSerpent

Важно:

  • Изменения в конфигах на сервере применяются автоматически и рассылаются клиентам.
  • Клиенты могут иметь свои локальные конфиги, но если включена синхронизация, приоритет будет у серверных настроек.

Несовместимые моды

  • DiveIn
  • BetterDiving
  • SwimmingReworked
  • VikingsDoSwim
  • ImprovedSwimming

Обратная связь


От себя

  • Вдохновлено такими модами как BetterDiving, DiveIn, SwimmingReworked.
  • Особая благодарность Dzk автору мода SwimmingReworked, что позволил взять за основу свой мод и переработать на моё усмотрение.
  • Также буду рад помощи по замене\ дополнении шейдера воды для полноценного вида под водой и на пересечении плоскости камеры - как в таких играх как Subnaftica (где полноценно можно видеть подводный мир и надводный, когда поверхность воды находится где-то по середине камеры)

---[/spoiler]