Skip to content

MotionVTube Studio tracking for Minecraft avatars

Reproduce head movement, eye state, mouth shapes, and expression sync on your in-game avatar.

Motion preview

Overview

Motion connects to VTube Studio through the WebSocket API or VTS UDP tracking and maps the incoming head, eye, brow, and mouth data onto Minecraft avatars. It can run by itself with vanilla skins or together with Skins, where Skins provides the player texture and Motion owns tracking, overlays, calibration, and avatar-state sync.

Build

bash
# Fabric 1.21.11
./gradlew :loader-fabric:build -PmcVersion=1.21.11 -PonlyLoader=fabric

# NeoForge 1.21.11
./gradlew :loader-neoforge:build -PmcVersion=1.21.11 -PonlyLoader=neoforge

# Paper bridge
./gradlew :loader-paper:build -PonlyLoader=paper

Metadata

  • Loader/API versions are resolved from mcmeta.
  • Motion keeps the umotion:* avatar-state channel namespace.
  • On first startup, Motion can import tracking settings from a legacy skins_client.json if umotion_client.json does not exist.

Downloads

Feature checklist

Track feature progress in the checklist.

Feature highlights

  • VTube Studio WebSocket tracking
  • VTS UDP blendshape tracking
  • Client-side face overlays
  • Multiplayer avatar-state sync
  • Optional Skins coexistence