CartWeightFix

版本 v1.1.0·更新於 2026-06-13

Restores vanilla weight-based drag to player-pulled carts. Fixes OdinHorse side effect where all carts ignore item weight. Server-enforced: every connecting client must have this mod.

模組介紹 作者原文

CartWeightFix

Restores vanilla weight-based drag to player-pulled carts.

The Problem

OdinHorse replaces Vagon.FixedUpdate with a Harmony Prefix (returns false) to support horse-drawn cart attachment. A side effect is that UpdateMass() — the method that sets cart Rigidbody mass from container item weight — never runs. This means all carts (vanilla and horse-drawn) ignore item weight entirely. A cart loaded with 1200 weight moves as if empty.

The Fix

CartWeightFix adds a Harmony Postfix to Vagon.FixedUpdate that re-invokes UpdateMass() for player-pulled and idle carts. Horse-pulled carts are detected (via Tameable component on the connected Rigidbody) and left alone so OdinHorse's physics still govern them.

  • Player-pulled cart: weight-based drag restored (vanilla behavior)
  • Horse-pulled cart: unchanged (OdinHorse governs speed)
  • Idle cart: correct mass for physics interactions

Compatibility

  • Requires BepInEx (included in BepInExPack Valheim)
  • Requires Jötunn (for the server-side enforcement handshake)
  • Soft-dependency on OdinHorse — works with or without it. Without OdinHorse the vanilla FixedUpdate runs normally and this plugin is a harmless no-op.

Server enforcement

This mod uses Jötunn's NetworkCompatibility at level EveryoneMustHaveMod with Minor version strictness. When it runs on a dedicated server, every connecting client must also have CartWeightFix installed at a matching major.minor version — clients that are missing the mod or on a mismatched version are rejected at the connection handshake with an error screen. This guarantees the cart-weight rule is enforced for everyone on the server, since cart physics are evaluated client-side.

Installation

Drop CartWeightFix.dll into BepInEx/plugins/ or install Mod Manager.

安裝與使用 安裝:BepInEx 外掛

  1. 本站下載的壓縮包就是模組本體,通常是 BepInEx 外掛(解壓後得到 .dll 或外掛資料夾)。
  2. 建議流程:用社群模組管理器(如 r2modman)選中本遊戲後匯入該模組,管理器會自動裝好 BepInEx 前置並處理依賴。
  3. 手動流程:先在遊戲目錄裝好 BepInEx 載入器,再把解壓出的 .dll 或外掛資料夾放進 BepInEx/plugins/。
  4. 啟動遊戲,BepInEx 控制台會列印載入日誌;確認這個模組出現在日誌裡即為安裝成功。

帶「前置依賴」的模組需要一併安裝,否則不會載入。功能開關通常在遊戲內或外掛自帶的設定檔裡調整。 多人連線時,主機與所有用戶端需要安裝一致的模組。

前置依賴

下面這些內容需要先安裝,否則該模組不會生效:

denikson-BepInExPack_ValheimValheimModding-Jotunn

檔案與校驗

檔案名稱
CartWeightFix-1.1.0.zip
檔案大小
113.9 KiB