如何搭建带有 Mod 的 L4D2 服务器 (2026)

如何搭建带有 Mod 的 L4D2 服务器 (2026)

一篇完整指南,教你如何在 Windows 和 Linux 上创建并运行带有来自 Steam Workshop 的 Mod 的 Left 4 Dead 2 (L4D2) 服务器。

July 26, 2026阅读约 14 分钟更新于 July 26, 2026
如何搭建带有 Mod 的 L4D2 服务器 (2026)

一篇关于如何在 Windows 和 Linux 上创建并运行带有 mods 的 Left 4 Dead 2 服务器的指南!

Left 4 Dead 2 是一款广受欢迎的第一人称射击僵尸恐怖游戏,故事背景设定在一个被丧尸占领的末日世界。该游戏拥有出色的模组支持,许多 mods 可以通过 Steam Workshop 或 SourceMod plugins 获取。

运行带有 mods 的服务器可以让玩家连接进入,并使用服务器已安装的 mods 享受共同的自定义体验。

本指南中我们将specifically针对的两个操作系统是 Windows 11 和 Debian 12 (Linux)。

在继续本指南之前,我想先说明几点。

  • directory(在 Linux 中称呼)和 folder(在 Windows 中称呼)这两个术语可以互换使用。为了简单起见,我们大多数情况下会使用 directory。
  • 同样,我们全文将使用 /like/this 这种结构的文件路径。这种格式用于 Linux,但在 Windows 上,你需要改用 \like\this 这种文件路径结构。

Requirements

Hardware & Network

与 Minecraft 和 Rust 等其他游戏的服务器相比,Left 4 Dead 2 服务器对 RAM 的占用相当低。默认情况下,在运行 COOP、Scavenge 等游戏模式时最多可支持 四名玩家 同时游玩,而 Versus 模式最多可支持 八名玩家 同时游玩。还有一些 SourceMod 插件可以将服务器的 maxplayers 提升至 32!

关于硬件和网络要求的信息,我建议阅读以下主题。

https://moddingcommunity.com/blog/hardware-network-requirements-for-source-engine-servers/

Port Forwarding

如果你打算让服务器可以从互联网访问,你可能需要通过路由器对 UDP 和 TCP 的 27015 端口进行端口转发。本指南不会具体讲解端口转发,不过我想提供一些其他有用的指南,教你如何转发我刚才提到的端口。

如果你的局域网以 NAT 网络的方式运行,你可能还需要创建一条 NAT 规则。

Downloading The Server Files

下一步是使用 SteamCMD 下载服务器文件。请阅读以下主题,并记住 Left 4 Dead 2 服务器的应用程序 ID 是 222860。

https://moddingcommunity.com/blog/how-to-download-run-steamcmd/

Running The Left 4 Dead 2 Server

为了节省时间,我们将为 Left 4 Dead 2 服务器创建启动脚本。我们将分别为 Linux 和 Windows 创建脚本,用于启动运行 c8m1_apartment 地图的服务器,该地图是 No Mercy campaign 的第一关。服务器将绑定到所有 IP 地址和接口(0.0.0.0),使用 UDP 27015 端口。

Windows

通过文件资源管理器查看新的服务器文件时,你应该会看到一个名为 srcds.exe 的文件。

我们将创建一个名为 start-server.bat 的 Batch 文件/脚本来运行服务器。在创建此文件之前,你需要确保能够设置文件的扩展名,即确保你能够查看文件名的扩展名。如果无法查看文件扩展名,请阅读这里。

创建 Batch 文件后,添加以下内容。

@echo off
.\srcds.exe -game left4dead2 -console -ip 0.0.0.0 -port 27015 +maxplayers 4 +map c8m1_apartment

现在你应该可以双击新创建的 Batch 文件来启动服务器了!

Linux

通过执行 cd ~/l4d2 或类似命令导航到服务器文件所在目录后,你应该能在该目录中看到 srcds_run 和 srcds_linux 文件。我们将创建一个简单的 Bash 脚本来启动服务器。

