Welcome to the Second Life Forums Archive

These forums are CLOSED. Please visit the new forums HERE

Simple llSitTarget teleport script with permission list

Halbert Bienenstich
Registered User
Join date: 18 Dec 2005
Posts: 36
02-09-2006 12:47
Anyone have a simple teleport script that can teleport beyond the 300m altitude limit with permission list to limit it to about 4 or 5 Avatars?
Sky Honey
Coder
Join date: 16 May 2005
Posts: 105
02-10-2006 07:57
I don't think there's a way around the teleport limit. I'm using an elevator instead and it's more pleasant to ride up and down than it is to have your molecules destroyed and recreated at the new location. It's available from Seagel Neville, see /54/3b/78775/1.html
Shack Dougall
self become: Object new
Join date: 9 Aug 2004
Posts: 1,028
02-10-2006 08:50
From: sky Honey
I don't think there's a way around the teleport limit.


One way you can get around it is to have the prim move after the sit, take the person to the place, unsit them. If the prim is non-physical, llSetPos() should take the avatar through any obstructions.

But at this point, I'm hoping that llTeleportAgent() is just around the corner. If it isn't in 1.9, then LL is seriously messed up. :p
_____________________
Prim Composer for 3dsMax
-- complete offline builder for prims and sculpties in 3ds Max
http://liferain.com/downloads/primcomposer/

Hierarchical Prim Archive (HPA)
-- HPA is is a fully-documented, platform-independent specification for storing and transferring builds between Second Life-compatible platforms and tools.
https://liferain.com/projects/hpa
Argent Stonecutter
Emergency Mustelid
Join date: 20 Sep 2005
Posts: 20,263
02-10-2006 09:05
You can't use a single "sit teleport" further than 300m, under 300m you can do this:
CODE

list allowed_names=[
"Halbert Bienenstich","sky Honey","Shack Dougall","Argent Stonecutter"
];

default
{
state_entry()
{
}
touch_start(integer num)
{
if(llListFindList(allowed_names,[llDetectedName(0)]) != -1)
{
llInstantMessage(llDetectedKey(0),"Activated for 30 seconds");
llSitTarget(...);
llSetTimerEvent(30);
}
}
changed(integer what)
{
if(what & CHANGED_LINK)
{
llSleep(1);
key av = llAvatarOnSitTarget();
if(av != NULL_KEY)
{
llUnSit(av);
llSitTarget(ZERO_VECTOR,ZERO_ROTATION);
}
}
}
timer()
{
llSitTarget(ZERO_VECTOR,ZERO_ROTATION);
}
}


To go further than that...

Get Cubey Terra's Mark III teleporter from his store in Abbotts, then modify the open source control script to do a similar check to the above.
Ordinal Malaprop
really very ordinary
Join date: 9 Sep 2005
Posts: 4,607
02-10-2006 09:06
To be honest, if I was building a "teleporter" type object I'd use an llSetPos activated by sit as well. I don't like the idea of relying on what's basically a hack and I can wait a few seconds.

llSetPos has a limit of 768m as far as I remember, but that should be okay. More than that, build a vehicle with autopilot.
Sol Columbia
Ding! Level up
Join date: 24 Sep 2005
Posts: 91
02-10-2006 09:37
You can also make your elevator really really fast by having it turn physical, applying a huge +Z impulse, then turning physics back off as it nears the proper altitude.

Mine starts out using llSetPos for the first 20m, then switches to impulse, then back to llSetPos as it nears the destination altitude. It's really fast. Takes about 3 seconds to reach 750m. Much faster than teleporting anyway since you don't have to de/rerez. I also have applied a notecard authorization to it so it only works for people listed in the card.
_____________________
Halbert Bienenstich
Registered User
Join date: 18 Dec 2005
Posts: 36
02-10-2006 10:04
Cool! Thanks guys!
Grim Enigma
Registered User
Join date: 14 Nov 2005
Posts: 35
02-10-2006 11:54
I put this into 8 Scripts... called 1 - 8
CODE

integer phaze=FALSE;
default
{
state_entry()
{
while (!phaze)
{
llSetPos(llGetPos() + <0, 0, 10>);
}
}

}



then put this into a main script..

CODE

integer input = 0;
default
{
state_entry()
{
llSetStatus(STATUS_PHANTOM,TRUE);
llListen(input,"",llGetOwner(),"");
}

on_rez(integer start_param){
llResetScript();
}

listen(integer channel, string name, key id, string message)
{
if(message == "up")
{
llSetScriptState("1",TRUE);
llSetScriptState("2",TRUE);
llSetScriptState("3",TRUE);
llSetScriptState("4",TRUE);
llSetScriptState("5",TRUE);
llSetScriptState("6",TRUE);
llSetScriptState("7",TRUE);
llSetScriptState("8",TRUE);
}
}
}


Its quick and dirty but it brings me promptly to 768m.
There's no down function.. Yet.
grumble Loudon
A Little bit a lion
Join date: 30 Nov 2005
Posts: 612
02-10-2006 19:15
The 300m limit is per axis so you could with some math rotate the base prim and then set the offset diagnoaly to go 519m.

I can't rember who mentioned this earlier.
Strife Onizuka
Moonchild
Join date: 3 Mar 2004
Posts: 5,887
02-10-2006 19:23
Just to be safe, don't let the distance exceed 511 meters. Historicly, numbers larger then 512 caused... issues.
_____________________
Truth is a river that is always splitting up into arms that reunite. Islanded between the arms, the inhabitants argue for a lifetime as to which is the main river.
- Cyril Connolly

Without the political will to find common ground, the continual friction of tactic and counter tactic, only creates suspicion and hatred and vengeance, and perpetuates the cycle of violence.
- James Nachtwey
Shack Dougall
self become: Object new
Join date: 9 Aug 2004
Posts: 1,028
02-10-2006 19:53
From: Strife Onizuka
Just to be safe, don't let the distance exceed 511 meters. Historicly, numbers larger then 512 caused... issues.

The master speaks! LOL

My advice is to wait for and to DEMAND, llTeleportAgent()! We have P2P, what's LL's new excuse?
_____________________
Prim Composer for 3dsMax
-- complete offline builder for prims and sculpties in 3ds Max
http://liferain.com/downloads/primcomposer/

Hierarchical Prim Archive (HPA)
-- HPA is is a fully-documented, platform-independent specification for storing and transferring builds between Second Life-compatible platforms and tools.
https://liferain.com/projects/hpa
Argent Stonecutter
Emergency Mustelid
Join date: 20 Sep 2005
Posts: 20,263
02-11-2006 12:09
From: Strife Onizuka
Just to be safe, don't let the distance exceed 511 meters. Historicly, numbers larger then 512 caused... issues.
Oh, COOL. I happen to have an airstrip at 520 m over ground at 22m that I'm currently using Cubey's Terraporter to get to.

498 meters is nicely in range.