Friday, August 15, 2008

Objects sharing tutorial

Hello again,

So as promised in the precedent post, I am going to give a few pointers on how to share modify and no-modify objects (be sure to read it to retrieve the latest version of the viewer to do it yourself though). Apologies in advance, this post is going to be very long.

This tutorial is divided in two parts, you can find the second part here.

First of all, let me remind you that "sharing" an object does not mean letting others take it from your inventory. It merely means letting others force you to attach/detach it. It is "shared" in the way it is "exposed" to the world.

As you may already know, you can't use the Wear option when something, anything, is locked on your avatar. That has been the source of a lot of pain to everyone, me included, but it is not something that is likely to change, because it is due to how SL handles attachments. To explain it in plain English, when you press Wear your viewer tells the asset server "Hey I want to wear this object at its default attachment point", and the latter replies "Ok, just wear it on Spine and report". There is no way the viewer can refuse such an order, if it did it would eventually crash (I tried). And as the target attachment point, in this example the Spine, can be occupied by a locked object, it could very well knock it off and defeat the purpose of locking anything.

So when something is locked on your avatar, Wear disappears (as well as Add To Outfit), and you must use Attach To instead, which is more complicated and prone to errors.

Edit : This is not true anymore since RLV 1.21 (released 10/03/09), which allows "Wear", "Add To Outfit" and "Take Off Items" by default, even when an object is locked, until the "@defaultwear" command, if ever. This is gives more user-friendliness, but if the top really does not want any locked object to be detached accidentally, then they just have to use a restraint that sends that restriction to fall back to the original behaviour (i.e. no "Wear" unless the name of the target attach point is mentioned, as written herebelow).

Since 1.11, the RL viewer can provide a "fake" Wear option if the object name contains the name of an attachment point (in the above example, "spine"). This is the option the viewer uses to force an item to attach. Problem is, no-modify objects cannot be renamed. Since 1.12.2 the RL viewer provides a workaround which is quite easy to use.

So let's get down to business.

A. Sharing a basic set of modify cuffs

I'm going to use a basic set of free Lockguard cuffs and will share them. I will show you how to rename them and how to use a script (namely Outfit in the collar I sell) to access the shared part of my inventory and force myself to wear them.

As you can see I have created a folder that I named #RLV in my inventory, at the same level as all the other default folders (Animations, Bodyparts...). This is the first step, no #RLV no shared anything.

Under #RLV I have moved my Basic Lockguard V2 Cuffs folder, containing the 4 restraints to be shared. In fact the whole folder is shared. You might wonder why I said they are not properly named. In fact, despite their names being quite explicit (you know where to attach what at first glance), the viewer needs the actual attachment points to be included in the names. So here we don't want "L. Ankle" but "L lower leg" for instance. The latter is what you see in the Attach To sub-menu.

I am also wearing my Steel Collar. It is not locked so I can still use Wear and Add to Outfit to attach them on me.

As it is tedious to rename these items myself, the viewer is going to do this for me. It can, because they are modify (in fact they are even full-perms).

There. I merely right-clicked on the Basic Lockguard V2 Cuffs folder and selected Add To Outfit. As you can see they are now "properly named", the names of the attachment points are now correctly displayed. Look at the names, and the parts after "worn on...", they are the same.

Now, I unwear them and am going to use my collar to force me to wear them again. I click on it and go to Plugins > Outfit.

Yes the name is a bit long for the button. But you get the point.

Et voila !

B. Sharing a more complex outfit, with no-modify items

That was easy. Now I would like to share a nice piece of fetish outfit, Kwakkelde Kwak's leather corset. This one is a beast that contains several layers of clothing and several no-mod items, so I have to do some work before deciding what to share and how. Let's see.

This is the folder as I have it (Kwak gave me a prototype before releasing it so I'm not sure it is exactly what you'd get if you bought it, but it's pretty close).

As you can see, all the objects are no-modify. While it is not a problem with layers of clothing (the viewer does not need to read their names to decide where to wear them), it is going to be with the objects because I cannot rename them.

First things first, I do not need to wear all these items at the same time. In fact, I won't be allowed to since one pants layer will kick another, same with the jackets. So I create a Backup folder in which I put all the items I do not want to share. The name of this folder is unimportant. What is important is that the viewer will not try to attach anything in it.

Why ? Because there is no no-modify object in this Backup folder, and the folder itself does not contain the name of any attachment point. It would have been a problem if I had called it "My top backup" (because of the "top" word, which is the name of a HUD attachment point). So here goes.

I have decided to share the Open variant.

Now here comes the interesting part. As I can't rename the objects since they are no-modify, I am going to tell the viewer to look at their parent folders. I can call them the way I want, but I am lazy so I'll let the viewer rename them for me. There are 6 objects, so I create 6 new folders.

I will now put one object into each folder. Only one per folder, not more ! That's very important.

Ok so far ? Now why did I do all this ? I am going to wear all the objects (no, not with an Add To Outfit command since I don't want to wear what is in Backup, so I will wear them one by one), and the New Folder folders will be renamed automatically !

See ? I didn't do this by hand, the viewer did. Oops ! It seems two of the folders did not get renamed. If you look at the names of the objects themselves, you'll notice they are "Top" and "Bottom". These are the names of two of the HUD attachment points, so the viewer decided it would be best not to rename their parent folders after all. This is not a bug, but perhaps I will try to make it a bit smarter later. For now, I have to rename them by hand. Suffices to write down where they are attached ("Left Pec" and "Stomach" respectively) and to paste this into the names of the two rebellious New Folder folders. Don't worry this is not a problem that occurs often, but I wanted to mention it.

My shared outfit is now ready, and I will make my collar force me to wear it. I unwear it first.

I click on my collar, go to Plugins > Outfit.

And... tadaa ! Everything is in place, and I'm not wearing more than I wanted.

Wait, how did the viewer know where to attach everything ? Well it's easy, it just looked at the folders containing the no-mod objects instead of their own names !

If you want to know how to share no-modify objects, head to Part Two...

Have fun !