ViRo Live Console Commands

ViRo Live Console Commands provide amazing functionality for any performer looking to refine every aspect of their performance.  With these, you can load new props, bring in fully designed 3d backgrounds, and even import custom made avatars!  Pretty cool, right?  This is here so you can dive right in without having to wait for us to develop additional tools to get the results you want.  It also works with the windows clipboard so you can control ViRo Live Studio with things like TouchPortal or even a website.

Essential Info: Paths and Custom User Content

Essential Info:  Paths and Asset Bundle Scenes

Finding the object you want to adjust is a fundamental part of using console commands.  Paths are key to nearly every command since they tell ViRo Live Studio which object to apply the command to.  The path is like files on a computer inside a number of folders.

Let’s take a look at an example

SetActiveState “/Props/Hand held/PropDildo” false

This command looks for an object called “PropDildo” and turns it off.  Pretty simple, right?

 

Let’s try something a little more involved

FollowGameOjbect @”props” “butt toys/small plug” @”Dragon” “Grab_RH”

Woah!  That’s way more complex! 

Let’s break it down.

This command finds the game object called “small plug” which is a child object of “butt toys”  in the “propsasset bundle scene and makes it follow (move with) the “Grab_RH” game object found in the “Dragonasset bundle scene.

What?  That isn’t any more clear?  Maybe its a good time to tell you what an Asset Bundle Scene is.

An Asset Bundle Scene is like adding a custom level on top of the existing ViRo Live Studio scene (the regular thing you see when you simply boot ViRo Live Studio).  You can load any custom Asset Bundle Scene you like as long as you place it in the “User Content\Asset Bundles\” folder where your ViRo Live Studio app is installed.

You can make them yourselves or grab one from another creator.  It makes expanding ViRo Live Studio possible.

Custom User Content

LoadAssetBundleScenes

LoadAssetBundleScenes
string

Loads a scene asset bundle that was exported from Unity editor

LoadAssetBundleScenes props
  • Loads the scene asset bundle “props” and all the objects in it.

SetAvatar

SetAvatar

This will take a character loaded from an asset bundle scene and rig it to work with ViRo Live Studio.  The character must be set up as a Humanoid with Unity

SetAvatar @"Dragon" "Dragon_Girl_Rigged_V2"
  • Rigs the “Dragon_Girl_Rigged_V2” for motion in the “Dragon” asset bundle scene
  • Use “VRM” if you’re using to a VRoid character (EX:  SetAvatar @”VRoid_Neko-Chan” “Neko-Chan” VRM)

SetActiveCamera

SetActiveCamera

This will take a camera loaded from a scene asset bundle and and make it active.  This allows the camera to look at a target and to have its FOV adjusted.

SetCamera @"Dragon_Cave" "Camera_02"
  • This makes the camera (camera_02) in the scene asset bundle (Dragon_Cave) the active camera
  • Pro Tip: Use with FollowGameObject “LTS_Camera” to make it grabbable.

UnloadAssetBundleScenes

UnloadAssetBundleScenes
string

Loads a scene asset bundle that was exported from Unity editor

LoadAssetBundleScenes props
  • Loads the scene asset bundle “props” and all the objects in it.

FocusInputField

FocusInputField

This allows you to select an input field in a UI

FocusInputField @"custom scene" "top tipper name"
  • Focuses on an Input Field

Objects

SetActiveState

SetActiveState
bool

 

SetActiveState sets the object’s active state.  Good for turning it on or off.

 

SetActiveState “Fun Toy” true

  • This would turn the object “Fun Toy” on

SetActiveState @“props” “Butt Toy” false

  • This would turn the object “Butt Toy” in the Asset Bundle Scene “props” off.  Such a shame.

ToggleActiveState

ToggleActiveState

ToggleActiveState  is a lot like SetActiveState but it toggles an object on and off every time its used.

 

ToggleActiveState “Fun Toy” true

  • This would turn the object “Fun Toy” on if it was already off.  It would turn it off if it was already on.

SetEnabledState

SetEnabledState
string
bool

Some objects have components on them.  They can be scripts, lights, particles, sounds, or any number of things.  SetEnabledState lets you turn on a piece of the object’s capability.

