• Hello Guest!

    We have recently updated our Site Policies regarding the use of Non Commercial content within Paid Content posts. Please read the new policy here.

    An offical announcement about this new policy can be read on our Discord.

    ~The VaMHub Moderation Team
  • Hello Guest!

    We posted an announcment regarding upcoming changes to Paid Content submissions.

    Please see this thread for more information.

Morph Filter Plus (Now with Cloth & Hair filters)

Plugins Morph Filter Plus (Now with Cloth & Hair filters) 8.0

7.0 Release: You can filter clothes and hair now ;) No regex for them though yet
-------------------------------------------------------------------------------------------
Hello Darlings,

TLDR: I'm verbose <3, you can just add this as a session plugin and go about your day, using a legend for functions.

I wrote a filter system into my core VAM assembly and found a way to create a standard plugin for it instead. Filtering has been such a valuable tool to me that I planned to debut a patreon with it. However I realized speeding up morph searches could greatly empower content creators, so I decided to share it for free.

This plugin is designed to be a session plugin. Once you add it, you don't need to think about it, your search bars will automatically be upgraded to be filterable.


WHAT IT DOES
Upgrades your normal morph, clothes, and hair search bars to allow you to use combinations of filters.
Also turns them a refreshing blue.

These filters can do complicated things like:
finding all morphs that include "cheek" and "up" and start with"left" and don't include "butt"
(cheek+up$left--butt)

And they can do simpler but useful things like
finding all morphs that contain both "eye" and "lid".... I do that one a lot.
(eye+lid)



GETTING STARTED / INSTALLATION:
Just add MorphFilterPlus.cslist as a session plugin and go about your work or play.
The plugin automatically upgrades your people's search bars to have special filter options.
You can add it at any time, it will scan for present people and listen for additional people.

the Plugin UI allows you to enable/disable "Live Filtering" for morphs (its always on for hair / clothes).
While TRUE your morph filter will be submitted every time a new character is entered, if it meets the minimum set in the UI (default 3)
While FALSE the morph filter will wait for you to submit by pressing enter or clicking away.

You may also optionally convert spaces into the '+' symbol (they will still appear as spaces as you type).



HOW TO USE IT
you can use the search bars as normal, or use the following character combos to filter your search:

& : "And" Splits your search into a set of required filters that must all be true (only useful if you're also using %)
% : "Or" splits each of those filters into optional parts, where at least one part must be true.
Alternatively, you can use / or | for OR.

The optional constraints come before a string, and are as follows:
= : "Exactly Matches" (must be first character in a filter and isn't compatible with others unless using OR %)
+ : "Includes", essentially the normal search type. This is implied if the first string has no special character.
-- : "Does not include." You can alternatively use !
$
: "Starts With"
-$ : "Does not start with." You can alternatively use !$


@
: "Regular Expression", MORPHS ONLY This must be your first character and is not compatible with any other code above. The string following @ is converted into a regular expression when you submit it. While typing a regular expression, live filtering is automatically (and temporarily) disabled. Regex is a fancy standardized filter format that I am not equipped to provide instructions for, but here is a link to a cheatsheet I am studying.



IMPORTANT USAGE CONCEPTS
the AND operator is applied first. and the OR operator applied second.

"A+B%C" results in two filters, at least one of which must be met: [A + B] OR [C].

"A+B&C+D%E" results in a compound filter: [A + B] AND ([C+D] or [E]). Both sides of the and must be met.

If you don't use an OR (%) then there's no real need for an AND (&) because all the constraints are implicitly additive.
for example: elf+ear&--left--lobe could omit the & to become elf+ear--left--lobe and it would make no difference. And(&) is just an option to add a requirement set above Or(%).

Whitespace is NOT ignored. Just like the normal search, if you have a space in there, it will be considered part of the filter. Make sure not to leave spaces between your constraints if you aren't looking for them.
Note: as of 4.0 you may convert spaces to '+' automatically via the plugin UI, as an option.



EXAMPLE SEARCHES

lip+curv+top--corner: contains lip, curve, and top, but not corner

nose&ridge%root&--bridge: contains nose and contains ridge or root, but doesn't contain bridge.

define%tone: contains define OR tone

squint-$aa: contains squint and does not start with 'AA'

open+eye: contains open and eye

belly%stomac%abd%waist--wasp: contains belly OR stomac OR abd OR waist without wasp

lip+corner%smil$aa: contains lip and corner OR contains smil and starts with 'AA'


New examples with '&' in 3.0


left&leg%thigh%calf+upper: includes left AND any of the following: leg, thigh, or calf and upper.

lip%mouth+curv&$up%top: includes [ lip or (mouth and curve) ] AND [ (starts with up) or top ]


Regex example in 4.0:

@lip.(top|curv) : includes lip, followed by any character and then either top or curv

all regex searches must begin with '@'
useful regex examples welcome, I'm not good at regex yet. I will add more soon.




KNOWN ISSUES
  • Hair and Clothing searches are live-filtering only.
  • Regex is not in place for clothing and hair searches (because of the above)
  • Selecting an option from the "Default" morph dropdown commands will unapply your filter :(
  • Morphs remain filtered after removing plugin or atom (minor issue; any search or toggle will reset).
  • There is some overhead (lag) in choosing morph categories or display type (morph vs pose) as the filter reapplies.
  • There may be some occasional overhead when re-enabling UI as the filter reapplies. This will only be noticeable for large morph libraries, but shouldn't be significant. I am looking at some potential fixes or improvements there.


Special thanks to @everlaster for regex concepts and helping to discover some code solutions.
Thanks also to @Eye9 and @cmramlow for helping to discover and debug issues.
Enjoy
Author
GossamerVR
Downloads
8,555
Views
9,666
First release
Last update
Rating
5.00 star(s) 9 ratings

More resources from GossamerVR

Latest updates

  1. Hotfix: re-fixed keeping filter when clicking toggles

    Apologies, dears It appears in my eagerness to optimize refresh calls I cut too many out and...
  2. Now Filtering Clothes and Hair Too

    Hello, Darlings I am happy to have a shiny new package for you. Features You can now filter...
  3. Minor Hotfix: Re-enabled "Convert Spaces" option

    Part of my refactoring required deconstructing the space to + conversion option and I forgot...

Latest reviews

Absolute game changer. Now I can bring up all my frequently used morphs
at once. Just cut & paste from a text file, no typing! Legendary. Thank you for this.
Upvote 0
Great plugin! I'm hopping that the disable live search for hair and cloths get fixed. I don't know why it isnt the default. VAM is a heavy game and live only gets him slower.
Upvote 0
Such a time saver. Thank you so much for this!
GossamerVR
GossamerVR
You're welcome!
Upvote 0
One of the best QoL plugins
GossamerVR
GossamerVR
Thanks so much <3 I am glad it is useful
Upvote 0
Fu**** LOVE this darling guy!
GossamerVR
GossamerVR
I'm glad the works have been helpful
Upvote 0
!!!
GossamerVR
GossamerVR
<3 <3 <3
Upvote 0
amazing been hoping for a plugin with search functionality for some time
GossamerVR
GossamerVR
glad it has been helpful!
Upvote 0
this thing even support regex!
GossamerVR
GossamerVR
yes I'm hoping to learn regex more to make better use of it myself ^_^
Upvote 0
Handy plugin! 👍
GossamerVR
GossamerVR
Thanks!
Upvote 0
Back
Top Bottom