RestrainedLove Viewer Support for LSL-Plus
LSL Plus by Rob Greayer is a nice IDE for editing and testing LSL scripts out of world. It enables you to do testing in a simulated world within the IDE with break point and debugging support.
The Restraint Life Viewer is a custom Second Life Viewer by Marine Kelley that has some additional features to make the user more or less helpless.
This page documents an implementation of the Restrained Life API as an Agent Event Handler Module in LSL Plus. So you can use it to test your RLV enabled scripts.
Download the current Alpha version at: http://sourceforge.net/tracker2/?func=detail&aid=2464575&group_id=219595&atid=1046875
How to use?
Extract the zip file into your workspace and keep the directory structure. You will find a the scripts within modules/sim/rlv. There are two subpackages there: "iface" and "impl". The modules in the "iface" package are intended for use by other scripts or the simulator itself. The modules in the impl subpackage contain the code doing the actual work. And functions defined there may change in the next version.
Adding RLV to an Avatar
If you are not doing any additional event processing for that agent, you can simply select
modules.sim.rlv.iface.simple avatar handler.lslm
as Event Handler.
Adding RLV support to a scripted Avatar
If you already have an event handler for an avatar, you cannot use the "simple avatar handler.lslm" because there can only be one handler per avatar. Please import the module
modules.sim.rlv.iface.rlv_support.lslm
into your own avatar event handler. You can have a look at the "simple avatar handler.lslm" to learn how to use it.
State of implemented features
This implementation is work in progress. Not all features are implemented. And I don't even have an idea how to implement some, yet. But at the same time it is already useable.
Any kind of help is very welcome.
Restrictions
Command | idea how to | implemented | test impl. | comments |
---|---|---|---|---|
adding restrictions | done | done | ||
removing restrictions | done | done | ||
clearing restrictions | done | done |
Queries
Query | idea how to | implemented | test impl. | comments |
---|---|---|---|---|
version | done | done | ||
getoutfit | LSL Plus does not support avatar inventory / attachments, yet | |||
getattach | LSL Plus does not support avatar inventory / attachments, yet | |||
getstatus | done | done | ||
getstatusall | done | done | ||
getinv | LSL Plus does not support avatar inventory / attachments, yet | |||
getinvworn | LSL Plus does not support avatar inventory / attachments, yet | |||
findfolder | LSL Plus does not support avatar inventory / attachments, yet | |||
getsitid | done | partly | there is a delay between a force-sit and the update of this in the real RLV. | |
getenv_ | done | need to get a list of values depending on the named settings |
Force
Force | idea how to | implemented | test impl. | comments |
---|---|---|---|---|
remoutfit | partly | restrictions obeyed, but LSL Plus does not support avatar inventory / attachments, yet | ||
detach | partly | restrictions obeyed, but LSL Plus does not support avatar inventory / attachments, yet | ||
sit | done | partly | cannot check 1.5 meter limit if sittp is restricted because llGetPos does not work. cannot change position because llSetPos do not work | |
unsit | done | done | ||
attach | LSL Plus does not support avatar inventory / attachments, yet | |||
attachall | LSL Plus does not support avatar inventory / attachments, yet | |||
detachall | LSL Plus does not support avatar inventory / attachments, yet | |||
tpto | done | partly | LSL Plus does not update avatar position | |
setenv_ | done |
Event Processing
TODO
Known issues
- I had to move functions from the module restrictions.lslm to force.lslm because I was unable to include the module restrictions.lslm in force.lslm.