@sprite off - отключение показа премиум-покрасок
-
Spawny, возможно это глюки клиента
раньше при снятии тохедо, пропадала непремиум покраска, до первого движения.и что вы к премиумам покраскам привязались
при входе персонажа в зону видимости передаёться куча информации, где ИД покраски лишь малая часть(персонаж\гилда\3предмета головы\оружие\птичка\тележка\обкасты\координаты...).ну и почему когда входят по одному дисконектов не происходит? для входящего вход на гейт равнозначен, входу всего гейта в зону его видимости(со всеми их премиум покрасками)
возможно если есть баг в клиенте, то тогда стоит ввести команду. на лаги введение команды точно не должно снижать.
-
Bububu, возможно и так. Все же в этом вопросе не помешала бы помощь администрации. Игровой контингент высказал предположение и оформил предложением.
А вот целесообразность оного и качество аргументации определить по сути невозможно без знания принципов работы серверной части рассматриваемого сервера. Мне вот любопытно, администрация пойдет навстречу во внесении ясности в вопрос, или же тема заглохнет...
-
А почему не так? При появляении персонажа высылается номер палитры, она отрисовывается клиентом, на себя в том числе, пока персонаж присутствует на экране. Номер длиной в 1 Байт, если не ошибаюсь. 100 человек - 100 Байт. Это даже не 1 КБайт. Не имеет значения сколько разных покрасок на экране - все равно число переданых данных будет то же.
P.S. Крашеных спрайтов не бывает.
-
@"Zeno":
А почему не так? При появляении персонажа высылается номер палитры, она отрисовывается клиентом, на себя в том числе, пока персонаж присутствует на экране. Номер длиной в 1 Байт, если не ошибаюсь. 100 человек - 100 Байт. Это даже не 1 КБайт. Не имеет значения сколько разных покрасок на экране - все равно число переданых данных будет то же.P.S. Крашеных спрайтов не бывает.
Объясню почему не так... Премиум-палитры в клиенте не содержатся изначально по-моему... Они же есть только в серверной части - куда вносились по мере разработки палитр самими игроками...
Потому - с необходимостью они хотя бы раз должны передаваться от сервера к клиенту - полностью(много байт - а не один), а не только их номер(один байт)... А вот от того как это реализовано - при каждом проходе гейта или один раз только - при запуске клиента - от этого сильно может зависеть трафик... Вот потому и нужна точная инфа - как это реализовано - для принятия решения - даст это что-нить или не даст...
PS: естественно я подразумевал палитры, а не сами спрайты сидящие в клиенте...
-
Bububu, Полностью она передается вместе с апдеитом, когда их ввели апдеитер закинул к тебе в клиент, и при загрухки клиента через апдеитер проверяется стоят у тебя обновления или нет, если нестоят тогда он их скачивает и у тебя в клиете появляются все покраски. А премиум покраска или безплатная значения неимеет информацию о неи надо всеравно передать. Палитры тоже сидят в клиенте.
-
Допустим это [zz-zz-XY-YY-zz] пакет перемещения другого игрока в зоне видимости, XY-координаты которые изменяются, YY-цвет покраски.
В результате 3 перемещения этого игрока дадут "лишних" 3 байта о покраске, 100 таких игроков, дадут 300 байт, увеличте количество перемещений этого "стада" в зоне видимости получите довольно неплохую цифру, особенно если действие разворачивается в "узких" коридорах ... :roll:
Идея правильная, но резать пакеты никто не будет :roll: хотя :roll: -
Kpоmyc, Пиковая нагрузка образуется во время входа, а не перемещения. Народ вылетая во время захода на гейт. Когда они начинают двигатся те кто должен был вылететь, уже вылетел.
-
@"Hitman_Sniper":
Kpоmyc, Пиковая нагрузка образуется во время входа, а не перемещения. Народ вылетая во время захода на гейт. Когда они начинают двигатся те кто должен был вылететь, уже вылетел.
не, они просто все во время загрузки тыкают вперед)
кто-то умирает на респе, но сигнал движения поступает) -
@"GoSu":
@"Hitman_Sniper":
Kpоmyc, Пиковая нагрузка образуется во время входа, а не перемещения. Народ вылетая во время захода на гейт. Когда они начинают двигатся те кто должен был вылететь, уже вылетел.
не, они просто все во время загрузки тыкают вперед)
кто-то умирает на респе, но сигнал движения поступает)
Может паузу тогда между гейтами прогруза увеличь с 5 секунд до 10-15 просто? -
5 секунд имхо с головой
-
5 секунд сейчас стоит
-
Пожалуй, я из двух вариатов "стереть оффтоп" и "закрыть тему" выберу третий - всех предупредить, и начать раздавать ЖК, если оффтоп продолжится.
Исходное предложение - отключение показа премиум-покрасок, к его обсуждению и возвращаемся. Для обсуждения всего остального (той же "паузы между гейтами", что бы это не значило) создавайте тему в более подходящем разделе форума (в смысле не обязательно в предложениях).
Если больше по теме написать нечего, лучше скачайте исходники эмулятора и посмотрите, где там покраски и паузы. Может какие новые предложения появятся.
-
Как мне кажется почему мб вылеты. Клиент есстесвенно сразу все покрасы в память не грузит, но вот чем дольше стоишьв пронте там, тем более становится размер клиента в памяти, логично предположить что по пакету с айди краски он из грфа извлекает соотв покрас и malloc выделяет память. Кстати у меня оч заметно если долго сидеть то потом чейнж мап долго работает(выгружает спрайты). Проблема в том что теоретически malloc может работать сколь угодно времени, и даже дать отказ. По всей видимости несколько malloc просто лочат клиент, у него набирается сразу куча пакетов(прекасты дефа:) необработанных( пока malloc'и не завершатся) , и естественно происходит обрыв связи. Возможно(тормоз malloc) происходит из-за недостатка оперативки на компе, мб из-за периодичной неадекватности винды :roll:
Кстати отсюда идет вывод что отключение спрайтов НЕ поможет ибо как я думаю тормозит машинка которой банально не хватает памяти. :roll:
З Даже если у вас куча одинаковых спрайтов, то я думаю клиент всё равно будет выделять память под каждого человека(ну вполне естесственный способ:) так что расходы не особо то и уменшатся( формально говоря станет выделено меньше памяти под загруженные спрайты).
имхо картинкой передается только эмблемка но она бмп 24 на 24 на 256 так что копейки, хотя иногда видно как не хочет прогружатся картинка:)
ЗЫ сталкивался с нечто похожим когда пишешь pthread программу, прямо в мане написано что malloc not thread safe.
ЗЫЫ судя по дебаггерам клиент написан на microsoft visual C++ {Debug!} так что оч мб...Кароч скока всего понаписал, в общем сам не уверен, просто предполагаю, основываясь на некоторых знаниях.
Ну да как мне тут подсказали, везде где написано malloc читать функция типа new