Главная » Статьи » Что то интересное...

Добавление админов в SourceMod
SourceMod имеет очень широкую и понятную систему управления, она довоьно сложна для пользователей. Чтобы упростить эти вещи, существуют "флаги” которые уточняют общие права, которые могут иметь администраторы.
Кроме того, в настоящее время предусмотрено два способа хранения администраторов. Один через упрощенный простой файл, а другой с помощью более сложных ветвящихся конструкций на основе нескольких файлов. 
SourceMod по умолчанию предусматривает три метода аутентификации:
Steam ID – уникальный для каждого Steam аккаунта
"IP Address" – уникальный IP адрес который присваивается компьтеру (хорошо использовать в локальной сети, где IP адреса статические)
Name – по имени (требуется пароль)

1.Путь до прописания админки (по steam)
Откройте файл cstrike/addons/sourcemod/configs/admins_simple.ini навашем сервере
Добавьте новую строку и напишите в ней следующее, заменив yoursteamid на ваш SteamID (узнать можно написав в консоли status) вида STEAM_n:o:p
Код:
"yoursteamid" "99:z"
Сохраните файл
Перезапустите сервер
Зайдите на ваш сервер 
Напишите sm_admin в консоли игры, и вернитесь в игру закрыв консоль. Вы должны увидеть админское меню. 
  Те же действия можно сделать и с ip адресом:
Откройте файл cstrike/addons/sourcemod/configs/admins_simple.ini навашем сервере
"!37.110.104.70" "99:z"
"!37.110.104.70" "88:z"  // 88 - это уровень доступа т.е. что админ может делать.

2.Уровни доступа
Теперь давайте быстро пробежимся по уровням доступа и узнаем что они означают
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 (обладает всеми выше перечисленными флагами)

3.Иммунитет
В SourceMod иммунитет это гибкая система основанная на уровнях иммунитета.
Каждый администратор может иметь произвольную величину иммунитета установленного у него. Но если администратор должен совершить действие над другим администратором, то успешность действия будет зависеть от величины иммунитета у администратора. Например один администратор с иммунитетом 2 захочет кикнуть администратора с уровнем иммунитета 3, но у него это не получиться, будет выдано сообщение о недостаточном количестве прав доступа и о наличие более высокого иммунитета у другого игрового администратора.
По умолчанию, администраторы с одинаковым иммунитетом, могут совершать действия друг над другом. Это может быть изменено с помощью переменной sm_immunity_mode в файле cfg/sourcemod.cfg.

