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

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

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

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

Авто перезапуск сервера

, Утренний перезапуск сервера
Статус пользователя kasIIep
сообщение 15.4.2013, 8:43
Сообщение #1
Стаж: 17 лет

Сообщений: 333
Благодарностей: 88
Полезность: 209

Меценат Меценат

Плагин автоматически в указанный отрезок времени перезапускает сервер, например с 7 до 8 часов.


cvars:

start_hour_restart 7 - начало отсчета (час)
end_hour_restart 8 - конец отсчета (час)
logs_enable_restart 1/0 логирование перезапуска

Непосредтвенно перед перезапуском в чат выводится сообщение "Сервер Перезапустится Через 9 Секунд"

логи сохраняются тут "cstrike/addons/amxmodx/logs/server_restart.txt"
пример
L 04/15/2013 - 07:15:57: Log file started (file "cstrike/addons/amxmodx/logs/server_restart.txt") (game "cstrike") (amx "1.8.1.3746")
L 04/15/2013 - 07:15:57: Сервер Перезапустился!
L 04/15/2013 - 07:40:03: Сервер Перезапустился!


Плагин 2 раза перезапустит сервер за час, если ваш mp_timelimit менее 35 минут, думаю в утренее время это не критично.

ЕСЛИ У ВАС НЕТ АВТОПОДЪЕМА СЕРВЕРА, ТО ОН ПРОСТО ЗАКРОЕТСЯ.

Сам плагин можно использовать и для других консольных команд.
Плагин писался для меня на заказ.
Поправки, дописки приветствуются.

Код
Код:
#include <amxmodx>
#include <amxmisc>

#define PLUGIN "Quit Server"
#define VERSION "1.2"
#define AUTHOR "Adidasman"

new cv_start_hour_rs;
new cv_end_hour_rs;
new cv_logs_restart;

public plugin_init()
{
register_plugin(PLUGIN, VERSION, AUTHOR);
cv_start_hour_rs = register_cvar("start_hour_restart","7");
cv_end_hour_rs = register_cvar("end_hour_restart","8");
cv_logs_restart = register_cvar("logs_enable_restart","1");
set_task(1440.0, "checkTimeServ", _, _, _, "b");
}

public checkTimeServ()
{
new LogsEnable=get_pcvar_num(cv_logs_restart);
if(is_server_time())
{
client_printcolor(0, "^1[ ^4AMXX^1 ] Сервер ^3Перезапустится^1 Через 9 Секунд ^3!!!");
set_task(9.0, "restartserver");
if(LogsEnable)
{
log_to_file("addons\amxmodx\logs\server_restart.txt","Сервер Перезапустился!")
}
}
}

public restartserver()
{
server_cmd("exit");
}

stock is_server_time()
{
new current_time[ 3 ], num_current_time
get_time("%H", current_time, 2);
num_current_time = str_to_num(current_time);
new start_hour_rs = get_pcvar_num(cv_start_hour_rs);
new end_hour_rs = get_pcvar_num(cv_end_hour_rs);
if((num_current_time < start_hour_rs && num_current_time < end_hour_rs))
{
num_current_time += 24
}
if((start_hour_rs > end_hour_rs))
{
end_hour_rs += 24
}
if((num_current_time >= start_hour_rs) && (num_current_time < end_hour_rs))
{
return 1
}
return 0
}

stock client_printcolor(const id, const input[], any:...)
{
new count = 1, players[32];
static msg[191];
vformat(msg, 190, input, 3);
replace_all(msg, 190, "!g", "^4");
replace_all(msg, 190, "!n", "^1");
replace_all(msg, 190, "!t", "^3");
if(id) players[0] = id; else get_players( players, count, "ch")
{
for(new i = 0; i < count; i++)
{
if(is_user_connected(players[i]))
{
message_begin(MSG_ONE_UNRELIABLE, get_user_msgid("SayText"), _, players[i]);
write_byte(players[i]);
write_string(msg);
message_end();
}
}
}
}


