Welcome to the Second Life Forums Archive

These forums are CLOSED. Please visit the new forums HERE

point and click warppos?

Geuis Dassin
Filming Path creator
Join date: 3 May 2006
Posts: 565
11-19-2006 11:34
Im not sure if this has been done, if so I want it!

While I'm upgrading to a nice new graphics card Mon or Tues and this won't be as much of a problem, today I braved threw a high-prim area w/ lots of people for something I absolutely had to have. Needless to say, lag lag lag (not SL server, my sloow pc).

It dawned on me that I would love to have an attachment of some kind that would let me click on a remote spot that I can see and use warppos to move me there. No in-between flying or walking.

The best interface I can think of would be right-click on the remote spot and in my menu, have a short range teleport option.

This would be similar to how you can right-click on a nearby prim and choose sit to move there quickly, but using warppos would make it ever so much easier.

Is it possible?
Vares Solvang
It's all Relative
Join date: 26 Jan 2005
Posts: 2,235
11-19-2006 11:45
Well you could do it manually using the 1000m Menu-driven Intra-Sim Teleporter if your lag was really bad, but it would be kind of a pain.

All you would need to do it to click on the map to see the coordinates of the place you want to go. Then open the script and put them in the menu as a destination option. Then just click and *poof* you are there. (Be sure to go back later and delete the prim you used, since it will go back to the place you started from. That or mod the script so that after dropping you off at your destination it Dies instead of returning to the start point.)

It would work (as long as you are in the same sim) but it's kinda clunky. Still, if you really do have heavy lag in a certain area it might be worth it.

I don't know of any way to get the coordinates to be transfered from the map click to a script automatically.
_____________________
Geuis Dassin
Filming Path creator
Join date: 3 May 2006
Posts: 565
11-19-2006 11:53
I just thought of a potentially feasible way because SL already does it.

When you create a new prim from the editor, when you are in the create prim tool, you click on a spot on the map and it rezzes a prim.

So... it depends on if there is a way to create a prim by right-clicking on a spot and have LSL rez a pre-determined kind of prim that will have our "teleport" code in it.

So, is there a way to do a "short cut" to create a prim instead of having to go through the prim creation tool?
Vares Solvang
It's all Relative
Join date: 26 Jan 2005
Posts: 2,235
11-19-2006 11:55
You can use LLRezObject to do it, but it is VERY short range. It will only rez an object within 10 meters of the object the script is in.
_____________________
Geuis Dassin
Filming Path creator
Join date: 3 May 2006
Posts: 565
11-19-2006 12:00
reading through llrezobject, seems that there is still the problem of getting the coordinates to tell it where to rez at.
Jesse Barnett
500,000 scoville units
Join date: 21 May 2006
Posts: 4,160
11-19-2006 12:30
Just enter ctrl alt D to add the debug tabs up top. Click the "Client" tab and then "UI". Enable "Double-Click Auto Pilot". From then on whenever you double click anywhere in world, you will walk to that spot without having to use the movement keys. It's not perfect but it does work. For example, if there is an object in the path you can get stuck there.
_____________________
I (who is a she not a he) reserve the right to exercise selective comprehension of the OP's question at anytime.
From: someone
I am still around, just no longer here. See you across the aisle. Hope LL burns in hell for archiving this forum
xan Malthus
Registered User
Join date: 25 Apr 2006
Posts: 2
11-19-2006 13:00
I made something like this ages ago, originally intended to be a clone of the Unreal Tournament "Translocator". Unfortunately you have to be sitting on the teleporter, and its limited to shout distance. As far as I know warppos wont work in an attachment.

The way it works is you go into mouslook and click where you want to warp to. A projectile is fired. When the projectile collides with something it shouts its coords then derezzes. The teleporter (which your are sitting on) hears the coords and warppos's to the coords.

