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

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

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

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

6 страниц V   1 2 ... 4 5 »

[Плагин] Управление админами

, Плагин управления админами
Статус пользователя georgeml
сообщение 19.7.2015, 19:02
Сообщение #1
Стаж: 10 лет

Сообщений: 1467
Благодарностей: 439
Полезность: 423

Плагин управления Админами

Это переделка стандартного плагина amxbans_core

Отличительные особенности:
- совместная работа с базой данных и файлом users.ini (квар amxbans_use_admins_file "3")

- добавление админов командой amx_addadmin. Место хранения- в зависимости от квара amxbans_use_admins_file
Формат команды (консоль, флаг ADMIN_RCON): amx_addadmin "ник или steamid" "пароль" "флаги доступа" "тип авторизации (name или steam)" "кол-во дней".
Плагин сам определит тип авторизации в зависимости от формата ника. т.е. не получится случайно установить ник вместо steamID и наоборот, а также, установит время истечения админки, если кол-во дней больше "0".

- создание дампа админов в файл (квар amxbans_dump_sql 0/1). При недоступности БД, админы будут загружены из дампа (если он есть). Если Вы не добавляете админов по несколько штук в день, то квар можно не включать (даже, желательно). В этом случае создайте дамп: включить amxbans_dump_sql 1 и перезагрузить (сменить) карту и вернуть amxbans_dump_sql в "0"

- переключение на users.ini, если БД недоступна и нет админов в дампе и др.. Другими словами: если админы где-то прописаны, то они обязательно будут загружены при возникновении проблем с их хранилищами (если указаны соответствующие настройки)

- при изменении количества дней в users.ini вручную, дата истечения пересчитывается

- распознает 2 типа паролей: простой пароль и md5 (как в БД, так и в users.ini)

- добавлен натив для отображения срока действия админки
Для успешной компиляции сторонних плагинов с использованием натива, необходимо добавить строку native days_left_info(id); в инклюд (например, в amxmodx.inc)

- автоматическое удаление истекших аккаунтов из Базы Данных и users.ini.
Управление функцией: квар amxbans_expadmins_delete
Через сколько дней после истечения админки удалить запись из БД. "0" - не удалять
Если к базе привязаны несколько серверов:
достаточно включить квар на любом из серверов (включение квара на всех серверах- не имеет смысла), т.к истекшие аккаунты удаляются для всех серверов одновременно
Удаление из users.ini физически не происходит. Выполняется комментирование строки.

F.A.Q.
Примеры записи админов в users.ini

Вариант 1- срок действия- бессрочно
Ник (steamID) / пароль / флаги / тип авторизации
"nickname" "pass" "abc" "ab"

Вариант 2 - с указанием времени действия
Ник (steamID) / пароль / флаги / тип авторизации / время (дней)
"nickname" "pass" "abc" "ab" "0"

Если время = 0, срок действия- бессрочно. При указании времени >0 появляется колонка "дата истечения"- ее трогать не нужно.
Результат после указания времени больше 0:(добавилась колонка №5, время установилось =0)
Ник (steamID) / пароль / флаги / тип авторизации / время (дней) / дата истечения
"nickname" "pass" "abc" "ab" "0" "1438510885"

Для изменения даты истечения- укажите новый срок в колонке "Время" (отсчет- с текущего дня). Новая дата истечения изменится сама.

Если время и дата истечения = 0, срок действия- бессрочно
Если время = 0, а дата истечения > 0, срок действия- до даты истечения
После наступления даты истечения, админ будет отключен автоматически:
;"nickname" "pass" "abc" "ab" "0" "1438510885"
Дата истечения в формате Unix

Можете воспользоваться командой amx_addadmin
Вывод срока действия:

