Как мне кажется почему мб вылеты. Клиент есстесвенно сразу все покрасы в память не грузит, но вот чем дольше стоишьв пронте там, тем более становится размер клиента в памяти, логично предположить что по пакету с айди краски он из грфа извлекает соотв покрас и malloc выделяет память. Кстати у меня оч заметно если долго сидеть то потом чейнж мап долго работает(выгружает спрайты). Проблема в том что теоретически malloc может работать сколь угодно времени, и даже дать отказ. По всей видимости несколько malloc просто лочат клиент, у него набирается сразу куча пакетов(прекасты дефа:) необработанных( пока malloc'и не завершатся) , и естественно происходит обрыв связи. Возможно(тормоз malloc) происходит из-за недостатка оперативки на компе, мб из-за периодичной неадекватности винды :roll:
Кстати отсюда идет вывод что отключение спрайтов НЕ поможет ибо как я думаю тормозит машинка которой банально не хватает памяти. :roll:
З Даже если у вас куча одинаковых спрайтов, то я думаю клиент всё равно будет выделять память под каждого человека(ну вполне естесственный способ:) так что расходы не особо то и уменшатся( формально говоря станет выделено меньше памяти под загруженные спрайты).
имхо картинкой передается только эмблемка но она бмп 24 на 24 на 256 так что копейки, хотя иногда видно как не хочет прогружатся картинка:)
ЗЫ сталкивался с нечто похожим когда пишешь pthread программу, прямо в мане написано что malloc not thread safe.
ЗЫЫ судя по дебаггерам клиент написан на microsoft visual C++ {Debug!} так что оч мб... 🙂
Кароч скока всего понаписал, в общем сам не уверен, просто предполагаю, основываясь на некоторых знаниях.
Ну да как мне тут подсказали, везде где написано malloc читать функция типа new 🙂