Why is there a limit of players in one game someone needs to explain it to me please. It would be better if there can be like........30, players limit? Me and ArkOfTheClouds want to know.
The networking of Mars doesn't handle a high capacity of players well, unfortunately. Flynn's new networking will fix many problems, so we'll see how much it can handle compared to the current Mars's networking ^_^
Hello! There is actually a very good reason for this... Let me explain.
First and foremost, it is important to understand three things:
Mars (currently) *generates*, per player, about 1 MB per minute (if I recall correctly)
The total amount of data *sent* goes up exponentially with the number of players in a server (the data for each player has to be sent to each other player)
All data is routed through the host, which means speeds are reliant on the host's internet speed.
What does this all mean? well, let me show you:
A one player server will send 1 MB per minute.
A two player server will send 4 MB per minute.
A three player server will send 9 MB per minute
Not bad so far... But it gets much worse...
A ten player server will send a whopping 100 MB per minute! My internet speed is about 10 Mbps -- Which comes out to about a maximum send rate of 75 MB per minute.
A server that's only 10 players large is already way more than my internet connection can handle -- and my internet connection isn't half bad!
But there's more...
I only took into account my download speed. The host is also limited by their upload speed!
Mine happens to be HALF my download speed (around 4.8 Mbps) That happens to be alost exaclty the amount that a 6 player server sends... Meaning I can't handle hosting a server with mroe than 6 players in it. (note to self)
But let's keep going, let's see how much worse it gets when going all the way to 30 players in a server...
A fifteen player server will send 225 MB per minute!
A twenty player server will send 400 MB per minute!
A twentyfive player server will send 625 MB per minute!
And, finally...
A 30 player server... oh god, it would send 900 mb per minute.
That means, that in 10 minutes, a 30 player server would send about 8.7 GB of data... If computers could download that fast, Unity3d would have downloaded in about 30 seconds.
The networking upgrade will start routing data through a central server. This is great, because it means we have far higher limits in terms of how many players can be in a server -- although if there are too many servers running at the same time, this will bog down. (I MAY have a trick up my sleeve to mitigate this, but I am not sure).
The major pitfall of sending it through the central server is, most dedicated servers have a maximum bandwidth. Even with a maximum player limit of 10 per game, we could be looking at over a terabyte of data being sent per month -- which is bad... Really bad.
I don't intend to lower the player limit below 10 players. But at the same time, I'm, quite weary of increasing it.
In the end, whether you use the current networking system, or any future networking system, the fact of the matter stays the same -- The host, whether it be a central server, or a normal player, simply CANNOT handle that much data being sent.
For convenience, I have compiled a list of minimum network speeds needed for lagless hosting of servers on Mars Explorer:
If you wish to host a one player server, you will need at least 0.13 MbPS download AND upload speed on SpeedTest.Net
If you wish to host a two player server, you will need at least 0.53 MbPS download AND upload speed
For three players, you need at least 1.2 Mbps download & upload speed to host without lag
For four players, you will need at least 2.1 Mbps download & upload speed to host without lag
For five players, you will need at least 3.3 Mbps download & upload speed to host without lag
For six players, you will need at least 4.8 Mbps download & upload
For seven players, you will need at least 6.6 Mbps download & upload
For eight players, you will need at least 8.6 Mbps download & upload
For nine players, you will need at least 10.8 Mbps download & upload
For ten players, you will need at least 13.4 Mbps Mbps download & upload
To check your download & upload speed, go to SpeedTest.Net. Once there, click "Begin Test" and look at your speeds. You can ignore your ping time, pay attention to upload and download speed. If your download speed is less than your upload speed, then your download speed is your max server speed, and vice versa. Your max server speed will need to be one of the above numbers to host a server with the corresponding number of players.
Yeah, I dont know about that... My servers start to lag after around 8 or 9 players. That little website said that my download speed was around 25 mbps, but my upload only around 0.98.
That's odd, I have profiled the mars sendrates -- it should be impossible to send enough data with only .98 upload speed.
Was mars running while you did this test? Is your internet perhaps on-demand, changing in speed as needed?
Then again, only your download speed impacts *your* experience. All of the others in your server are impacted by both. So as long as you have good download speed, *you* will not see any lag. You need both good download speed *and* upload speed for the *other* people in your server to not have any lag.
Depending upon your internet, the packets which are sent beyond your upload speed will be dropped instead of buffered. It's actually good if they are dropped, because that's the equivalent to just lowering the mars sendrate (mars can handle sendrates as low as 0.25 updates a second, as opposed the the current 10 updates a second) -- Mars has a ton of interpolation to help deal with sendrates this low, the lag is noticeable when collisions between vehicles take place.
If, however, they are buffered, you will get lots of huge bursts, and even have players lagging several seconds behind.
The huge amount of data can also bog down the sending of the mars RPCs (such as laser firing). This could have a seriously negative impact, as those are *always* buffered across the network (to ensure they are always sent).
Positional updates are non-reliable, and may be dropped
Sounds like your internet provider was changed! Other possibilities are your internet provider changes speed depending upon demand, or perhaps you have used up more of your bandwidth today, than on the day you did the test. (With some internet providers, your internet slows down after you send too much data -- mars is a mega data hog, so you may experince slowed internet after long periods of playing)