Jump to content

Recommended Posts

There are a lot of teleportation scripts in the forums, the workshop compositions, and missions. Usually they involve an action added to the scroll menu of the player, triggered by distance or cursorObject, and a setPosATL. It's usually masked to the player with a fade out. Although the mission example cleverly copies animation of the door and your relative position, these details only convince in singleplayer.

I'd like a method that doesn't involve the player stopping at a dead end, scrolling to an action, then instantly having their view switched to the destination. Preferably one that is somewhat multiplayer friendly. It doesn't have to be 100% convincing.
Of course the way to do this is by making the player use their 'verbs': running/climbing/jumping, et cetera.

I tried to create a ladder setup. See sketch (and try not to think of colonoscopy): 
arma-tunnel-sketch.png
The players climbed a ladder down a deep hole and when they got halfway, were teleported halfway to another ladder. But the code:

player action ["ladderUp", ladder_1, 0, 1];

Will not execute when the player is already on a ladder. It will wait until the player gets off. The 2.18 devbranch has " actionNow ", but we'll have to wait to see if that works. 
Perhaps have a long tunnel with multiple ladders, where players must get off the first, and then the second ladder is a simple object with an addAction to the destination. I can already see this is not a very robust solution for more than 2 players: 
Twoladdersketch.png
Also considered having players fall into a hole in the ground. But how to make them get back?
Jump-Down-Sketch.png


I don't mind awkward. Just looking for something that involves the player doing something, other than a scroll action, that's slightly more convincing than a "clap and disappear" smash video cut.
Any ideas?
 

  • Like 1

Share this post


Link to post
Share on other sites

Add to a trigger?

 

{_x setPos (getMarkerPos "yourmarkerVarName")} forEach (units yourgroup);

Teleports your group to a marker. You can add fade effects if you want.

 

  • Thanks 1

Share this post


Link to post
Share on other sites
1 hour ago, major-stiffy said:

Add to a trigger?

 


{_x setPos (getMarkerPos "yourmarkerVarName")} forEach (units yourgroup);

Teleports your group to a marker. You can add fade effects if you want.

 

Firstly thanks for the reply. But I should have said this is a more a design question. Because I know how basic teleports are scripted. I just want to "hide" the transition in a more plausible way then people standing in front of a wall then having fade effects.
My ladder for example used a trigger halfway the first ladder to place units on the second.

Share this post


Link to post
Share on other sites

I once used an elevator for this purpose.

The elevator simply consisted of two self-built identical rooms with animated doors and logic for when they would open and close.

For the floor, I used a square plate.

As soon as the doors were closed, I teleported all the players who were in the elevator (in a trigger area) to the second room.

To do this, I took the position of each player relative to the floor plate and then set it relative to the identical floor plate in the second room.

 

I animated the doors using BIS_fnc_unitPlay.

 

With some nice elevator music, you didn't notice the teleportation at all.😉

However, I think on a server with weak performance or heavy load, you might notice something.

  • Like 2

Share this post


Link to post
Share on other sites

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now

×