AddActorWorldOffset with Teleport inside ActorBeginOverlap changes player velocity

I’m trying to make a trigger box that teleports the player by an offset. I created a Blueprint subclass of TriggerBox and added this script to it:

When the player (a DefaultPawn) touches the box, I would expect them to be teleported 2000 cm to the right and their velocity to not change. However, what actually happens is when the player touches the box, they are launched to the right at a very high velocity. They end up outside my level’s BP_Sky_Sphere in a matter of seconds.

If I add a Delay block with a duration of 0 to the blueprint script, like this:

The teleporter works correctly, changing the player’s location without changing their velocity. This is kind of strange, since a delay block with a duration of 0 should in theory be a no-op.

Using “Teleport” or “Set Actor Location” instead of AddActorWorldOffset results in the same behavior. Unchecking the “Teleport” option in AddActorWorldOffset also results in the same behavior.

Hi CARTER!,

I believe what you are experiencing is due to the Teleport boolean checked to True on AddActorWorldOffset. Try setting this to false and see if the results are what you are looking for.

Just tried this today, and unchecking the Teleport boolean results in the same behavior.

Does this occur in a clean, blank project with no additional content or is it limited to one project? Are there any other actors that could be acting as a force on the actor being moved/teleported?

Hi CARTER!,

We have not heard from you in several days. I am marking this as answered for tracking purposes. If you are still experiencing this error, please comment with the requested information.

This occurs in a clean, blank project with no additional content. There are no actors in the scene except for the player, the box trigger, and the actors in the default level. (And adding a 0-delay node fixes the issue, so I suspect it isn’t caused by an external force on the player.)

Hi CARTER!,

Unfortunately I have not been able to reproduce this on my end. When I enter a trigger box that adds world offset my pawn is moved, however it does not keep rapidly moving after the first movement interaction. Do you have a sample project this is occurring in that I’d be able to take a look at?