ps.gif Если создал тему не там, прошу перенести.

Прикрепленный файл  quit_server.sma ( 1,95 килобайт ) Кол-во скачиваний: 259


Отредактировал: kasIIep, - 15.4.2013, 15:21
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 2 раз
   Цитировать сообщение
Статус пользователя mazdan
сообщение 15.4.2013, 8:45
Сообщение #2


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

Стаж: 15 лет

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

kasIIep, смена карты 7:03:02 -->> выключение сервера -->> включение сервера 7:03:05 -->> выключение сервера, включение сервера -> ...
так не получится, нет? (могу ошибаться тут просто. на всякий случай)

https://c-s.net.ua/forum/topic43409.html первый и второй пост - будут работать аккуратнее, я в скайпе вам давал ссылку.


Не пишите мне в ЛС. Пишите на почту. В ЛС я пропускаю сообщения.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя kasIIep
сообщение 15.4.2013, 8:49
Сообщение #3
Стаж: 17 лет

Сообщений: 333
Благодарностей: 88
Полезность: 209

Меценат Меценат

Так не пробовал в 7 утра сплю ))

Логи с сервера.
L 04/15/2013 - 07:15:57: Log file started (file "cstrike/addons/amxmodx/logs/server_restart.txt") (game "cstrike") (amx "1.8.1.3746")
L 04/15/2013 - 07:15:57: Сервер Перезапустился!
L 04/15/2013 - 07:40:03: Сервер Перезапустился!

Отредактировал: kasIIep, - 15.4.2013, 8:59
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя mazdan
сообщение 15.4.2013, 11:22
Сообщение #4


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

Стаж: 15 лет

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

kasIIep, ну если так то хорошо


Не пишите мне в ЛС. Пишите на почту. В ЛС я пропускаю сообщения.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
CaHeK86
сообщение 15.4.2013, 15:10
Сообщение #5
Стаж: 16 лет

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

Цитата(kasIIep @ 15.4.2013, 9:43) *
Плагин автоматически в указанный отрезок времени перезапускает сервер, например с 7 до 8 часов.


cvars:

start_hour_restart 7 - начало отсчета (час)
end_hour_restart 8 - конец отсчета (час)
logs_enable_restart 1/0 логирование перезапуска

Непосредтвенно перед перезапуском в чат выводится сообщение "Сервер Перезапустится Через 9 Секунд"

логи сохраняются тут "cstrike/addons/amxmodx/logs/server_restart.txt"
пример
L 04/15/2013 - 07:15:57: Log file started (file "cstrike/addons/amxmodx/logs/server_restart.txt") (game "cstrike") (amx "1.8.1.3746")
L 04/15/2013 - 07:15:57: Сервер Перезапустился!
L 04/15/2013 - 07:40:03: Сервер Перезапустился!


Плагин 2 раза перезапустит сервер за час, если ваш mp_timelimit менее 35 минут, думаю в утренее время это не критично.

ЕСЛИ У ВАС НЕТ АВТОПОДЪЕМА СЕРВЕРА, ТО ОН ПРОСТО ЗАКРОЕТСЯ.

Сам плагин можно использовать и для других консольных команд.
Плагин писался для меня на заказ.
Поправки, дописки приветствуются.

Код
Код
#include <amxmodx>
#include <amxmisc>

#define PLUGIN "Quit Server"
#define VERSION "1.2"
#define AUTHOR "Adidasman"

new cv_start_hour_rs;
new cv_end_hour_rs;
new cv_logs_restart;

public plugin_init()
{
register_plugin(PLUGIN, VERSION, AUTHOR);
cv_start_hour_rs = register_cvar("start_hour_restart","7");
cv_end_hour_rs = register_cvar("end_hour_restart","8");
cv_logs_restart = register_cvar("logs_enable_restart","1");
set_task(1440.0, "checkTimeServ", _, _, _, "b");
}

