Jump to content

"Tattler" Script?


JohnathanLuke Larkham
 Share

You are about to reply to a thread that has been inactive for 4126 days.

Please take a moment to consider if this thread is worth bumping.

Recommended Posts

Hey there!

Needing a script to help a friend out.

Somebody in his group of friends keeps coming into his house and messing up his prims and objects.  We would like to place a script in some of these frequently-moved objects to track down which of his friends is the culprit.  He really does not want to take away perms from all his friends because they all claim they are innocent, and we are trying to figure out other possibilities from sim resets to the land owner simply being a jerk.

 

The basis of the script:

When an object is moved

The owner of the object (my friend)

will be IMed by the object moved

regardless of online status of owner (my friend)

and tell the owner (my friend)

who (moved the object)

what (object was moved)

when (that object was moved)

 

If anybody can point me to a script already made, I would be happy to purchase it.

Any help at all will be appreciated.

Thanks!

Link to comment
Share on other sites

The easiest solution is indeed to lock your objects you don't want moved. But it won't tell you who the 'culprit' is.

If you want to know who it is, even with a script there is no 100% sure way to know, but you can use a timer checking the position of an object, and once the position is different, it could trigger a sensor checking for who's around. Most likely it will find one person not too far and chances are it will be that person. This is not absolutely sure, but it may help your friend.

For example:

vector pos = ZERO_VECTOR;string Clock(integer clock){    integer hours = clock/3600;    integer minutes = clock/60 - hours*60;    integer seconds = clock%60;    return (string)hours+":"+(string)minutes+":"+(string)seconds;}default{    state_entry()    {        pos = llGetPos();        llSetTimerEvent(2.0);    }        on_rez(integer param)    {        llResetScript();    }        timer()    {        if (llGetPos() != pos)        {            pos = llGetPos();            llSensor("", NULL_KEY, AGENT_BY_LEGACY_NAME, 96.0, PI);        }    }        sensor(integer num)    {        list Agents = [];        integer i;        for (i=0 ; i<num ; ++i)           Agents += [llDetectedName(i)+" ("+(string)llVecDist(llGetPos(), llDetectedPos(i))+" meters)"];                string msg = "Object Moved: "+llGetObjectName()+"\n";        msg += "Time: "+(string)llGetDate()+", "+Clock((integer)llGetGMTclock())+" GMT\n";        msg += "List of people around : "+llList2CSV(Agents);        llInstantMessage(llGetOwner(), msg);    }}

Copy / paste it in a script and put it in the objects being moved, then once you found out who it is (or once you give up if it didn't help), don't forget to remove this script from all your objects. Hopefully it will help though.

Link to comment
Share on other sites

You are about to reply to a thread that has been inactive for 4126 days.

Please take a moment to consider if this thread is worth bumping.

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now
 Share

×
×
  • Create New...