How can I manually rebase the world origin of a level for a player character in blueprints (or other means)?

There is no direct access to origin rebasing from blueprints right now. I will add this soon.
Actually there is a console command “SetWorldOrigin” which moves world origin to a player position.
You can use console commands form blueprints. Like this

12069-setworldorigin-bp.png

But this will not work in a shipping build, because these command will be removed from a build.

I guess I have a follow up question:

Would it be an incorrect assumption that once this functionality is added, if all players in a multiplayer game rebase their world origin to an identical location at the same time, they will not run into standard issues regarding origin rebasing in multiplayer, or are there other aspects of this action that are preventing it from playing nice with multiplayer that aren’t immediately obvious?

Would not syncing their origin rebasing allow things to proceed without issue?

If no, I would be curious what the problems that arise (despite this approach) are, and whether there might be ways to alleviate those issues given the syncing I mentioned.

Thank you much!

There should not be any issues if all clients and a server have the same origin.
Problem is to sync the moment of origin rebasing. I guess server should stop syncing game objects until all clients report that they have moved theirs origin and only after that resume gameplay.

I’m not familiar with unreal networking, probably it will better if you post it in new separate question.

Syncing of origin is not necessary when it happens before match start. But you can not do that from blueprints, only in C++. Because blueprints receive control after match has started.

How would I best tell the game server to stop syncing game objects for a time while it waits? Would this step even be necessary if the syncing took place instantly when a map loads?

Again sorry if any of my questions are missing any obvious points, much of this is very new to me.

Thank you very much for your quick replies ddv.

If all players in a match are already synced to the same origin, and a new player joins the match… would that player’s syncing of origin have any negative effects regarding the rest of the players currently in the match or the integrity of the match itself? In this case the syncing would be made to happen before location and other information is shared with the current match inhabitants.

Thanks!

Since this is one of the first questions you get on Google, I just wanted to put this in here:

(This is at least as of 4.14)

GetWorld()->RequestNewWorldOrigin can be used to set the world origin from c++ code.
I’m currently testing what this does in multiplayer situations.

any news on this?

I am also interested in any updates on this.