有许多不同类型的文本编辑器可以用来创建脚本,例如 Nano 和 Vim,在本教程中我们将使用 Nano。我们将脚本命名为 start-server.sh。

首先,使用以下命令开始编辑新文件。

nano start-server.sh

接下来,将以下内容粘贴到文件中。

#!/bin/bash
./srcds_run -game left4dead2 -console -ip 0.0.0.0 -port 27015 +maxplayers 4 +map c8m1_apartment

完成后,按下 CTRL + X 然后回车以保存文件。如果你想查看文件内容,可以执行 cat start-server.sh。

保存文件后,你还需要给该用户执行该文件的权限,可以通过下面的命令完成。

chmod u+x start-server.sh

Server Start Linux

最后,你可以使用以下命令启动服务器。

./start-server.sh

Server Start Linux #2

注意 - 除非你特意禁用了 VAC,否则应该会看到 VAC secure mode is activated 消息。此外,如果你希望服务器能从互联网访问,还应该会看到 Public IP is <your WAN IP> 消息,该消息已从上方截图中删去。

要停止服务器,你可以通过服务器控制台执行 quit 命令,或按下 CTRL + C 发送信号终止服务器进程。

使用 Screen

安装完成后,你也可以使用 screen 命令让服务器在无需保持 Linux 终端窗口打开的情况下运行(在后台运行)。我建议阅读这篇关于 screen 命令的介绍。

首先,让我们安装 screen 软件包。你可能需要通过 exit 命令退出当前的 servers 用户,因为该命令必须以 root 身份或通过 sudo 执行。

Debian/Ubuntu
sudo apt install -y screen

Screen Install

接下来,复制服务器的启动命令,并在其前面加上 screen -S <name>。以下是一个示例。

screen -S l4d2 ./srcds_run -game left4dead2 -console -ip 0.0.0.0 -port 27015 +maxplayers 4 +map c8m1_apartment

这将在一个 screen 中启动服务器。默认情况下,你可以使用 CTRL + A + D 从该 screen 中分离出来。

要重新连接到该 screen,你可以运行 screen -r(如果只有一个 screen 处于打开状态,它会自动连接到那个唯一的 screen)或 screen -r <name>。在上面的命令中,我们创建了一个名为 l4d2 的 screen。因此,我们可以使用以下命令按名称连接到该 screen。

screen -r l4d2

你也可以修改服务器的启动脚本,像上面那样在前面加上 screen -S <name>,让脚本自动将服务器启动到一个 screen 中。

创建服务器配置文件

下一步是通过创建两个文件来配置服务器:autoexec.cfg 和 server.cfg。autoexec.cfg 用于设置服务器的游戏类型(例如 COOP、Versus 等),并且只在服务器启动时执行一次,而 server.cfg 文件则包含一般信息,例如主机名(在服务器浏览器中显示的名称),并在每张地图开始时执行。这两个文件都位于 left4dead2/cfg 目录中。

Left 4 Dead 2 在这些文件中使用的配置格式是 <ConVar> "<Value>"。

将以下内容粘贴到 autoexec.cfg 文件中。

sv_gametypes "coop,survival"

sv_gametypes ConVar 控制服务器将运行的游戏类型。你可以从 coop、realism、survival、versus、scavenge、dash、holdout 和 shootzone 这些值中选择。你也可以通过用逗号(,)分隔来指定多个值。例如:coop,versus,survival。

注意 - 你也可以通过在服务器的启动命令中添加 +sv_gametypes <...> 来设置 sv_gametypes ConVar 的值。不过,我个人更喜欢使用 autoexec.cfg 文件,因为在某些情况下,你可能想要限制某些用户访问命令行,但仍希望他们能够更改服务器的游戏类型等设置。

接下来,将以下内容粘贴到 server.cfg 文件中,并根据你的需求修改 ConVar 的值。

