Вопрос Микро фриз при выводе сообщений в чат

wwwfr

Пользователь
Сообщения
36
Решения
1
Столкнулся с такой проблемой, что когда игрок отправляет сообщение в чат с любым текстом у игроков которые находятся в зоне видимости смс случается фриз на секунду. Это происходит только после 3-4 минут бездействия в чате. Если игроки общаются между собой, то никаких лагов нет, а если замолчали на ~3 и более минут, то происходит фриз.
Думал, что виноваты плагины, но после проверки ситуация не изменилась. Тогда скачал чистый paper и поставил его. На чистом paper 26.2 проблема есть из коробки получается.
Хостингу мощности хватает, tps всегда 20. Притом, сервер не лагает при больших взрывах или т.п. но сообщения в чате такое вызывают.
На команды реакции нет. То есть если писать команду через 2-4 минуты, лагов нет.
Через cmd если выводить сообщения от лица сервера, тоже не наблюдал проблем.
Лаунчер официальный, у других людей prisma и tlauncher
Поэтому вопрос, кто с таким сталкивался? Как исправлять?
 
Последнее редактирование:
Решение
В общем. Я нашел в чем проблема и ее решение. Может кому поможет в дальнейшем.
Сервер работал в online-mod=false
В этом режиме Minecraft не получает от Mojang настоящий UUID игрока, а использует offline UUID, вычисляемый из имени игрока.
Когда другой игрок отправляет обычное сообщение, клиент получателя обрабатывал его как player chat. При этом Minecraft выполнял проверку, не находится ли UUID отправителя в списке заблокированных игроков. У Minecraft есть известный баг: эта проверка могла инициировать сетевой запрос к сервисам Mojang прямо во время обработки/рендеринга чата, из-за чего игровой поток на некоторое время зависал.
Решение:
Я установил плагин NoChatReports который изменяет обработку чата на серверной стороне и...
Столкнулся с такой проблемой, что когда игрок отправляет сообщение в чат с любым текстом у игроков которые находятся в зоне видимости смс случается фриз на секунду. Это происходит только после 3-4 минут бездействия в чате. Если игроки общаются между собой, то никаких лагов нет, а если замолчали на ~3 и более минут, то происходит фриз.
Думал, что виноваты плагины, но после проверки ситуация не изменилась. Тогда скачал чистый paper и поставил его. На чистом paper 26.2 проблема есть из коробки получается.
Хостингу мощности хватает, tps всегда 20. Притом, сервер не лагает при больших взрывах или т.п. но сообщения в чате такое вызывают.
На команды реакции нет. То есть если писать команду через 2-4 минуты, лагов нет.
Через cmd если выводить сообщения от лица сервера, тоже не наблюдал проблем.
Лаунчер официальный, у других людей prisma и tlauncher
Поэтому вопрос, кто с таким сталкивался? Как исправлять?
И у тебя и у игроков микро фриз?
 
Можно список плагинов?
А смысл? Я чистый запускал, все равно есть фриз. Сначала все плагины удалил. Потом полностью с нуля запустил новый. Видимо проблема глубже. Просто интересно как владельцы серверов нашли решения, обычно такой проблемы не замечал
 
Раньше был баг с чатом при первом сообщении, но разработчики это исправили в новых версиях уже давно. Можешь конечно посмотреть этот мод, но он для старых версий в которых реально есть проблема

Мне кажется у тебя проблема именно в твоём лаунчере, поспрашивай у других игроков с другим железом об этом. Если бы это была популярная проблема, её исправили бы в следующем обновлении майнкрафта сразу или появился мод, который это исправляет
 
Раньше был баг с чатом при первом сообщении, но разработчики это исправили в новых версиях уже давно. Можешь конечно посмотреть этот мод, но он для старых версий в которых реально есть проблема

Мне кажется у тебя проблема именно в твоём лаунчере, поспрашивай у других игроков с другим железом об этом. Если бы это была популярная проблема, её исправили бы в следующем обновлении майнкрафта сразу или появился мод, который это исправляет
Хз, выбрал рандомный сервер, с онлайном +- 3 игрока. Такой проблемы не встретил. Проверял с одного компа но с разных лаунчеров. На моем при проверке с одного компа, проблема есть. Но тут даже дело не в моем железе, а то, что у других игроков такая же ситуация, я спросил и протестировал.
 
В общем. Я нашел в чем проблема и ее решение. Может кому поможет в дальнейшем.
Сервер работал в online-mod=false
В этом режиме Minecraft не получает от Mojang настоящий UUID игрока, а использует offline UUID, вычисляемый из имени игрока.
Когда другой игрок отправляет обычное сообщение, клиент получателя обрабатывал его как player chat. При этом Minecraft выполнял проверку, не находится ли UUID отправителя в списке заблокированных игроков. У Minecraft есть известный баг: эта проверка могла инициировать сетевой запрос к сервисам Mojang прямо во время обработки/рендеринга чата, из-за чего игровой поток на некоторое время зависал.
Решение:
Я установил плагин NoChatReports который изменяет обработку чата на серверной стороне и позволяет избежать проблемного пути с обычным chat reporting/player-chat механизмом. После этого все заработало. Может кому пригодится!
 
Назад
Сверху Снизу