Hare Backwards Run Bugfix

Hare Backwards Run Bugfix

Fixes the hares (rabbits) backward run.

[size=4][b]Description[/b][/size]
[size=3][color=#D4D4D8]Vanilla game 1.5.6 ships hares that run backwards. It is the most annoying thing in this game after crashes. But no more.[/color][/size]

[size=4][b]Installation instructions[/b][/size]
[size=3][color=#D4D4D8]Drop in \KingdomComeDeliverance2\Mods\ folder like any other mods.[/color][/size]

[size=4][b]Main features[/b][/size]
[size=3][color=#D4D4D8]Describe the core features of your mod[/color][/size]



[b][size=4]Technical summary[/size][/b]

A hare's model only re-aligns to its direction of travel when a movement transition fires. Its [i]Start[/i] transition (IdleToMove) plays the [font=Courier New]1d_alert_to_escape[/font] blendspace, which covers a full ±180° turn — so the asset to re-orient the hare was always there.

The problem was [font=Courier New]MovementTransitions_Hare.xml[/font]:

[code]<General minDistAfterDirectionChange = "2.5"/>[/code]
That value blocks [b]any[/b] transition until the animal has travelled 2.5 m since its last direction change. Hares are boid-driven and zig-zag constantly at a 7.5 m/s gallop, so the block was effectively always active. The hare never re-oriented, and simply kept travelling butt-first.

[size=4][b]The fix[/b][/size]

One value:

[code]minDistAfterDirectionChange:  2.5  ->  0.3[/code]
The Start transition can now re-fire almost immediately after a direction change, so the hare turns to face where it's going. Nothing else in the file is touched — the [i]Start[/i] lines and Warhorse's commented-out [i]Stop[/i] block are byte-for-byte vanilla.

[size=4][b]Why hares still drift sideways[/b][/size]

This is [b]not fixable in data[/b], and it isn't a hare-specific bug.

[i]Start[/i] transitions only apply idle→move. Re-aligning while [b]already moving[/b] requires a [font=Courier New]<DirectionChange>[/font] ("juke") transition. Counting those across every vanilla movement-transition file:

[list]
[][font=Courier New]MovementTransitions_Human.xml[/font] — 76[/]
[][font=Courier New]MovementTransitions_NPC.xml[/font] — 8[/]
[][font=Courier New]MovementTransitions_NPC_Female.xml[/font] — 8[/]
[][b]Every animal file, hare included — 0[/b][/]
[/list]
Same at the Mannequin layer: [font=Courier New]kcd_male_fragmentids.xml[/font] defines 4 Juke fragments; no animal fragmentid file defines any. [b]No animal in KCD2 can turn while running.[/b] The hare just shows it worst because it's small, fast and boid-driven.

Adding jukes would require new fragment IDs, new [font=Courier New].adb[/font] fragments, new root-motion rows — and, the real blocker, [b]turn-while-running animations that don't exist for the hare[/b]. Its whole run/sprint is a single straight-line clip ([font=Courier New]relaxed_gallop[/font]) with no turn parameter. Only the walk blendspace [font=Courier New]2d_walk_turn[/font] has a TurnAngle axis (±0.7 rad, ~40°) — which is why walking hares look fine and sprinting ones skate.

The only remaining route would be a native plugin forcing hare yaw toward velocity, which would still have no turn animation behind it.


[size=4][b]Shout outs[/b][/size]
[size=3][color=#D4D4D8]Warhorse Studios[/color][/size]