Падение сервера после playerDeath и Round_End

Тема в разделе "Программирование / Скриптинг", создана пользователем Alnet, 6 апр 2016.

  1. Alnet

    Alnet

    Сообщения:
    39
    Симпатии:
    0
    Падение сервера после playerDeath и Round_End
    Здравствуйте, мой CSGO сервер уже несколько месяцев 1-5 раз в день падает.

    Провел мониторинг в коде (вел логи внутри playerDeath и Round_End, записывал в лог каждый этап выполнения различных функций в этих событиях) - все функции успешно закончили свое выполнение и был произведен выход из этих событий.

    Обстоятельства падения: Когда последний игрок одной из команды умирает и раунд заканчивается - это удалось выяснить только путем ведения логов. При этом даже модель погибшего игрока не успевает упасть... визуально, это выглядит как-будто вот вот последнего живого игрока команды убьют. (но логи показывают что по факту его уже убили и сервер резко упал).

    Мой плагин работает на КСС - идеально, даже код почти не пришлось править, однако, падает сервер по неизвестной причине только на КСГО.

    Код дать не могу..(((

    Какие есть размышления по этому поводу? как выяснить причину падения? Что такого может (иногда) происходить после выхода из Round_End на КСГО что может привести к таким крашам?

    PS.Удалять-добавлять плагины и наблюдать за падением сервера - не дало результатов. (Все равно падал).
     
  2. Серый™

    Серый™ CS:S Server

    Сообщения:
    2.569
    Симпатии:
    1.152
    @Alnet, без кода мы как на кофейной гуще будем гадать.
     
  3. Alnet

    Alnet

    Сообщения:
    39
    Симпатии:
    0
    Достаточно предположений!
     
  4. AlmazON

    AlmazON деревянный © yand3xmail

    Сообщения:
    4.563
    Симпатии:
    1.988
    Т.е. точно не другие?
    В конце раунда создаются какие-либо эффекты, проигрывается музыка, меняются ли скины (мало ли)?
    Лог в начале кода для события или в самом его конце?
     
  5. Alnet

    Alnet

    Сообщения:
    39
    Симпатии:
    0
    нет, после Round_End ничего не происходит до момента Round_Start.

    Лог пишу с момента вхождения в событие (функцию) и на выходе.
     
  6. AlmazON

    AlmazON деревянный © yand3xmail

    Сообщения:
    4.563
    Симпатии:
    1.988
    Как раз наоборот, это указывает, что в событии ошибка. Оффтоп
    Все логи были?
    Вообще, это больше говорит лишь о том, что код не завершался ошибкой. Ищи внутри, убирай все "новороты" постепенно.
     
  7. Alnet

    Alnet

    Сообщения:
    39
    Симпатии:
    0
    public Round_End(Handle:event, const String:name[], bool:dontBroadcast)
    {
    new i = 0;
    RoundEnd_Log(i++);
    Func(....);'
    RoundEnd_Log(i++);
    Func(....);'
    Func(....);'
    RoundEnd_Log(i++);
    Func(....);'
    RoundEnd_Log(i++);
    Func(....);'
    RoundEnd_Log(i++);
    Func(....);'
    RoundEnd_Log(i++);
    Func(....);'
    RoundEnd_Log(i++);
    }
    --- Добавлено позже ---
    Вот пример как я вычислял на каком этапе происходит падение
    Функция playerdeath и round_end дошла до последней функции записи лога... внутри функции вылета небыло(((
    --- Добавлено позже ---
    Сейчас удалил accelerator.ext.so - молю бога чтоб краша небыло)) если не это то я хз что это((( буду держать сервер ктороый будет падать в среднем 2 раза в сутки(
    --- Добавлено позже ---
    не помогло...
     
    Последнее редактирование: 11 апр 2016