Making an open world multiplayer game?

#1
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?

#2
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?

#4
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

Who is online

Users browsing this forum: No registered users and 1 guest

cron