Gathering_Team-CraftyCartsRemake_1_0_Fix icon

CraftyCartsRemake 1 0 Fix

Unofficial Valheim 1.0 compatibility patch for CraftyCartsRemake (1.0.1: fixes hammer repair being broken on 1.0.14).

Last updated a week ago
Total downloads 923
Total rating 0 
Categories Mods Tweaks Misc Crafting Server-side Client-side AI Generated
Dependency string Gathering_Team-CraftyCartsRemake_1_0_Fix-1.0.1
Dependants 2 other packages depend on this package

This mod requires the following mods to function

denikson-BepInExPack_Valheim-5.4.2202 icon
denikson-BepInExPack_Valheim

BepInEx pack for Valheim. Preconfigured and includes unstripped Unity DLLs.

Preferred version: 5.4.2202

README

CraftyCartsRemake 1.0 Fix (Unofficial)

Temporary community patch for Valheim 1.0.

Fixes

1.0.1 — hammer repair no longer breaks (Valheim 1.0.14)

On 1.0.14 nothing could be repaired with the hammer. Damaged pieces still highlighted, but clicking did nothing at all — no repair, no error, no sound. The client log showed:

MissingMethodException: Method not found: UnityEngine.GameObject[]
  .EffectList.Create(UnityEngine.Vector3,UnityEngine.Quaternion,
                     UnityEngine.Transform,single,int)
Stack trace:
(wrapper dynamic-method) Player.DMD<Player::Repair>(Player,ItemDrop/ItemData,Piece)

Cause: this mod's UpgradeCartRepairPatch is a Harmony prefix on Player.Repair, and it called two game methods that have since gained extra optional parameters:

called exists on 1.0.14
EffectList.Create(Vector3, Quaternion, Transform, float, int) …, int variant = -1, ZDOID gamepadEffectsExclusiveToPlayer = default)
Character.Message(MessageType, string, int, Sprite) …, Sprite icon = null, bool log = false)

C# binds optional arguments at the call site, so a build compiled against an older Valheim emits a call to the old arity, and that overload no longer exists.

The reason this broke all repairing rather than only cart upgrades: Mono resolves every method token when it compiles a method body, not when execution reaches that line. The prefix runs on every Player.Repair call, so the first repair attempt threw before a single line of the prefix ran — it never reached its return true, so vanilla repair was never handed control, for any piece.

Fixed by repointing both call sites to the current overloads, passing the defaults the game itself declares (default(ZDOID) and false). No behaviour change.

1.0.0

  • Build menu crash (ArgumentOutOfRangeException in PieceTable)
  • Vagon.FixedUpdate → UpdateMass Harmony patch

Notes

This is not an official update. Remove this package once Azumatt releases an official 1.0-compatible version of CraftyCartsRemake.

If repair ever silently stops working again after a Valheim patch, this is the first thing to suspect, and the client's BepInEx/LogOutput.log will name the missing signature.

Original mod: CraftyCartsRemake by OdinPlus 1.0 compatibility patch: wocky

Made this with the assistance of AI