Компилировать локально. Для успешной компиляции необходимо добавить строку
native days_left_info(id);
в инклюд (например, в amxmodx.inc)
menufront
Код:
displayMenu(id, pos)
{
if (pos < 0)
return

new menuBody[512]
new b = 0
new start = pos * MENUITEMSPERPAGE
//добавляем блок
new exp = days_left_info(id)
new left[32]
if (exp == 0)
format(left, 31, "Бессрочная")
else num_to_str(exp, left, 31)
////
if (start >= g_menusNumber) // MENUS_NUMBER
start = pos = g_menuPosition[id] = 0

new len = format(menuBody, 511,
//заменяем строку
//g_coloredMenus ? "\yAMX Mod X Menu\R%d/%d^n\w^n" : "AMX Mod X Menu %d/%d^n^n" , pos + 1, (g_menusNumber / MENUITEMSPERPAGE) + (((g_menusNumber % MENUITEMSPERPAGE) > 0) ? 1 : 0))
//на
g_coloredMenus ? "\yAMX Mod X Menu\R%d/%d^nАдминка истекает через, дн.: %s^n^n" : "AMX Mod X Menu %d/%d^nАдминка истекает через, дн: %s.^n^n" , pos + 1, (g_menusNumber / MENUITEMSPERPAGE) + (((g_menusNumber % MENUITEMSPERPAGE) > 0) ? 1 : 0), left)


Обновление от 27.07.2015
[attachment=39259:amxbans_core.sma]

Отредактировал: georgeml, - 9.3.2017, 13:36
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 5 раз
   Цитировать сообщение
Статус пользователя kennybear
сообщение 19.7.2015, 19:08
Сообщение #2


Стаж: 10 лет

Сообщений: 1394
Благодарностей: 710
Полезность: 593

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

georgeml, с фреш баном админки по нику тупить не будут?)


АРЕНА ГЕЙМЕРОВ [21] 2014-2020
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя georgeml
сообщение 19.7.2015, 19:10
Сообщение #3
Стаж: 10 лет

Сообщений: 1467
Благодарностей: 439
Полезность: 423

Цитата(kennybear @ 19.7.2015, 19:03) *
georgeml, с фреш баном админки по нику тупить не будут?)

Насчет русских ников- не проверял. Ники на латинице- работают.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя kennybear
сообщение 19.7.2015, 19:14
Сообщение #4


Стаж: 10 лет

Сообщений: 1394
Благодарностей: 710
Полезность: 593

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

georgeml, у меня они работают на предыдущий версии,но не сразу,минуты через 2 когда заходишь,а до этого пишет что вы не имеете права для входа на этот сервер,с админ лоадером все хорошо но он очень долго грузит админов из бд,а амхбанс коре моментально)

Отредактировал: kennybear, - 19.7.2015, 19:14


АРЕНА ГЕЙМЕРОВ [21] 2014-2020
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Bloo
сообщение 19.7.2015, 19:20
Сообщение #5


Стаж: 10 лет

Сообщений: 15547
Благодарностей: 6971
Полезность: 1206

kennybear, при чем тут FB?
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя kennybear
сообщение 19.7.2015, 19:23
Сообщение #6


Стаж: 10 лет

Сообщений: 1394
Благодарностей: 710
Полезность: 593

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

Bloo, спросил нормально ли он с ним будет работать)


АРЕНА ГЕЙМЕРОВ [21] 2014-2020
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Bloo
сообщение 19.7.2015, 19:34
Сообщение #7


Стаж: 10 лет

Сообщений: 15547
Благодарностей: 6971
Полезность: 1206

kennybear, они никак не зависят друг от друга и мешать друг другу не могут.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя georgeml
сообщение 20.7.2015, 8:59
Сообщение #8
Стаж: 10 лет

Сообщений: 1467
Благодарностей: 439
Полезность: 423

Добавлен натив для отображения срока действия админки
Код:
native days_left_info(id);

Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя shockki
сообщение 20.7.2015, 12:31
Сообщение #9
Стаж: 11 лет

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

как сделать так , чтобы брать админов из users.ini и как должны быть записананы админы в users.ini?
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя 9art
сообщение 20.7.2015, 12:46
Сообщение #10


Стаж: 10 лет

Сообщений: 991
Благодарностей: 534
Полезность: 843

Цитата(shockki @ 20.7.2015, 13:27) *
как сделать так , чтобы брать админов из users.ini и как должны быть записананы админы в users.ini?