hostname "My Server Name"
sv_password ""
rcon_password "CHANGEME"
  • hostname 是通过服务器浏览器或外部网站(任何通过 A2S 查询访问服务器的方式)可以看到的服务器名称。
  • sv_password 是玩家加入服务器前必须输入的密码。留空时,加入服务器不会弹出密码提示。
  • rcon_password 是 RCON 访问所需的密码。此密码应仅由可信的人员/工作人员知晓,因为拥有此密码的用户如果能够远程访问 RCON 所运行的 TCP 端口,就能够执行服务器命令。

Left 4 Dead 2 中还有许多其他你可能喜欢的 ConVar,可以通过 server.cfg 文件进行设置!这里有一份不错的 Left 4 Dead 2 ConVar 列表。

性能相关的 ConVar

有一些 ConVar 可以根据你的网络速度、可用带宽和服务器硬件来帮助提升服务器性能。

请阅读之前链接的指南中的以下部分!

https://moddingcommunity.com/blog/how-to-install-update-sourcemod-metamod/

如何为 Left 4 Dead 2 服务器安装 Mod

为 Left 4 Dead 2 服务器安装 Mod 有两种方法。

最常见的方法是在服务器上安装 SourceMod 和 MetaMod,并安装 SourceMod 插件。

较不常见的方法是通过 Left 4 Dead 2 的创意工坊订阅内容,并使用类似这个的工具来提取该 addon 的文件,然后将文件添加到服务器中。

推荐使用 SourceMod 和 MetaMod 为你的 Left 4 Dead 2 服务器安装 Mod,因为这样可以获得更多的插件和功能。

安装 SourceMod & MetaMod 插件

首先,你需要下载并在你的 Left 4 Dead 2 服务器上安装 SourceMod。我建议阅读我之前写的这篇关于如何操作的指南!

https://moddingcommunity.com/blog/how-to-install-update-sourcemod-metamod/

接下来,你需要从这里寻找插件。通常,插件的描述中会包含如何安装该插件的详细信息。不过,以下是一些通用的经验法则。

  • 以 .sp 扩展名结尾的文件包含用 SourcePawn 编写的插件源代码。
  • 以 .smx 扩展名结尾的文件是编译后的源代码,应放置在 addons/sourcemod/plugins 目录中。
  • 文件名中包含 games.txt(或类似 l4d2.txt)的文件通常是 gamedata 文件,应放置在 addons/sourcemod/gamedata 目录中。
  • 文件名中包含 phrases.txt 的文件是翻译文件,应放置在 addons/sourcemod/translations 目录中。
  • 以 .so 或 .dll 扩展名结尾的文件通常是 SourceMod 扩展(extensions),应放置在 addons/sourcemod/extensions 目录中。

在某些情况下,你可能需要编译插件的源代码。请阅读以下主题以获取相关操作说明!

https://moddingcommunity.com/blog/how-to-compile-sourcemod-plugins/

使用 Steam Workshop

在某些情况下,你想要的 mod 可能只能通过 Steam Workshop 获取。这在自定义战役中很常见。不幸的是,Left 4 Dead 2 服务器不像其他游戏(例如 Garry's Mod)那样原生支持 Steam Workshop。

因此,我们需要从 workshop 物品中提取文件,并将其添加到服务器文件中。

创建合集(Collection)

我们首先要做的是创建一个合集。你可以在 Steam 应用程序内进行,也可以通过 Steam 的网站进行。本指南中我们将使用 Steam 应用程序(两者的界面通常大致相同)。

首先,导航到 Community -> Workshop。

Workshop Community Tab

接下来,在“Search for a Workshop”处输入 Left 4 Dead 2。你可以从下拉菜单中点击该项目。

Workshop Search For Left 4 Dead 2

现在,点击屏幕左中部的 Browse 下拉菜单,然后点击 Collections。

Workshop Click Browse And Collections

之后,点击 Create Collection。

Workshop Create Collection

接下来你需要填写页面上的所有字段。在本指南中,标题将简单地设为“Test Collection”。

Workshop Create #1

最后,点击右下方的 Save and continue 按钮以创建合集。

Workshop Create #2

接下来,你需要记下合集的数字 ID,该 ID 位于 Steam 网址栏中 ?id= 之后。我们稍后会用到它。

Workshop Collection ID

例如,以下网址的合集 ID 为 3386575566。

https://steamcommunity.com/sharedfiles/managecollection/?id=3386575566

注意 - 如果合集已发布且对其他人可见,用户将能够一键订阅该合集中的所有 mod/addon。

将物品添加到新合集

在此浏览 Left 4 Dead 2 的 workshop 此处 找到要添加到合集中的 workshop 物品,或使用该物品的直接链接。

接下来,点击 Add to Collection 按钮。

Workshop Add To Collection #1

这将弹出一个列出你所拥有的所有合集的复选框列表。请确保勾选你想要添加该物品的合集,然后点击 Ok。

Workshop Add To Collection #2

发布合集

现在,返回到你创建的合集,点击 Publish 按钮进行发布。

Publish Collection

提取 Addon 文件

建议使用此工具来提取合集中每个 addon 的文件。

该工具是用 Python 编写的,我建议阅读此文以了解如何在 Windows 上安装 Python,以及阅读此文以了解如何在 Linux 上安装 Python。

你可以直接从 GitHub 网站此处下载该工具,或者如果你的系统上安装了 Git,可以使用 git clone https://github.com/Geam/steam_workshop_downloader。

安装好 Python 并下载好工具后,执行以下命令。

./workshop.py <Collection ID>

其中 <Collection ID> 是我们上面获取到的 ID。例如:

./workshop.py 3386575566

在 Windows 上,你可能需要在上面的命令前加上 python,如下所示。

python .\workshop.py <Collection ID>

完成后,你应该会看到 *.vpk 文件。

VPK files

现在,将这些文件上传/复制到你服务器的 addons/ 目录中,然后重启服务器!

服务器重启后,你添加到 addons/ 目录中的 VPK 文件应会自动挂载。如果添加了自定义战役,为了加载地图,你需要知道以 bsp 为扩展名的地图文件名。如果找不到此信息,可以尝试使用像 GCFScape 这样的工具从 VPK 文件中提取文件。这样你就可以找到地图文件的名称。

此外,你可以使用 show_addon_metadata 命令来显示已挂载 addon 的相关信息。例如,在我的 Linux L4D2 服务器上添加了 Resident Evil: Side A 自定义战役后,在服务器上执行该命令时看到的内容如下。

show_addon_metadata
MISSION: re2birkina     (/home/servers/l4d2/left4dead2/addons/762591677.vpk)

连接到服务器

现在让我们连接到服务器吧!你可以在开发者控制台中执行 openserverbrowser 通过服务器浏览器进行连接,也可以直接连接到你的服务器。

要打开开发者控制台,请按下键盘上的 ` 或 ~ 键。如果开发者控制台无法使用,很可能是因为它被禁用了,你需要阅读这里了解如何启用它!

如果你想直接连接到服务器,你需要获取要连接的 IPv4 地址或主机名。如果你的服务器是通过专用主机托管商托管的,你应该可以在多个地方找到所需的 IPv4 地址/主机名,包括以下几处。

  • 通过你的主机托管商的网页控制面板。
  • 使用服务器启动时公布的公共 IP。

注意 - IPv4 的格式为 xxx.xxx.xxx.xxx,而主机名可以是一个名称或域名(例如 myserver 或 myserver.mydomain.com)。

如果你就在服务器上,或者服务器是本地托管的,你也可以通过列出网络接口和 IP 来获取服务器的 IP,在 Linux 上使用 ip a 或 ifconfig 命令,在 Windows 上使用 ipconfig /all 命令(使用命令提示符或 PowerShell)。

找到 IP 后,启动 Left 4 Dead 2 并按下键盘上的 \(或 ~)键以打开开发者控制台。

当开发者控制台显示后,你需要输入 connect <ip/hostname> 或 connect <ip/hostname>:<port>。由于我们已将服务器绑定到 Left 4 Dead 2 的默认端口 27015,这种情况下我们不需要输入端口。

我将使用我服务器在家庭网络下的内部主机名,它就是简单的 x-gs01。

connect x-gs01

Connect

现在你应该已经连接到你的 Left 4 Dead 2 服务器了!你可以在开发者控制台中输入 status 来确认。

Connected

常见问题

通过 SteamCMD 下载时收到“Invalid Platform”错误。

如果你在 Linux 上下载 Left 4 Dead 2 服务器文件时遇到此错误,你很可能遇到了 这个 于 2024 年末因 Steam 方面的更改而出现的问题。

根据我的了解,这个问题有两种解决方法。

  1. 在通过 SteamCMD 登录时使用你的 Steam 凭据。在本指南中执行 login 命令时,输入你的 Steam 用户名,然后加一个空格,再输入你的密码。例如:login whoz MYPASSWORD。

  2. 通过一条命令依次运行两次 SteamCMD,先使用 Windows,最后使用 Linux,这样即可解决该问题。

# Use Windows as platform path really quick.
./steamcmd.sh +force_install_dir ../l4d2 +@sSteamCmdForcePlatformType windows +quit

# Finally use Linux which should then start the download successfully.
./steamcmd.sh +force_install_dir ../l4d2 +@sSteamCmdForcePlatformType linux +app_update 222860 +quit

如何将我自己或他人添加为服务器管理员?

如果你的 Left 4 Dead 2 服务器上已安装 SourceMod 和 MetaMod,你可以将自己或他人添加为管理员。

关于具体操作步骤,请阅读以下主题!

https://moddingcommunity.com/blog/how-to-manage-user-permissions-in-sourcemod/

如何在 Windows 中显示和编辑文件扩展名?

要在 Windows 11 中查看隐藏的文件扩展名,通过文件资源管理器,点击 查看 -> 显示,并确保勾选了 文件名扩展名 选项。

在其他版本的 Windows 中,这个过程也非常类似。

要在其他版本的 Windows 中显示文件名扩展名,我建议查看这篇指南!

我可以编写脚本自动更新服务器文件吗?

是的,这是可以的!

请阅读前面链接的指南中的以下部分!请记住,Left 4 Dead 2 服务器的应用程序 ID 是 222860!

https://moddingcommunity.com/blog/how-to-download-run-steamcmd/#automation-with-script-files

如何启用开发者控制台?

默认情况下,Left 4 Dead 2 的开发者控制台是未启用的。

要启用它,启动 Left 4 Dead 2 并点击 选项 菜单项。然后,从下拉菜单中点击 键盘和鼠标 项。

Options Item

接下来,将 允许开发者控制台 选项从 禁用 切换为 启用。

最后,点击 完成 按钮!

现在你应该可以通过按住或按下键盘上的 ` 或 ~ 键来打开控制台了。

Keyboard & Mouse

另请参阅

我只是想为希望改善 Left 4 Dead 2 服务器管理体验的服务器所有者提供一些有用的资源和工具。

  • Pterodactyl - 一个非常流行的 Linux 开源 游戏服务器面板,提供了轻松创建和管理诸如 Left 4 Dead 2、Counter-Strike、Rust、Minecraft、FiveM 等游戏服务器的工具。

结语

这就是本指南的全部内容,但我希望未来能创作更多指南!到这一步,你应该已经拥有一个安装了一个或多个 mod/addon 的正常运行的 Left 4 Dead 2 服务器了。

如果你对本指南有任何问题或反馈,请在其论坛主题这里回复!本指南将会持续修订和完善。

加入我们的Discord 服务器!

评论 (0)

登录后即可评论。

加载中…

发现更多

帖子动态

加载中…

最近动态

加载中…
前往社区