This is an old revision of the document!
Table of Contents
Ultimate Character Control
https://marketplace.secondlife.com/p/Disvail-Dynamics-Ultimate-Character-Control/27304089
This is the successor to Undressify.
To spread the the tool to a wider range of users, it is rebranded to a more 'interesting' name.
Functions will stay the same and undressify is basicly a part and the core of the system.
But there is an opportunity to add a wider range of tools and shenanigans, to bring the system to a bright future.
Key Features:
- β Custom sounds
- β Custom animations for optional animated undressing
- β Automatic hoverheight adjustment for boots and feet
- β SafeSitter to protect you from unwanted people and objects when sitting
- β optional DiscordNotifier for you to follow and record
- β Random outfits and a redress timer
- β Optional Bumper to loose outfit parts
- β Follow your friends in a region
Advantages:
- Keep your complexity low by avoiding transparent body parts.
- π― One avatar setup for multiple related outfits
- π― No need to search through your inventory to change clothing layers.
- π Faster, cleaner, and more intuitive experience overall.
- β A more lively impression
Requirements:
- π― Speak english
- π― use RLV compatible viewer
- π― use your brain
Feedback & Support:
If you discover a bug or encounter a problem, please report it via Discord.
Feature requests are also welcome through the same channel.
Conclusion: A fresh start was necessary β and it comes with smarter design and improved usability.
Tested SL Clients
- Alchemy Viewer
- Firestorm Viewer
- Black Dragon
- Restrained Love viewer
- Kokua Viewer
- Radegast Text Viewer NOT RECOMMENDED
- Catznip
- Genesis
- Singularity
- mysmartbots NOT RECOMMENDED Payed RLV - Closed source.
- Corrade Bot NOT RECOMMENDED RLV is super outdated. Only 16 available attachement points. Reactiontime is very slow.
- Lumiya Mobile client
UCC Changelog
π οΈ Latest Updates & Changes
Version 1.96 * β added notecard to change animations * β added free storage space to options menu * β fixed a math error in hoverheight * β hoverheight is finally not spamming anymore * β autogroup plugin does npt spam anymore and is more reliable * β fixed a overflo problem with extender.core
Version 1.95 * β found a way to stop effects easy. * β fixed effect timings * β fixed problem with owner and user differ when using gestures * β Settings will only be shown in Options and Access from now on * β renamed Simrating to PGSafe for clarification * β renamed SitGuard to SafeSitter for clarification * β New option to check a users accountage before access is granted * β added option DistanceTracker to show if a user over set distance tries to access UCC * β changed animation and attachmentpoint of the updater * β hardcoded the updater * β optional hud with direct access to menus * β incorrect distance display was fixed
Version 1.94 * β added dressing and redressing animation for outfits * β added plugin uninstaller in options * β added option to remove plugins * β changed buttons in plugins from 'main' to 'back' to return to the plugin menu * β added variable hoverheight * β added sound for redressing * β renamed DiscordTracker to DiscordNotifier to show its not harmful. * β log who used your undressify and how, to your personal discord webhook. This is purely optional and up to your convinience to use. * β added DiscordWebhook as Option to send statistics data to your own discord server. This is purely optional * β added sections for access and options to the tutorial * β added new option "effects"
This changelog reflects the most recent updates to Undressify. Older versions and legacy features may no longer be supported.
Group & Discord
Find the Discord server here and inworld group lookup Disvail Dynamics
Optional HUD
How to Create the Avatar Folder
!! NEVER KEEP THE TOOL WITHIN YOUR `~undressify` FOLDER !!
Doing so will cause the tool to be detached when you change avatars.
β οΈ I take no responsibility if the HUD fails to work with other RLV tools.
You must create a basic folder structure as explained below.
This structure is essential for Undressify to function properly.
Required Folder Structure:
How to Setup Folders - Video
π Avatar Folder:
- `#RLV/~undressify/av/youravatarname`
Place your naked avatar into this folder.
π« WITHOUT TESTICLES! Unless you *really* want to carry scriptbombs.
You can have multiple avatar folders.
Load an avatar using the Avatar button!v
π§₯ Version 1 β One outfit folder for all avatars
Create the following structure:
#RLV/~undressify/of/
βββ nameofyouroutfit/
βββ top_1
βββ pants_1
βββ top_2
βββ pants_2
βββ top_3
βββ pants_3
βββ top_0 / pants_0 (optional)
π§₯ Version 2 β One Outfit Folder per Avatar (default setting)
π§₯ Optional Setup: You can organize outfits per avatar by enabling avatar-specific mode (`avspecific`).
Folder Structure Example:
#RLV/~undressify/of_avatarname/
βββ nameofyouroutfit/
βββ top_1
βββ pants_1
βββ top_2
βββ pants_2
βββ top_3
βββ pants_3
βββ top_0 / pants_0 (optional)
Folder Layer Meanings
π Layers are restricted to three (3).
π Each folder suffix defines how the clothing behaves during undressing.
Refer to the table below for clarity:
| Folder Suffix | Meaning | Notes |
|---|---|---|
| `_1` | Top layer | Visible clothing |
| `_2` | Underwear or secondary layer | Optional |
| `_3` | Naked layer or extras | Optional, requires `_2` to be present |
| `_0` | Hidden layer | Inaccessible to others (e.g. tattoos or outfit-specific details) |
You can create multiple outfit folders to suit different styles or avatars.
π Outfits with
*
in its name are only visible for you
How to Use:
- Load an outfit using the Outfits button.
- The Clothing button will appear next.
- π Click the Clothing button to preview how your clothing will be undressed.
- You can now click your belly or lower back to open the menu and load your avatar, outfit, etc.
- π Go to the main menu and click on βoutfitβ to begin.
Addons & AvAddons
π― Addons
Addons are items you'd like to load with every avatar and outfit β such as HUDs, toys, or utility tools.