квар amxbans_use_admins_file "1"
Cкрытый текст
Цитата
; Users configuration file
; File location: $moddir/addons/amxmodx/configs/users.ini

; Line starting with ; is a comment

; Access flags:
; a - immunity (can't be kicked/baned/slayed/slaped and affected by other commmands)
; b - reservation (can join on reserved slots)
; c - amx_kick command
; d - amx_ban and amx_unban commands
; e - amx_slay and amx_slap commands
; f - amx_map command
; g - amx_cvar command (not all cvars will be available)
; h - amx_cfg command
; i - amx_chat and other chat commands
; j - amx_vote and other vote commands
; k - access to sv_password cvar (by amx_cvar command)
; l - access to amx_rcon command and rcon_password cvar (by amx_cvar command)
; m - custom level A (for additional plugins)
; n - custom level B
; o - custom level C
; p - custom level D
; q - custom level E
; r - custom level F
; s - custom level G
; t - custom level H
; u - menu access
; z - user (no admin)

; Account flags:
; a - disconnect player on invalid password
; b - clan tag
; c - this is steamid/wonid
; d - this is ip
; e - password is not checked (only name/ip/steamid needed)
; k - name or tag is case sensitive. eg: if you set it so the name "Ham"
; is protected and case sensitive (flags "k" only), then anybody
; can use the names "haM", "HAM", "ham", etc, but not "Ham"

; Password:
; Add to your autoexec.cfg: setinfo _pw "<password>"
; Change _pw to the value of amx_password_field

; Format of admin account:
; <name|ip|steamid> <password> <access flags> <account flags>

; Examples of admin accounts:
; "STEAM_0:0:123456" "" "abcdefghijklmnopqrstu" "ce"
; "123.45.67.89" "" "abcdefghijklmnopqrstu" "de"
; "My Name" "my_password" "abcdefghijklmnopqrstu" "a"

"loopback" "" "abcdefghijklmnopqrstu" "de"


Отредактировал: 9art, - 20.7.2015, 12:46
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя georgeml
сообщение 20.7.2015, 13:54
Сообщение #11
Стаж: 10 лет

Сообщений: 1467
Благодарностей: 439
Полезность: 423

Цитата(shockki @ 20.7.2015, 12:27) *
как сделать так , чтобы брать админов из users.ini и как должны быть записананы админы в users.ini?

Для работы только с users.ini
amxbans_use_admins_file "1"

Запись админов в users.ini
Вариант 1- срок действия- бессрочно
Ник (steamID) / пароль / флаги / тип авторизации
"nickname" "pass" "abc" "ab"

Вариант 2 - с указанием времени действия
Ник (steamID) / пароль / флаги / тип авторизации / время (дней)
"nickname" "pass" "abc" "ab" "0"

Если время = 0, срок действия- бессрочно. При указании времени >0 появляется колонка "дата истечения"- ее трогать не нужно.
Результат после указания времени больше 0:(добавилась колонка №5, время установилось =0)
Ник (steamID) / пароль / флаги / тип авторизации / время (дней) / дата истечения
"nickname" "pass" "abc" "ab" "0" "1438510885"

Для изменения даты истечения- укажите новый срок в колонке "Время" (отсчет- с текущего дня). Новая дата истечения изменится сама.

Если время и дата истечения = 0, срок действия- бессрочно
Если время = 0, а дата истечения > 0, срок действия- до даты истечения
После наступления даты истечения, админ будет отключен автоматически:
;"nickname" "pass" "abc" "ab" "0" "1438510885"
Дата истечения в формате Unix

Можете воспользоваться командой amx_addadmin

Отредактировал: georgeml, - 20.7.2015, 14:13
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Templar
сообщение 20.7.2015, 16:40
Сообщение #12
Иконка группы

Стаж: 16 лет

Сообщений: 2680
Благодарностей: 978
Полезность: 860

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

Если я использую онлайн продажу админок где идет уже хранение админов в БД, то при покупки будет вноситься в users.ini и в БД я так понимаю?
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя georgeml
сообщение 20.7.2015, 17:11
Сообщение #13
Стаж: 10 лет

Сообщений: 1467
Благодарностей: 439
Полезность: 423

Цитата(Templar @ 20.7.2015, 16:35) *
Если я использую онлайн продажу админок где идет уже хранение админов в БД, то при покупки будет вноситься в users.ini и в БД я так понимаю?

Если Вы используете веб-скрипт, который вносит данные в БД, то в БД они и будут. Если админка прописывается через консоль, либо скрипт отправляет ркон команду amx_addadmin, то при кваре amxbans_use_admins_file "3" она будет прописана и в БД и в файл
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Templar
сообщение 20.7.2015, 17:22
Сообщение #14
Иконка группы

Стаж: 16 лет

Сообщений: 2680
Благодарностей: 978
Полезность: 860

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

Цитата(georgeml @ 20.7.2015, 18:06) *
Если Вы используете веб-скрипт, который вносит данные в БД, то в БД они и будут. Если админка прописывается через консоль, либо скрипт отправляет ркон команду amx_addadmin, то при кваре amxbans_use_admins_file "3" она будет прописана и в БД и в файл


Ок, проверим.. Спасибо
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя BornToBeFree
сообщение 20.7.2015, 18:12
Сообщение #15


Стаж: 10 лет

Сообщений: 741
Благодарностей: 287
Полезность: 602

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

ps.gif georgeml, вы бы спасибки включили, чтобы народ благодарил вас за труды)


