管理你的服务器
From SA-MP Wiki
Contents |
改变游戏模式 (Gamemode)
运行一个自制/下载的游戏模式
- 打开你将服务端安装到的目录 (例如: /Rockstar Games/GTA San Andreas/server)
- 将下载或编译得到的.amx文件放入服务端安装目录下的gamemodes文件夹
- 使用RCON更换游戏模式,如同之前提到的一样 (2.1)
- 另外你可以把游戏模式加入一个循环,同样如同之前提到的 (2.3)
使用附加脚本 (Filterscripts)
跟运行自定义游戏模式一样,除了以下事情:
- 把.amx文件放在名为 /filterscripts 的文件夹里
- 添加到server.cfg: filterscripts scriptname
给你的服务器加上密码
- 如果你想加上密码,只让你的朋友进入的话,把这个加进server.cfg:
password whatever
- 这会让你的服务器被设定为使用“whatever”这个密码进行保护 - 把它换成你想设置的密码 :)
- 你也可以在游戏中使用这条命令修改密码 /rcon password newpasswordhere
- 你可以使用 /rcon password 0 来取消密码, 或者重启服务器。
使用 RCON
登录
你可以通过在游戏中输入 '/rcon login password' 或者在游戏外使用 远程控制台 里的RCON模式登录.
密码和你在 server.cfg 里设置的一样。
封禁
封禁是指阻止一个IP连接到服务器。
解除封禁
一旦某人被封禁了,有两种方式来解除:
- 从 samp.ban 中移除
- RCON unbanip 命令
samp.ban文件
samp.ban 可以在你的sa-mp服务端目录中找到, 它的每行包含每个封禁的下列信息:
- IP
- 日期
- 时间
- 名字 (一个人的名字或者封禁原因 (见 BanEx))
- 封禁类型 (INGAME, IP BAN, 等等)
例如:
127.8.57.32 [13/06/09 | 69:69:69] NONE - IP BAN 13.37.13.37 [28/05/09 | 13:37:00] Kyeman - INGAME BAN
要解除他们的封禁, 移除这几行, 然后运行RCON命令 reloadbans 来使服务器重新读取samp.ban.
解除IP封禁
RCON命令 unbanip 可以在游戏里或者服务端控制台使用。 要解封一个IP,在游戏里输入"/rcon unbanip IP_HERE"或者在控制台里输入"unbanip IP_HERE".
例如:
13.37.13.37 [28/05/09 | 13:37:00] Kyeman - INGAME BAN /rcon unbanip 13.37.13.37 << INGAME unbanip 13.37.13.37 << CONSOLE
要解除他们的封禁, 使用 unbanip 命令, 然后运行RCON命令 reloadbans 来使服务器重新读取samp.ban.
重载封禁记录文件
samp.ban是保存目前被服务器封禁的IP信息的文件。这个文件在服务器启动的时候读取,所以如果你解封了一个IP或者玩家你必须输入RCON命令 reloadbans 来让服务器重新读取samp.ban,允许他们进入服务器。
添加封禁
samp.ban文件
samp.ban 是用来存储封禁的文件, 包含关于封禁的以下信息:
- IP
- 日期
- 时间
- 名字 (一个人的名字或者封禁原因 (见 BanEx))
- 封禁类型 (INGAME, IP BAN, 等等)
要增加一个封禁, 像这样一样加入一行:
IP_HERE [28/05/09 | 13:37:00] PLAYER - BAN REASON
IP_HERE 是你写你想要封禁的IP的地方。 这种方法要比使用RCON命令banip花更长时间, 所以建议使用RCON banip.
Ban() 函数
Ban 函数可以用来从脚本中封禁一个玩家。 BanEx 函数会增加一个像这样的可选的原因:
13.37.13.37 [28/05/09 | 13:37:00] Cheater - INGAME BAN
RCON 封禁命令
通过在游戏中输入 /rcon ban 或是在控制台中输入 "rcon ban" 来执行的RCON命令ban是被用来封禁正在你的服务器中的一个特定玩家的。要封禁一个IP,看下一段。
输入:
/rcon ban PLAYERID <<INGAME ban PLAYERID <<CONSOLE
封禁IP
通过在游戏中输入 /rcon banip 或是在控制台中输入 "rcon banip" 来执行的RCON命令banip是被用来封禁一个特定IP地址的,要封禁一个特定玩家,看上一段。 接受通配符来封禁IP段。
输入:
/rcon banip IP <<INGAME banip IP <<CONSOLE
RCON 命令
输入 cmdlist 查看命令列表(varlist 查看变量列表), 在游戏中的话利用RCON('/rcon cmdlist')。
这些是管理员可以使用的功能:
- /rcon cmdlist - 显示命令列表.
- /rcon varlist - 显示当前变量列表.
- /rcon exit - 关闭服务器.
- /rcon echo [text] - 在服务端控制台里显示 [text] (不是在游戏里的客户端聊天框).
- /rcon hostname [name] - 更改服务器名 (例如: /rcon hostname my server).
- /rcon gamemodetext [name] - 更改游戏模式名 (例如: /rcon gamemodetext my gamemode).
- /rcon mapname [name] - 更改地图名 (例如: /rcon mapname San Andreas).
- /rcon exec [filename] - 执行包含服务器配置的cfg文件 (例如: /rcon exec blah.cfg).
- /rcon kick [ID] - 踢出把给定ID的玩家 (例如: /rcon kick 2).
- /rcon ban [ID] - 封禁给定ID的玩家 (例如: /rcon ban 2).
- /rcon changemode [mode] - 该命令会更换当前游戏模式到给定的游戏模式 (例如: 如果你想玩 sftdm: /rcon changemode sftdm).
- /rcon gmx - 会载入 server.cfg 中的下一个游戏模式.
- /rcon reloadbans - 重新载入储存被封禁IP地址的samp.ban。
- /rcon reloadlog - 清空 server_log.txt.
- /rcon say - 在客户端聊天框显示一条消息给玩家。 (例如: /rcon say blah).
- /rcon players - 显示当前在服务器中的玩家 (包含名字、Ping和IP).
- /rcon banip [IP] - 封禁给定IP (例如: /rcon banip 127.0.0.1).
- /rcon unbanip [IP] - 解封给定IP (例如: /rcon unbanip 127.0.0.1).
- /rcon gravity - 更改重力 (例如: /rcon gravity 0.008).
- /rcon weather [ID] - 更改天气 (例如: /rcon weather 1).
- /rcon loadfs - 载入给定的附加脚本 (例如: /rcon loadfs adminfs).
- /rcon unloadfs - 卸载给定的附加脚本 (例如: /rcon unloadfs adminfs).
- /rcon reloadfs - 重新载入给定的附加脚本 (例如: /rcon reloadfs adminfs).
- /rcon rcon_password [PASSWORD] - 更改RCON密码
有关联的回调和函数
以下回调和函数可能会对你有所帮助,他们可能跟这个文章有直接关系或间接关系。
回调:
- OnRconLoginAttempt: 客户端尝试登陆上 RCON 的时候将被调用。
函数:
- IsPlayerAdmin: 检查一个玩家是否已登陆 RCON 。
- SendRconCommand: 发送一个 RCON 命令给脚本。