Back to mods
Jaunt: Entity Movement System project artwork

Vintage Story Mod DB · Vintage Story mod

Jaunt: Entity Movement System

This mod does nothing useful on its own. Install if another mod requires it. Jaunt is a library mod to extend entities with rideable behaviors. It provides an extended gait (movement pacing) system allowing for multiple forward gaits plus idle and backwards m

Choose a version Pick your version below, then grab the matching file.

Quick answer

Which Jaunt: Entity Movement System release matches 1.22.0-rc.9?

Updated 17 days ago
Best match for your filters 3.0.0-rc.3
Game version 1.22.0-rc.1, 1.22.0-rc.2, 1.22.0-rc.3
Loader Built-in Vintage Story mod system

Jaunt: Entity Movement System 3.0.0-rc.3 targets 1.22.0-rc.1, 1.22.0-rc.2, 1.22.0-rc.3. It must be installed on the client. Installation on the dedicated server is optional. No extra mods listed for this file.

Where it goes

Is Jaunt: Entity Movement System required on the client, server, or both?

It must be installed on the client. Installation on the dedicated server is optional.

Client Required
Dedicated server Optional
Loader for this release Built-in Vintage Story mod system
Required install it here Optional supported, not mandatory Not supported do not install here Source doesn’t say do not assume

This release supports both sides, but the source does not require it on the server.

What else does Jaunt: Entity Movement System 3.0.0-rc.3 need?

3.0.0-rc.3 on 1.22.0-rc.9. Every mod below is checked against that same setup.

No extra mods listed for this file

This file does not list any required mods. Do not add a library just because a different file uses it.

This file does not list any required or optional mods.

Before you install it

Add Jaunt: Entity Movement System without breaking your instance.

Built for Jaunt: Entity Movement System 3.0.0-rc.3 on 1.22.0-rc.9. Pick another file and the loader, install side or required mods may change.

  1. 01

    Stick to this file

    Use 3.0.0-rc.3. It targets 1.22.0-rc.1, 1.22.0-rc.2, 1.22.0-rc.3; another release may have different loader, side or dependency requirements.

  2. 02

    Bring the mods it needs

    This file does not list any required mods. Do not add a library just because a different file uses it.

  3. 03

    Put it on the correct side

    It must be installed on the client. Installation on the dedicated server is optional.

  4. 04

    Pick the file you checked

    Use the “Get this file” button beside 3.0.0-rc.3. It opens that exact file at the source.

About this project

What does Jaunt: Entity Movement System add?

This mod does nothing useful on its own. Install if another mod requires it.

Jaunt is a library mod to extend entities with rideable behaviors. It provides an extended gait (movement pacing) system allowing for multiple forward gaits plus idle and backwards movement; as well as a stamina behavior for entities.

 

Release List
2.1.0: 1.21 Compatability + Saddle Breaks
2.0.0: Flying Mount Support + Jaunt Flute

 

Checkout Draconis for an example of what can be done!

 

Mods using Jaunt:

 

If you are experiencing issues with your mount stopping and running in place and/or your camera snapping forward while riding this is due to the full attribute tree resync in the base game. It is more likely to happen the more mods you have installed but as a workaround you can try MountCameraFix mod which changes the max number of dirty paths before a full resync.

 

While Jaunt itself is a code mod it is designed to be fully implemented and configured through entity json files and does not require content mods to be converted to code mods to utilize it. Just add Jaunt to your mod's dependencies and follow the guide below on "Entity Json Implementation"

Gait System

Gaits and rideable are independent behaviors but using jaunt:rideable requires jaunt:gait also be configured or it will fail to initialize.


When an entity uses both behaviors it allows the rider to cycle through available gaits according to the order specified in the rideableGaitOrder array in jaunt:rideable's behaviorConfig.

For more information on configuring available gaits see the Entity Json Implementation section below.

 

