Костыли и хитбоксы

Сообщения
106
Реакции
222
Помог
1 раз(а)
Апну темку
Вопрос встал намного критичнее, теперь 80% моделей, которые используются с индексами просто закидывают CPU сервера под 100% и вешают всё дело
Некоторые карты вообще сразу без модели на старте мапы вешают сервер
Почти все энтити которые имеет солид, размер и могут получать урон вызывают повышение пинга вплоть до фриза
Причем, виснет только если на сервере 2+ человек, т.е проблема не в модели 100%
Как бы это магически не звучало, проблема лагов именно роботов(модель выше) немного сглаживается, если я убераю со списка прекеша один спрайт, который вообще никак не связан с роботами(Как это работает?
Но когда онлайн поболее, все равно начинаются висы, пинг до 300+ у всех поднимается и подобное, если использовать эту модель
Опять же, был раунд Саботаж у меня с установкой бомбы и там постоянно игроки жаловались на лаги, я убрал у энтити для подрыва солид и takedamage_no поставил, лаги пропали
Такая же проблема у вертолета, у которого тоже есть возможность получения урона
Я понял, что дальше уже так нельзя
Такое ощущение что с модельиндексами или трейсами какая то беда
И особенно, что просто коммент одной строчки прекеша чуть лечит эту ошибку меня максимально триггерит, потому, что я связи вообще не вижу
Теперь вообще этот вопрос очень сильно встал, что прям желание отбивает что то делать дальше, карты ломаются, энтити сервер просто ложат
Я не понимаю, что происходит, я конечно вероятнее всего сам сломал чем то в моде это дело, но как задетектить и какая функция вообще может так работать?
 
Сообщения
273
Реакции
424
Помог
5 раз(а)
Droads, У тебя в модели титана 93 хитбокса, куда столько? Не удивительно, что просадка. Она скорее всего при трайсе происходит, надо подчистить модельку.
 
Сообщения
106
Реакции
222
Помог
1 раз(а)
bionext, Эта модель как пример, я тестил её с одним хитбоксом вообще, всё так же сразу же фриз
Причем фризит от 2+ человек только, до этого работает всё спокойно
И на втором сервере работает она даже от 2+
Так же в 100% CPU уходит и с другими моделями когда модельиндекс применяю и вообще не с игроками
К слову я в теме мода выкладывал видео с геймплеем этого раунда
И там эта же модель работает спокойно, но даже тогда она уже не работала на некоторых картах, которые я писал уже ранее
А теперь те карты вообще не запускаются)(
 
Сообщения
106
Реакции
222
Помог
1 раз(а)
bionext, rg_set_user_model(id, "titan_atlas_v36", true)

* Sets the client's player model.
*
* @param index Client index
* @param model Model name
* @param update_index If true, the modelindex is updated as well
*
* @return 1 on success, 0 otherwise
*/
native rg_set_user_model(const index, const model[], const bool:update_index = false);

И это момент когда фризит на игроке, но как я выше написал, просто от энтити которые имеют солид и возможность получать урон тоже самое, может чуть полегче
 
Сообщения
273
Реакции
424
Помог
5 раз(а)
Спустя такое время нашлось ещё одно решение которое намного адекватнее предоставленного мной выше -
Просто используем подобный хук:
Код:
RegisterHam(Ham_SetObjectCollisionBox, "player", "SetObjectCollisionBox", false)

public SetObjectCollisionBox(iPlayer)
{
    set_entvar(iPlayer, var_mins, { -200.0, -200.0, -200.0 })
    set_entvar(iPlayer, var_maxs, { 200.0, 200.0, 200.0 })
}
Размер игрока нужно выставлять исходя из размера модельки в юнитах
Таким образом захватываются и работают все хитбоксы в любых положениях модельки и работают все тачи кастомных энтити, в моём случае ракет=)
Способ очевидный, но сообразил только сейчас
Кстати в Gamedll делается так:
Код:
void CBasePlayerItem::SetObjectCollisionBox()
{
    pev->absmin = pev->origin + Vector(-24, -24, 0);
    pev->absmax = pev->origin + Vector(24, 24, 16);
}
к origin прибавляется bbox это нужно для корректной линковки.