π Folder Structure:
#RLV
βββ~undressify
βββaddon
βββcategory
βββitem
βββyour item goes here
Use categories to organize your items e.g.
HUDs Accessories Scripts
These items are loaded globally, no matter which avatar or outfit is selected.
β Important: None of these folders are created automatically. You must create them manually before placing items inside.
𧬠AvAddons
AvAddons are items you'd like to load with your current avatar and outfit only β perfect for avatar-specific HUDs, toys, or gear.

π Folder Structure:
#RLV
βββ~undressify
βββav_addons
βββavatar name
βββcategory
βββitem
βββyour item goes here
β Example:
- Global HUD:
#RLV/~undressify/addon/HUDs/gestureHUD/
- Avatar-specific toy:
#RLV/~undressify/av_addons/avatarname/Toys/bubblewand/
π§ Note: AvAddon folders are not created automatically either. You need to create them manually to use them.
π Starting with version 1.63:
- If you select a different subfolder within the same category, other items in that category will be automatically removed.
- To hide any addon folder from the menu, simply add a
*
at the end of the folder name.
π Managing Addons: Use the Options menu to activate or deactivate Addons and AvAddons for other users.
Example Folder Layout
This is a complete example of how to structure your Undressify outfit folders.
#RLV/
βββ ~undressify/
βββ addon/
β βββ HUDs/
β β βββ gestureHUD/
β β β βββitem
β β βββ AOcontroller/
β β β βββitem
β βββ Accessories/
β β βββ smartGlasses/
β β β βββitem
β β βββ wristwatch/
β β β βββitem
β βββ Scripts/
β βββ autoSit/
β βββitem
β
βββ effects/
β ββ effectname/
β βββitem
β
β
βββ av_addons/
β βββ Luna/
β β βββ Toys/
β β β βββ bubblewand/
β β β β βββitem
β β β βββ leash
β β β βββitem
β β βββ HUDs/
β β β βββ lunaHUD
β β β βββitem
β β βββ Accessories/
β β βββ collar
β β βββitem
β βββ Rex/
β βββ Gear/
β β βββ combatVest
β β β βββitem
β β βββ scanner
β β β βββitem
β βββ HUDs/
β βββ rexHUD/
β βββitem
β
βββ av/
β βββ Luna/
β βββ Rex/
β
βββ of/
βββ CasualLook/
βββ top_1
βββ pants_1
βββ top_2
βββ pants_2
βββ top_3
βββ pants_3
βββ base_0
βββ stuff_0_0.100 β optional item with hover height control
β Note: None of these folders are created automatically. You must create them manually before placing items inside.
π§© Tips:
- The folder under `of/` is your outfit name (e.g. `CasualLook`)
- Items use suffixes like `_1`, `_2`, `_3` to define layer priority
- Items with `_0` are optional base layers
- You can append `_0.100`, `_0.050`, etc. to an item name to control avatar hover height
Sounds & Animations
π΅ Sounds Sounds correspond to the folder names. If you have a folder named
top_1
the sound played will be
top
You can place your own sound files inside the object to customize the experience.
π¬ Animations Animations follow the same logic: A folder named
pants_2
will trigger the animation named
pants
Hoverheight Control
π To automatically adjust your avatar's hover height, include a folder like:
stuff_0_0.100
Version 1.94 and up will support the following new setting based on your .feet notecard to have two possible hoverheights.
Both work
stuff_0_0.100_0.005
_0
means the item won't appear in the dialog.
_0.100
sets your hover height to 100mm above ground.
_0.005
sets your hover height to 5mm above ground when undressing anything listed in your .lower config. Activate it via:
Options > Hoverheight
πͺ If you sit on an object or the ground, your hover height will reset to 0. This helps avoid manually adjusting poses or animations.
Options
| Option | Meaning | Notes |
|---|---|---|
| PGSafe | Automatic system to control access in non adult regions | Optional |
| Autoclean | Autoclean Spunked cumlayer on redress | Optional |
| RemovePlugin | Choose a plugin to remove | Optional |
| AVSpecific | Choose wether you want to use 'of' or 'of_<avatarname>' | Optional |
| Distance | Minimum distance of avatars to use the system | Default 15m |
| Animations | Animation system when dressing or undressing | Optional |
| Sound | Sound system when dressing or undressing | Optional |
| Animations | Animation system when dressing or undressing | Optional |
| Webhook | Enter a webhook for your discord channel to display statistics and more | Optional |
| SendData | Deavtivates and activates the webhook | Optional |
| DistanceTracker | Tracks avatars clicking from to far away | Optional |
Access
| AccessOption | |
|---|---|
| Friends | Your SL-Friendlist has access |
| Allow Outfits | Give users access to change your outfits |
| Allow Avatars | Give users access to change your avatars |
| AllowAVAddons | Give users access to change your avaddons |
| AllowAddon | Give users access to change your addons |
| Clear | Clear access list |
| Open | Open access for everyone |
| Lock | Lock access |
| SittersOnly | Only people sitting on the same object can use the system |
| Add/Remove | Add or remove people from the access list |
| ObjectAccess | allow other scripts to control your system |
| AgeCheck | Enable or disable age verification |
| Age | Se the minimum age of a user to avcces your menu |
Plugins
π Redress Timer Automatically redresses you once no one is within a specified range, after a variable delay.
π² Randomizer Selects a random outfit every xx seconds.
πΆ Follow Lets you pick an avatar to follow automatically.
π€ Bumper Lets you loose clothing if you run into someone or if someone runs in to you
SafeSitter
π‘οΈ SafeSitter β Intelligent Sit Monitoring for Second Life
SafeSitter is a specialized script that monitors avatars sitting on the same object as you.
If someone matches a ban list, wears flagged items, or uses content from creators you choose not to support, SafeSitter will automatically react.
You can configure SafeSitter's blacklisted items, people and creators from the notecards within UCC.
Rightclick and edit your UCC system. Look for the notecards with blacklist in the name and whitelist.
π Core Functionality: - Scans co-sitters in real time - Detects banned avatars or worn items - Identifies creators youβve blacklisted - Forces you to stand and re-sit once the avatar leaves the scan area
π« Why SafeSitter? - Maintain control over shared seating - Avoid unwanted interactions - Enforce personal or community standards
SafeSitter runs silently and efficiently, giving you peace of mind without disrupting your experience.
Tips & Tricks
π§΅ If you change textures via a HUD (e.g. color or material changes), detach the item manually and reattach it after the change. Second Life may ignore HUD-based changes if the item is removed via RLV.
π You can place your own sounds inside the object to override default ones. Just match the sound name to the folder prefix (e.g.
top
for
top_1
Effects
For effects, you need to buy the effect. Then place the effect prim in a folder like shown below.
Then use the included installer.

API / Creators
UCC listens on channel 5100
and sends on channel 5200
Commands
| Command | |
|---|---|
| `outfit~nameofoutfit` | load outfit |
| `avatar~nameofavatar` | load avatar |
| `reload` | reload current outfit |
| `callav` | responds current avatar-name |
| `callof` | responds current outfit-name |
| `naked` | loads naked layers |
| `ping` | to find users on a region |
Chatcommands
| Command | |
|---|---|
| `/77 main` | calls main menu |
| `/77 clothing` | opens your current outfit |
| `/77 avatars` | opens your avatars |
| `/77 outfits` | opens your outfits |
| `/77 options` | opens your options |
| `/77 naked ` | loads naked layers |
| `/77 reload ` | reloads your current outfit |
Here is a simple listener for the API output
default
{
state_entry()
{
llGetOwner();
llListen(5200,"","","");
llListen(5100,"","","");
}
listen(integer chan,string name,key id,string msg)
{
if(llGetOwnerKey(id) == llGetOwner())
{
llOwnerSay((string)chan + " | "+name +":"+msg);
}
}
}
Plugin
If you want to create a new function for undressify here is an exxample plugin
//this script should be named with a leading 'app.' in its name
default
{
link_message(integer link,integer chan,string msg,key id)
{
if(chan == 500)
{
list scriptname = llParseString2List(llGetScriptName(),["."],[]);
if(msg == llList2String(scriptname,1))
{
llOwnerSay("Hello World!");
}
}
}
}
Effect
Effect example code
integer status = FALSE;
default
{
link_message(integer link,integer chan,string msg,key id)
{
if(chan == 765)
{
list scriptname = llParseString2List(llGetScriptName(),["."],[]);
if(msg == llList2String(scriptname,1))
{
if(status)
{
status = FALSE;
llOwnerSay("Effect off");
}
else if(!status)
{
llSleep(1);
status = TRUE;
llOwnerSay("Effect on");
}
}
}
else if (chan == 550)
{
//llOwnerSay(msg + " " +(string)id);
if(status == TRUE && id == "redress")
{
//do things
}
if(status == TRUE && id == "outfit")
{
//do things
}
if(status == TRUE && id == "avatar")
{
//do things
}
}
}
}
Frequently Asked Questions
I know you dont like the way I answer. But I am really tired of answering questions again and again!
Q: It keeps spamming me with @β¦ lines.
A: Activate RLV! Or get a viewer that includes RLV.
Q: Why do you make so many updates?
A: The system is still growing and advancing. Its your loss if you do not update.
Q: Why do you send me things?
A: Why do you buy things?? For real. I get this question again and again. If you did not buy, I would nevver send you anthing.
Q: After updating the Maitreya body, my clothing doesnβt fit?
A: Wrong person⦠pester Maitreya about that.
Q: Why donβt you offer it in Spanish/Portuguese/German/etc.?
A: The main language used on the internet is English. How did you find this website???
Q: Why is this bug not fixed?
A: What bug? Thanks for reporting! I can fix a bug when I know about it.
Q: So this is for females?
A: NO. Anyone can use it. Itβs not gender-specific. Thatβs a misconception.
Q: What makes this different from systems like OpenCollar?
A: Itβs not comparable to OpenCollar.
For example, someone else can undress you β pull down your pants β and OpenUndress replaces your pants with, letβs say, pantiesβ¦ and makes you naked in the next stage.
Q: Does it work with mesh?
A: It works with anything you can wear β skin, layers, eyes, etc.
Q: Does this change alpha layers on my mesh body?
A: No. That would require access to all scripted channels of all mesh bodies.
Also, many clothing creators already include alpha functions in the items you buy.
Q: Every time I change my avatar, the HUD detaches. How do I fix this?
A: Donβt put the HUD in one of your β#RLVβ folders or outfits!
Q: Does RLV really steal money from my account?
A: NO! RLV has no access to your account or any account settings.
No access to your IMs either. That is a myth.
Q: Does RLV really read my IMst?
A: See above!
Q: My BOM layers keep showing in the wrong order. Why donβt you fix this?
A: Thatβs an issue with the BOM system of SecondLife.
You can fix it by editing your worn outfit from the viewerβs menu.
Q: If I have one linked-together outfit, can I use this to separately undress parts of it?
A: NO. They are one part and an outfit cant be unlinked while wearing it.
Q: Why is the tutorial so big?
A: Because⦠people.


