Author Topic: Question from Devs: So how many players does this game support in multiplayer?  (Read 9165 times)

Offline x4000

  • Chris McElligott Park, Arcen Founder and Lead Dev
  • Arcen Staff
  • Zenith Council Member Mark III
  • *****
  • Posts: 31,651
Odd for the developer to be asking the players this, I know.  But there's only so many of us on staff, and we've not been able to make a dent in multiplayer's performance with three or four of us at once.  The game itself doesn't bound how many players can join a server at once, but I assure you there is a definite cap somewhere.  We just don't have any idea where.

Since some folks have been running servers (mainly Toll), I wanted to find out what your experiences with that have been.  The game is pretty lightweight in the processing arena, so I feel safe in claiming "2-16 players" as something that an average server should be able to run.  Especially on a LAN.  But I wanted to check and make sure that wasn't counter to what any of you were experiencing, and frankly I think that 16 might be well undershooting it.

From purely a RAM perspective, Keith and I were figuring that if there were about 30-50 players on a server that would be the comfortable maximum (though we could be wrong and it could be higher).  From a processing perspective, on your average gaming-rig-class machine I don't see why that wouldn't be feasible either.  From a networking perspective, the game is reasonably latency tolerant thanks to its hybrid model, so I really don't know what the comfortable answer is on an Internet server versus a LAN.

And this is why we're asking the question.  Last thing I want to do is claim that we support X number of players when in fact the experience stinks when that many players are on the server.  Right now 2-16 seems like a safe range to say, but we're honestly shooting in the dark and it seems a little stupid to promise something we've not tested.  But with that in mind, we'd be saying 2-4 players co-op, which is obviously vastly undershooting it.
Have ideas or bug reports for one of our games?  Mantis for Suggestions and Bug Reports. Thanks for helping to make our games better!

Offline TechSY730

  • Core Member Mark V
  • *****
  • Posts: 4,570
You are asking about how many players you would assure the game can handle, but you are not putting any hard bounds in the code for max number of players

(well, no hard bounds short of the platform's limit on the size of arrays or whatever data structure you are using to store all the player objects, or MAX_X where X is the integral data type you are using to count players with)

Offline zebramatt

  • Master Member Mark II
  • *****
  • Posts: 1,574
Sounds like we all need to organise an impromptu load test!


Offline x4000

  • Chris McElligott Park, Arcen Founder and Lead Dev
  • Arcen Staff
  • Zenith Council Member Mark III
  • *****
  • Posts: 31,651
You are asking about how many players you would assure the game can handle, but you are not putting any hard bounds in the code for max number of players

Correct.

(well, no hard bounds short of the platform's limit on the size of arrays or whatever data structure you are using to store all the player objects, or MAX_X where X is the integral data type you are using to count players with)

There's no such limit, aside from Int32.Max.  We're using a Generic List, so in theory it could hold over 2 billion player objects per world.  But of course the world would buckle from other factors long before that was remotely in play.

Sounds like we all need to organise an impromptu load test!

I'm certainly not opposed to that! :)
Have ideas or bug reports for one of our games?  Mantis for Suggestions and Bug Reports. Thanks for helping to make our games better!

Offline Toll

  • Sr. Member Mark III
  • ****
  • Posts: 452
Sounds like we all need to organise an impromptu load test!
Y'all have a standing invitation to my server for that purpose! My own theory is that it'll be able to handle about 100-200 players. I dare you to break it!

And if you actually do break it, send me a PM :P

Offline BobTheJanitor

  • Master Member Mark II
  • *****
  • Posts: 1,689
Good luck organizing a time when everyone can be on. How many different nations and time zones are we dealing with here? We may have to have some people just log on and stand there while they go off to work/school/bed.

Offline TechSY730

  • Core Member Mark V
  • *****
  • Posts: 4,570
Wait, Int32? Why aren't you using an unsigned integer (UInt32) for the current number of players?

(Not criticizing, just curious)

Offline Toll

  • Sr. Member Mark III
  • ****
  • Posts: 452
Unfortunately you're disconnected if you don't do anything for 30-odd seconds, so that method wouldn't work.

Offline x4000

  • Chris McElligott Park, Arcen Founder and Lead Dev
  • Arcen Staff
  • Zenith Council Member Mark III
  • *****
  • Posts: 31,651
Wait, Int32? Why aren't you using an unsigned integer (UInt32) for the current number of players?

(Not criticizing, just curious)

Talk to microsoft, not me.  Count on lists and Length on arrays are Int32, not UInt32.  Generally speaking, we use Int32 throughout our applications instead of UInt32, for one simple reason: it works the same in any sane use case, plus you can use negative numbers to denote uninitialized if need be.  UInt32 only has very specialized uses in most practical application development, because the only reason it would matter is if you both don't need negative numbers and also need to count more than two billion of something.  And the second case almost never comes up.
Have ideas or bug reports for one of our games?  Mantis for Suggestions and Bug Reports. Thanks for helping to make our games better!

Offline Hyfrydle

  • Hero Member
  • *****
  • Posts: 587
I'll jump on this evening GMT 7 pm and give ti a go if anyone else wants to join that would be cool.

Offline BobTheJanitor

  • Master Member Mark II
  • *****
  • Posts: 1,689
Unfortunately you're disconnected if you don't do anything for 30-odd seconds, so that method wouldn't work.

Put a book on mouse 1 and constantly shoot at the sky, maybe? Or run into a wall forever. There's always ways to exploit around a time-out mechanic. :D

Offline Oralordos

  • Sr. Member Mark III
  • ****
  • Posts: 434
  • Suffering from Chronic Backstabbing Disorder
I'll try to be on Toll's server as much as I can today. I get the feeling that there will be a few new continents by tonight.

Offline x4000

  • Chris McElligott Park, Arcen Founder and Lead Dev
  • Arcen Staff
  • Zenith Council Member Mark III
  • *****
  • Posts: 31,651
Unfortunately you're disconnected if you don't do anything for 30-odd seconds, so that method wouldn't work.

Put a book on mouse 1 and constantly shoot at the sky, maybe? Or run into a wall forever. There's always ways to exploit around a time-out mechanic. :D

Back in 1994 or so, I used to use a program called "Ghost Mouse" that would move the mouse cursor around a certain bounded section of the screen (which you could set) and would click things.  The idea was to make sure that it was keeping your AOL connection alive by clicking random links while you went AFK for a bit, or while something long downloaded, etc.  Back in the AOL 2.0 or so days, long downloads would fail if you weren't babysitting them the whole time, I seem to recall.  Good times, good times. ;)
Have ideas or bug reports for one of our games?  Mantis for Suggestions and Bug Reports. Thanks for helping to make our games better!

Offline Toll

  • Sr. Member Mark III
  • ****
  • Posts: 452
Unfortunately you're disconnected if you don't do anything for 30-odd seconds, so that method wouldn't work.

Put a book on mouse 1 and constantly shoot at the sky, maybe? Or run into a wall forever. There's always ways to exploit around a time-out mechanic. :D
It seems I either misremembered, or something changed somewhere, but I'm not disconnected anymore at least.

Offline x4000

  • Chris McElligott Park, Arcen Founder and Lead Dev
  • Arcen Staff
  • Zenith Council Member Mark III
  • *****
  • Posts: 31,651
It probably changed.
Have ideas or bug reports for one of our games?  Mantis for Suggestions and Bug Reports. Thanks for helping to make our games better!