搭建CSGO服务器

喜欢打CSGO的朋友们还在自己开人机训练赛来进行跑图吗,在为举办内战ping高而头疼吗

本地人机训练赛延迟大,局限性高,受自己配置影响

不如试试开一个属于自己的CSGO服务器

Tip:

  • 功能:
  • 满十,单挑,BHOP,跑图,创意工坊,躲猫猫,你见到的模式都可以在服务器里面体现

开始搭建

1.选择服务器

搭建CSGO首先必须有一个云服务器,我这边推荐腾讯云,腾讯云对新用户友好,买大厂服务器也不需要担心超卡等问题

腾讯云网址【腾讯云】云服务器、云数据库、COS、CDN、短信等云产品特惠热卖中

云服务器系统选用(CentOS、Ubuntu、Debian)推荐选用Debian和Ubuntu

选择完服务器后我们用Shell软件连接到你所买的服务器

2.安装依赖

CentOS:

yum update

yum upgrade

yum install lib32gcc1

yum install libstdc++6

yum install lib32stdc++

yum update libstdc++-4.8.5-11.el7.x86_64

sudo yum install glibc.i686

yum install zlib.i686

yum install libstdc++.i686

yum install zlib-1.2.11-16.el8_2.i686

yum install libuuid-2.32.1-22.el8.i686

yum install lib32z1

yum install screen

Ubuntu/Debian:

apt-get update

apt-get upgrade

apt-get install lib32gcc-s1

apt-get install libstdc++6

apt-get install lib32stdc++

apt-get install lib32stdc++6

apt-get install lib32z1

apt-get install screen

3.安装SteamCmd和CSGOServer

1,首先不推荐在root目录下进行安装,我这边是切换好home文件夹下,你们可以根据喜好来决定

cd /home    // 切换到home文件夹目录下

wget https://steamcdn-a.akamaihd.net/client/installer/steamcmd_linux.tar.gz    //下载steamcmd

tar zxvf steamcmd_linux.tar.gz    // 解压steamcmd

rm steamcmd_linux.tar.gz    //删除下载的安装包,也可以选择保留

2.运行SteamCmd并且安装CSGOServer

./steamcmd.sh    //运行steamcmd

login anonymous    //以匿名用户身份登录steamcmd

force_install_dir ./csgo    //创建CS:GO服务器文件夹

app_update 740 validate   //安装csgo服务端(时间根据你服务器宽带而定)

quit   //在看到最后的行的”Success!”后,表明CS:GO服务端安装成功退出steamcmd

4.编写CS:GO更新脚本(这边不用vi方法,建议选择FileZilla或Finallshell软件来进行手动创建并输入)

1,进入home文件夹下创建新文件,重命名为update.txt,并在里面加入以下语句

login anonymous

force_install_dir ./csgo

app_update 740

quit

2. 编写steamcmd运行脚本

仍在home文件夹下面创建新的名为csgo_server_update.sh文件

并输入以下语句

#!/bin/bash

./steamcmd.sh +runscript update.txt

3,给予脚本775权限

chmod 775 csgo_server_update.sh

4,运行更新脚本

./csgo_server_update.sh

5.配置server.cfg

手动在csgo/cfg文件夹下面创建名为server.cfg文件

并且编辑server.cfg文件加入以下语句

sv_setsteamaccount “4FXXXXXXXXXXXXXXXXXXXXXXXXX”  // XXXXXXX,,,修改为自己申请的登陆令牌 令牌申请地址放在帖子尾部

// 服务器名称,安全方面

hostname “Fisher’s server”    // 服务器在社区服务器浏览器上显示的名称,自行修改为喜欢的名字

rcon_password “12345678”    // CS:GO远程控制台密码,修改为自己定义的密码

sv_password “87654321”    // 服务器连接密码,在连接服务器时输入,不要密码可以留空

// 游戏参数方面

sv_maxrate “128000”    // 服务器最大带宽使用量,默认值非常小,因此会造成choke值异常,此处建议改为128000

sv_minrate “80000”    // 服务器最小带宽使用量,与上面同理,此处建议改为80000

//设置128up和cmd(可能有些指令没有用,自己选择)

sv_maxcmdrate “128”

sv_mincmdrate “128”

cl_cmdrate “128”

cl_updaterate “128”

sv_minupdaterate 128

sv_maxupdaterate 128

//下载站(根据你自己需求添加,某些插件会需要)

sv_allowdownload 1

sv_allowupload 1

sv_downloadurl “你的下载站”

6.启动CSGO服务器,并使用screen服务

screen -S csgo

cd /home/csgo    //

./srcds_run -debug -game csgo -console -port 27015 -steamcmd_script /home/steam/steamcmd/update.txt -steam_dir /home/steam/ +map de_dust2 -tickrate 128 +game_type 0 +game_mode 1 

代码解析

参数解释:
-debug 开启调试模式
-game 指明游戏,此处是csgo
-console 打开游戏控制台
-port 游戏服务器端口,此处是27015
-steamcmd_script 运行steamcmd的脚本文件地址
-steam_dir Steam的安装地址
+map 服务器加载的地图
-tickrate 服务器tick数值
+game_type
+game_mode  配合+gametype修改游戏模式(详细数值放到本帖子尾部)

启动服务器可能会出现缺少库报错(出现2023年2月csgo服务器更新后)这边不写出解决方案,具体方案请参考B站大佬写出的解决方案

5.末尾

1,要记住在你的云厂开放CSGO服务器端口:CSGO服务器:27015,CSGO GOTV:27020 (如果你安装了其他软件例如宝塔等,要记住在宝塔也开放端口)

2,断开ssh之后恢复ssh,想要恢复之前的screen会话,输入以下命令即可:

screen -r csgo

6.使用文档

  1. Steam网页API注册:https://steamcommunity.com/dev/apikey
  2. Steam 游戏服务器帐户管理:https://steamcommunity.com/dev/managegameservers
    这里注意两个问题,一个是使用大号有一定几率会封禁15天左右,建议使用小号,第二点是新号在注册这个令牌时候,先去申请这个号的Steam网页API注册,不然令牌无效(本人没有被封过)
  3. game_type和game_mode数值介绍(如下)
  4. 游戏模式 game_type game_mode
    休闲模式 0 0
    竞技模式 0 1
    搭档模式 0 2
    军备竞赛 1 0
    爆破模式 1 1
    死亡竞赛 1 2
    自定义模式 3 0
    守护模式 4 0
    合作精英 4 1
    头号特训 6 0
    练习模式 2 0