Скидка 5% при заказе сервера
Чтобы получить 5% скидку при заказе сервера на хостинге Serva4ok.ru
Необходимо ввести это кодовое слово gKUt-FENO-ZonE-aIaa
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя georgeml
сообщение 20.7.2015, 18:30
Сообщение #16
Стаж: 10 лет

Сообщений: 1467
Благодарностей: 439
Полезность: 423

Цитата(ExTPuMaJI @ 20.7.2015, 19:07) *
ps.gif georgeml, вы бы спасибки включили, чтобы народ благодарил вас за труды)

Лучшие "спасибки"- багрепорты или предложения) Если плагин используется, значит труд- уже оценен..
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя qpi3ik
сообщение 20.7.2015, 20:18
Сообщение #17


Стаж: 10 лет

Сообщений: 621
Благодарностей: 78
Полезность: 12

Кто то уже тестил?
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя georgeml
сообщение 21.7.2015, 8:15
Сообщение #18
Стаж: 10 лет

Сообщений: 1467
Благодарностей: 439
Полезность: 423

Добавлено:

- автоматическое удаление истекших аккаунтов из Базы Данных.
Управление функцией: квар amxbans_expadmins_delete 0/1 (по-умолчанию выключен)

Если к базе привязаны несколько серверов:
достаточно включить квар на любом из серверов (включение квара на всех серверах- не имеет смысла), т.к истекшие аккаунты удаляются для всех серверов одновременно
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Templar
сообщение 21.7.2015, 8:38
Сообщение #19
Иконка группы

Стаж: 16 лет

Сообщений: 2680
Благодарностей: 978
Полезность: 860

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

Хм, у меня чтот не получается.. Админки работают, но новые не прописываются не в базу не в users.ini если покупать через магазин...

amxbans_use_admins_file "3" - стоит так.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя l3x1s
сообщение 21.7.2015, 8:57
Сообщение #20


Стаж: 15 лет

Сообщений: 495
Благодарностей: 300
Полезность: 543

georgeml, спасибо за работу.
Не могли бы ответить на вопросы:
- админы берутся и прописываются в кс:банс, соответственно квар amxbans_use_admins_file выставляю на 2 или 3 оставить?
- как только плагин поставлю на сервер-он автоматически "возьмет" всех админов и кол-во дней из бд? Или придется самому заново всех привилегированных прописывать?
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
6 страниц V   1 2 ... 4 5 »
 
Ответить в данную темуНачать новую тему
 
0 пользователей и 1 гостей читают эту тему: