Max number of AI and connections?
by Vince Gee · in Torque 3D Professional · 01/19/2012 (4:53 am) · 5 replies
Good morning,
I'm looking for some information on what the maximum number of client connections are per server (not in practice, but what the server due to bit stream limits it to). I'd appreciate it if someone could point me in the general direction in the C++.
Also, does anyone know what the max number of AI's are per server? Not necessarily what a zone can handle operating, but what the network stack/ or some other stack limits it to.
Thanks,
Vince
I'm looking for some information on what the maximum number of client connections are per server (not in practice, but what the server due to bit stream limits it to). I'd appreciate it if someone could point me in the general direction in the C++.
Also, does anyone know what the max number of AI's are per server? Not necessarily what a zone can handle operating, but what the network stack/ or some other stack limits it to.
Thanks,
Vince
About the author
www.winterleafentertainment.com
#3
01/19/2012 (6:50 am)
ahh, since it is driven off of the player object, then I would assume I'm looking for the max number of players per server
#4
If I'm remembering correctly, by default each Player and AIPlayer (as of 1.1, anyway) requires ~14 bytes for ghosting. So each client will need to download ~14b * <number of Players/AIPlayers being ghosted to them> whereas the server will need to upload ~14b * <number of Players/AIPlayers ghosted to a client> * <number of clients connected>. The data adds up very quickly.
Once there's more data to upload/download than can fit in a single packet (of which the size is determined by the PacketSize prefs), you'll start seeing clientside anomalies like warping, delayed creation/deletion (i.e. fire a weapon -> projectile spawns 1+ seconds later), etc.
01/19/2012 (7:20 am)
It's hard to give any estimates in this case because it'll depend on what changes you've made to the Player/AIPlayer class(es). The "limitation" you'll run into first will probably be with packet size constraints.If I'm remembering correctly, by default each Player and AIPlayer (as of 1.1, anyway) requires ~14 bytes for ghosting. So each client will need to download ~14b * <number of Players/AIPlayers being ghosted to them> whereas the server will need to upload ~14b * <number of Players/AIPlayers ghosted to a client> * <number of clients connected>. The data adds up very quickly.
Once there's more data to upload/download than can fit in a single packet (of which the size is determined by the PacketSize prefs), you'll start seeing clientside anomalies like warping, delayed creation/deletion (i.e. fire a weapon -> projectile spawns 1+ seconds later), etc.
#5
01/19/2012 (7:31 am)
The problem with Ai/players in general is that "skinned-meshes" are drawn on the processor, and Torque only uses 1 core. If "skinned-meshes" were drawn on a seperate core performance and instances would improve (who doesn't have dual core these days? Even I have dualcore and my box is 5 or 6 years old).
Torque Owner Richard Ranft
Roostertail Games
I would expect that stuff to be in the engine/sim folder with the ghost stuff you just did, but engine/T3D/aiClient.cpp and aiConnection.cpp might be useful, too.