ну в идеале вообще когда есть подозрения на патчи , ставить полностью чистые без каких либо дополнений, так и будет понятно в сервере дело или же в клиенте. бывают редкие конечно исключения что может ориг клиент иметь косяки но это крайне редко бывает.Ну хорошо гляну, а то уже подозрения на патч может какая та dll кривая
Да уже попробовал чистый патч и с НКсофта тоже самое.ну в идеале вообще когда есть подозрения на патчи , ставить полностью чистые без каких либо дополнений, так и будет понятно в сервере дело или же в клиенте. бывают редкие конечно исключения что может ориг клиент иметь косяки но это крайне редко бывает.
ну тогда ответ очевиден проблема в сервереДа уже попробовал чистый патч и с НКсофта тоже самое.
Только у вас или у всех игроков на сервере? На Овере (сборке) такая проблема на многих серверах встречалась, там у всего сервера уходили эффекты в 0 (становились бесконечными), помогал только релог сервака. Решение проблемы не знаю, но очевидно оно в сервере.Всем привет, ребят кто сможет подсказать в чем проблема ?
Когда баффы заканчиваются то висят на 0 это бывает редко но случается, приходится перезаходить игру и тогда все нормально.
Хде копать не подскажите ?
нее, у всех игроков такая проблема, но редко встречаемая.Только у вас или у всех игроков на сервере? На Овере такая проблема на многих серверах встречалась, там у всего сервера уходили эффекты в 0, помогал только релог сервака. Решение проблемы не знаю, но очевидно оно в сервере.
Вроде как у фениксов есть же базовый лимит на запрос ко всем байпассам вроде он там равен 100 или 200 мс.У нас такое бывало тоже когда-то - причина была в забивании пула менеджера эффектов (EffectTaskManager в овере), т.е. проще говоря таски обработки работы эффектов (наложение/тики/снятие) не успевали вовремя отрабатывать и возникали такие "зависания" эффектов.
Решить можно например увеличением количества инстансов этих менеджеров, т.е. проще говоря раскидыванием запихивания задач эффектов на несколько параллельно работающих менеджеров.
Но сильно с количеством опять же не стоит увлекаться - можно сделать еще хуже. Вобщем зависит все от количества имеющихся ядер проца и всего такого.
Еще посоветовал бы поизучать, если есть, вещи типа нубобафферов и т.п. А то во многих сборках нет ограничения по времени на повторные запросы баффа, что позволяет зафлудить сервер запросами на этот самый бафф, что так же может легко и быстро забить очередь этих самых менеджеров и вызвать ту же самую проблему у всех. По крайней мере в оригинальном фениксе/овере таких проверок нет, нсколько я помню. Да и многие когда пишут те же бафферы в коммнуке и т.п. на эту тему не заморачиваются. А ведь это такой простой путь для вот такого своеобразного ддоса сервера...
К примеру у нас когда-то, еще на фениксе, когда я еще не добавлял этих проверок, именно так вызвали данный косяк - тупо зафлуживали серв через нубобаффера запросами на бафф с вполне понятным результатом. С тех пор взял за правило втыкать во все подобные вещи обязательную проверку типа "с момента предыдущего запроса этого игрока не прошло N миллисекунд - он идет нафиг со своим запросом".
Если тачка норм и обработчик бс в ядре норм, то 100 мс в целом то за глаза, но да на такие важные места можно и исключения сделать). В целом общую проверку обязательно нужно иметь в ядре. Потому как в тех же оверах уязвимых мест на эту тему просто уйма, нубо-баф фикс - это хорошо, а там еще есть вкусные циклы на парс манора в замках, им можно задачник у**ать минуты за 2 в 1 окнону 100 мс на байпассы это один фиг мало, т.к. просто посложнее будет процесс флуда - больше персов на ботах подключать придется
в подобных местах вобще разумно втыкать антифлуд хотя бы на 1-2 секунды, все равно вряд ли обычному игроку потребуется сразу же повторно запросить набор баффов.
Человек дело говорит. По сути это делается так:К примеру у нас когда-то, еще на фениксе, когда я еще не добавлял этих проверок, именно так вызвали данный косяк - тупо зафлуживали серв через нубобаффера запросами на бафф с вполне понятным результатом. С тех пор взял за правило втыкать во все подобные вещи обязательную проверку типа "с момента предыдущего запроса этого игрока не прошло N миллисекунд - он идет нафиг со своим запросом".
private static boolean checkReuse(Player player, String displayName)
{
if(player.isSharedGroupDisabled(Buffer.SHARED_REUSE_GROUP))
{
player.sendPacket(new SystemMessage(SystemMessage.S1_IS_NOT_AVAILABLE_AT_THIS_TIME_BEING_PREPARED_FOR_REUSE).addString(displayName));
return false;
}
TimeStamp timeStamp = new TimeStamp(Buffer.SHARED_REUSE_GROUP, System.currentTimeMillis() + Config.SOME_DELAY, Config.SOME_DELAY);
player.addSharedGroupReuse(Buffer.SHARED_REUSE_GROUP, timeStamp);
return true;
}
/**
* Устанавливает время следующего использования заданного действия
*
* @param action - название действия
* @param time - время в мс
*/
public void setNextActionUseTime(final String action, final long time)
{
_variables.setSessionVar(action, time);
}
/**
* Возвращает время следующего использования заданного действия
*
* @param action - название действия
* @return - время в мс
*/
public long getNextActionUseTime(final String action)
{
return _variables.getSessionVar(action, 0L);
}
/**
* Проверяет возможность следующего использования заданного действия
*
* @param action - название действия
* @param reuse - если задано значение больше 0 и если уже есть возможность использовать - дополнительно будет выставлено время до следующего использования.
* @return - true - можно использовать, false - пока еще нет
*/
public boolean checkNextActionUseTime(final String action, final long reuse)
{
if (getNextActionUseTime(action) > System.currentTimeMillis())
return false;
if (reuse > 0)
setNextActionUseTime(action, System.currentTimeMillis() + reuse);
return true;
}
Манор вообще весь в эксплоитах, а через КХ можно ронять серваки - там вообще ядрёный эксплоит.Если тачка норм и обработчик бс в ядре норм, то 100 мс в целом то за глаза, но да на такие важные места можно и исключения сделать). В целом общую проверку обязательно нужно иметь в ядре. Потому как в тех же оверах уязвимых мест на эту тему просто уйма, нубо-баф фикс - это хорошо, а там еще есть вкусные циклы на парс манора в замках, им можно задачник у**ать минуты за 2 в 1 окнону или те же нпсы в кхшках)
Ну с КХ там нет ничего сложного убить даже с 1 окна, а вот с манором интересно. Там вроде нет по реквесту ни какого парса, лист грузиться сразу, а запрос КЛа посевов отдаётся из базы и довольно аккуратно. Если конечно афтар не вбросил.Вобще при желании многими пакетами можно "изнасиловать" большинство серверов, на почти любых сборках.
Для предотвращения этого надо впиливать нормальный антифлуд, в котором можно было бы задавать допустимые периоды запросов индивидуально для любых клиентских пакетов.
We use cookies and similar technologies for the following purposes:
Do you accept cookies and these technologies?
We use cookies and similar technologies for the following purposes:
Do you accept cookies and these technologies?