public checkTimeServ()
{
new LogsEnable=get_pcvar_num(cv_logs_restart);
if(is_server_time())
{
client_printcolor(0, "^1[ ^4AMXX^1 ] Сервер ^3Перезапустится^1  Через 9 Секунд ^3!!!");
set_task(9.0, "restartserver");
if(LogsEnable)
{
log_to_file("addons\amxmodx\logs\server_restart.txt","Сервер Перезапустился!")
}
}
}

public restartserver()
{
server_cmd("exit");
}

stock is_server_time()
{
new current_time[ 3 ], num_current_time
get_time("%H", current_time, 2);
num_current_time = str_to_num(current_time);
new start_hour_rs = get_pcvar_num(cv_start_hour_rs);
new end_hour_rs = get_pcvar_num(cv_end_hour_rs);
if((num_current_time < start_hour_rs && num_current_time < end_hour_rs))
{
num_current_time += 24    
}
if((start_hour_rs > end_hour_rs))
{
end_hour_rs += 24
}
if((num_current_time >= start_hour_rs) && (num_current_time < end_hour_rs))
{
return 1
}
return 0
}

stock client_printcolor(const id, const input[], any:...)
{
new count = 1, players[32];
static msg[191];
vformat(msg, 190, input, 3);
replace_all(msg, 190, "!g", "^4");
replace_all(msg, 190, "!n", "^1");
replace_all(msg, 190, "!t", "^3");
if(id) players[0] = id; else get_players( players, count, "ch")
{
for(new i = 0; i < count; i++)
{
if(is_user_connected(players[i]))
{
message_begin(MSG_ONE_UNRELIABLE, get_user_msgid("SayText"), _, players[i]);
write_byte(players[i]);
write_string(msg);
message_end();
}
}
}
}


ps.gif Если создал тему не там, прошу перенести.

Прикрепленный файл  quit_server.sma ( 1,95 килобайт ) Кол-во скачиваний: 259


Все таки выложил его =)
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя _Skyline
сообщение 15.4.2013, 15:15
Сообщение #6


Стаж: 18 лет
Город: Екатеринбург

Сообщений: 1414
Благодарностей: 839
Полезность: 1060

Собственно зачем нужен данный плагин? Для кого сделали тег?
Код
[pawn][/pawn]
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
exec1337
сообщение 15.4.2013, 15:16
Сообщение #7
Стаж: 13 лет

Сообщений: 6490
Благодарностей: 2558
Полезность: 491

Интересная штука,только не вижу смысла каждый день перезагружать сервер. Вот было не плохо,если бы раз в n-дней rr делало.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя kasIIep
сообщение 15.4.2013, 15:32
Сообщение #8
Стаж: 17 лет

Сообщений: 333
Благодарностей: 88
Полезность: 209

Меценат Меценат

_Skyline,
поправил,

при выполнении команды exit выгружается память и соответственно будет меньше ошибок чем при uptime 999, лично мое мнение. Как его использовать решать вам.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя _Skyline
сообщение 15.4.2013, 15:50
Сообщение #9


Стаж: 18 лет
Город: Екатеринбург

Сообщений: 1414
Благодарностей: 839
Полезность: 1060

Цитата(kasIIep @ 15.4.2013, 19:32) *
_Skyline,
поправил,

Ну теперь соответственно отступы съехали, тоже не мешало бы поправить.
Цитата(kasIIep @ 15.4.2013, 19:32) *
при выполнении команды exit выгружается память и соответственно будет меньше ошибок чем при uptime 999, лично мое мнение. Как его использовать решать вам.

Да ну, кто вам об этом сказал? Ошибки либо есть, либо их нет.
Почти 6 дней аптайм и все хорошо.
Код
] rcon stats
CPU   In    Out   Uptime  Users   FPS    Players
42.00 78.68 123.51    8563  7685 1000.00      14
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
  Тема закрытаНачать новую тему
 
0 пользователей и 1 гостей читают эту тему: