Pull Request - World Origin Shifting in MP

Thank you :slight_smile:

@MaximumDup
Can I with this create 200kmx200km sized Multiplayer map ?

Don’t work for UE4.20.2

@MaximumDup
Can I do what You done

by myself that way https://github.com/michail-nikolaev/…p_origin_shift ?
for latest engine versions like 4.20.2 , because i have errors/problems with those functions “world location to origin based position” and inversely

Can I with this create 200kmx200km sized Multiplayer map or bigger AND then do I have to use world composition ?

I have interest in this

I tried this enabling world origin rebasing in multiplayer in UE4.21, but have this weird problem.
I added ’ set world origin location’ node in player controller blueprint, and noticed that whenever pawn’s location is larger a preset value, ‘set world origin location’ node will be executed in 2 consecutive frames, thus subtract twice the amount of value from pawn’s location as originally expected.

This problem cannot be reproduced in single player mode.

Does anyone encountered this and how to you solve it?

Demo Project for 4.23:

https://drive.google.com/open?id=1yv…Mr1BbNsRVFXecp

The playable area for a single Host is within a 210x210x210km cube around the host. Video there:

Origin Rebasing can be used in single player to move around in a 42000x42000x42000km Cube of playable area, note that you need to change WORLD_SIZE variable in engine code and most likely handle the position of assets in double precision in code.

Demo here:

Max Unreal Engine 4 World Size ? Answer: +- 21000km in Any Axis direction - YouTube](Max Unreal Engine 4 World Size ? Answer: +- 21000km in Any Axis direction - YouTube)

Hey Guys, I was wondering if it was possible to set the orientation along with the position of the origin as it’s currently being done. I’m guessing I will have to go diving into engine code to do this, but just wondering if it was possible beforehand before I attempt.

Thanks,

Thanks for demo. Where is WORLD_SIZE variable?

Maxime answered me: runtime/engine/public/enginedefines.h (or %engine%/source/runtime/engine/public/enginedefines.h)
WORLD_MAX variable :slight_smile:

I changed WORLD_MAX, rebuilt engine, but it didn’t help - non-local characters still disappear after 10km from 0,0,0 on clients. Maybe there is something else needs to be tune?

i downloaded the 4.23 demo project and run it in 4.24, and replicated exact positions that the demo video showed for the MP rebasing, but cant get it to work, when server player teleports it kinda dissapears from world outliner and bugs out totaly (cant walk on x axis and such), but the client seems to be working after teleport, but does not see the server player…server player sees the client player… I have wasted almost a week now to try and figure out how MP origin rebasin should work. There is ZERO documentation about it, in fact the docs says it does NOT work at all, but clearly there is a setting in project clearly named “Enable Multiplayer Origin Rebasin”, and i know this was tagged long time as experimental, but it is not anymore, so Epic obviously think it works?

Please for the love of everything that is epic in this world, can anyone explain to me how to get MP world origin rebasing working with world composition or should i just give up? so i can stop wasting my time…

You might need to uncheck “Enable Worlds Bounds Checks” in the World Settings.

I’m wondering this too, it seems something changed about how this works, if you check the C++ it seems to have the right things there but getting the example project working is another story.

Yep, it’s unchecked.

Any success with this, folks? Having same issues as everyone.

nothing yet, sad :frowning:

Hello everybody!

I like a rebasing so much. It’s amazing! But I have some problem.

I’ll show this in MPOriginShift sample. I have 3 characters in my game. They appear far away from an origin point. Server-side can see every other characters, but client-sides see nobody, except itself. By the way there are physical collisions in the scene.

Does anybody face with this challenge?

Clients aren’t updating with offset.

My co-worker added a replication in a Pawn class. And now clients that are far away from origin point see each others. However we got the same problems as listed at the beginning of this thread: objects jitter. How can we repair this unpleasant effect?

Any idea how the game SCUM solved this issue in UE4. It’s world is huge and it’s a multiplayer game. There’s an asset in UE4 market called "Multiplayer World Origin Rebase Tool". Can anyone verify if it works in multiplayer with > 10k and < 20k world?