А по поводу лагов без кода ничего не скажешь, вероятнее всего у тебя какой-то хук грузит.
 
Сообщения
106
Реакции
222
Помог
1 раз(а)
Вообщем найден временный фикс, спасибо совету KOBRA
Попробовал не выставлять игрокам на спауне модельиндекс и прекратились все лаги с энтити, карты заработали, смог титанов запустить на карте где они с релиза не работали
Такие дела
Вероятнее всего проблема в движке, но где именно, это не понятно
 
Сообщения
857
Реакции
532
Помог
13 раз(а)
имею такую же проблему
при отключении модельиндекса цпу так же перестал грузить

карта ze_deadspace_final
плагин, который устанавливал модельиндекс - дефолтный cs_player_models_api из zp 508 версии

при всем при том, что на ze_escapetrain/de_dust2 с этим проблем не наблюдается
от чего это зависит я так же не нашел причин
 
Сообщения
857
Реакции
532
Помог
13 раз(а)
Вероятнее всего причиной является размер файла моделей
Если одна из двух моделей имеет вес более чем ~6 мб, тогда начинается скачок цпу к 60-100%. При том при всем, проблема возникает только при установке модельиндексов, без него проблема не появляется

компилятор моделей, который используется дабы перепрыгнуть порог 6мб (да-да, в стандартном компиляторе есть такое ограничение на 6мб, после чего следует краш компилятора):
https://gamebanana.com/tools/5094
22 Мар 2019
разделил модель на две части - пока это временное решение, которое я нашел для себя
 
Сообщения
145
Реакции
276
Помог
1 раз(а)
2BalbuR

Проблема не в компиляторе и не в модели. Проблема в переполнении heapsize. Я с ней столкнулся лет 7-8 назад, когда начинал делать ЗМ сервер.
Если я не ошибаюсь, Крок даже в дпрото впиливал команду для вывода инфы по объемам его заполнения. В этот хипсайз записываются только модели игроков и p_ модели оружия (на сколько я помню).
Ещё с тех времен я начал делать две модели: одну для сервера с пустыми текстурами, вторую для клиента, уже с нормальными.
Когда переполняется heapsize, сервер начинает читать файлы не из кеша, а прямо с жесктого диска, отсюда и рост "Нагрузки".

Что самое забавное, к этой теме данная проблема не имеет отношения. Она начинает проявляться, когда вы начинаете использовать 491й оффсет для назначения индекса.
А в данном случае, вы просто вылетели на неё в качестве побочного явления.

Проблема решается самым простым способом - урезается размер моделей игроков, путем компила их с пустыми текстурами для сервера и с нормальными текстурами для игрока. sv_allowdownload разумеется в 0
 
Последнее редактирование:
Сообщения
2
Реакции
-1
Вообщем найден временный фикс, спасибо совету KOBRA
Попробовал не выставлять игрокам на спауне модельиндекс и прекратились все лаги с энтити, карты заработали, смог титанов запустить на карте где они с релиза не работали
Такие дела
Вероятнее всего проблема в движке, но где именно, это не понятно
Хотелось бы уточнить, какой конкретно совет дал KOBRA и где его найти?)
Столкнулся с такой же проблемой, хиты от пушек которые юзают entity работают только по обычным хитбоксам.
Можно решение проблемы?)
 
Сообщения
106
Реакции
222
Помог
1 раз(а)
VolodyaMegalodon, Вопрос не понял, к сожалению. В данной теме указаны решения нескольких проблем.
 
Сообщения
2
Реакции
-1
Офф-топик / Офф-форум
@Faktor,можно ваш вк/телеграмм или еще что-то? Здесь пока что не имею возможности писать в личку :C
Или если не трудно можете написать мне в личные сообщения на форуме?
 

Пользователи, просматривающие эту тему

Сейчас на форуме нет ни одного пользователя.
Сверху Снизу