FPS/RTS mix How to do the network Programming?
Members - Reputation: 612
Posted 31 July 2012 - 07:51 AM
I want to make a mix between RTS and FPS. However i cant figure out how to do the network programming.
I would need client side prediction and lag compensation for the FPS thingy.
And for the RTS thing i would need the technique which is in the "1500 Archers on a 28.8" article.
What i can´t figure out is how should i merge these 2 techniques? They are so much different from each other.
And I need at least a technique which can handle 300 units and 10 players in the network. If i just transmit the position and do inteprolation i would need 300(unit count) x 20(needed for world matrix) x 15(times per sec) = 90 kb/s!! thats too much
Please help me!
Thanks in advance,
Crossbones+ - Reputation: 6111
Posted 31 July 2012 - 08:36 AM
This should be perfectly playable as long as the server has a decent connection and you don't feel the need to support players on dialup. (0.5Mbps DSL should be capable of recieving around 30-40kilobytes per second even on a bad day and these days few people have worse connections that that), you could also cut the playercount down to 8 and total units to 240 (still 30 units per player) which gives you a fairly big bandwidth reduction without, hopefully changing the gameplay too much. Maybe even let the server hosts choose how many players to support as broadband quality varies greatly between countries (in areas where 100/100 is common you could probably go as high as 32 players).
You can also avoid sending updates for units a player can't see to save a bit of bandwidth in the average case, It won't help for the worst case but it should improve performance in the average case. (Players can probably tolerate a little bit of lag in the rare event where all players decide to smash all their units together at the same time and place)
Edited by SimonForsman, 31 July 2012 - 08:43 AM.
The voices in my head may not be real, but they have some good ideas!
Moderators - Reputation: 5309
Posted 31 July 2012 - 10:06 AM
FPS-es can work in "lockstep" if you speculate ahead on the client that sends the commands, and accept time-warps backward (corrections "in the past") from the server when you "guess wrong" -- typically as a result of actions from other players that lead to collisions, damage, etc, in the "past" for the local player.