Перейти к публикации
Поиск в
  • Дополнительно...
Искать результаты, содержащие...
Искать результаты в...
  • Нужна помощь?

    Создайте тему в соответствующем разделе
    Не нужно писать всё в чат!
  • Загляните на торговую площадку

    Там вы можете купить
    всё что касается игровых серверов
  • Не хотите бан?

    Пожалуйста, ознакомьтесь с нашими правилами
    Не нарушайте порядок!
  • Продаёте или покупаете?

    Пользуйтесь услугами гаранта
    Мы сделаем вашу сделку безопасной
  • 0
slithnice

Крашит сервер deathmatch

Всем привет, в общем я новичек в серверостроении, но столкнулся с проблемой, крашит игру когда играет на ДМ скажем 6+ человек, т.е. во время того как ты респавн делаешь после того как кильнули, может попросту крашнуть игра, ставил изначально респавн время 5 сек, грешу на это, т.к. спавн у меня привязан по сути через телепортацию <vector>  spawnpoints = { может кто шарит в теме, скажите какие логи показать я покажу, может связано с тем что очистил types полность, и задал принудительное удаление тел + лута через несколько сикунд и очистка трупов. В общем может кто что посоветует, почему может крашить.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Рекомендованные сообщения

  • 0
24 минуты назад, slithnice сказал:

@123new а можешь плз подсказать, как тогда сделать что бы и трупы пропадали и в тоже время людей не кикало?) потому что в действительности я просто прописал в globals.xml CleanupLifetime весь на 2

подгляди в моем моде на очистку трупов по условиям, donatebodycleaner.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах





  • 0

В общем еще думаю, а можно ли смотреть краш

Пожалуйста, Войдите или Зарегистрируйтесь, чтобы увидеть это: Вложение.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
  • 0

@slithnice дык он у тебя 2.5 часа жил и ушел спокойно на рестарт
А вообще - какой-то мод кривой на оружку, судя по всему

Краш логи на клинте в AppData\Local\DayZ лежат, приятного изучения

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
  • 0

Да, сервер жив) весь момент в другом, когда на сервере набирается 6+ человек, когда они возраждаются или скажем могут просто себе бежать по серваку (у них на их стороне крашит клиент), и я сам заходил бегал с ними, и у меня просто вылетало - почему вот главный вопрос) и спасибо за подсказку по логам и по оружию @paulmanz

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
  • 0

Отключи фичу на автоудаление трупов скриптом, должно пропасть.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
  • 0

@123new а можешь плз подсказать, как тогда сделать что бы и трупы пропадали и в тоже время людей не кикало?) потому что в действительности я просто прописал в globals.xml CleanupLifetime весь на 2

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
  • 0

@123new установил и тестил сегодня, но так и не понял в чем момент, скрипт твой запускается (donate body cleaner), вроде все работает, но по сути ничего не делает (всяких могил кастомных вместо трупов не ставил)сам мод серверный, по сути все ок с ним и даже читает конфиг, в конфиге прописал все классы которые могут быть у игрока, потом включил DeleteDeadBodyWithItemList_InAllPlayers на 1 и DeleteItemList_InAllPlayers на 1, пробовал чередоавть, но по сути скрипт ничего не чистит, трупы как были так и есть, даже ничего в инвентаре не портится, в описании мода было указано "Запустить сервер один раз, дождаться загрузки, закрыть сервер." но я этот пункт не совсем понял, т.е. сервер должен стартовать 2 раза?

Изменено пользователем slithnice (история изменений)

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
  • 0
5 часов назад, slithnice сказал:

@123new установил и тестил сегодня, но так и не понял в чем момент, скрипт твой запускается (donate body cleaner), вроде все работает, но по сути ничего не делает (всяких могил кастомных вместо трупов не ставил)сам мод серверный, по сути все ок с ним и даже читает конфиг, в конфиге прописал все классы которые могут быть у игрока, потом включил DeleteDeadBodyWithItemList_InAllPlayers на 1 и DeleteItemList_InAllPlayers на 1, пробовал чередоавть, но по сути скрипт ничего не чистит, трупы как были так и есть, даже ничего в инвентаре не портится, в описании мода было указано "Запустить сервер один раз, дождаться загрузки, закрыть сервер." но я этот пункт не совсем понял, т.е. сервер должен стартовать 2 раза?