SetEnabledState “ball” “AudioSource” true

  • This would look for the “ball” object and turn on the audio source (which typically plays a sound).  Pretty cool, right?

ToggleEnabledState

ToggleEnabledState
string

This is the same as SetEnabledState but it toggles true/false each time you use it.

ToggleEnabledState “ball” “AudioSource”


SetPositionLocal

SetPositionLocal
float
float
float

This will set an object to the exact position relative to its parent object

SetPositionLocal "butt_toy" 0.0 1.0 2.3
  • This will move “butt_toy” to 0.0 on the X axis, 1.0 on the Y axis, and 2.3 on the Z axis relative to its parent object

SetPositionGlobal

SetPositionGlobal
float
float
float

This will place an object to the exact world coordinates

SetPositionGlobal "fun object" 1.0 1.0 2.3
  • This will set “fun object” 1.0 on the X axis, 1.0 on the Y axis, and 2.3 on the Z axis in world coordinates

MovePositionLocal

MovePositionLocal
float
float
float

This will move an object from is current position relative to it’s parent object

MovePositionLocal "butt_toy" 0.0 1.0 2.3
  • This will move “butt_toy” 0.0 on the X axis, 1.0 on the Y axis, and 2.3 on the Z axis relative to its parent object

MovePositionGlobal

MovePositionGlobal
float
float
float

This will move an object in world coordinates relative to it’s current position

MovePositionGlobal "fun object" 1.0 1.0 2.3
  • This will move “fun object” 1.0 on the X axis, 1.0 on the Y axis, and 2.3 on the Z axis in world coordinates from it’s current position

SetRotationLocal

SetPositionLocal
float
float
float

This will set an object to the exact rotation relative to its parent object

SetRotationLocal "butt_toy" 0.0 90.0 122.3
  • This will rotate “butt_toy” to 0.0 on the X axis, 90.0 on the Y axis, and 122.3 on the Z axis relative to its parent object

SetRotationGlobal

SetPositionLocal
float
float
float

This will set the exact world coordinate rotation

SetRotationGlobal "butt_toy" 0.0 90.0 -45.0
  • This will rotate to the exact world coordinates “butt_toy” to 0.0 on the X axis, 90.0 on the Y axis, and -45 on the Z axis on

RotateObjectLocal

RotateObjectLocal
float
float
float

This will adjust the rotation from its current rotation

RotationObjectLocal "butt_toy" 0.0 90.0 45
  • If the “butt toy” had an existing local rotation value of 60 -90 45, this will rotate “butt_toy” to 0.0 on the X axis, 90.0 on the Y axis, and 60 on the Z axis relative to its parent object resulting in an end result of 60x 0y 90z

RotateObjectGlobal

RotateObjectGlobal
float
float
float

This will adjust the rotation from its current rotation in world coordinates

RotationObjectGlobal "butt_toy" 0.0 90.0 45
  • This will adjust the existing rotation “butt_toy” to 0.0 on the X axis, 90.0 on the Y axis, and 60 on the Z axis in world coordinates

SetScale

SetScale
float
(float)

This sets the scale of an object over time.

SetScale "fun object" 2.0 0.5
  • This scale the object to 2.0 on X Y Z over the course of 0.5 seconds

FollowGameObject

FollowGameObject
(float)

This takes one object, and has it follow another object.  It can be instant or a smooth delay

FollowGameObject "Dildo" "Grab_RH" 0.2
  • This will have the “Dildo” object follow “Grab_RH” at a speed of 0.2

StopFollowingGameObject

StopFollowingGameObject

This will take an object that is following another object and have it stop following in place

StopFollowingGameObject "Dildo"
  • This will have the “Dildo” stop object following if it was previously set to follow

Adult Toy Haptics

SetSearchForHapticDevices

SetSearchForHapticDevices
bool

When set to true, this tells the haptics system to start searching for nearby bluetooth adult toys to connect with.  It will continue searching until set to false again

SetSearchForHapticDevices true

  • Begins searching for toys.  You can see a list of connected toys in the Control section of the Menu.

ToggleSearchForHapticDevices

