Jump to content

RLV and restrictions


SubZeroWins
 Share

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

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

Recommended Posts

Hello all,

using the following code I force tp a collars wearer to a given location and restrict teleportation for a given time.

integer Countdown;

default
{
    link_message(integer sender_num, integer num, string msg, key id)
    {
        if(num==2)
        {
        integer Minutes;
        list Command=llCSV2List(msg);
        Minutes=(integer)llList2String(Command,1)/60;
        Countdown=(integer)llList2String(Command,1);        
        llOwnerSay("@tpto:" + llList2String(Command,0) + "=force"); 
        llSleep(10.0);
        llSay(1,"tiff forbid stray");      
        llOwnerSay("For " + (string)Minutes + " minutes you can not use teleport by any means.");
        llSetTimerEvent(1.0);
        }
    }
    
    timer()
    {
    Countdown--;
        if(Countdown<0)
        {
        llSetTimerEvent(0.0);
        llSay(1,"tiff allow stray");
        llOwnerSay("You can now use teleport.");
        }
    }     
}

I can restrict myself to tp anywhere else for x minutes I set. It works perfect. But when I use this script for my partner, even though she gets tp'ed to the given location, she can tp again before the set time lasts.

Any thoughts about this?

Link to comment
Share on other sites

Presumably saying "tiff forbid stray" on channel 1 is supposed to cause something your partner owns, and is within 20m of, to issue the relevant RLV commands to prevent teleporting.

So the first thing I'd look at is whether the object that's supposed to react to the "tiff forbid stray" message is working properly and in range of your partner.

llSay has a range of 20m. There are several ways to initiate a teleport, and RLV has separate commands to control them.

Edited by KT Kingsley
  • Like 1
Link to comment
Share on other sites

16 minutes ago, CoffeeDujour said:

You are only executing one RLV command in that script (the initial forced TP). You need to use another command to restrict TP and then flip that command in the timer.

Yes, then the script sends to her collar 

llSay(1,"tiff forbid stray");

Is it wrong?

Link to comment
Share on other sites

7 minutes ago, KT Kingsley said:

Presumably saying "tiff forbid stray" on channel 1 is supposed to cause something your partner owns, and is within 20m of, to issue the relevant RLV commands to prevent teleporting.

So the first thing I'd look at is whether the object that's supposed to react to the "tiff forbid stray" message is working properly and in range of your partner.

llSay has a range of 20m. There are several ways to initiate a teleport, and RLV has separate commands to control them.

Truth is that the command at channel 1 is given right after she is tping.

How could I restrict teleportation after when she is already on another sim?

Link to comment
Share on other sites

I don't quite understand what's going on here.   When you say 

3 hours ago, SubZeroWins said:

I can restrict myself to tp anywhere else for x minutes I set. It works perfect. But when I use this script for my partner, even though she gets tp'ed to the given location, she can tp again before the set time lasts.

Do you mean that it works when the script is in an object belonging to you, it works,  but when you pass the object to your partner, it doesn't work for her?    

Which one of you uses the prefix "tiff" for collar commands?   It could just be that your collar listens to commands starting "tiff" and hers doesn't.

Like CoffeeDujour, I'd do the whole thing with RLV.   Don't mix it up with collar commands -- that's asking for trouble unless you're sure you understand the collar script.

  • Like 1
Link to comment
Share on other sites

2 minutes ago, Innula Zenovka said:

I don't quite understand what's going on here.   When you say 

Do you mean that it works when the script is in an object belonging to you, it works,  but when you pass the object to your partner, it doesn't work for her?    

Which one of you uses the prefix "tiff" for collar commands?   It could just be that your collar listens to commands starting "tiff" and hers doesn't.

Like CoffeeDujour, I'd do the whole thing with RLV.   Don't mix it up with collar commands -- that's asking for trouble unless you're sure you understand the collar script.

For my tests I was using my collar's prefix, I passed to her the same code but with using her own prefix.

Like you both said, Ill try and make it pure rlv but I wonder:

1) typing in local chat "/1 tiff forbid stray" works, but when passing it through the script it doesnt.
2) moreover, have same issues with more collar commands, for example in local chat "/1 tiff dazzle" works but through the script it doesnt, just like the above

And lets not forget, any commands sent to myself, work perfect.

Link to comment
Share on other sites

Well, the reason typing it in local chat works and having the object say it doesn't is probably that the collar is set to recognise commands from an owner, and to do that it checks the UUID of whoever/whatever is trying to issue the command.  Your UUID != the object's UUID.

  • Like 1
Link to comment
Share on other sites

6 minutes ago, Innula Zenovka said:

Well, the reason typing it in local chat works and having the object say it doesn't is probably that the collar is set to recognise commands from an owner, and to do that it checks the UUID of whoever/whatever is trying to issue the command.  Your UUID != the object's UUID.

Yeah damn it, when typing in local chat her collar recognises me as her owner so it executes the command, but since HER hud gives the command (she is not owning herself) the collar ignores them.

Its working for me because Im owning myself. Thank you all for your contributions.

  • Like 4
Link to comment
Share on other sites

3 hours ago, SubZeroWins said:

Like you both said, Ill try and make it pure rlv but I wonder:

1) typing in local chat "/1 tiff forbid stray" works, but when passing it through the script it doesnt.
2) moreover, have same issues with more collar commands, for example in local chat "/1 tiff dazzle" works but through the script it doesnt, just like the above

You said earlier that YOU are the only owner on HER collar, and that this script of yours runs in a HUD she's wearing...

THAT is your main problem right there...

You say "/1 tiff blah blah blah" and her collar obeys...

The Hud, you rezzed on the floor by her says "/1 tiff blah blah blah" and the collar will figure that you own the hud and it's set to obey you and it works

You give the hud to her, and HER hud says "/1 tiff blah blah blah" and the collar figures out that her hud is owned by her, but she's NOT the owner on the collar, you are, she doesn't have owner access, so she cant order the collar to do what you want...

You shouldn't be creating a hud she wears to spam channel 1 with collar commands her collar will ignore like this, it's bad practice and as you've found, basically doesn't bloody work anyway.

Rip out the llSay's and the llOwnerSays, and replace them with llRegionSayTo, using llGetOwner as the avatar key on some channel other than /1, such as the commonly used relay channel.

One llRegionSayTo, delivers the rlv forced tp command, than after she arrives at the destination the second sets the tp restricts, then when the timer expires, a third clears the tp restricts.


 


 


 



 

  • Like 1
Link to comment
Share on other sites

You are about to reply to a thread that has been inactive for 2088 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...