Авто рестарт сервера

Юна Гасай

Участник
Сообщения
23
Реакции
0
Вот, недавно поставил сервер на слабенький ноут, всего пол гига оперативы... Хотелось бы поставить плагин на авторестарт с интервалом, ибо ошибка проявляется примерно через 3-4 часа... Искал плагин, нашел только с рестартом в определённое время. Есть ли вообще такой плагин? Если есть дайте ссылку пожалуйста! Заранее спасибо!
 

Danyas

Участник
Сообщения
2,174
Реакции
1,072
Скриптеры, можно ведь создавать таймер без флагов на 10800 секунд (3 часа, если я не ошибаюсь) с
PHP:
ServerCommand("_restart");
 

AlmazON

Не путать с самим yand3xmail
Сообщения
5,099
Реакции
2,756
Авторестарт сервера

Я бы поступил проще, чем создавать таймер:
PHP:
#define TIME_SECOND 10800.0

public OnMapEnd() if(TIME_SECOND > GetEngineTime()) ServerCommand("_restart");
Где 10800.0 - время в секундах, после которого сервер будет перезагружен.
Такой код практически не нагружает сервер (разве что кроха будет в конце), причём удобно для всех игроков перезагружает сервер на конце карты, что создаёт более приятный гейплей, нежели вдруг вырубить сервер в самом разгаре.
 
Последнее редактирование:

smoke96

Участник
Сообщения
1,134
Реакции
175
Re: Авторестарт сервера

Я бы поступил проще, чем создавать таймер:
PHP:
#define TIME_SECOND 10800.0

public OnMapEnd() if(TIME_SECOND > GetEngineTime()) ServerCommand("_restart");
Где 10800.0 - время в секундах, после которого сервер будет перезагружен.
Такой код практически не нагружает сервер (разве что кроха будет в конце), причём удобно для всех игроков перезагружает сервер на конце карты, что создаёт более приятный гейплей, нежели вдруг вырубить сервер в самом разгаре.

Подскажи как допилить его так что игрокам за 15 сек до рестарта в чате и ХУД будет писаться оповещение о рестарте 5 раз :)
 

Danyas

Участник
Сообщения
2,174
Реакции
1,072
Re: Авторестарт сервера

Подскажи как допилить его так что игрокам за 15 сек до рестарта в чате и ХУД будет писаться оповещение о рестарте 5 раз :)

Есть способ проще.
Форсированный реконнект называется
PHP:
#define TIME_SECOND 10800.0 

public OnMapEnd() 
{
 if(TIME_SECOND > GetEngineTime())
 {
  for (new i = 1; i <= MaxClients; i++)
  {
    if(IsClientInGame(i) && !IsFakeClient(i)) 
	{
	ClientCommand(i,"retry");
	}
  }
 }
 ServerCommand("_restart");  
}
 

AlmazON

Не путать с самим yand3xmail
Сообщения
5,099
Реакции
2,756
Подскажи как допилить
Сначала попробовать надо, а потом пилить. Например, есть сомнения, что это будет работать на всех ОС, а также точно не работает, если карту менять через консоль сервера. Если и через админку не хочет...
 

DarklSide

Участник
Сообщения
931
Реакции
468
PHP:
ServerCommand("_restart");

Разве это не распространение, больше всего - на клиентскую часть? Результат будет его полное отключение.

переподключиться, но серв уже находиться в выкл. состоянии (и если он в этот момент, успеет включиться и не израсходуется все попытки реконнекта)

ибо ошибка проявляется примерно через 3-4 часа...

Лучше бы эту ошибку решить, либо использовать панель srcds (его автоперезапуск в случае crash'a):
https://forums.alliedmods.net/showthread.php?t=213461?t=213461
http://hlmod.ru/forum/soft/24468-tornado-source-panel.html (v3.2b - u5.1)

lin:
от brush script (Supervisor).
win:
HTML:
:srcds//метка
start *-nocrashdialog//старт сервера
goto srcds//переход к метке в случае, если процесс ликвидировался
 

Danyas

Участник
Сообщения
2,174
Реакции
1,072
Разве это не распространение, больше всего - на клиентскую часть? Результат будет его полное отключение.


переподключиться, но серв уже находиться в выкл. состоянии (и если он в этот момент, успеет включиться и не израсходуется все попытки реконнекта)



Лучше бы эту ошибку решить, либо использовать панель srcds (его автоперезапуск в случае crash'a):
https://forums.alliedmods.net/showthread.php?t=213461?t=213461
http://hlmod.ru/forum/soft/24468-tornado-source-panel.html (v3.2b - u5.1)

lin:
от brush script (Supervisor).
win:
HTML:
:srcds//метка
start *-nocrashdialog//старт сервера
goto srcds//переход к метке в случае, если процесс ликвидировался

Лично у меня раньше стояла смесь баша (пропись команды в скрин), крона и плагина который рекконект клиентам делает. Если сервер на ссд - 9 из 10 заходят.
на счет _restart - не знаю, ибо я сервер убивал и подымал башем.
Да и автоперезапуск на серверах винды вроде как must have
 

Юна Гасай

Участник
Сообщения
23
Реакции
0
Разве это не распространение, больше всего - на клиентскую часть? Результат будет его полное отключение.


переподключиться, но серв уже находиться в выкл. состоянии (и если он в этот момент, успеет включиться и не израсходуется все попытки реконнекта)



Лучше бы эту ошибку решить, либо использовать панель srcds (его автоперезапуск в случае crash'a):
https://forums.alliedmods.net/showthread.php?t=213461?t=213461
http://hlmod.ru/forum/soft/24468-tornado-source-panel.html (v3.2b - u5.1)

lin:
от brush script (Supervisor).
win:
HTML:
:srcds//метка
start *-nocrashdialog//старт сервера
goto srcds//переход к метке в случае, если процесс ликвидировался

Вот именно! Только если ликвидировался! А если вылезла ошибка? И процесс закрывается после нажатия на "OK"??
 

Юна Гасай

Участник
Сообщения
23
Реакции
0
Последнее редактирование:
Сверху Снизу