ToggleSearchForHapticDevices

This toggles on/off the search for new haptic toys.

ToggleSearchForHapticDevices


RestartButtplugServer

RestartButtplugServer

This disconnects all toys and restarts the haptic engine.

RestartButtplugServer

AddHapticsToGameObject

AddHapticsToGameObject

AddHapticsToGameObject is a fun one.  It needs three objects to work.  A start point, end point, and an object to track the distance.  This will make haptic toys start vibrating when the tracked object moves between the start and end point.  The closer to the end point, the more it vibrates.  Imagine all the shenanigans!  Naughty accordion?  I think so 😉

AddHapticsToGameObject “Grab_LH” “Pelvis” “Grab_RH”
  • This would make it so if my right hand was between my left hand and pelvis, the connected adult toys would start buzzing.  The closer to the pelvis, the more it buzzes.  OwO!

SetVibrationMultiplier

SetVibrationMultiplier
float

This applies a multiplier to the input haptic value.  So, if you SetVibrationMultiplier 2.0, then all values would be doubled.  It all gets capped at a max value so 2 x 50% would be 100% vibration and 2 x 75% would also result with 100% vibration.

This is also a good way to tone things down on sensitive days.

SetVibrationMultiplier 0.5
  • This would cut all vibration levels to half.

SetVibration

SetVibration
float
(float)

This sets the vibration level and allows for a duration.

SetVibration 1.0 5.0
  • This would set the vibration to 1.0 (range is 0.0 to 1.0 so 1.0 is 100% vibration) for 5.0 seconds

LerpVibration

LerpVibration
float
float

This will smoothly ramp the vibration to a value for that smooth action.

LerpVibration 0.2 3.3
  • This would ramp vibration to 0.2 (20%) over the course of 3.3 seconds.

StopVibration

StopVibration

This one stops all current vibrations.

StopVibration

LinkVibrationToAnimatorFloat

LinkVibrationToAnimatorFloat
string

This allows you to take the current vibration level and send that number to an animator.  This allows you to control an animation based on the vibration level.

LinkVibrationToAnimatorFloat “OnScreenVibrator”

ActivateHapticRider

ActivateHapticRider
float

This turns on the lewd toy that follows your pelvis.  Go ahead, sit on it and see what happens 😉

ActivateHapticRider 30.0
  • OOooooooo, that feels nice.  The number at the end sets the duration.  It stays on if no number is given.

DeactivateHapticRider

DeactivateHapticRider

This turns off the lewd toy that follows your pelvis.  Gonna miss it.

DeactivateHapticRider
  • Turns it off…for now

Lights

SetLightColor

SetLightColor
float
float
float

 

SetLightColor @“dungeon” "main_light" 1.0 1.0 1.0
  • This will set the light color of “main_light” in the scene asset bundle “dungeon” to an RGB value of 1.0 1.0 1.0 (white)

SetLightIntensity

SetLightIntensity
float

 

SetLightIntensity @“dungeon” "main_light" 0.4
  • This will set the light intensity of “main_light” in the scene asset bundle “dungeon” to 0.4

SetLightRange

SetLightRange
float

 

SetLightIntensity @“dungeon” "main_light" 10
  • This will set the light range of “main_light” in the scene asset bundle “dungeon” to 10 (meters)

Materials

SetMatierialFloat

SetMaterialFloat
int
string
float

 

SetMaterialFloat “panties” 1  _EmissionColor 2.0 0.0 2.0
  • This will make the first material in the “panties” object emit a bright purple (if Emission is enabled on the matieral).  Uses HDR color space.

SetMaterialColor

SetMaterialColor
int
string
float
float
float
(float)

 

SetMaterialColor “panties” 1 0.25 0 1 0.5
  • This will set the color of the 1st material to 0.25 in red, 0 in green, 1.0 in blue, and 0.5 in alpha (if the material supports alpha)

Particles

EmitParticles

EmitParticles
float
(float)

This tells an object with a particle system component to emit particles, how many per second, and for how long

EmitParticles “PFX_Hearts” 3.0 5.5
  • This will emit 3 particles from PFX_Hearts every second for 5.5 seconds

