
在Linux上搭建L4D2服务器
移动大内网,玩P2P游戏还是很蛋疼的……
搭建
选择主机
首先你需要申请一台云主机,考虑到延迟和价格,建议选择国内主机商(例如腾讯、阿里、华为等)的轻量应用服务器。
本文使用了阿里云轻量应用服务器,并测试成功,其配置如下表。
| 项目 | 参数 |
|---|---|
| 处理器 | 1核心 |
| 内存 | 2GB |
| 硬盘 | 40GB |
| 网络 | 5Mbps 公网出口带宽(1TB流量) |
| 系统 | CentOS 7.6 |
| 价格 | 学生认证9元/月 |
申请完主机后,你会得到主机的IP地址,root密码,使用终端软件与主机进行通信即可。
同时,记得在主机的安全组(或防火墙),开放对应的TCP+UDP端口(本文使用的是默认27015端口)。
阿里云轻量应用服务器添加安全组:点击跳转
环境准备
以root身份登录至服务器后,请参照以下顺序输入命令。
更新服务器相关组件:
1 | yum update -y |
安装相关依赖库
1 | yum install -y glibc.i686 libstdc++.i686 |
创建新用户l4d2server,并设置密码
1 | adduser l4d2server |
提示:请务必将 l4d2server_password替换成你自己设定好的密码。
进入创建好的用户l4d2server
1 | su - l4d2server |
安装服务端
以l4d2server身份登录服务器后,请按照以下顺序输入命令。
下载并解压SteamCMD
在SteamCMD项目官网下载本地,使用tar命令进行解压操作
1 | wget https://steamcdn-a.akamaihd.net/client/installer/steamcmd_linux.tar.gz && tar xf steamcmd_linux.tar.gz |
使用SteamCMD
使用SteamCMD,以匿名身份安装求生之路2服务端(其ID为222860),完成后自动退出
1 | ./steamcmd.sh +login anonymous +force_install_dir ./l4d2 +app_update 222860 validate +quit |
当命令行显示Success! App '222860' fully installed.时,服务端已安装完成。现阶段是官方原生版本的游戏,无任何插件和辅助工具;如果只是想做官服的话,可以跳过下面安装插件的步骤。
安装插件
游戏是开发多元的,通过多样的插件系统,可以获得前所未有的游戏体验;下面将逐一介绍这些插件和其使用方法。
1.SourceMod
插件平台可以说是装载插件的前提条件,没有插件平台的支持,插件也就无法在服务器中启用。
SourceMod是一款用于起源引擎的开源的插件平台;通过简单的命令编写插件,实现原生服务器无法实现的功能,如:防踢防封、权限管理、言论过滤、更换地图、修改Ticket参数、修改后坐力等等。
当然,SourceMod支持Windows和Linux系统,两版本互不兼容,使用前请注意区分。
首先,点击跳转Sourcemod下载页面,下载Linux版本的SourceMod。

2.Metamod:Source
Metamod:Source是一款用于起源引擎的开源的插件管理器;安装前需要安装SourceMod插件平台,并确保插件平台能正常工作。
当然,SourceMod支持Windows和Linux系统,两版本互不兼容,使用前请注意区分。
首先,点击跳转Metamod:Source下载页面 ,下载Linux版本的Metamod:Source。

由于Metamod:Source是依据VDF文件来判断接管的游戏;这时候需要点击左侧菜单栏的Make your VDF选项, 在Game选项卡中选择Left 4 Dead 2(下面的Game Folder可以留空),点击Generate metamod.vdf生成并下载求生之路2的VDF文件。

3.插件平台
插件平台集成了许多求生之路2的辅助插件,例如显示NPC血量、显示友伤情况、游戏RPG化等等。这里使用了豆瓣酱的汉化版插件(基于L4DToolZ)
豆瓣酱插件说明:贴吧转发
豆瓣酱插件(蓝奏云链接,密码为fah3 ): 点击跳转
4. L4D2服务端配置文件
在自己电脑上,用记事本新建一个名为server.cfg的文件。
1 | hostname "NiXie's L4D2 Room" //设置房间名 |
5. 解压、打包、上传
第一步:将MetaSource和SourceMod解压后放在一起,便会出现addons和cfg共两个文件夹,并将创建好的server.cfg文件放入cfg文件夹。
第二步:解压插件包,将第一步解压出来的两个文件夹覆盖到插件解压的目录中,这样插件的准备就基本完成了。
第三步:如何添加插件管理员?首先我们在求生之路游戏中获取STEAM_ID。
打开求生之路2,在选项→键盘/鼠标→启用允许使用开发者控制台,如图下图所示。

随便进入一个游戏(人机联机都可以),加载完成后,按 ~ 键调出控制台,输入status后回车,复制userid name uniqueid connected ping loss state rate adr的下面一行,如图下图所示。

在解压插件文件夹的/addons/sourcemod/configs目录中,打开admins_simple.ini文件,在文末处将SETAM_ID粘贴上去,并空格输入99:z内容(添加管理员权限,保存文件,这样该玩家可以不用输密码直接管理游戏进程)。

第四步:检查无误后,通过FTP或SCP工具,将处理好的目录上传至服务器的/home/l4d2server/l4d2/left4dead2/目录中。
上传完成后,就大功告成了。
运行服务
通过终端软件访问服务器,可以是root用户,也可以是刚刚创建的l4d2server用户,这里以后者做演示。
输入以下命令,运行服务器(以默认的27015端口对外服务,不要忘记开放对应端口的防火墙)
1 | cd l4d2/ |
命令行参数详见:点击此处跳转
在控制台(Console)里输入 meta list,可查看插件的安装情况。
客户端访问
服务端启动后,客户端按 ~ 打开控制台,输入connect xxx.xxx.xxx.xxx:27015(即connect+IP地址:端口,或者connect+域名),稍等片刻,你就进入自己的服务器了。
