This plugin is a router that ties the VaM defined actions based on triggers and Timeline animations. You can link actions into a tree of choices to build a consistent story. It supports triggers and multi-context - location/clothes/custom injecting into Voxta.
Instructions:
The flow is like so:
LLM infers an action -> Voxta -> OnActionTrigger -> ActionListManager -> executes triggers, plays animations, changes ActionsList according to it's routing definition and Context in Voxta.
If you defer the action until the character stops speaking (checkbox in the action definition), then ActionListManager memorizes the action and calls it on getting the idle state update from Voxta (when character stop speaking)
I produce Action Bundles that are extensions to the plugin. They contain both animations and action definitions. You can import them into the plugin to have new behaviors for the character. You can find them here:
https://hub.virtamate.com/search/10613148/?q=action+bundle&t=resource&c[users]=vaan20&o=relevance
A word of warning:
This plugin is made specifically for Voxta, which is currently a paid experience. If you want to make use of it, you need to be a patron of this initiative, which I highly encourage you to do.
If you have a hard time understanding either my plugin or Voxta just drop me a message on Discord. We can talk or even do a screen share.
If you like what I'm doing consider subscribing to my Patreon.
------------------------------------------------------------------------------------------------------------------
Character for testing action inference:
------------------------------------------------------------------------------------------------------------------
The LLM model I recommend:
------------------------------------------------------------------------------------------------------------------
More tutorials:
BAM!
User Actions Tutorial
Layers Tutorial
Transition Actions Tutorial
Basic Routing Tutorial
Instructions:
- Add the plugin to the Person atom along with Voxta and Timeline (if you want your actions to have animations)
- Define a tree of actions like the one in my routing tutorial video below.
- Add custom contexts for those actions. The general rule is that when a field is empty it does not substitute the value that already exists. It applies both to context fields and linked actions.
- Context will be constructed like so: "{{char}} is feeling shy. {{char}} is in {{user}} living room. {{char}} is wearing pink blouse and jeans"
- In Voxta plugin "On Action Trigger" call TriggerActionChange on my plugin.
- In Voxta plugin "On State Change" call TriggerStateChange on my plugin.
- In Voxta plugin "On Speak Trigger" call OnTriggerSpeak on my plugin.
- There are 4 types of actions - Normal, User, Transition, Layered:
- Normal actions are executed by Voxta w/o any special effects
- Transition actions are just like normal except action execution will be blocked until Timeline animation finishes
- Layered actions are executed alongside normal actions so multiple action inferences per turn are possible. It's useful for things like facial expressions where the character will do normal action like sit on the sofa and smile at the same time
- User action is something that LLM has no access to and it's actually an action that the user will trigger from the list on the screen or on his wrist watch in VR
The flow is like so:
LLM infers an action -> Voxta -> OnActionTrigger -> ActionListManager -> executes triggers, plays animations, changes ActionsList according to it's routing definition and Context in Voxta.
If you defer the action until the character stops speaking (checkbox in the action definition), then ActionListManager memorizes the action and calls it on getting the idle state update from Voxta (when character stop speaking)
I produce Action Bundles that are extensions to the plugin. They contain both animations and action definitions. You can import them into the plugin to have new behaviors for the character. You can find them here:
https://hub.virtamate.com/search/10613148/?q=action+bundle&t=resource&c[users]=vaan20&o=relevance
A word of warning:
This plugin is made specifically for Voxta, which is currently a paid experience. If you want to make use of it, you need to be a patron of this initiative, which I highly encourage you to do.
If you have a hard time understanding either my plugin or Voxta just drop me a message on Discord. We can talk or even do a screen share.
If you like what I'm doing consider subscribing to my Patreon.
Character for testing action inference:
------------------------------------------------------------------------------------------------------------------
The LLM model I recommend:
------------------------------------------------------------------------------------------------------------------
More tutorials:
BAM!