Skip to content

vlazed Scripts

vlazed edited this page Jun 26, 2026 · 6 revisions

Quality-of-life scripts for SMH animations

Warning

Due to the volatile nature of the beta, the following content is subject to deprecation.

The Stop Motion Helper Beta adds multiple scripts to make it easier to animate in Stop Motion Helpre

sync_rgm_to_smh

Usage

Adds convar sync_rgm_to_smh. and sync_rgm_to_smh_locks Set it to 1 to enable and 0 to disable.

  • If sync_rgm_to_smh is enabled, select any bone with Ragdoll Mover. The motion path for the bone should update. In addition, frame changes will automatically set the gizmo position.
  • If sync_rgm_to_smh_locks is enabled along with the above convar, then entity constraints from Ragdoll Mover will be set upon frame change. For instance, if an entity constraint for a ragdoll is in a car, then this script will preserve the local position and oreintation of the ragdoll with respect to the car during frame changes from SMH.

Notes

  • By default, if a nonphysical bone is selected, the gizmo does not update itself if the nonphysical bone moved from external sources, such as from Stop Motion Helper. This script fixes that by ensuring that the gizmo is updated on frame changes. However, this requires a slight modification to Ragdoll Mover, which sets the function rgmSendBonePos to a global function (remove the local declaration).

cl_tool_smh_sync

Usage

Adds the following convars:

  • sync_smh_to_facepose,
  • sync_smh_to_eyepose, and
  • sync_smh_to_fingerpose.

Set it to 1 to enable and 0 to disable. If enabled, first select an entity with SMH, set two facepose/eyepose/fingerpose keyframes, and switch between the frames. If done correctly, the UI for the faceposer, eyeposer, or fingerposer should update itself

Notes

  • (4/20/2026) This script comes with the SMHEntitySyncFactory method, which is global. I might make this a separate thing, but I'll keep it in this script for now

sh_smh_unstretch

Usage

Adds vlazed_unstretch_picker, which unstretches the entity that you're looking at. If you have the following addons, then you can use their respective commands or variables:

  • Ragdoll Mover: Use vlazed_unstretch_rgm to unstretch the selected Ragdoll Mover entity
  • Stop Motion Helper: Use vlazed_unstretch_smh to unstretch the selected SMH entity. You can also use vlazed_unstretch_smh_sync 1 to unstretch an entity on frame change
  • Ragdoll Unstretch: If Ragdoll Unstretch tool is installed, then you can set vlazed_unstretch_dopeak 1 to use its unstretching method

Notes

  • This addon is best used when a ragdoll's stretch flag is set to false. This is a symptom of physics objects when their translational component is offset from its parent physics object.
  • By default, this does not affect entities that have the stretch flag set. To truly unstretch a ragdoll, you need to have the Ragdoll Unstretch tool and set vlazed_unstretch_dopeak 1

Clone this wiki locally