так а я и не говорил что он сам по себе будет удалять прямо 'из коробки'. Его настроить соответствующе надо, и под вашу работу он не совсем подходит как реализация. Изучите его работу, посмотрите как он удаляет трупы и по каким параметрам, конфиг json в конце концов настройте так как надо вам, поглядите логи работы с включенной опцией дебаг логирования. Посмотрите его методы работы и поправьте код своего метода удаления трупов, который у вас задействован в своем моде.

Скрипт при 1 запуске создает конфиг для его будущей настройки, при повтрных просто конфиг применяет, для этого было написано.  Удаление он делает только согласно опциям с json конфига, а не всех подряд без разбору.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
  • 0

понял, спасибо, на основе того что увидел у вас запилил себе:

modded class PlayerBase
{
	int corpseDelay = 30000; 
    int itemDelay = 35000;

    override void Init()
    {
        super.Init();

    }

    override void EEKilled(Object killer)
    {

        EntityAI inHandsItem = this.GetHumanInventory().GetEntityInHands();

        if (inHandsItem != null) {
            GetGame().GetCallQueue(CALL_CATEGORY_SYSTEM).CallLater(removeItem, itemDelay, false, inHandsItem);
        }


        GetGame().GetCallQueue(CALL_CATEGORY_SYSTEM).CallLater(GetGame().ObjectDelete, corpseDelay, false, this);

        super.EEKilled(killer);
    }

    void removeItem(EntityAI entity)
    {
        if (entity.GetHierarchyRootPlayer() == null) {
            GetGame().ObjectDelete(entity);
        }
    }
}

помогло убирать тела, были траблы с кастомными пушками и их уборкой, но решилось через global.xml там выставил CleanupAvoidance на 1, и заработало

Изменено пользователем slithnice (история изменений)

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
  • 0
9 часов назад, slithnice сказал:

понял, спасибо, на основе того что увидел у вас запилил себе:

modded class PlayerBase { int corpseDelay = 30000; int itemDelay = 35000; override void Init() { super.Init(); } override void EEKilled(Object killer) { EntityAI inHandsItem = this.GetHumanInventory().GetEntityInHands(); if (inHandsItem != null) { GetGame().GetCallQueue(CALL_CATEGORY_SYSTEM).CallLater(removeItem, itemDelay, false, inHandsItem); } GetGame().GetCallQueue(CALL_CATEGORY_SYSTEM).CallLater(GetGame().ObjectDelete, corpseDelay, false, this); super.EEKilled(killer); } void removeItem(EntityAI entity) { if (entity.GetHierarchyRootPlayer() == null) { GetGame().ObjectDelete(entity); } } }


modded class PlayerBase
{
	int corpseDelay = 30000; 
    int itemDelay = 35000;

    override void Init()
    {
        super.Init();

    }

    override void EEKilled(Object killer)
    {

        EntityAI inHandsItem = this.GetHumanInventory().GetEntityInHands();

        if (inHandsItem != null) {
            GetGame().GetCallQueue(CALL_CATEGORY_SYSTEM).CallLater(removeItem, itemDelay, false, inHandsItem);
        }


        GetGame().GetCallQueue(CALL_CATEGORY_SYSTEM).CallLater(GetGame().ObjectDelete, corpseDelay, false, this);

        super.EEKilled(killer);
    }

    void removeItem(EntityAI entity)
    {
        if (entity.GetHierarchyRootPlayer() == null) {
            GetGame().ObjectDelete(entity);
        }
    }
}

помогло убирать тела, были траблы с кастомными пушками и их уборкой, но решилось через global.xml там выставил CleanupAvoidance на 1, и заработало

просто для сведения. Если убирать тела игроков сразу, д того как они при выходе с сервера пропадают у игрока по таймауту, то при очередном выходе игрока и не нахождении его тела (даже трупа) этот выход может вешать сервер. Увы, но авторам игры откровенно насрать на этот репорт на багтрекере. По той причине я труп именно телепортирую 'в ад', и только потом спустя время чищу.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
  • 0

Ага, понял, спасибо за инфу) @123new

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Создайте аккаунт или войдите в него для комментирования

Вы должны быть пользователем, чтобы оставить комментарий

Создать аккаунт

Зарегистрируйтесь для получения аккаунта. Это просто!

Зарегистрировать аккаунт

Войти

Уже зарегистрированы? Войдите здесь.

Войти сейчас

×
×
  • Создать...

Важная информация

Используя этот сайт, вы автоматически обязуетесь соблюдать наши Правила и Политика конфиденциальности.
Чтобы сделать этот веб-сайт лучше, мы разместили cookies на вашем устройстве. Вы можете изменить свои настройки cookies, в противном случае мы будем считать, что вы согласны с этим.