Соник_Йожыг Posted May 28, 2015 Share Posted May 28, 2015 Как добавить админа в Sourcemod SourceMod имеет весьма подробную и гибкую систему управления, она может быть достаточно сложной для пользователей. Чтобы упростить эти вещи, существуют “флаги” которые уточняют общие права, которые могут иметь администраторы. Кроме того, в настоящее время предусмотрено два способа хранения администраторов. Один через упрощенный простой файл, а другой с помощью более сложных ветвящихся конструкций на основе нескольких файлов. SourceMod по умолчанию предусматривает три метода аутентификации: Steam ID – уникальный для каждого Steam аккаунта IP Address – уникальный IP адрес полученный компьютером (хорошо использовать в локальной сети, где IP адреса статические) Name – по имени (требуется пароль) Быстрый старт Откройте файл cstrike/addons/sourcemod/configs/admins_simple.ini навашем сервере Добавьте новую строку и напишите в ней следующее, заменив yoursteamid на ваш SteamID (узнать можно написав в консоли status) вида STEAM_n:o:p "yoursteamid" "99:z" Сохраните файл Перезапустите сервер Зайдите на ваш сервер Напишите sm_admin в консоли игры, и вернитесь в игру закрыв консоль. Вы должны увидеть админское меню. Уровни доступа Теперь давайте быстро пробежимся по уровням доступа и узнаем что они означают a - резервный слот b - администратор, флаг требуется для админов c - использование команды kick (кикание) d - использование команды ban (бан) e - использование команды unban (снять бан) f - использование команды slay g - разрешение менять карты h - разрешение менять настройки сервера (cvar's) i - смена используемого конфига j - специальные привилегии в чате k - доступ к запуску голосования l - разрешение устанавливать пароль на сервере m - разрешение использовать удаленную консоль для управления сервером n - разрешение менять параметр sv_cheats и связанные с ним параметры o - специальный флаг C p - специальный флаг D q - специальный флаг E r - специальный флаг F s - специальный флаг G t - специальный флаг H z - root (обладает всеми выше перечисленными флагами) Иммунитет В SourceMod иммунитет это гибкая система основанная на уровнях иммунитета. Каждый администратор может иметь произвольную величину иммунитета установленного у него. Но если администратор должен совершить действие над другим администратором, то успешность действия будет зависеть от величины иммунитета у администратора. Например один администратор с иммунитетом 2 захочет кикнуть администратора с уровнем иммунитета 3, но у него это не получиться, будет выдано сообщение о недостаточном количестве прав доступа и о наличие более высокого иммунитета у другого игрового администратора. По умолчанию, администраторы с одинаковым иммунитетом, могут совершать действия друг над другом. Это может быть изменено с помощью переменной sm_immunity_mode в файле cfg/sourcemod.cfg. Пароли Для работы паролей администратор сервера должен изменить "PassInfoVar" строку в addons/sourcemod/configs/core.cfg файле. Например: "PassInfoVar" "_sm1337" Внимание! Если вы используете no-steam сервер, то настройка по умолчанию "PassInfoVar" _password работать не будет, необходимо обязательно изменить параметр, например на _pw (Это действительно для версий SourceMod'a 1.1 и выше). Далее, если администратор имеет пароль, то он или она должны установить пароль через команду setinfo в консоли клиента. Например, с помощью примеров выше, игроку Shaman необходимо набрать: Код: setinfo "_s32617337" "e-players" Для автоматизации этого процесса при подключении к серверу, вы можете создать "autoexec.cfg" файл в вашем cstrike папке вашей игры. Он находится в папке SteamApps\ACCOUNT\Counter-Strike Source\cstrike\cfg Например: C:\program files\steam\steamapps\e-players\counter-strike source\cstrike\cfg Вы также можете установить пароль при подключении. Проверка Steam и IP подлинности ваших административных привилегий будет сделана автоматически, если пароль правильный. Если проверка подлинности пароля происходит по нику, необходимо сначала авторизоваться, прежде чем изменить свое имя, или же вы будете кикнуты с сервера. Простое добавление администраторов Самый простой способ добавить администратора через конфигурационный файл admins_simple.ini. Это простой файл, который требует два параметра в строке: проверка подлинности информации, а также флаги. Строка флагов несколько гибкая и может иметь следующую информацию: Опционально уровень иммунитета, а затем двоеточие (':'); Строка флагов: Название группы, до него символ @. Далее три примера: "STEAM_0:1:16" "bce" //админ, кик, unban для этого steamID. Нет иммунитета "!127.0.0.1" "5:z" //все права для этого IP адреса, уровень иммунитета = 5 "Shaman" "abc" "e-players.ru" //имя Shaman, пароль "e-players.ru": резервный слот, админ, кик Детальная настройка администраторов Кроме того, вы можете добавить админов через конфигурационный файл admins.cfg, более продвинутый файл сохраняется в формате KeyValues. Каждый администратор имеет собственный блок внутри основного "Админского" блока. Вы можете создавать и/или модифицировать admins.cfg файлы с помощью KVManager. Формат выглядит следующим образом: Admins { "Admin Name" { "auth" "[steam|name|ip]" "identity" "[unique id]" "[option1]" "[value1]" "[option2]" "[value2]" /* .... */ } } Доступные опции: auth: Авторизация: Требуется обязательно. Моет принимать значения только steam, name или IP (если есть пользовательский метод аутентификации), это является инструкцией SourceMod’у по какому параметру идентифицировать пользователя. identity: Идентификация: Требуется обязательно. Уникальная величина, которая позволяет SourceMod найти администратора предоставленным методом аутентификации и учета величин. password: Пароль: Необязательный. Задает пароль пользователя, который необходимо ввести, если авторизация происходит по нику (см. выше раздел, посвященный паролям). group: Группа: Необязательный. Определяет имя группы, которую должен унаследовать пользователь, если это возможно. Можно указывать больше чем одну группу. Там должен быть '@' в качестве символа, чтобы избежать двусмысленности. flags: Флаги: Необязательный. Флаги доступа которые пользователь должен получать по умолчанию. immunity: Необязательный. Уровень иммунитета, получаемый пользователем. Админское имя не является обязательным (это поле может быть пустым). Это не для внутреннего использования и предназначено для удобства пользования сторонними участниками и различных инструментов. Пример: Admins { "Shaman" { "auth" "steam" "identity" "STEAM_0:1:2345" "flags" "abcdef" "immunity" "5" "group" "Huy Admin" } "ZZz" { "auth" "steam" "identity" "STEAM_0:1:62367236" "flags" "z" "immunity" "99" } } Link to comment Share on other sites More sharing options...
Recommended Posts