Правила форума Гаранты форума
Размещение рекламы AMX-X компилятор

Здравствуйте, гость Вход | Регистрация

Наши новости:

14-дек
24-апр
10-апр
11-апр

Время Работы Серверв

, аналог get_gametime
Статус пользователя Metal Messiah
сообщение 27.2.2013, 0:23
Сообщение #1


Иконка группы

Стаж: 13 лет

Сообщений: 2457
Благодарностей: 1482
Полезность: 770

HostGame.cf
Доброго времени суток!

Подскажите пожалуйста функцию, которая бы в каком-либо виде выдавала время работы сервера в секундах как get_gametime() или в минутах как в команде stats в колонке uptime.
get_gametime() сбрасывается при смене карты, запониналка в plugin_init тоже.

Нужно получить время работы сервера и если оно больше суток и игроков в данный момент нет прописать quit, серв будет перезапущен автоматом.

Прикол в том что есть утечка памяти и если сервер работает больше 2 суток без вылета значит он уже жрет не 100 а 200 Мб со всеми вытекающими проблемами и может вылететь в самый не подходящий момент. Вот и подумал делать плановый рестарт когда нет игроков.


Полезные публикации - ссылки у меня в профиле. Ссылка на плагин против спама на сервере StopServerSpam там же.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   Цитировать сообщение
Safety1st
сообщение 27.2.2013, 1:10
Сообщение #2
Стаж: 14 лет
Город: Moscow

Сообщений: 7228
Благодарностей: 8071
Полезность: 196

Сохраняйте systime в cvar или localinfo, плагином проверяйте значение после старта карты. Если значение есть - вычисляем промежуток, если значения нет - ставим его по текущему времени.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 1 раз
   + Цитировать сообщение
Статус пользователя Orty_Hart
сообщение 27.2.2013, 1:17
Сообщение #3
Стаж: 14 лет

Сообщений: 1399
Благодарностей: 408
Полезность: 725

Metal Messiah,
рестарт не поможет.
тут нужно полностью выключать а потом включать сервер.
это можно сделать с помощью .bat + плагин.
к примеру, 1 файл бата будет проверять чтоб сервер был включен и если он будет выключен его запускает.
а в плагине задать, чтоб например через 24 часа сервер выключался.

бат будет примерно такой:
Скрытый текст
Код
@echo off
cls
title StartUp
:hlds
echo (%time%) HLDS Started...
start /wait /high hlds.exe -autoupdate -console -game cstrike -insecure -master -noipx +map de_dust2 +maxplayers 32 +port 27015
echo n| goto hlds
echo (%time%) HLDS Crashed, restarting...
goto hlds


а плагин:
Скрытый текст
Код
#include <amxmodx>

public plugin_init()
{
    register_plugin("Server stop", "1.5", "Sutar")
    register_cvar("amxx_start_time", "0")
}

public plugin_cfg()
{
    if(get_cvar_num("amxx_start_time") == 0)
        set_cvar_num("amxx_start_time", get_systime(0))
    else
    {
        if((get_cvar_num("amxx_start_time") - get_systime(0)) > 60*60*24 && get_playersnum() == 0)
            server_cmd("exit")
    }
}


после 24 переумнож на количество дней.
к пример:
60*60*24 - 1 день
60*60*24*2 - 2 дня
60*60*24*15 - 15 дней
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 1 раз
   + Цитировать сообщение
Статус пользователя Metal Messiah
сообщение 27.2.2013, 1:31
Сообщение #4


Иконка группы

Стаж: 13 лет

Сообщений: 2457
Благодарностей: 1482
Полезность: 770

HostGame.cf
спасибо за идею и готовый плагин.
я и имел в виду посылать quit / exit а бинарник уже шелл скриптом сам перезапустится. К сожалению, с освобождением памяти в AMXX не все гуд.


Полезные публикации - ссылки у меня в профиле. Ссылка на плагин против спама на сервере StopServerSpam там же.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Andrei
сообщение 27.2.2013, 2:15
Сообщение #5


Стаж: 15 лет

Сообщений: 1335
Благодарностей: 693
Полезность: 740

А как же сервера работающие неделями?
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 1 раз
   + Цитировать сообщение
cs-portal
сообщение 27.2.2013, 5:48
Сообщение #6
Стаж: 16 лет

Сообщений: 8181
Благодарностей: 2709
Полезность: 0

ищи утечку в плагинах, где то видел на оленях темку memory leak in new system menus как то так
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя mazdan
сообщение 27.2.2013, 7:35
Сообщение #7


Иконка группы

Стаж: 15 лет

Сообщений: 7566
Благодарностей: 5437
Полезность: 1305

Код
hlds.exe ->    RAM:65 248 K     SWAP:243 860 K        Uptime:10d 17h 51m

Сейчас утро и он пустой, но всё равно же.

Orty_Hart, register_cvar("amxx_start_time", "0") => amxx_start_time = 0

Вот этой штукой я перезапускаю каждый день в 4 утра https://c-s.net.ua/forum/topic43409.html


Не пишите мне в ЛС. Пишите на почту. В ЛС я пропускаю сообщения.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 1 раз
   + Цитировать сообщение
Статус пользователя Metal Messiah
сообщение 27.2.2013, 16:18
Сообщение #8


Иконка группы

Стаж: 13 лет

Сообщений: 2457
Благодарностей: 1482
Полезность: 770

HostGame.cf
Хорошая штука, но нет смысла перезапускать в 4 утра если будет "плановый крэш" за час до того :)
Сервера без плагинов, работающие неделями существуют, но мой с плагинами :)

И легче раз перезапустить чем отключать все плагины по одному. Эта утечка была всегда, есть смысл думать на amxbans atac или umm.
Скоро буду много чего переделывать - если будет удача - найду где утечка.


Полезные публикации - ссылки у меня в профиле. Ссылка на плагин против спама на сервере StopServerSpam там же.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя mazdan
сообщение 27.2.2013, 16:46
Сообщение #9


Иконка группы

Стаж: 15 лет

Сообщений: 7566
Благодарностей: 5437
Полезность: 1305

у меня их там 83 (плагина)
Ну менюхи проверьте как cs-portal посоветовал


Не пишите мне в ЛС. Пишите на почту. В ЛС я пропускаю сообщения.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
  Тема закрытаНачать новую тему
 
0 пользователей и 1 гостей читают эту тему: