• Happy Holidays Guest!

    We want to announce that we will be working at reduced staffing for the holidays. Specifically Monday the 23rd until Jan 2nd.

    This will affect approval queue times and responses to support tickets. Please adjust your plans accordingly and enjoy yourselves this holiday season!

  • Hi Guest!

    Please be aware that we have released a critical security patch for VaM. We strongly recommend updating to version 1.22.0.7 using the VaM_Updater found in your installation folder.

    Details about the security patch can be found here.
Expression Randomizer by Extraltodeus

Plugins Expression Randomizer by Extraltodeus

VamTimbo

Well-known member
Featured Contributor
Messages
194
Reactions
3,235
Points
93
VamTimbo submitted a new resource:

Expression Randomizer by Extraltodeus - Expression Randomizer by Extraltodeus

This plugin was originally developed by Extraltodeus - if you're reading this, thanks for your awesome work!

Huge help from Hazmhox! He added some code to make the morphs searchable! This is my go-to plugin for expression randomization, because it's simple and easy to use. Simply select the morphs you want to have randomized, select the options on the left (min / max morph values etc) and press "Play" to make the morphs start to randomize.


View attachment 200969

Read more about this resource...
 
Hi, huiyu914. I don't believe this plugin will work with my morphs because they aren't built-in or pose morphs, whichever the code is referencing. This makes perfect sense for the author to do in my opinion because of the overwhelming amount of addon morphs that most people have. I may be incorrect but that would likely be very difficult for the plugin to load. Plugins like Timeline allow you to check morphs as favorites and then they can be added for animation, however I tested that myself to see if that works and this particular plugin does not recognize my morphs, even if they're selected as favorites. I haven't looked at the code myself, but I'm sure VamTimbo has a perfectly good reason for doing it this way. My guess would be plugin performance, but that's only a guess :)
 
Hi, huiyu914. I don't believe this plugin will work with my morphs because they aren't built-in or pose morphs, whichever the code is referencing. This makes perfect sense for the author to do in my opinion because of the overwhelming amount of addon morphs that most people have. I may be incorrect but that would likely be very difficult for the plugin to load. Plugins like Timeline allow you to check morphs as favorites and then they can be added for animation, however I tested that myself to see if that works and this particular plugin does not recognize my morphs, even if they're selected as favorites. I haven't looked at the code myself, but I'm sure VamTimbo has a perfectly good reason for doing it this way. My guess would be plugin performance, but that's only a guess :)
get it ,thanks reply! your morphs i like it ;)
 
Is there a list available of all the built in expression morphs this plugin will work with?
If you go into the person's morphs and sort by pose morphs only, those will be the ones that can be used. I've updated my morph pack to be compatible with this plugin so I know those work :)
 
If you go into the person's morphs and sort by pose morphs only, those will be the ones that can be used.

For me that brings up all kinds of body moves too, like hand and finger adjustments, etc. I was mainly interested in just the face expressions, although I did see those also mixed in with the others.
 
is there any tutorial that explains this in depth?

I really wish to find a tool that I can manually change face expressions. Could this be useful this way?
 
Last edited:
VamTimbo updated Expression Randomizer by Extraltodeus with a new update entry:

Expression Randomizer Facelift!

HUGE THANKS TO EVERLASTER FOR THIS VERSION!

He took it and ran with it.. lots of improvements and new features:

Some improvements and fixes, and tweaked the presets a bit.
- Fixed issue where the smooth transition to initial state on unchecking a morph toggle didn't go all the way, and the plugin wouldn't relieve control of the morph.
- Fixed issue where linear transitions ("Smooth" toggled off) were way too fast.
- Tweaked the Idle, Flirt and Enjoy presets - hopefully towards the better...

Read the rest of this update entry...
 
Praise God for your awesome work, very slick and convenient ;) Thanks heaps!

But, of course I have a feature request: could you implement a filter which only shows favourised morphs?
I have so many, and my most used are checked as fav. Its a kind of pain to search through all available ones.
 
I guess I'm dumb, but I don't understand how to use this. Could I ask for some brief UI breakdown/tutorial in the readme?

Are those Idle/Flirting/Pleasure buttons above the categories we can switch between? Does that mean we can't have more of them?

Then how does the list of morphs work? Will the plugin always select only one expression from there to be active? Wouldn't it then make sense to have max/min values per morph, since different morphs have different levels of exaggeration?

And last, how do I configure this so the morph changing actually looks dynamic and natural? Even if I change the transition speed to max value, the expressions always change really fast, then stay frozen like that for a couple seconds, and change fast again. It looks very mechanical.
 
Hello,
i've set the plugin like i want, saved in slot1 and to a file BUT, everytime i load the scene, it says me that nothing is saved in slot1 so, the only thing i can do is manually load from file everytime i load the scene..did i missed something?
I see that in triggers there are load preset 1 and 2 options..maybe you can add trigger load preset from file?
thank you for the great plugin
 
be add 1.8 one.
But watching expressionrandomiser.cslist only.
This is the only plugin that doesn't show up for me.
Screenshot_2.png

Screenshot_1.png
 
Last edited:
@everlaster or anyone know if there is a way to infinitely loop the expressions - as it is now I keep having to restart it manually after about 3 to 5 minutes depending on the expression set. Thanks!
 
