HacKeR писал(а):1) Сервер на синхронных ТСР сокетак, где каждому клиенту выделяется свой сокет и он читает/отправляет данные в своем потоке?
если 1-2 игрока то можно и на синхронных, но лучше все же на асинхронных написать заранее, TCP/IP пакеты не теряются
HacKeR писал(а):2) Сервер на синхронных UDP сокетах, где каждому клиенту выделяется свой сокет и он читает/отправляет данные в своем потоке?
Потеря пакетов + скачущая нагрузка на сервер, что тоже не есть хорошо, хотя смотря в каких целях применять
HacKeR писал(а):Ибо написал сервер/клиент на ТСР сокетах но видно небольшую задержку между приемом данных. Проверяю очень просто - отправляю местоположение 1 игрока другому и когда приходят данные - я перемещаю игрокак в то место.
1 Игрок на экране второго очень дергается.
почитайте о интерполяции и экстраполяции, на прием-передачу данных тоже время нужно, а в условиях "длинны интернета" оно может зашкаливать
HacKeR писал(а):Еще 1 вопрос: Как лучше всего отправлять данные (в каком виде)? Сейчас же все отправляю в байтах.
массив байт вида [4байта длинна пакета][1байт тип пакета][пакет], у меня так, еще думал сделать постфикс в 1 байт, но пока нет смысла
тип пакета можно запихнуть и в сам пакет или вовсе не использовать, но все таки лучше использовать, можно передавать клиенту вначале сессии код (0-255), на клиенте перед отправкой пихать этот код и отправлять на сервер, если коды не совпадают, то игнорить пакет и не тратить ресурсы, ну или типа того, еще все это дело можно шифровать, но это на любителя)