Page 1 of 1
Teleport weird behavior
Posted: Mon Aug 30, 2004 3:19 pm
by Stratocaster
Hi guys
As a secret nazi experiment I have a teleport cabin in my map. It sure does work fine, but there is something strange. The trigger teleport is INSIDE a cabin like a phone booth, totally surrounded by walls and a door to get inside. But as I tested the map I suddenly got teleported as I was walking very close to that walls. In fact I trespass the walls as if those would not exist... Is there a way to avoid that? I first thought my trigger was thouching the walls, but it is not, it is clearly inside them.
The player is supposed to be teleported as he enters the cabin, and in fact he is, but he also get teleported as he walks to the trigger, even trespassing walls!!
Well I hope you can help me with that

Posted: Mon Aug 30, 2004 6:25 pm
by lizardkid
it's probably overlapping or reading a bit too far out. you can make it a small 1 cm cube and if the player touches it it'll trigger, maybe make it a bit smaller inside the booth

triggers
Posted: Mon Aug 30, 2004 7:59 pm
by tltrude
Are there two triggers with the same targetname?
Posted: Mon Aug 30, 2004 8:54 pm
by m4rine
yes like lizard sed i would simply smallen the trigger.
Posted: Tue Aug 31, 2004 2:59 am
by Stratocaster
Thank you for your replies.
As far as I know there is only one trigger with such targetname. I will check again all the map just in case, but... I don't think so.
The trigger_teleport brush is quite small but one thing I can do is just make it extremely small inside the booth. like 4 x 4 x 4 or even smaller.
I will tell you the results

Posted: Wed Sep 01, 2004 2:02 am
by Stratocaster
Still going crazy...
well now I have the problem in only one wall so it's getting better...LOL
I am gonna try redo the whole thing again. If it doesn't work, I will avoid access to that wall by placing some crate or whatever.

ideas
Posted: Wed Sep 01, 2004 3:08 am
by tltrude
If you are looking for new ideas, I once made a teleporter that was in a vertical pipe. The player would jump down into the pipe and be teleported to another pipe that he would fall out of. Players could also throw granades down the pipe and have them explode across the map at the exit.
So, you could add a pit in the bottom of your cabinet.
Posted: Wed Sep 01, 2004 4:01 pm
by Stratocaster
Well that's not a bad idea at all!!!!
If the trigger is inside the pit, the player need to jump through to activate it, so I don't have to worry about the walls surrounding the booth.
By the way I also made the trigger suitable for grenades and even bazookas projectiles travelling through it

Posted: Thu Sep 02, 2004 8:53 am
by Bjarne BZR
Another trick is not to use a Teleport trigger at all... you can just insert a trigger_use and set the origin of the triggerer to another value. Simplicity!

Posted: Thu Sep 02, 2004 4:30 pm
by Stratocaster
Well that's a cool idea too!
As soon as the compiling is done I will check if my teleport is fine. As I compiled with full vis (leafgroups being tested), I will see the results in 5 or 6 hours, damn!
In case it's gone weird again I can try that trigger_use.
another
Posted: Thu Sep 02, 2004 5:26 pm
by tltrude
A trigger_multiple with a setthread would also work. The lines in the script would look something like this,
local.player = parm.other
local.player tele $my_dest
It would be the same with Bjarne BZR's trigger use, but the player would have to hit his use key. Also, he is saying to use a line like this.
local.player = parm.other
local.player.origin = $my_dest.origin
"my_dest" can be a script_origin, but it would not kick the player off the spot like a func teleport destination does.
We are just thowing out options, you don't have to test them all.
Posted: Mon Sep 06, 2004 10:35 pm
by Stratocaster
I'm gonna try deal with that to solve the problem. I also thought of surrounding the booth with thin clip brushes might work also

Posted: Tue Sep 07, 2004 10:03 am
by Shuriken1
To expand on trude's previous post (as impressive as always

) could you add:
local.offset = 48 + randomint(64)
local.a = local.player.origin
if((randomint(100)) < 50)
local.a[0] = local.a[0] + local.offset
else
local.a[0] = local.a[0] - local.offset
if((randomint(100)) < 50)
local.a[1] = local.a[1] + local.offset
else
local.a[1] = local.a[1] - local.offset
I use something similar to that to make a shell's impact point variable, I'm sure you could use that to move the player a random distance from the landing point to get them out of the way too. Just an idea

Posted: Tue Sep 07, 2004 6:02 pm
by Stratocaster
Thank you guys I solved the problem!!!