To overcome the shout distance limitation you could have the projectile rez a chat relays if its going a long way.
Thanto Usitnov
Lord Byron wannabe
Join date: 4 Aug 2006
Posts: 68
11-19-2006 19:34
Another way to do it is, have it record the avatar's position when fired, turn on llVolumeDetect (so it can detect collisions with nonphysical things), and when it collides with something, have it turn non-physical, record its position, then llWarpPos back to the avatar, and llShout the position it recorded. That way, you won't need to worry about relays. The only problem I can think of is that there's a 0.2 second delay after doing the warppos, so the same script wouldn't be able to llShout instantly. I therefore suggest having the object llMessageLink to itself when it collides with something, having one script warppos to the position, and the other sleep for maybe 0.05 seconds (to make sure its in the right place), then llShout. As long as the avatar is moving slower than 2000m/s, the shout should reach the listener.
Jesse Barnett
500,000 scoville units
Join date: 21 May 2006
Posts: 4,160
11-19-2006 20:15
Cool line of thinking here. Why not have it go one more step. If is already has warpPos in it when you fire it and it has the location it was fired from. It saves the location it lands, warps back, you touch it and warp to that pos, it dies.........................
_____________________
I (who is a she not a he) reserve the right to exercise selective comprehension of the OP's question at anytime.
From: someone
I am still around, just no longer here. See you across the aisle. Hope LL burns in hell for archiving this forum
Hewee Zetkin
Registered User
Join date: 20 Jul 2006
Posts: 2,702
11-20-2006 21:19
From: Thanto Usitnov
Another way to do it is, have it record the avatar's position when fired, turn on llVolumeDetect (so it can detects collisions with nonphysical things).

Actually 'llVolumeDetect()' never detect collisions with non-physical objects (or if it does at all, it is very unreliable). :mad:
Hewee Zetkin
Registered User
Join date: 20 Jul 2006
Posts: 2,702
11-20-2006 21:21
You could drag an object from inventory to the position where you want to TP, and then sit on it (preferably with a sit target and an immediate unsit/die behavior). Even set the left-click behavior to 'Sit'. :D
Thanto Usitnov
Lord Byron wannabe
Join date: 4 Aug 2006
Posts: 68
11-21-2006 00:49
From: Jesse Barnett
Cool line of thinking here. Why not have it go one more step. If is already has warpPos in it when you fire it and it has the location it was fired from. It saves the location it lands, warps back, you touch it and warp to that pos, it dies.........................


Instead of having to touch it, it should tell its position to the thing firing it (the gun), which should then move the avatar accordingly. That's what I meant.

Now, if it doesn't detect non-physical objects, then it's not going to be able to work on buildings or anything of that sort, which is bad. I suppose the only way to do it, really, is to use sensors, and detect if its within the bounding box of any of the things it senses. It would have to go kinda slow... now sure how that would work exactly. Is there any other way to detect collisisions with non-physical things? I could have sworn llVolumeDetect would do it...
Jesse Barnett
500,000 scoville units
Join date: 21 May 2006
Posts: 4,160
11-21-2006 06:13
And of course you could also right click the ground, create a box and sit on it.................. OMG!!!! NO!!!! Wait a minute! Forgive me everyone but I think I just suggested an EMPTY box. We DON"T LIKE empty boxes. An empty box is a lifeless box. We like boxes full of scripts. We have an expression: "Thinking outside of the box" which translates to creative, innovative thinking. But that one is not applicable for scripters.

We think inside the box!






Me thinks I had a tad too much caffiene this morning:-)
_____________________
I (who is a she not a he) reserve the right to exercise selective comprehension of the OP's question at anytime.
From: someone
I am still around, just no longer here. See you across the aisle. Hope LL burns in hell for archiving this forum
Geuis Dassin
Filming Path creator
Join date: 3 May 2006
Posts: 565
11-21-2006 07:30
At some point in the future I'll probably do this, but not now. Sad, sad things happening in my life and I just cant do it now.

My line of thought was involving camera view.

You wear a prim as a HUD attachment. You enter camera view and navigate to where you want to move TP to. When you are at the location in camera view, click on the HUD button.

It detects the camera coordinates.
Script makes the HUD prim detach from your avatar and makes you sit on it. The prim then warppos to the camera view coordinates.
Script unsits you and then reattaches itself as the HUD attachment.

I can't think of any obvious reasons why this won't work. Should be easier to implement than firing a projectile and all that.

If anyone gets inspired and works on this, please let me know. I'll financially contribute a little bit if you want.

Thanks,
Geuis
Geuis Dassin
Filming Path creator
Join date: 3 May 2006
Posts: 565
01-03-2007 17:58
I've been quietly working on this for a while. Still a couple of things to work out but its 99% complete and will be available for sale soon.

This video isn't highly produced, no voice overs, etc. However, it demonstrates what the CamTP does.

My closest friends who I've given preview copies to have commented favorably.

Be warned, the file is about 54mb.

Comments and critiques are of course welcome. Thanks.

http://services.commoncache.com/camtp_demo.mov

Geuis
grumble Loudon
A Little bit a lion
Join date: 30 Nov 2005
Posts: 612
01-04-2007 17:55
You can double click on the map to teleport there.