I missed all those comments and requests for some reason even though I'd definitely downloaded the resource so should've been on the watch list...
But, of course I have a feature request: could you implement a filter which only shows favourised morphs?
Good idea
i've set the plugin like i want, saved in slot1 and to a file BUT, everytime i load the scene, it says me that nothing is saved in slot1 so, the only thing i can do is manually load from file everytime i load the scene..did i missed something?
The slots should save with the plugin IIRC, could be a bug.
maybe you can add trigger load preset from file?
This exists:
1698130829334.png


How to add custom emoticons?
If you mean how to create custom expression presets, select the morphs you want, adjust the slider values and save the preset.
be add 1.8 one.
But watching expressionrandomiser.cslist only.
This is the only plugin that doesn't show up for me.
View attachment 278187
What do you mean it doesn't show up? It shows up in the screenshot you posted.
@everlaster or anyone know if there is a way to infinitely loop the expressions - as it is now I keep having to restart it manually after about 3 to 5 minutes depending on the expression set. Thanks!
I'll see if I can reproduce that
 
I guess I'm dumb, but I don't understand how to use this. Could I ask for some brief UI breakdown/tutorial in the readme?

Are those Idle/Flirting/Pleasure buttons above the categories we can switch between? Does that mean we can't have more of them?

Then how does the list of morphs work? Will the plugin always select only one expression from there to be active? Wouldn't it then make sense to have max/min values per morph, since different morphs have different levels of exaggeration?

And last, how do I configure this so the morph changing actually looks dynamic and natural? Even if I change the transition speed to max value, the expressions always change really fast, then stay frozen like that for a couple seconds, and change fast again. It looks very mechanical.
I am also a little confused on how to use it
Built-in and custom Presets
The Idle, Flirt and Enjoy buttons are prebuilt presets. You can have more presets by using the slots 1 and 2, or saving your preset to a file. A preset consists of all of the slider values, toggle values and the selected morphs.

To save a preset click Save... and then click Slot 1, Slot 2 or File. To load a preset, just click on Slot 1, Slot 2 or File without clicking Save... first.

How the plugin adjusts morphs
The plugin always adjusts all of the selected morphs. There is currently no way to weight the individual morph values. A morph is either part of the set that makes up the expression or not.

"Minimum value" and "Maximum value" define the minimum and maximum morph value that every selected morph can have, multiplied by "Multiplier". The morph values are randomized within this range. E.g. if the range is 0 to 1, every selected morph will get some value between 0 and 1, individual to each morph.

New morph values are calculated at given intervals, and the plugin then transitions the morphs from their current values to the newly calculated values. The transition can be along a smooth in-out curve if "Smooth" is checked, or linear if unchecked.

The interval that defines when new morph values are calculated is defined by "Loop length (s)" divided by "Master speed". If using too high "Morphing speed", the morphs will undergo their transitions in a shorter time than the interval, which can look robotic.

Not every morph necessarily gets a new morph value at every interval - this is controlled by the "Random chances for transitions" toggle and the "Chance to trigger (%)" slider. If the toggle is unchecked, every morph gets a new random value within the min-max range at every interval. Otherwise, the chance for each morph to get a new target value is the Chance to trigger percentage.
 
1698141940182.png

Thank you for answering!
I've found the "load preset with path" trigger after i posted the question here...this also solve the "glitch" that probably only me have (could be related to the messy way i've setup my ever changing scene).
I have a button that have to be pressed anyway at scene start to reset and set some things so, adding an expression preset load trigger to that button, works perfectly (y)
 
Unfortunately this thing modifies all selected morphs instead of one at a time. This means that you cant really set morphs with preset expressions in them, you are essentially just changing the faces shape parts randomly unless I'm doing something wrong. If someone could point me in the direction of a plugin that uses morphs randomly one at a time and then reverts them to 0 that would be great.
 
Unfortunately this thing modifies all selected morphs instead of one at a time. This means that you cant really set morphs with preset expressions in them, you are essentially just changing the faces shape parts randomly unless I'm doing something wrong. If someone could point me in the direction of a plugin that uses morphs randomly one at a time and then reverts them to 0 that would be great.
Exactly what I am stuck at as well... Wanted a plugin that would allow me to randomize only one morph at a time. Everlaster already did create the "Floatparamrandomizer" but that does not allow for that afaik. If there's any chance this plugin or the floatparamrandomizer could introduce such feature, it'd be a dream come true :D
 
Exactly what I am stuck at as well... Wanted a plugin that would allow me to randomize only one morph at a time. Everlaster already did create the "Floatparamrandomizer" but that does not allow for that afaik. If there's any chance this plugin or the floatparamrandomizer could introduce such feature, it'd be a dream come true :D
You can randomize morphs that are favorited with FloatParamRandomizerEE:

1724849112441.png

1724849072661.png


Applies in other contexts as well when you want to trigger a morph value (e.g. via timeline or other)
 
Is possible to randomize multiple moprhs in a sequence and with different min max values each one?
I mean, suppose I have 3 morphs, A, B and C
Create an animation like:

1. Randomize min and max for A (B and C has different min max) and animate it
2. When finish and return to default do the same with B (or with C or with A again, randomize this selection too)

In step 2 would be nice if we can select also morphs that can be merged, for example animate B and C (sometimes only B, sometimes only C, sometimes B and C together, but never A and B or A and C)
 
Back
Top Bottom