My RTS game abides by the lockstep system so keeping everyone up to date is import and guaranteeing the safe arrival of packets would make my life a lot easier. With that said, I still need decent speed so players won't have to wait too long before commands are registered, preferably under 300ms. Basically, my system is set up like this: 10 packets are sent out every second by the server which will be based upon for players' simulations. Every time a player makes a command, a packet is sent to the server as well so a player with 180 apm would send 3 packets a second. I plan to have 16 player games. Is it plausible to have a player-hosted server send out 10 packets and take in 3 using TCP and have the round trip times for most players be under 300ms?
I think the 10p/s out for each player seems kind of harsh so this could use UDP but is it at least possible for players to send their commands using TCP and get responses in reasonable times?
To sum up my concerns over using TCP, if a client has 200ms RTT using UDP, how much will his RTT be using TCP? In addition, how much more bandwidth will it use?