Making an open world multiplayer game?

I'm new to game dev in it's whole and I'm probably going in way over my head for even asking about this, but, how would I go about making a massively multiplayer game in CryEngine? Not a game like FPS games with rounds and small servers for short time happenings, I mean games like Star Citizen, Eve Online, or Elite Dangerous. In case you couldn't tell by my more obvious than not, I am trying to make a space game. I'm not expecting this to be any good, I just plan on doing it to refine my abilities for a few years of learning before trying anything. The main issue with game dev is, I have no clue where to begin. Most engines like lumberyard or unreal seem more like level editors rather than game engines, and either way, I have no idea how to make an online game that doesn't have a start or finish like the games previously referred to. Whether I go through with actually making a game I release or not, it would be only prudent I learn how to do this sooner or later, and frankly, I can't find out anywhere else how this is done, so I just decided to come to a game engine forum site.
It probably sounds like I am looking to find out how to design each feature like outfitting ships, character customization, ect. Just to clarify, I am only asking how a game is tailored around this open-world multiplayer design.

Thank you for any time you spend looking at this post, and any replies you may want to input. Every little comment helps.

Re: Making an open world multiplayer game?

Hi. My suggestion is that you should wait for the next CryEngine version. It will come with a lot of networking support. Until then, you could just play around with the engine and get familiar with it. Currently, you would need to implement something like this in C++. But I guess that you'll need C++ anyway because I think you want multiple maps to be loaded right? So that some players are on one map and other players are on a different map (but within the same game) and they can transfer between maps, right?
You won't come around C++ here.

- Jannis

Re: Making an open world multiplayer game?

Riad I don't think that this is really a good idea. Specially when you look at something like updates. Let's say you want to expand the game with some new areas. It would be a horrible mess because of missing flexibility. The best solution would really be to run all the levels at the same time and then create some kind of zones where the player would transfer to another map. You could easily add new maps to the system.
But a system like that would need to be hard coded in C++. Sadly I don't have the faintest idea on how to approach this. I already did some network programming in Java, but I'm not experienced with CryEngine's networking system.
So there are a few major problems that I can see directly (I'm sure that there will be more down the road). First it would be needed to actually run multiple maps at the same time. Then there would need to be a system to transfer players between maps. Furthermore there would be a problem with multiplayer savegames. These would of course need to be stored on the server and would need to be linked to the specific player. Maybe some kind of database would be good for this.
Furthermore if the game grows, there would be the need to communicate with other servers aswell. For example if the game gets really hughe, there would be multiple servers. For eample one server for one map. Now you don't only need tomtransfer players between levels but also between servers. And this is linked to the savegame problem aswell. When logging in, the server would need to recognize where the player was last and send him directly to that server.
(By the way: this "splitting up the game across servers" would not work with your approach Riad).
There are much much more things to worry about. So what I want to say is this: You'll be having a hard time to implement something like that. But you'll end up with a flexible, extendable system, which really is worth more than the approach to create one hughe, static map. This would really cause lots of problems later on.
And still you would need a solution for savegames and so on.

- Jannis

Re: Making an open world multiplayer game?

I guess the biggest problem with making real huge open world games is the map size limitation to 4096x4096 units. I just started playing with CE3 and was very disappointed with that. Nevertheless itis still far better engine than Unity, which became the most popular tool for making 1-euro-crap games on Steam. There are some modifications of CE3 in example Amazon Lumberyard and Ubisoft's Dunia Engine and the second one was developed mainly to abolish those limitations. I don't know how it looks in Lumberyard but i've found this post: ... 6&t=135912
so it seems that vanilla CE3 with its limitations wasn't appropriate for game which action takes place on entire planets.

dignity wrote:Riad I don't think that this is really a good idea.

I think it is a good idea unless until you decide to convert to CE5. One of the biggest adventages of CE5 over CE3 is a possibility of making terrain holes. To explain why it is so important i have to go back in history to the first Gothic series by Piranha bytes and its later continuation entitled as "Risen" Look how the world is constructed - there is no such a thing as separate hubs for exteriors and interiors. All the buildings are part of one single worldspace. Even the dungeons, cellars and caves are connected with this one continous space. The terrain tool in CE3 works pretty much the same way as in unity, unreal or gamebryo/elders scroll Creation kit and doesn't allow making holes to be used as entrances to the undergroung pathways. So the only solution is to make your entire map a mesh, which gives you more flexibility in crreation.
dignity wrote:Sadly I don't have the faintest idea on how to approach this.

Aks cwright at the forum. He mentioned sth about making 100x100 km maps here: ... 1&t=132611
and here: ... 1&t=129130

Sorry for my english
Best Regards

Who is online

Users browsing this forum: No registered users and 1 guest