RLV vs RLVa
Overview
There are two implementations of the RLV protocol:
- RLV — Marine Kelley's original implementation
- RLVa — Kitty Barnett's extended implementation
Viewer Distribution
| Implementation | Viewers |
|---|---|
| RLV | RestrainedLove, Cool VL Viewer, Kokua |
| RLVa | Catznip, Alchemy, Black Dragon, Firestorm, Genesis, Singularity |
Key Differences
Command Support
RLVa supports all standard RLV commands plus additional commands not found in RLV:
- Camera commands —
setcam_eyeoffset,setcam_focus,setcam_focusoffset,setcam_mode,setcam_mouselook,setcam_origindistmin,setcam_origindistmax - Visual effects —
setoverlay,setsphereand related sub-commands - Movement —
jump,buy,pay - Inventory —
getattachnames,getoutfitnames,getaddattachnames,getaddoutfitnames,getremattachnames,getremoutfitnames - View modes —
viewtransparent,viewwireframe,showself,showselfhead
Command Modifiers
RLVa supports extended modifiers for some commands:
recvim— SupportsRecvIM Distance (Min)andRecvIM Distance (Max)parameterssendim— SupportsSendIM Distance (Min)andSendIM Distance (Max)parametersstartim— SupportsStartIM Distance (Min)andStartIM Distance (Max)parameters
Feature Extensions
- Shared folders —
sharedwearandsharedunwearare extended features in RLVa - Fartouch — Supports configurable distance parameter
- SitTp — Supports configurable distance parameter
- TouchHUD — Extended with UUID parameter support
- AcceptTPRequest — Extended feature
Compatibility
For scripters targeting both implementations:
- Use standard RLV commands for maximum compatibility
- Check for RLVa-specific features with
@getcommandbefore using them - Test on both RLV and RLVa viewers when possible