aNNiMON, Спасибо за фиксы! Сегодня попробую у себя так же потестить и запилю на видео, если будет всё удачно или несколько отличный результат от твоих запусков
__________________
</Твой код отражает эволюцию твоего мышления .../>
aNNiMON, По локалке: Лакально-тест По удалёнке: Удалённо-тест Я у себя таких зависаний так и не словил, и когда играл с друзьями, тоже. Но уже понял после твоего обзора, что они могут выскакивать, сейчас посмотрю, из-за чего так может быть
__________________
</Твой код отражает эволюцию твоего мышления .../>
aNNiMON, спасибо =)) На стороне клиента подозрение падает на использование client.messageWaiting(), так как он висит в цикле до тех пор, пока не получит нужный ответ от сервера, поэтому и провисает на методе paint(), что видно на зависании прорисовки. Выход из висячего messageWaiting() происходит тогда, когда либо нужный нам ответ получен, либо сервер разорвал соединение, в этом случае он возвращает "error". А учитывая, что он продолжает висеть, значит сервер всё-таки не разрывает соединение, но и нужный ответ не посылает, несмотря на то, что мы ему отправили для этого сообщение. Ты еще писал, что сервер зависает тоже, поэтому у подвисании игры две возможные причины, либо сервер подвисает, но не разрывает связь, поэтому клиент его постоянно ждёт, либо из-за пинга сообщение с одного раза от клиента не доходит, и нужно достукиваться до сервера, пока он не получит сообщение, чтобы потом отправить ответ. Как с работы приду, попробую на стороне сервера прописать метод - отчет о доставке сообщения от клиента, чтобы знать, достукивается клиент с одного раза или нет
__________________
</Твой код отражает эволюцию твоего мышления .../>
Gifo_Gsoul, нет, сервер не подвисает. Ты UDP что ли используешь? Для таких игр TCP нужен. А UDP для быстрых, в которых потеря пакета существенной роли не сыграет, так как следующий пакет пришлет свежие данные.