hi all, <br><br>first of all - happy 2008! as I've had a bit of time today, I decided to dig into the intrinsics of attaching stuff. The AttachObject method which is somewhere in the code is incorrect -  the packet it tries to send to client is originated by the client in the first place, the command to "attach stuff" to the viewer is the ObjectUpdate packet with not one but two elements of ObjectData - the first one being the one for Avatar, and the second one being for the Thing being attached (suspected: root prim :). (there's also "attach multiple prims" which i did not dig yet).
<br><br>The result of these experiments is a super ugly proof of concept which is not worth committing, but which I think shows up a problem... : <a href="http://opensim.be/dalien/attachment-proof-of-concept.patch">http://opensim.be/dalien/attachment-proof-of-concept.patch
</a><br><br>Actually, two problems:<br><br>1) attachments != sceneobjects (I think) - well, at least they should not be saved into backups, etc... (and not sure how they should interact with the ODE & all - I think they should not) 
<br><br>For the "wear from the ground" it is less of a problem - but for wearing from inventory (which i did not write anywhere beyond pointless junk) - reusing the existing rezz code might be a plus - otherwise there is a loooot of copypaste.
<br><br><br>2) the ObjectUpdate needs to combine low-level update for both Avatar and Prim - which with layered approach (packet sending stuff being in lower layer relative to InnerScene) will result in a function with a bazillion parameters.
<br><br>A lesser evil that I was thinking about is to expose the "partial builder" functions on the IClientAPI level, which would return parts of the packets, which could subsequently passed to other IClientAPI packet building functions. 
<br><br>Thoughts ?<br><br>/d<br>