AC Script and locked entities


#1

Before I sacrifice more time to code something. Does anyone know if a AC Script will be able or not to update the properties of a locked entity?

Apparently, it’s not possible with “Client Entity Script” neither with a “Server Entity Script”.


#2

Nothing can update locked entities, other than the locked property if they are so permitted.

So. Assignment Client Scripts and Server Entity Scripts, and Client Entity Scripts cannot update properties of a locked entities:

But they can update the locked state if the updatee has the rights to do so that they can modify their state and relock them.

Naturally, As scripts run on server side, Assignment Client Scripts have full rights to do this, and so do scripts which are run on a client that have the rights to do so on the domain.


#3

So what you said is that I need an AC script doing:

  • unlock
  • update
    -re-lock

right?


#4

Yep.

  • unlock.
  • update with lock

That is the least amount of steps.

Note that as of the moment this also works with scripts on accounts with permissions and Anything that runs on the server as a script.


#5

ok thanks… very helpful…

Per chance… Is it possible in a script to use hardcoded entity ID ?
if so, what is the syntax?


#6

AFAIK: if the entity is in the domain entity tree as a permanent fixture, you could just point to it always, the entity ID should always remain the same, unless it is deleted and recreated.

I suggest using an Assignment Client script, as then the script would be run by a Server side (Assignment) Client (think of it is sorta like an invisible bot). You can use Server Entity Script as a starter for it, as they always start up an Assignment Client when initiated by the server.


#7

My problem so far is to find the entity to update. I’ve not found too much example of AC Script.
I read somewhere that something need to be done before the EntitiesFind ( EntityViewer or something like this I think… This is not documented.)


#8

Entities.getEntityProperties(id) should be ok as long as the id doesnt change. unfortunately I am not 100% if the entity does or does not update if the domain is reset.

Entities.findEntities(glm::vec3, float radius) can be used to find entities in an area from a point which you can sort and search via script, such as sort…

Last I recall, Everything is now under Entities.

Most uptodate docs are now being maintained and updated at https://docs.highfidelity.com/api-reference/entities


#9

Thank you so much… All good info…

Yesterday… after 2 hours of failure with my script… I went see the last update of Sansar… to convince me to come back :wink:

There is no fox over there :wink: