使用腾讯云搭建求生之路2服务器
- 整件事情的起因
- 服务器的选择
- Linux系统的选择
- 需要参考的材料
- 服务器防火墙设置
- Steamcmd的安装
- L4D2安装
- 服务器设置与启动
- 在L4D2里面进入服务器
- 结语
整件事情的起因
自从我觉得nonebot不好玩了之后尝试了MC服务器,奈何贫弱的2C2G ECS实在是没有搞头,不如复古一下做一个L4D2服务器。
服务器的选择
这几家服务器大抵都差不多,买最便宜的。
我选腾讯云的原因是因为便宜。
根据实例监控情况1C1G够打标准无模组。
重要的事情是服务器要在自己区域。
重要的事情是服务器要在自己区域。
重要的事情是服务器要在自己区域。
低延迟对于FPS类游戏提升体验意义重大。
四个人联机时的个位数延迟可以梦回网吧连坐。
Linux系统的选择
RHEL系:CentOS安装的时候要快乐一点
Debian系:Debian或者Ubuntu也不是不行
Arch:都用Arch了,就自己看材料吧
开服过程区别:软件管理工具的指令和系统指令有一点点差异。
Windows教程太多了不要看我。
需要参考的材料
截至2023年3月,下述网页还是可以浏览的:
Steam社区,服务器搭建材料:点这里
Valve百科,SteamCMD安装:点这里
Bilibili文章,很有用:点这里
阿里云文章,很有意思的转载:点这里
腾讯云文章,有用:点这里
服务器防火墙设置
以下是个人喜好:为了避免爆破,仅保留SSH端口,且限制来源
来源是你所在的网络的公网IP,而不是服务器的公网IP
开放你需要的端口(以11451为例):
游戏服务需要UPD + 远程控制需要TCP:
Steamcmd的安装
- 安装steamcmd需要用户名为steam,建立用户steam:
sudo adduser steam
- 给steam用户加一个密码:
sudo passwd steam
建议:使用密码生成器生成一个足够复杂的密码
例如这里:s"X?2fX,80q.\N;4Cw_,Gs).7cwt9eXT
- 然后安装如下程序:
sudo yum install glibc.i686 libstdc++.i686
- 其次是辅助工具:
sudo yum install screen
- 【参考Valve百科】切换到用户steam,输入密码:
su steam
- 【参考Valve百科】新建文件夹安装steamcmd:
mkdir ~/Steam && cd ~/Steam
- 【参考Valve百科】下载steamcmd:
curl -sqL "https://steamcdn-a.akamaihd.net/client/installer/steamcmd_linux.tar.gz" | tar zxvf -
【可选选项】使用screen以关闭SSH客户端:
screen
screen的用法以及常用快捷键:
detach:(在screen里)Ctrl+A
然后按D
即可离开screen
reattach:(在screen外)输入screen -r
即可返回screen
- 【参考Valve百科】最后安装steamcmd:
cd ~/Steam
./steamcmd.sh
steamcmd打开后会出现Steam>
L4D2安装
- 【参考Bilibili文章】在steamcmd中:
force_install_dir /home/steam/GameServers/L4D2
- 【参考Bilibili文章】随后匿名用户登录steam:
login anonymous
- 【参考Bilibili文章】安装L4D2服务器:
app_update 222860 validate
服务器设置与启动
- 【参考Steam社区】修改Server.cfg
vim ~/GameServers/L4D2/left4dead2/cfg/server.cfg
进入vim之后谨慎按键,只按一个i
进入输入模式
- 【参考Bilibili文章】根据示例修改Server.cfg,下面是我的内容:
hostname "ABCDEFG" //服务器名,一般看不到,有空格的时候要加引号
rcon_password "ABCDEFG" //远控密码
sv_gametypes "both"
sv_steamgroup_exclusive 1
sv_allow_lobby_connect_only 0
sv_alltalk 0
sv_cheats 0
z_difficulty "Hard"
复制、修改上述内容,粘贴到vim里面,然后按序按下:ESC
->:
->wq
->Enter
- 把缺失的steamclient.so文件补充进去:
mkdir ~/.steam/sdk32
ln ~/Steam/linux32/steamclient.so ~/.steam/sdk32/
- 开启服务
bash ~/GameServers/L4D2/srcds_run -game left4dead2 -insecure +ip 0.0.0.0 +hostport 11451 -condebug +exec server.cfg
此处+ip 0.0.0.0是为了使用 rcon 功能
看有没有什么报错,根据需求调整
在L4D2里面进入服务器
- 在L4D2界面呼出控制台
- 输入connect + 服务器地址 + 端口:
connect xxx.xxx.xxx.xxx:11451
- 在游戏中更换地图(无密码),以c1m1为例:
rcon map c1m1
- 在游戏中更换地图(有密码),以c1m1为例:
rcon_password ABCDEFG
回车之后提示]rcon_passwd ABCDEFG
随后输入
rcon map c1m1
结语
就是简单搭建一个没有mod的服务器,把遇到的坑填一下,能帮到人就是极好的。