Audio

MuteMic

MuteMic

This mutes the mic when using ViRo Live Studio’s companion app, ViRo Live Face Portal

MuteMic
  • Turns the mic off

UnmuteMic

UnmuteMic

This unmutes the mic when using ViRo Live Studio’s companion app, ViRo Live Face Portal

UnmuteMic
  • Turns the mic on

PlayMusic

PlayMusic
string
(float)

This will play music

PlayMusic "lewdy toons" 0.4
  • Plays the audio file “lewdy toons” from the User Assets/Audio path with a volume of 0.4 (40%)

StopMusic

StopMusic

This will stop music

StopMusic
  • Stops music

PlaySound

PlaySound
string
(float)

This will play a sound from the User Assets/Audio path

PlaySound "moan" 1.0
  • Plays the sound effect “moan” at full volume (1.0 = 100%)

Streaming

LoadVRMCharacterAtIndex

LoadVRMCharacterAtIndex
int

This will load a VRoid character save in a slot.

LoadVRMCharacterAtIndex 4
  • This will load the 4th VRoid character

ToggleBRB

ToggleBRB

This will toggle on/off Be Right Back mode

ToggleBRB
  • If BRB is on, it turns it off.  If its off, then it toggles on.

SetBRB

SetBRB
bool

This will Be Right Back mode on or off (true / false)

SetBRB true
  • Turns on BRB mode

TakeScreenshot

TakeScreenshot

This takes a screenshot of the screen

TakeScreenshot
  • Creates a screenshot in .png format

SetAvatarLookAtCamera

SetAvatarLookAtCamera
bool

This allows you to set the avatar to look at the camera within a range.

SetAvatarLookAtCamera true
  • The avatar will look towards the camera

ToggleAvatarLookAtCamera

ToggleAvatarLookAtCamera

This allows you to toggle the avatar to look at the camera within a range.

ToggleAvatarLookAtCamera
  • The avatar will look towards the camera if it isn’t currently on.

Animation

SetAnimatorFloat

SetAnimatorFloat
string
float

Sets an object’s animator parameter float.  Use this to change it’s state.

SetAnimatorFloat "bounce_ball" "bounce_rate" 2.5
  • Sets the Animator parameter “bounce_rate” to 2.5 on the object “bounce_ball”

SetAnimatorInt

SetAnimatorInt
string
int

 

Sets an object’s animator parameter int.  Use this to change it’s state.

SetAnimatorInt "bounce_ball" "bounce_rate" 4
  • Sets the Animator parameter “bounce_rate” to 4 on the object “bounce_ball”

SetAnimatorBool

SetAnimatorBool
string
bool

Sets an object’s animator parameter bool.  Use this to change it’s state.

SetAnimatorBool "bounce_ball" "bounce" true
  • Sets the Animator parameter “bounce” to true on the object “bounce_ball”

SetAnimatorTrigger

SetAnimatorTrigger
string

Sets an object’s animator parameter trigger.  Use this to change it’s state.

SetAnimatorTrigger "bounce_ball" "stop_bouncing"
  • Sets the Animator parameter “stop_bouncing”  on the object “bounce_ball”

PlayAnimation

PlayAnimation

Play an animation clip on an object

PlayAnimation "bounce_ball"
  • Tells “bounce_ball” to play its animation

SetBlendShapeValue

SetBlendShapeValue
string
float

Sets a blend shape value on an object.  Good for face expressions and such.

SetBlendShapeValue "Face" "Ahegao" 100
  • Sets the blend shape “Ahegao” on the “Face” object to 100

SetFaceMapping

SetFaceMapping

Connects the current active scene character’s face (SkinnedMeshRenderer) to face tracking

SetFaceMapping @"Dragon" "dragon_face_rigged"
  • this command is not needed if the face SkinnedMeshRenderer is on an object that has “face” or “head” (not case-sensitive) somewhere in the name, or the SkinnedMeshRenderer has the “Face” tag (case sensitive)
  • Use “VRM” if you’re connecting to a VRoid character (EX:  SetFaceMapping @”VRoid_Neko-Chan” “cute face” VRM)