You are viewing a potentially older version of this package. View all versions.
MilkyTeam-ShipConfig-1.1.2 icon

ShipConfig

Configure the health of every ship. Server synced, live config reload.

Date uploaded a week ago
Version 1.1.2
Download link MilkyTeam-ShipConfig-1.1.2.zip
Downloads 51
Dependency string MilkyTeam-ShipConfig-1.1.2

This mod requires the following mods to function

denikson-BepInExPack_Valheim-5.4.2350 icon
denikson-BepInExPack_Valheim

BepInEx pack for Valheim. Preconfigured with the correct entry point for mods and preferred defaults for the community.

Preferred version: 5.4.2350

README

ShipConfig

Configure the health of every ship in Valheim, with server sync and live config reloading.

Features

  • One health setting per ship (Raft, Karve, Longship, Drakkar, and any modded ship with a WearNTear component)
  • Values apply to newly built ships and to ships already loaded in the world
  • Config changes apply immediately without restarting the game
  • Server enforces its settings for all connected players; "Lock Configuration" prevents clients from overriding them

How to Install

  1. Install BepInEx for Valheim.
  2. Install this mod.

For manual install, drag ShipConfig.dll into the BepInEx/plugins folder.

The ship entries are added to the config file when a world is loaded for the first time, because the ship prefabs only exist in a loaded world.

Building

Requirements: .NET SDK 8, Valheim installed with BepInEx, and the ValheimModLibs repository checked out next to this one. pack.ps1 builds the mod and creates a Thunderstore zip in thunderstore/.

dotnet build ShipConfig/ShipConfig.csproj -c Release

CHANGELOG

Changelog

1.3.0

  • New per-ship setting SailForceOffset: the height above the ship's center of mass where the sail's force pushes. Lowering it makes a ship heel less and capsize less easily at high SailForce; 0 removes the sail's heeling entirely, negative pushes below the center of mass. Defaults to the ship's vanilla value.
  • Joining a server no longer refuses a correct client under load. The version check raced the config pushes over the same connection and was judged by one 5-second deadline, so a valid reply that arrived slightly late was reported as "you have no copy" and the join was refused. The check is now sent before the config pushes, and retries every 5 seconds up to 20 before concluding a player is genuinely unmodded.

1.2.0

  • Every ship gets a full set of settings beside Health: SailForce, PaddleForce, RudderSpeed, TurnForceSailing, TurnForcePaddling, ForwardDrag, SidewaysDrag, AngularDamping, WaterImpactDamage, UpsideDownDamage, WeatherWear, AshlandsOceanDamage, DamageTaken, Invulnerable, BuildCost. Defaults are read from the ship itself, so a fresh config changes nothing and existing Health values are kept.
  • New Multipliers section applying on top of every ship's own value.
  • Changing a ship's health changes only its maximum; a loaded ship keeps its current health.
  • Ships registered by another mod after the world loads get their entries.
  • Server sync moved to Charter, our own library. Existing config files work unchanged.
  • Version mismatch refuses the join with a named reason and a code in both logs.
  • New console command charter: status, diff, versions.

1.1.5

  • New store icon.

1.1.4

  • Store page links to the GitHub repository.

1.1.3

  • Rebuilt on the rewritten shared configuration libraries. No behaviour change.
  • MIT licence added.

1.1.2

  • Fixed a frame rate loss from the shared library's exception-tagging finalizer.

1.1.1

  • Config hot reload polls every five seconds instead of watching the file, which hung Linux dedicated servers in an endless reload loop.

1.1.0

  • Updated for the current Valheim version.
  • Jotunn no longer required.
  • Config written on first start and reloaded on edit.
  • Health changes apply to ships already in the world.
  • Removed debug logging.

1.0.0

  • Initial release.