我是艾西,上一篇说了搭建CSGO服务器需要准备服务器以及安装好所需要的环境,那么今天说一下CSGO社区私人服务器怎么搭建游戏服务端
搭建CSGO服务器比较简单,Valve开发者社区wiki也给出了安装指导,也可以使用LinuxGSM更快捷的搭建
上一篇文章我们用root用户安装了一些CSGO服务端需要的系统依赖,接下来在我们搭建CSGO服务端的时候。我们首先需要创建一个新的系统用户:建议不要root账户来开启服务器,可能会导致一些意外的问题,以免不必要的麻烦
登陆服务器后当显示这个的时候说明服务器连接上了,最左边的是当前的用户名
[ root@XX-x-x-centos ~]#
首先我们新建个用户,方便起见我们就使用steam作为新账户的名称,在撰写栏里打上
adduser steam
然后回车,当弹出下一栏的时候就说明指令已经生效了
当然,你也可以叫其他名字这里只是以steam当作示范
useradd -m steam
cd /home/steam
以上两个命令会让我们建立以steam作为名称的用户,并进入到/home/steam这个用户所属的目录下。
接下来我们要下载Steam cmd版,并安装相关运行库。(注意这里是一整条命令请直接全部复制粘贴回车)
wget https://steamcdn-a.akamaihd.net/client/installer/steamcmd_linux.tar.gz && tar xf steamcmd_linux.tar.gz && yum clean all && yum update -y && yum upgrade -y && yum install glibc.i686 libstdc++.i686 -y && yum install zlib.i686 -y && yum install screen -y && chown -R steam /home/steam/
弹这个complete的时候就安装完成了
接下来我们切换到steam账户,一切和CSGO服务器相关的文件都要以steam用户身份操作。
首先先切换到steam用户
su steam
我们来设置下steam这个用户的密码
passwd
它会显示
Changing password for user steam.
Current password: (输入你自己想设置的密码)
就是设置密码,要输两遍,不过密码他是不会明文显示的所以设置的时候慢点。
为了方便起见我们新建一个Xshell和WinSCP连接,跟之前的一样操作,只是用户改成steam,密码改成passwd那一步你设置的steam的密码,以后开启服务器的时候直接选择那个连接就好
2.CSGO服务器下载安装
要注意接下来的操作都是以steam账户进行的(WinSCP也是)
如果Xshell已经切换到steam用户了那么就已经在/home/steam目录下,WinSCP的话如果不确定就从刚刚建立的以steam用户做连接的会话连接。
./steamcmd.sh
运行steamcmd
[ 0%] Checking for available updates...
[----] Verifying installation...
Steam Console Client (c) Valve Corporation
-- type 'quit' to exit --
Loading Steam API...Warning: failed to init SDL thread priority manager: SDL not found
OK.
Steam>
初次使用可能会进行更新,等到屏幕上出现Steam>并等待你输入指令时输入
login anonymous
我们只是下载游戏服务器所以匿名方式登录
Steam>login anonymous
Connecting anonymously to Steam Public...Logged in OK
Waiting for user info...OK
Steam>
登录成功,接下来设置默认安装目录
force_install_dir ./csgo/
这条命令会让csgo服务器安装在当前目录的csgo文件夹下,实际目录就是/home/steam/csgo当然你也可以做修改命令自己改个想要的文件夹名称。
输入命令 app_update 740 validate
下载安装服务器,等就行了差不多半小时左右就好
Steam>app_update 740 validate
Update state (0x3) reconfiguring, progress: 0.00 (0 / 0)
Update state (0x61) downloading, progress: 0.00 (0 / 168960)
......
......
.......
Success! App '740' fully installed.
Steam>
弹出steam>就算安装好了
输入quit并回车,退出steamcmd。
我们打开WinSCP(记得用Steam账号登陆)
进入到/home/steam/csgo/csgo里
接下来就是安装插件平台
3.安装Sourcemod
Metamod
这两个东西是我们服务器安装花里胡哨插件所必备的东西
sourcemod下载 https://www.sourcemod.net/downloads.php?branch=stable
metamod下载 https://www.sourcemm.net/downloads.php?branch=stable
都是点击大企鹅把东西下载下来,然后解压,会得到addons文件夹和cfg文件夹
在winscp里把这两个文件夹放到/home/steam/csgo/csgo里
如果提示cfg已经存在,点右边的全部选是就好
都放进去后应该是这样
解压,把mm的addons以及sm的addons和cfg都拖到WinSCP的/home/steam/csgo/csgo下。
上传完之后做一下目录检查,应该长得是这个样子。
4:开服准备
接下来打开一个Steam的网站申请一个GSLT用于开服
打开https://steamcommunity.com/dev/managegameservers,如果不能访问Steam社区请使用steamcommunity 302
这个网站有点难上去,电脑上不去的话用手机UU加速一下steam然后打开
点击创建
请记住你的令牌,且妥善保管,一台服务器只能使用一个唯一的令牌,再开其他服务器需要再次生成,注意这个令牌代表着你的开服账号。
如果你想要安装违规插件,请使用小号生成令牌。
接着给服务器添加管理员
打开/home/steam/csgo/csgo/addons/sourcemod/configs/admins_simple.ini/
在这里加上一行
"STEAM_1:0:111111" "z"
STEAM_1:0:111111是你的SteamID,如果你想查询自己的ID,可以随便本地进图然后游戏控制台输入status,来获取你的ID。
(这只是个示范,你自己的STEAMID需要去游戏里开个机器人训练赛在控制台里打status就可找到自己的SteamID了,后面的z就是权限,z代表最高级)接下来配置游戏启动配置
进入/home/steam/csgo/csgo/cfg下打开或新建文件autoexec.cfg
输入以下内容(//后内容为本行注释,非指令内容,可以去掉)
内容如下
双斜杠后面的是注释可以不加
hostname "My CSGO Server" //设置服务器名称,暂不支持中文(需要插件)
rcon_password "abcdefg" //rcon密码,用于游戏里控制台命令服务器
sv_password "abcdefg" //服务器密码((可留空即为公开))
可留空即为公开,用于远程连接此CSGO服务器控制台的密码)
sv_setsteamaccount XXXXXXXXXXXXXXXXXXXX //填入上面申请的那个很长的令牌,每个服只能用一个
sv_tags "retakes,pratice,PCG" //服务器标签(国际服社区服浏览器可以看到),可自定,用英文逗号隔开
ip 0.0.0.0 //很离谱的bug,不加这个rcon就没办法命令服务器,保持里面是0.0.0.0不要更改
host_info_show 2 //服务器信息展示 0即不展示 1一般信息 2尽可能多 可自定
host_players_show 2 //服务器人数展示 0不显示 1只显示人数不显示玩家 2即显示人数和在线玩家
exec banned_user.cfg //读取封禁名单
exec banned_ip.cfg //读取封禁IP
writeid
writeip
sv_region 4 //服务器区域:亚洲
现在我们就可以准备启动服务器了
Xshell输入(注意要用Steam账号登陆)
在输入
screen -S csgo
这里的操作是使用screen命令使我们新建一个名叫csgo的窗口,这样你的后续操作就在这个容器中进行,即使关闭了xshell容器中的csgo也会正常运行,如果没有screen容器的话xshell断开csgo服务器也断开了
进入csgo在的文件夹:
cd /home/steam/csgo/
进到CSGO服务器可执行文件夹目录下
./srcds_run -game csgo -tickrate 128 -console -usercon +game_type 0 +game_mode 1 +mapgroup mg_active +map de_mirage -maxplayers_override 9 +net_public_adr x.x.x.x
我们来一部分一部分解释,首先./srcds_run代表开始运行,后面的都属于启动项,这个srcds就是Source Dedicated Server(起源引擎独立服务器)的意思
-game csgo 意思就是告诉SRCDS这个游戏是CSGO
-tickrate 128 128tick这个应该不用多说,如果你配置不够,你也可以改64
-console 启用控制台输出
-usercon 允许拥有rcon密码的人进行远程管理
+game_type 0 +game_mode 1 竞技模式,其他常用官方模式有:
休闲 +game_type 0 +game_mode 0
军备竞赛 +game_type 1 +game_mode 0
爆破 +game_type 1 +game_mode 1
死亡竞赛 +game_type 1 +game_mode 2
+mapgroup mg_active +map de_mirage 地图组:服役生涯地图组 启动后首张地图mirage
所有地图组
mg_bomb拆除地图组
mg_hostage人质解救地图组
mg_lowgravity低重力地图组
mg_demolition爆破地图组
mg_armsrace军备竞赛地图组
mg_casualdelta炸弹拆除地图组 II 号
mg_casualsigma炸弹拆除地图组 I 号
mg_reserves后备生涯地图组
mg_deathmatch经典地图组
mg_skirmish_stabstabzap戳戳乐
mg_skirmish_flyingscoutsman跳狙飞人
mg_skirmish_triggerdiscipline弹无虚发
mg_skirmish_headshots砰!爆头!
mg_skirmish_huntergatherers采猎者
mg_skirmish_heavyassaultsuit重型突击套装
mg_skirmish_armsrace军备竞赛(战争游戏)
mg_skirmish_demolition爆破模式(战争游戏)
-maxplayers_override 9 这是限制服务器最大人数指令,不过不能阻止玩家通过控制台加入(修复控制台加入的需要插件)
+net_public_adr x.x.x.x 换成你服务器IP就行没啥好说的
好了,粘贴回车启动
然后会滚一堆屏,等到屏幕上出现
Connection to Steam servers successful.
Public IP is 233.233.233.2333.
Assigned persistent gameserver Steam ID [G:1:666666666].
Gameserver logged on to Steam, assigned identity steamid:666666666666666666666666
Set SteamNetworkingSockets P2P_STUN_ServerList to 'x.x.x.x:3478' as per SteamNetworkingSocketsSerialized
VAC secure mode is activated.
GC Connection established for server version 1175, instance idx 1
只要看到Steam ID [G:1:xxxxxx],你的服务器基本就大功告成了!
如果出现这个,那么恭喜你,你已经创建了一台属于自己的CSGO服务器。
接下来你只需要在CSGO控制台输入
connect x.x.x.x(你的IP)并回车就可以连接到服务器了,如果你的服务器设置了密码,则需要再这之前输入password xxxxxx(你的密码)即可,国际服可以用社区服浏览器搜索连接。
开启服务器
./srcds_run -game csgo -tickrate 128 -console -usercon
回车后屏幕开始出现一堆东西,等一会当出现
就说明服务器开启成功了,我们在csgo控制台里输入connect (服务器IP)就可以连进去了,这里的ip换成你自己服务器的ip地址
与此同时,xshell现在相当于控制台,在里面输入控制台指令就可以操作服务器,我们先看一下sourcemod安装成功了没,在xshell里输入sm
输入sm回车看下模组装没装好。
sm
SourceMod Menu:
Usage: sm
cmds - List console commands
config - Set core configuration options
credits - Display credits listing
cvars - View convars created by a plugin
exts - Manage extensions
plugins - Manage Plugins
prof - Profiling
version - Display version information
如果需要向服务器发送指令,你可以直接在Xshell里输入并回车,也可以在游戏端使用这两种指令
sm_rcon xxxxxxx
这时利用Sourcemod管理员的权限发送的,xxxx即代表你想要发送的指令,当你在服务器里时,直接在控制台输入即可
rcon_password xxxxxx
rcon xxxxxx
如果想在游戏里的控制台命令,在csgo里的控制台输入rcon_passwd 加上之前在autoexec.cfg里设置的密码
比如说你想打开作弊模式正常的话是在控制台里输入sv_cheats 1
在服务器里的话你可以直接在xshell里输入sv_cheats 1
或者在csgo里的控制台输入
rcon sv_cheats 1
注释:这个则利用了CSGO官方自带的管理权限,先rcon_password xxxxxx,这里的xxxx是你的rcon密码,在前面autoexec.cfg部分我们提过,然后和类似sm_rcon,只要在你的命令前加上rcon和空格即可,注意rcon_password只需要输入一次,除非重启游戏。
管理员指令等可以参考文章尾部的参考资料
现在你可以直接关掉Xshell并在自己的CSGO游戏服务器里玩耍了,如果你需要启动服务器,可以连回去并输入
screen -r
这样screen会回到上次的窗口,如果只要重启只要输入quit并回车就可以自动重启服务器了,退出可以使用快捷键Ctrl+C或Z,服务器里有人的情况下可以先quit再Ctrl+C,在命令行里你可以用上下方向键在你之前输入过的指令里切换,比如你关闭后,直接按一下↑,你之前的启动命令就出来了。
到这里你的服务器就开启成功啦!
我是艾西,今天CSGO私人社区服务器搭建教程就到这里啦需要对有需要的小伙伴有帮助!
拥有一台服务器可以做很多有趣的事情