Adding Admins (AMX Mod X)

From AlliedModders Wiki
Revision as of 18:19, 16 January 2006 by BAILOPAN (talk | contribs)
Jump to: navigation, search

Admins (non-SQL)

Adding an Admin

First, open the amxmodx/configs/users.ini file with your favorite text editor. Scroll to the bottom. Admin entries are stored with four options: Authentication, Password, Access Right, Connection Properties.

In the early days of Half-Life 1 it was common to have admins authenticate by name. However, now it is recommended to auth by steamid. An example of a typical admin entry is:

"STEAM_0:0:123456" "" "abcdefghijklmnopqrstu" "ce"

Entries are one-per-line, and each of the four options are space separated, contained in double-quotes. This one means:

  1. The user has SteamID STEAM_0:0:123456
  2. The user has no password (steamid-authentication)
  3. Access rights are levels a through u
  4. The user is a steamid ("c") and has no password ("e")

It is also possible to authenticate by username:

"BAILOPAN" "mypass" "abcdefghijklmnopqrstu" "a"

To authenticate, BAILOPAN would put this in his client's autoexec.cfg, where "_pw" is the value of "amx_password_field" in amxx.cfg.

setinfo "_pw" "mypass"

For information on what access levels mean, see [#Access Levels]].

Note: It is important that you do not use the 'z' flag for admins.

Removing an Admin

Find the admin's entry in your amxmodx/configs/users.ini file, and put a semicolon in front of it. For example:

;"STEAM_0:0:123456" "" "abcdefghijklmnopqrstu" "ce"

That will prevent the entry from being read.


Admins (SQL)

AMX Mod X lets you store admin accounts in a MySQL database. This is ideal if you have multiple servers with common administrators.

Configuring Server

First, make sure you have configured your server for SQL by reading Configuring AMX Mod X#SQL. Then, enable the admin_sql.amxx plugin instead of admin.amxx, by opening amxmodx/configs/plugins.ini. You should change the first two entries to look something like this:

;admin.amxx ; Disabled 
admin_sql.amxx ; SQL admins

Maintaining Admins

Once the server loads for the first time, it will automatically create the table specified with amx_sql_table.

You can either add an admin through an SQL tool like an SQL Console or phpMyAdmin, or you can add an admin using amx_addadmin.

If you choose to use SQL directly (or an interface), you must learn the table layout. There are four columns, each corresponding to one of the four properties listed above in #Adding an Admin. For example:

INSERT INTO admins VALUES("STEAM_0:1:23456", "", "abcdefghijklmnopqrstu", "ce");

Note: It is important that you do not use the 'z' flag for admins.

For information on what access levels mean, see AMX Mod X Access Levels.

Console Command

You can also use the console command amx_addadmin for adding admins. It will work for both SQL and users.ini, depending on which plugin you have enabled. An example of using the command in-game:

amx_addadmin "BAILOPAN" "abcdefghijklmnopqrstu"

Using the command from the server/rcon console:

amx_addadmin "STEAM_0:1:23456" "abcdefgihjklmnopqrstu"


Access Levels

These access levels are the default access levels for the base AMX Mod X plugins. 3rd party plugins may have different usages for them, although in general users try to stick to the intentions for each flag.

Access Flag Purpose
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)


Connection Flags

These flags control how AMX Mod X attempts to authorize a connecting admin.

Connection Flag Purpose
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)