World Editor for online games.

Hi guys.

I have read this post …

https://answers.unrealengine.com/questions/8774/large-map-big-world-vast-terrain.html

I understand that this is work in progress, but is there any chance I could get a reply from the developers with regards to what features we can expect and how this would work server side?

I have checked Unity, Unreal and CryEngine and nobody offers a standard solution to the problem of large terrains in an MMO.

I also have an idea on how to proceed, but i,ll wait for a response first.

Thank You.

Hi,
The feature is already in UE4, but there is still no content example available for it. You can enable it in Editor Settings->Experimental->World Browser.
But this is not a feature that will allow you to create large world that works in MMO environment. For an MMO game you need a server, which can handle large worlds. We don’t have a solution for this yet, so you will need to implement your own. Also this thread might be useful link

Hi ddvlost
My Team is currently working on an FPS MMORPG we are currently working on The Features of The game but we soon will begin mapping. My question is can we have help from epic develop The server solution? If Epic want we can discuss our idea .

Hi

Thanks for the reply.

I have previously read that post you linked, and I have made a graphical representation of how this should work …

text3322.png

As can be seen in the image, the 3 players are all using different origins.

Player 1 and 2 dont care about player 3 as it cant influence their game play, but Player 1 and 2, need to be able to shoot each other because they are in visible range, despite being on different tiles and using different origins.

The blue circle represents when a tile gets loaded, now this could be setup to load a tile when it passes a new origin, or when it touches an unloaded tile, and could also act as a sphere of influence, so when players are inside this sphere, the server keeps player updated on the actions they perform. This could also grow and shrink in relation to player speed and height.

Now, a question …

I think the World Browser will need to act slightly differently, I see the need for a script to basically randomise which tile gets loaded by default and for that tile to contain numerous spawn points for a random spawn point feature.

Also, you stated that you dont have a solution for this yet, is the image a good representation of how you think this should work? and is this something being worked on? if it is, then what priority level is attached to it?

Alos has there been any news from NVidia regarding PhysX support for origin rebasing and how well is this expected to perform, as this whole discussion could be rendered inconsequential if it doesnt perform.

I think this is a feature that would be of interest to a great many designers and if it is being worked on, I urge you to bump its priority level ASAP.

I wish I could program this myself, but unfortunately my coding skills are not that advanced.

Thanks for listening

Hi

http://docs.nvidia.com/gameworks/content/gameworkslibrary/physx/guide/Manual/OriginShift.html

Seems the PhysX question has been handled.

L8rs

We do have a dedicated server. In case you are developing a game which is “room” based like WarFace or World of Tanks - unreal dedicated server is what you need for a game room instance.

I’m not sure I understand how your idea works.
Each client can have a different world origin, this is fine. The problem is where world origin will be on server side? Server can have only one origin, and most likely it will be a zero origin. So on server side you will still have issues with actors that are too far away from world origin.

One solution is: world should be subdivided to a regions with a size that single unreal dedicated server can handle. Basically your world on a server side will be processed by a several server instances. But clients should still see that as a single server instance they connected to. So you will need a special server proxy, to which all clients will connect and that server proxy should route all client communication to a right world region server. That server proxy does not exists, and you will need to implement it. Probably there are better solutions to this problem that I’m not aware of.

This is used by World Browser already. But this does not solve problem with a server side in MMOs with large worlds.

Does this means that i also cant use internal Replication, or i can still use replication functionality and just replace UE4 server functionality with my own?

For example as i understood, i have to implement these things myself:

  1. Own server with processing ue4 Replication events. Can i easily use ue4 client-side replication with totally replacing server-side replication handling without using sockets directly? using already available Replication mechanism for login etc?
  2. Own translator of “Level environment” into “Server geodata” for selfmade collision detection etc… on server-side.

So, how do you think, unreal Replication system is well-fitted for customizing server? or its totally hardcoded? May be Epics should then make Networking customizable with user’s own Server logic, including server-side collision detection, etc?