Below is an example setup utilized by Equus: Wild Horses that implements four forward gaits.

  • Walkback (Backward)
  • Idle (Stationary)
  • Walk (Forward Speed 1 - Slowest)
  • Trot (Forward Speed 2)
  • Canter (Forward Speed 3)
  • Gallop (Forward Speed 4 - Fastest)

 

They are progressive in that you must move through each gait to get to the next, cycling gait up is done via the Sprint Key (see controls section for more details). Cycling down can be done with the S key or by releasing the forward key when using the snaffle bit.

 

The gaits are indicated on the HUD with icons which can be supplied by the mod (see Entity Json Implementation for more details). Jaunt also provides the default icons used in Equus: Wild Horses which can be referenced by your mod.

 

Stamina System

When an entity uses the jaunt:stamina behavior it will be given an additional stat - "stamina" (go figure). This stat behaves much like you'd probably expect with certain actions causing stamina drain (fatigue) and when these actions are not being performed it will naturally regenerate.

  • Drain/Regen rates are fully configurable in entity json behaviorConfigs, as well as values for maximum stamina, penalties for wounded or mounted animals, as well an exhaustion threshold and the option to cancel fleeingEntity behaviors when below the exhaustion threshold (allowing players to run down animals they might not otherwise be able to).

 

  • Stamina draining activites include swimming and fleeing, and can be added to any gait in the gait config. Stamina is regenerated when not in any of those situations, regen penalties (if configured) are applied if the horse is mounted or injured (below 70% health).

 

  • When a entity's stamina is below 50% there is a gait shift down chance that is quadratically proportional (chance increases more dramatically as the stamina decreases) to the stamina percentage below 50%. (i.e. At 50% stamina, 0% chance; at 0% stamina, 100% chance; moving along a quadratic curve)

 

  • If the gait shift down chance is triggered the entity will reduce to a their moderateStamina state if remaining stamina is greater than 10%, or to their lowStaminaState if below 10%. These states are configured in the rideable behaviorConfigs section.

 

  • If stamina fully drains while swimming, nothing will occur (don't worry about the entity drowning) but it signficantly reduces their ability to move quickly upon exiting the water.

 

HUD Items

With the addition of the Gait System and Stamina Behavior for entities you'll find that when mounted there are two additional HUD items visible.

 

Gait Indicator: This icon is a dynamic image that changes with your mount's gait to help give a visual indicator of the current gait. Custom icons are can be supplied through the entity json.

Stamina Bar: The stamina bar shows your horse's current stamina level, if the stamina level drops below 30% the bar will flash


The placement for the gait indicator and stamina bar are fully configurable from the mod config file but apply to all mods using the jaunt library.

StaminaBarLocation can be any of the following:

  • "AboveHealth"
  • "AboveHunger"
  • "AboveTemporal"

 

StaminaBarOffsets are then applied as x/y values from that location.

Please be aware other mods may share this location and offsets may need to be applied when working with mods such as Hydrate or Diedrate or Rustbound Magic.

 

Default Locations:

HUD Items

 

Controls

Snaffle Bit:

W: Hold to move forward, release to stop

A/D: Left/Right

S: Press without releasing W to decrease gait -OR- from idle walk back

Sprint Key (Default Ctrl): Increase gait, when galloping this key will also swap back and forth between canter and gallop

 

Curb Bit:

W: Press to move forward

A/D: Left/Right

S: Decrease gait -OR- from idle walk back

Sprint Key (Default Ctrl): Increase gait, when galloping this key will also swap back and forth between canter and gallop

 

Config Options and Default Values

Jaunt includes a mod config with options for hud placement (typically to be exercised by players for compatibility with other mods' hud items) as well as default values for most configurable options. Keep in mind any changes here apply to all mods utilizing Jaunt so modifying the entity json is the preferred method for implementing stamina and gait values.

 

GlobalDebugMode enables a lot of logging statements around gait changes, for performance reasons keep this disabled during normal play.

Default Config

{
  "ConfigVersion": "2.0.0",
  "GlobalMaxStaminaMultiplier": 1.0,
  "GlobalStaminaRegenMultiplier": 1.0,
  "GlobalSwimStaminaCostMultiplier": 1.0,
  "GlobalSprintStaminaCostMultiplier": 1.0,
  "EnableStamina": true,
  "HideStaminaOnFull": false,
  "StaminaBarLocation": "AboveHealth",
  "StaminaBarWidthMultiplier": 1.0,
  "StaminaBarXOffset": 0.0,
  "StaminaBarYOffset": 0.0,
  "ShowGaitIcon": true,
  "IconOffsetX": -385.0,
  "IconOffsetY": -105.0,
  "IconSize": 75.0,
  "DefaultMaxStamina": 100.0,
  "DefaultSprintFatigue": 0.2,
  "DefaultSwimFatigue": 0.2,
  "DefaultBaseFatigueRate": 1.0,
  "DefaultStaminaRegenRate": 1.0,
  "DefaultRegenPenaltyWounded": 0.5,
  "DefaultRegenPenaltyMounted": 0.3,
  "DefaultExhaustionThreshold": 0.1,
  "DefaultDontFleeWhenExhausted": false,
  "GlobalDebugMode": false
}

 

Entity Json Implementation

All configuration is done similarly to vanilla behaviors, by adding them to the entity json file. To implement these behaviors you will need to add them to the client and server behavior lists and the appropriate configuration options in the behaviorConfigs dict. For reference below is the wildhorse.json entity file from Equus which implements both behaviors.

 

behaviorConfigs > jaunt:gait

idleGait - The default idle gait for this entity

idleFlyingGait - The default gait for this entity while flying

idleSwimmingGait - The default gait for this entity while swimming (not currently utilized)

groundGaitDrag - Drag factor for all ground based gaits (applies when not trying to move)

flyingGaitDrag - Drag factor for all flying based gaits (applies when not trying to move)

swimmingGaitDrag - Drag factor for all swimming based gaits (applies at rest, not during movement) (not currently utilized)

gaits - List of all available gaits for this entity, order is not important

    code unique code for this gait

    environment - the environment or habitat this gait should be used in (ground riding would be land, flying would be air, etc.; must be a member of EnumHabitat in game code)

    moveSpeed - movement speed for this gait

    backwards boolean for if this gait should move backwards

    yawMultipliermultiplicative factor for turning left/right for this gait

    staminaCost stamina cost for this gait

    fallbackGaitCode - fallback gait code for this gait, utilized by stamina system for slowing down when tired

    sound sound that should play while this gait is active

    iconTexture icon svg file to display in the HUD for this gait

 

jaunt:gait": {
	"idleGait": "idle",
	"idleFlyingGait": "hover",
	"idleSwimmingGait": "swim",
	"flyingGaitDrag": 0.25,
	"swimmingGaitDrag": 0.05,
	"groundGaitDrag": 0,
	"gaits": [
		{
			"code": "walkback",
			"environment": "land",
			"yawMultiplier": 1,
			"backwards": true,
			"staminaCost": 0.0,
			"iconTexture": "hud/walkback.svg",
			"movespeedByType": { "*-autumnus": 0.017 }
		},
		{
			"code": "idle",
			"environment": "land",
			"yawMultiplier": 1.25,
			"iconTexture": "hud/idle.svg"
		},
		{
			"code": "walk",
			"environment": "land",
			"yawMultiplier": 1,
			"staminaCost": 0.0,
			"iconTexture": "hud/walk.svg",
			"movespeedByType": { "*-autumnus": 0.017 }
		},
		{
			"code": "sprint",
			"environment": "land",
			"yawMultiplier": 0.5,
			"staminaCost": 0.2,
			"fallbackGaitCode": "walk",
			"sound": "draconis:sounds/stomp",
			"movespeedByType": { "*-autumnus": 0.16 }
		},

		{
			"code": "flyback",
			"environment": "air",
			"yawMultiplier": 1,
			"backwards": true,
			"staminaCost": 0.0,
			"movespeedByType": { "*-autumnus": 0.015 },
			"sound": "draconis:sounds/flying"
		},
		{
			"code": "hover",
			"environment": "air",
			"yawMultiplier": 1.25,
			"staminaCost": 0.0,
			"sound": "draconis:sounds/flying"
		},
		{
			"code": "glide",
			"environment": "air",
			"yawMultiplier": 0.75,
			"ascendSpeed": 1,
			"descendSpeed": 6,
			"staminaCost": 0.0,
			"movespeedByType": { "*-autumnus": 0.04 },
			"sound": "draconis:sounds/glide"
		},
		{
			"code": "glideflap",
			"environment": "air",
			"yawMultiplier": 0.5,
			"ascendSpeed": 2,
			"descendSpeed": 5,
			"staminaCost": 0.1,
			"fallbackGaitCode": "glide",
			"movespeedByType": { "*-autumnus": 0.065 },
			"sound": "draconis:sounds/glide"
		},
		{
			"code": "fly",
			"environment": "air",
			"yawMultiplier": 0.25,
			"ascendSpeed": 4,
			"descendSpeed": 5,
			"staminaCost": 0.2,
			"fallbackGaitCode": "glideflap",
			"movespeedByType": { "*-autumnus": 0.08 },
			"sound": "draconis:sounds/flying"
		},
		{
			"code": "dive",
			"environment": "air",
			"descendSpeed": 10,
			"staminaCost": 0.0,
			"fallbackGaitCode": "hover",
			"movespeedByType": { "*-autmnus": 0.025 },
			"sound": "draconis:sounds/glide"
		},

		{
			"code": "jump",
			"environment": "land",
			"yawMultiplier": 1,
			"staminaCost": 0.0,
			"movespeedByType": { "*-autumnus": 0.16 }
		},

		{
			"code": "swimback",
			"environment": "sea",
			"yawMultiplier": 1,
			"backwards": true,
			"movespeedByType": { "*-autumnus": 0.012 }
		},
		{
			"code": "swim",
			"environment": "sea",
			"yawMultiplier": 1,
			"movespeedByType": { "*-autumnus": 0.012 }
		}
	]
}

 

behaviorConfigs > jaunt:stamina

maxStamina - The entity's maximum stamina value

sprintFatigue - Fatigue rate applied when the animal is sprinting (separate from the gait fatigue rates specified in each gait). Currently applies when fleeEntityTaskAi is active.

swimFatigue - Fatigue rate applied when the animal is swimming

baseFatigueRate - A multiplier for all fatiguing actions

staminaRegenRate - A multiplier for stamina regen

dontFleeWhenExhausted - Prevents the fleeEntityTaskAi from starting when the entity is below the exhaustionThreshold

regenPenaltyWounded - Penalty reduction from the staminaRegenRate for entities with health below 70%

regenPenaltyMounted - Penalty reduction from the staminaRegenRate for entities while mounted.

exhaustionThreshold - The stamina threshold percentage (0.1 = 10%) at which exhaustion is toggled. Currently used for fleeEntityTask overrides.

 

"jaunt:stamina": {
	"maxStamina": 100,
	"sprintFatigue": 0.2,
	"swimFatigue": 0.2,
	"baseFatigueRate": 1,
	"staminaRegenRate": 1,
	"dontFleeWhenExhausted": true,
	"regenPenaltyWounded": 0.5,
	"regenPenaltyMounted": 0.3,
	"exhaustionThreshold": 0.1
},

 

behaviorConfigs > jaunt:rideable

behaviorConfigs > jaunt:rideable

The rideable config options are very similar to the vanilla setup, with a few added items. 

rideableGaitOrder - Ordered array of gaits to be used for riding, should always be ordered from most negative (backwards) to most positive movement speed.

 

controls - The rideable controls dict supports adding any of the available gaits as an additional control, with some extra configuration items for how to pass that information into the gate and stamina systems.

    moveSpeedMultiplier - float value that applies a multiplier to the gait's movespeed

    moveSpeed - override option for raw movespeed, overrides the gait's movespeed. Setting this will ignore movespeeds specified per gait and movespeedmultipliers set here

 

jaunt:rideable": {
	"interactMountAnySeat": false,
	"seats": [
		{ "apName": "Rider", "selectionBox": "MidAP", "bodyYawLimit": 0.2, "controllable": true,
			"mountOffsetByType": { "*-female-autumnus": { "x":-0.1, "y":-0.4, "z":0}, "*-male-autumnus": { "x":-0.17, "y":-0.57, "z":0},
				"*": { "x":0, "y":-0.4, "z":0} } }
	],
	"rideableGaitOrder": ["walkback", "idle", "walk", "sprint"],
	"flyableGaitOrder": [ "flyback", "hover", "glide", "glideflap", "fly" ],
	"controls": {
		"walkback": {
			"movespeedmultiplier": 1,
			"animation": "WalkBack",
			"weight": 10,
			"animationSpeedByType": {
				"*-autumnus": 1.2
			},
			"easeInSpeed": 1,
			"easeOutSpeed": 3,
			"blendMode": "Average",
			"riderAnim": {
				"animation": "ridewyvern-rideground",
				"animationSpeed": 1,
				"weight": 1,
				"withFpVariant": true,
				"blendMode": "Average",
				"elementWeight": {
					"LowerTorso": 80,
					"UpperTorso": 80,
					"UpperFootR": 80,
					"UpperFootL": 80,
					"LowerFootR": 80,
					"LowerFootL": 80
				},
				"elementBlendMode": {
					"LowerTorso": "Average",
					"UpperTorso": "Average",
					"UpperFootR": "Average",
					"UpperFootL": "Average",
					"LowerFootR": "Average",
					"LowerFootL": "Average"
				}
			}
		},
		"idle": {
			"weight": 1,
			"riderAnim": {
				"animation": "ridewyvern-rideground",
				"animationSpeed": 1,
				"weight": 1,
				"withFpVariant": true,
				"blendMode": "Average",
				"elementWeight": {
					"LowerTorso": 80,
					"UpperTorso": 80,
					"UpperFootR": 80,
					"UpperFootL": 80,
					"LowerFootR": 80,
					"LowerFootL": 80
				},
				"elementBlendMode": {
					"LowerTorso": "Average",
					"UpperTorso": "Average",
					"UpperFootR": "Average",
					"UpperFootL": "Average",
					"LowerFootR": "Average",
					"LowerFootL": "Average"
				}
			}
		},
		"walk": {
			"movespeedmultiplier": 1,
			"animation": "Walk",
			"weight": 10,
			"animationSpeedByType": {
				"*-autumnus": 1.125
			},
			"blendMode": "Average",
			"riderAnim": {
				"animation": "ridewyvern-rideground",
				"animationSpeed": 1,
				"weight": 1,
				"withFpVariant": true,
				"blendMode": "Average",
				"elementWeight": {
					"LowerTorso": 80,
					"UpperTorso": 80,
					"UpperFootR": 80,
					"UpperFootL": 80,
					"LowerFootR": 80,
					"LowerFootL": 80
				},
				"elementBlendMode": {
					"LowerTorso": "Average",
					"UpperTorso": "Average",
					"UpperFootR": "Average",
					"UpperFootL": "Average",
					"LowerFootR": "Average",
					"LowerFootL": "Average"
				}
			}
		},
		"sprint": {
			"movespeedmultiplier": 0.75,
			"animation": "Run",
			"easeOutSpeed": 4,
			"weight": 10,
			"animationSpeedByType": {
				"*-autumnus": 3
			},
			"blendMode": "Average",
			"riderAnim": {
				"animation": "ridewyvern-rideground",
				"animationSpeed": 2,
				"weight": 1,
				"withFpVariant": true,
				"blendMode": "Average",
				"elementWeight": {
					"LowerTorso": 80,
					"UpperTorso": 80,
					"UpperFootR": 80,
					"UpperFootL": 80,
					"LowerFootR": 80,
					"LowerFootL": 80
				},
				"elementBlendMode": {
					"LowerTorso": "Average",
					"UpperTorso": "Average",
					"UpperFootR": "Average",
					"UpperFootL": "Average",
					"LowerFootR": "Average",
					"LowerFootL": "Average"
				}
			}
		},

		"flyback": {
			"movespeedmultiplier": 1,
			"animation": "Hoverback",
			"weight": 10,
			"animationSpeedByType": {
				"*-autumnus": 1.2
			},
			"easeInSpeed": 1,
			"easeOutSpeed": 3,
			"blendMode": "Average",
			"riderAnim": {
				"animation": "ridewyvern-hover",
				"animationSpeed": 1,
				"weight": 1,
				"withFpVariant": true,
				"blendMode": "Average",
				"elementWeight": {
					"LowerTorso": 80,
					"UpperTorso": 80,
					"UpperFootR": 80,
					"UpperFootL": 80,
					"LowerFootR": 80,
					"LowerFootL": 80
				},
				"elementBlendMode": {
					"LowerTorso": "Average",
					"UpperTorso": "Average",
					"UpperFootR": "Average",
					"UpperFootL": "Average",
					"LowerFootR": "Average",
					"LowerFootL": "Average"
				}
			}
		},
		"hover": {
			"weight": 1,
			"animation": "Hover",
			"riderAnim": {
				"animation": "ridewyvern-hover",
				"animationSpeed": 1,
				"weight": 1,
				"withFpVariant": true,
				"blendMode": "Average",
				"elementWeight": {
					"LowerTorso": 80,
					"UpperTorso": 80,
					"UpperFootR": 80,
					"UpperFootL": 80,
					"LowerFootR": 80,
					"LowerFootL": 80
				},
				"elementBlendMode": {
					"LowerTorso": "Average",
					"UpperTorso": "Average",
					"UpperFootR": "Average",
					"UpperFootL": "Average",
					"LowerFootR": "Average",
					"LowerFootL": "Average"
				}
			}
		},
		"glide": {
			"movespeedmultiplier": 0.9,
			"animation": "Glide",
			"easeOutSpeed": 4,
			"weight": 10,
			"animationSpeedByType": {
				"*-autumnus": 2
			},
			"blendMode": "Average",
			"riderAnim": {
				"animation": "ridewyvern-ride",
				"animationSpeed": 2,
				"weight": 1,
				"withFpVariant": true,
				"blendMode": "Average",
				"elementWeight": {
					"LowerTorso": 80,
					"UpperTorso": 80,
					"UpperFootR": 80,
					"UpperFootL": 80,
					"LowerFootR": 80,
					"LowerFootL": 80
				},
				"elementBlendMode": {
					"LowerTorso": "Average",
					"UpperTorso": "Average",
					"UpperFootR": "Average",
					"UpperFootL": "Average",
					"LowerFootR": "Average",
					"LowerFootL": "Average"
				}
			}
		},
		"glideflap": {
			"movespeedmultiplier": 0.85,
			"animation": "GlideFlap",
			"easeOutSpeed": 4,
			"weight": 10,
			"animationSpeedByType": {
				"*-autumnus": 2
			},
			"blendMode": "Average",
			"riderAnim": {
				"animation": "ridewyvern-ride",
				"animationSpeed": 2,
				"weight": 1,
				"withFpVariant": true,
				"blendMode": "Average",
				"elementWeight": {
					"LowerTorso": 80,
					"UpperTorso": 80,
					"UpperFootR": 80,
					"UpperFootL": 80,
					"LowerFootR": 80,
					"LowerFootL": 80
				},
				"elementBlendMode": {
					"LowerTorso": "Average",
					"UpperTorso": "Average",
					"UpperFootR": "Average",
					"UpperFootL": "Average",
					"LowerFootR": "Average",
					"LowerFootL": "Average"
				}
			}
		},
		"fly": {
			"movespeedmultiplier": 0.75,
			"animation": "Fly",
			"weight": 10,
			"animationSpeedByType": {
				"*-autumnus": 1.125
			},
			"blendMode": "Average",
			"riderAnim": {
				"animation": "ridewyvern-ride",
				"animationSpeed": 1,
				"weight": 1,
				"withFpVariant": true,
				"blendMode": "Average",
				"elementWeight": {
					"LowerTorso": 80,
					"UpperTorso": 80,
					"UpperFootR": 80,
					"UpperFootL": 80,
					"LowerFootR": 80,
					"LowerFootL": 80
				},
				"elementBlendMode": {
					"LowerTorso": "Average",
					"UpperTorso": "Average",
					"UpperFootR": "Average",
					"UpperFootL": "Average",
					"LowerFootR": "Average",
					"LowerFootL": "Average"
				}
			}
		},

		"jump": {
			"movespeedmultiplier": 0.75,
			"animation": "Hover",
			"weight": 100,
			"blendMode": "Average",
			"animationSpeed": 1.4,
			"easeOutSpeed": 40,
			"easeInSpeed": 40,
			"riderAnim": {
				"animation": "ridewyvern-ride",
				"animationSpeed": 1,
				"weight": 10,
				"withFpVariant": true,
				"blendMode": "Average",
				"elementWeight": {
					"LowerTorso": 160,
					"UpperTorso": 160,
					"UpperFootR": 160,
					"UpperFootL": 160,
					"LowerFootR": 160,
					"LowerFootL": 160
				},
				"elementBlendMode": {
					"LowerTorso": "Average",
					"UpperTorso": "Average",
					"UpperFootR": "Average",
					"UpperFootL": "Average",
					"LowerFootR": "Average",
					"LowerFootL": "Average"
				}
			}
		},

		"swim": {
			"movespeedmultiplier": 1,
			"animation": "Swim",
			"animationSpeed": 1,
			"weight": 10,
			"blendMode": "Average",
			"riderAnim": {
				"animation": "ridewyvern-ride",
				"animationSpeed": 1,
				"weight": 1,
				"withFpVariant": true,
				"blendMode": "Average",
				"elementWeight": {
					"LowerTorso": 80,
					"UpperTorso": 80,
					"UpperFootR": 80,
					"UpperFootL": 80,
					"LowerFootR": 80,
					"LowerFootL": 80
				},
				"elementBlendMode": {
					"LowerTorso": "Average",
					"UpperTorso": "Average",
					"UpperFootR": "Average",
					"UpperFootL": "Average",
					"LowerFootR": "Average",
					"LowerFootL": "Average"
				}
			}
		},
		"swimback": {
			"movespeedmultiplier": 1,
			"animation": "Swim",
			"animationSpeed": 1,
			"weight": 10,
			"blendMode": "Average",
			"riderAnim": {
				"animation": "ridewyvern-ride",
				"animationSpeed": 1,
				"weight": 1,
				"withFpVariant": true,
				"blendMode": "Average",
				"elementWeight": {
					"LowerTorso": 80,
					"UpperTorso": 80,
					"UpperFootR": 80,
					"UpperFootL": 80,
					"LowerFootR": 80,
					"LowerFootL": 80
				},
				"elementBlendMode": {
					"LowerTorso": "Average",
					"UpperTorso": "Average",
					"UpperFootR": "Average",
					"UpperFootL": "Average",
					"LowerFootR": "Average",
					"LowerFootL": "Average"
				}
			}
		}
	}
}

Project description from Vintage Story Mod DB.

Pick your setup

Jaunt: Entity Movement System releases for each Vintage Story version.

Choose the version and loader you play, then open the matching release.

28 available setups

Showing the newest 12 of 28 game versions. Older files are in the list below.

Check the dependencies, then try the file in a copied instance before changing a world you care about.

Recent files

Jaunt: Entity Movement System versions and loaders

1 of 22 releases match
Clear filters

Looking for an older file? The official Vintage Story Mod DB project page is in Resources.