Sunday, January 16, 2011

More on RLV 2.4 (still coming soon)

Hello there,

Sorry I am a little behind, a new RLV 2.4 was promised last week and I didn't deliver anything. Testing took a lot more time than planned, and real life got in the way.

And now... a few things have been added since the previous post.

For one, RLV 2.3 used to keep you from detaching objects when in a no-script area, that was a safety against some kind of sneaky cheat, but it was a bit heavy so I changed that to "prevent only if we actually logged on there, not if we come from another place where scripts were allowed", simply because I thought that all scripts were frozen when logging on in a no-script area. That's how I remembered it at least, but my memory was a bit old on that matter.

After talking with Henri and after doing some complimentary testing, I was just wrong, logging on and entering a no-script area give the same result : only scripts tailored to take some of your controls will keep working (that way your AOs and your vehicles keep working in these areas), while others will be frozen. Most restraints implement that trick too, so there is no real reason to impose further security since the scripts are able to take care of themselves.

Long story short, this safety was a hindrance to user-friendliness, and will be removed altogether in 2.4.

Secondly, I finally took the leap of faith and implemented a bunch of "touch*" commands :

- touchfar/fartouch : these are synonyms and act exactly like "fartouch" always did
- touchall : to prevent you from touching anything
- touchhud : to prevent you from touching your own HUDs
- touchallnonhud : to prevent you from touching anything, except your own HUDs
- touchworld : to prevent you from touching anything in world
- touchattach : to prevent you from touching any attachment at all
- touchattachself : to prevent you from touching your own attachments
- touchattachother : to prevent you from touching other people's attachments

That should be it, if I think of something else, I will add the corresponding commands but with this, the scripts will have much more control over who touches what.

You might have noticed that there is no "touchworldself" and "touchallother" commands to prevent you from touching your objects in world and other people's objects in world respectively. This is because SL does not provide a way to know the other of an object that you touch, this information is contained only in the message that comes from the sim when you select an object. Unless I'm mistaken, of course. It does work for attachments though, because attachments that you own are also contained in your inventory, while those you don't own are not, and this is how to distinguish the two.

So there, sorry for the additional delay, the new RLV should be ready soon.

Have fun,