4.Пароли
Для работы паролей администратор сервера должен изменить "PassInfoVar" строку в addons/sourcemod/configs/core.cfg файле.
Например:
Код:
"PassInfoVar" "_sm1337"
Внимание! Если вы используете no-steam сервер, то настройка по умолчанию "PassInfoVar" _password работать не будет, необходимо обязательно изменить параметр, например на _pw (Это действительно для версий SourceMod'a 1.1 и выше).
Далее, если администратор имеет пароль, то он или она должны установить пароль через команду setinfo в консоли клиента. Например, с помощью примеров выше, игроку Andrey необходимо набрать:
Код:
setinfo "_sm1337" "hlmod"
Для автоматизации этого процесса при подключении к серверу, вы можете создать "autoexec.cfg" файл в вашем cstrike папке вашей игры. Он находится в папке SteamApps\ACCOUNT\Counter-Strike Source\cstrike\cfg.
Например:
C:\program files\steam\steamapps\andrey\counter-strike source\cstrike\cfg
Вы также можете установить пароль при подключении. Проверка Steam и IP подлинности ваших административных привилегий будет сделана автоматически, если пароль правильный. Если проверка подлинности пароля происходит по нику, необходимо сначала авторизоваться, прежде чем изменить свое имя, или же вы будете кикнуты с сервера.

5.Простое добавление администраторов
Самый простой способ добавить администратора через конфигурационный файл admins_simple.ini.
Это простой файл, который требует два параметра в строке: проверка подлинности информации, а также флаги. Строка флагов несколько гибкая и может иметь следующую информацию:
Опционально уровень иммунитета, а затем двоеточие (':');
Строка флагов;
Название группы, до него символ @.
Далее три примера:
"STEAM_0:1:16" "bce" //админ, кик, unban для этого steamID. Нет иммунитета
"!127.0.0.1" "5:z" //все права для этого IP адреса, уровень иммунитета = 5
"Andrey" "abc" "hlmod.ru" //имя Andrey, пароль "hlmod.ru": резервный слот, админ, кик

6.Детальная настройка администраторов
Кроме того, вы можете добавить админов через конфигурационный файл 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
 {
 "Andrey"
 {
 "auth" "steam"
 "identity" "STEAM_0:1:2345"
 "flags" "abcdef"
 "immunity" "5"
 "group" "Awesome Admins"
 }
 
 "Blue Crab"
 {
 "auth" "steam"
 "identity" "STEAM_0:1:666666"
 "flags" "z"
 "immunity" "99"
 }
 }

Категория: Что то интересное... | Добавил: Petro-2OOKg (24.10.2013)
Просмотров: 832 | Комментарии: 1 | Теги: аддминка на soursemod, админ CSS, настройка админки | Рейтинг: 0.0/0
Всего комментариев: 1
1 Petro-2OOKg  
0
"clients.txt"
{
"version" "1"

// This key group lists all your client players
"players"
{
// This must be a unique client name
"[smoke]'.Mr.Winston'.cl"
{
// Client real name
"name" "[smoke]'.Mr.Winston'.cl"
"nick" "[smoke]'.Mr.Winston'.cl"
// These are personal access flags for a player
"flags"
{
"Admin" "q2 q3 grav pban A B C D E F G H I J K L M N O P Q R S T U V"
"Admin" "W X Y Z a b c d e f g i k l m o p q r s t v w x y z client"
"Admin" "admin spray"
}
"groups"
{
"Admin" "Serveradmin"
"Immunity" "Serveradmin"
}
}

// This must be a unique client name
"[Smoke]'.LakerS.Zcl"
{
// Client real name
"name" "[Smoke]'.LakerS.Zcl"
"nick" "[Smoke]'.LakerS.Zcl"
// These are personal access flags for a player
"flags"
{
"Admin" "q2 q3 grav pban A B C D E F G H I J K L M N O P Q R S T U V"
"Admin" "W X Y Z a b c d e f g i k l m o p q r s t v w x y z client"
"Admin" "admin spray"
}
}

// This must be a unique client name
"[smoke]`.DьяволёnoK.`"
{
// Client real name
"name" "[smoke]`.DьяволёnoK.`"
"nick" "[smoke]`.DьяволёnoK.`"
// These are personal access flags for a player
"flags"
{
"Admin" "q2 q3 grav pban A B C D E F G H I J K L M N O P Q R S T U V"
"Admin" "W X Y Z a b c d e f g i k l m o p q r s t v w x y z client"
"Admin" "admin spray"
}
}

// This must be a unique client name
"[smoke]'.Mr.Pingvi'."
{
// Client real name
"name" "[smoke]'.Mr.Pingvi'."
"nick" "[smoke]'.Mr.Pingvi'."
// These are personal access flags for a player
"flags"
{
"Admin" "q2 q3 grav pban A B C D E F G H I J K L M N O P Q R S T U V"
"Admin" "W X Y Z a b c d e f g i k l m o p q r s t v w x y z client"
"Admin" "admin spray"
}
}

// This must be a unique client name
"[smoke]`Carleone"
{
// Client real name
"name" "[smoke]`Carleone"
"nick" "[smoke]`Carleone"
// These are personal access flags for a player
"flags"
{
"Admin" "q2 q3 grav pban A B C D E F G H I J K L M N O P Q R S T U V"
"Admin" "W X Y Z a b c d e f g i k l m o p q r s t v w x y z client"
"Admin" "admin spray"
}
}
}

// These are global groups of flags that can be assigned to clients
"groups"
{
"Immunity"
{
"Clanmember" "a c d e f h i k l m n p q r s t v w x afk autojoin grav ping"
"No Kick Ban" "h i n v w x ping"
"NoFun" "x"
"Serveradmin" "a b c d e f g h i k l m n o p q r s t u v w x y afk autojoin"
"Serveradmin" "grav ping"
"Teamadmin" "d e f k m n s t v w x afk autojoin ping"
}
"Admin"
{
"Clanmember" "A B C D E F G H I J K L M N O S T U V W X Y Z a b c d e f g"
"Clanmember" "i k l m o p q r s t v w x y q2 q3 admin spray grav pban"
"Level 2 Access" "E I V Y a c g k o p v admin spray"
"No Rcon Or Sound" "E V c v admin"
"Serveradmin" "A B C D E F G H I J K L M N O P Q R S T U V W X Y Z a b c d"
"Serveradmin" "e f g i k l m o p q r s t v w x y z q2 q3 admin spray grav"
"Serveradmin" "pban client"
"Teamadmin" "A C D E F M U V X Y a b c e g k l o p s v w admin spray"
}
}

}

Добавлять комментарии могут только зарегистрированные пользователи.
[ Регистрация | Вход ]
руб. 1 рубль для развития сайта на счет 410012003992015