Wanted to get away from the bug reporting and onto some of the blue-sky things I’ve wanted to do, quite willing to help with too. If any developer or PM can speak to these I’d much appreciate it:
Ability to determine if an avatar is speaking
This could be an avatar property or method to get a Boolean or it could be a script event that when triggered indicates which avatar speaking state changed and if the avatar has started or ended speaking. This one is quite useful for entities that may wish to gaze upon the speaking avatar. One good example is a camera entity. Would be a great way to automate recording meetings.
Planar and radial local gravity fields
Permits things like space ships, space stations. This implies stiction on the objects or avatars standing/placed upon the vehicle entity so that when it moves, so will the items placed upon it. Also needed is avatar auto orientation to the local vertical of the gravity field. A similar auto orientation property would be needed for entities (aka vertical attractor).
Communicate with scripts of an entity
I have many uses for this, though the one example I like to give is a flocking behavior in virtual birds. There is findEntities(…) so that one entity can locate nearby ones then get properties like position and velocity to perform action adjustments based on nearest neighbors.
But for more interesting behaviors I do not see a method to post an event to scripts belonging to an entity, nor a send message method. Something like:
var ent; // assume this references the target entity var event_type = "myspecialevent"; ent.PostEventToScripts(ent, event_type, event_parameter);
I could do this by scribbling into the user data property of an entity and though I see getEntityProperties() I do not see in the docs a setEntityProperties (or, for that matter, a getEntityProperty). At least the script could poll for messages in its related entity user data ‘dropbox’.