LoxWagon
Raised front bench, unified seat prompts, removed white tarp hems, and native lox-rug surface rendering.LoxWagon 0.6.1
Follow-up to the user's successful passenger-seat test. The 0.5.3 chassis/cargo baseline and the 0.6.0 seat attachment positions are preserved.
Changes
- Both interaction targets are named Seat with the same Sit prompt. Their internal object names remain distinct; seated positions and behavior are unchanged.
- A raised wooden sitting board reuses the merchant wagon's front-platform geometry and materials. Its surface is 0.51m higher, approximately y=2.59-2.63 in wagon coordinates, to meet the existing seated pose. The original lower foot platform remains. The board is shallower than the foot platform, spans the existing side rails and adds no physics body or collider.
- Removed the two white canvas hems. They were separate LineRenderers with their own white material, which explains the pale strips after the cover changed colour.
- The cover retains its opaque backing and now adds a native-rug surface. When readable rug meshes are available, it maps their geometry onto the taut cover, preserves UVs, vertex colours and material assignments, and retains the source thickness up to a 0.30m defensive cap. Triangles are subdivided to follow the curved cover. Tangents are generated for the normal maps.
- If original geometry is unavailable, the alternate path adds two shaped surfaces using the installed rug_fur and rug_fur_l2 materials where available. Those retain the Custom/Rug shader, transparency, normal maps, settings and keywords. Their 2.5cm/7.5cm offsets are an experimental approximation, not a verified reconstruction of native rug geometry.
- Fur height is compressed beneath the four lashings. The cargo arrangement, tarp backing shape, mass and chassis joints are unchanged.
The RGB-only 0.6.0 approach discarded the native surface effects and looked like smooth leather. This build attempts the raised, wispy appearance in the reference screenshots. It is not visually verified until tested in Valheim.
Install and test
Close Valheim, replace LoxWagon.dll, keep only one copy and restart. Retain Diagnostics.ArticulatedChassisTest=true and HumanPullTest=false. Use matching mod/config versions on peers.
- Sit in both positions. Check that the raised board meets the hips without passing through the character, and that feet retain room on the lower platform. Confirm identical prompts.
- Fill 31-32 slots. Inspect the cover from above, both sides and at a grazing angle. Check the fur depth, edge silhouette, lashings and absence of white trim.
- Send screenshots and the log. The log distinguishes
Lox rug native geometry warpedfromLox rug layered-material fallback, followed byNative lox fur surface ready. These tell us which path actually ran.
The original opaque cover is retained if fur construction fails, so the wagon should not lose its cover. A logged construction success confirms component creation, not the final on-screen appearance.
Validation and limits
Compiled against the supplied game/BepInEx assemblies. Only the existing thumbnail API deprecation warning remains. The bench selection contains 40 triangles from the exported merchant mesh. Existing checks pass for all 52 cargo envelopes and sampled tarp backing clearance. ArticulatedChassis.cs and VisualWheels.cs are byte-for-byte unchanged from 0.6.0. WagonSeats.cs differs only in its displayed label.
The new fur overlays and raised bench require in-game visual testing. Existing multiplayer seat-claim races, ownership handoff and reload behavior remain open tests. No physics tuning is included.
Final pre-release visual pass: increase selected crates' pitch/roll/yaw and adjust their support/contact positions to create a tightly wedged, less uniform load. Do not simply randomize rotations or reintroduce floating cargo, wall clipping or large gaps. This is recorded for later and is not changed here.
Reference for shader/material identification: https://valheim-modding.github.io/Jotunn/data/prefabs/material-list.html and https://valheim-modding.github.io/Jotunn/data/prefabs/shader-list.html. Actual materials are loaded from the installed game. No game assets are distributed.
Previous build notes are retained in the versioned README files.
