一、准备工作

  1. 服务器:一台带有公网IP或者实现内网穿透的Windows服务器。

  2. SteamCMD:用于下载和更新游戏服务器的工具。

  3. 求生之路2服务器文件:通过SteamCMD下载。

二、安装SteamCMD

  1. 下载SteamCMDSteamCMD下载链接

  2. 解压SteamCMD到一个文件夹,例如 C:\SteamCMD

三、下载求生之路2服务器

方法一:

  1. 打开命令提示符,导航到SteamCMD文件夹并运行 steamcmd.exe

  2. 在SteamCMD中输入以下命令:

    login anonymous
    force_install_dir C:\L4D2Server
    app_update 222860 validate
    quit
    
  3. 这将下载并安装求生之路2服务器到 C:\L4D2Server 文件夹。

方法二:

  1. 打开SteamCMD文件夹并新建一个文本文档。

  2. 在文本文档中输入以下命令:start steamcmd.exe +login anonymous +force_install_dir C:\L4D2Server +app_update 222860 validate +quit

  3. 修改文件后缀名为.bat,双击运行,这将下载并安装求生之路2服务器到 C:\L4D2Server 文件夹。

四、配置服务器

  1. 修改服务器配置文件:在 C:\L4D2Server\left4dead2\cfg 文件夹中找到 server.cfg 文件并进行编辑。添加以下配置:

    // 说明: 以 "//" 开头的行为注释行,服务器将忽略。要启用或禁用命令,请添加或删除行首的 "//"。
    
    
    // --- 1. 服务器基础与管理设置 ---
    
    // RCON (远程管理) 密码,请务必修改为一个强密码。
    // 用于HLSW或游戏内控制台进行远程管理。
    rcon_password "your_password"
    
    // 服务器地区代码,有助于玩家通过地理位置匹配。
    // 0=美东, 1=美西, 2=南美, 3=欧洲, 4=亚洲, 5=澳洲, 6=中东, 7=非洲, 255=全球
    sm_cvar sv_region "4"
    
    
    // --- 2. 服务器可见性与连接设置 ---
    
    // 关联Steam组,让组员更容易找到服务器。
    // 将"45097054"替换为你的Steam组ID。多个组ID用逗号","分隔。
    sv_steamgroup "45097054"
    
    // 是否仅限已关联的Steam组成员加入服务器?
    // 1 = 是 (仅限组员) | 0 = 否 (对所有人开放)
    sv_steamgroup_exclusive 0
    
    // 服务器标签,用于服务器浏览器搜索。
    // 设为"hidden"可使其在社区服务器列表中默认隐藏。
    // sv_tags hidden
    
    // 是否只允许从游戏大厅连接?
    // 1 = 是 (必须通过大厅连接) | 0 = 否 (允许IP直连,但服务器会自动创建大厅)
    // sm_cvar sv_allow_lobby_connect_only 0
    
    // 是否禁止官方匹配系统将玩家匹配到此服务器。
    // 1 = 是 (仅能通过收藏夹、IP或Steam组列表加入) | 0 = 否
    // sm_cvar sv_force_unreserved 1
    
    // 移除服务器的游戏大厅。
    // sm_cvar sv_cookie 0
    
    
    // --- 3. 游戏玩法与规则设置 ---
    
    // 设定默认游戏模式。
    // 可用模式: "coop", "versus", "realism", "survival", "scavenge" 等。
    sm_cvar mp_gamemode "coop"
    
    // 锁定服务器游戏难度。
    // 设置后,每张新地图都会强制为此难度。
    // 难度选项: "easy", "normal", "hard", "impossible"
    z_difficulty "hard"
    
    // 是否允许玩家发起投票?
    // 1 = 允许 | 0 = 禁止
    // sm_cvar sv_allow_votes "1"
    
    // 是否允许使用作弊指令?
    // 1 = 是 | 0 = 否
    // sv_cheats 0
    
    // 生还者之间是否会互相碰撞挤开(真实化模型)。
    // 1 = 开启碰撞 | 0 = 关闭碰撞,可以互相穿过。
    sm_cvar z_avoidteammates 1
    
    // 关闭客户端文件一致性检查。
    // 允许玩家使用自定义模型、皮肤、音效等Mod。
    sv_consistency 0
    
    
    // --- 4. 100 Tickrate 配置 ---
    
    // 服务器的运算帧率/Tickrate,为了确保稳定在100 Tick,通常设为略高于100的值。
    sm_cvar fps_max 120
    
    // 客户端最小/最大带宽速率(bits/s),强制使用100000以匹配100 Tick数据量。
    sm_cvar sv_minrate 100000
    sm_cvar sv_maxrate 100000
    
    // 每秒最大数据包字节数(Bytes/s),设为100000防止高Tickrate下数据包拆分。
    sm_cvar net_splitpacket_maxrate 100000
    
    // 客户端每秒发送的最小/最大命令数(cmdrate),强制设为100以同步服务器Tickrate。
    sm_cvar sv_mincmdrate 100
    sm_cvar sv_maxcmdrate 100
    
    // 客户端每秒接收的最小/最大更新数(updaterate),强制设为100以接收全部服务器更新。
    sm_cvar sv_minupdaterate 100
    sm_cvar sv_maxupdaterate 100
    
    // AI更新间隔(秒),设为0.024 (约41.7Hz)以适应高Tickrate,会增加CPU消耗。
    sm_cvar nb_update_frequency 0.024
    
    // 客户端可设置的插值比率(cl_interp_ratio)范围。
    // min -1 解锁Lerp下限,允许 cl_interp_ratio 为 0 以实现最精准的命中判定。
    // max 1 限制Lerp上限,防止因插值过高导致判定不公和模型不同步。
    sm_cvar sv_client_min_interp_ratio -1
    sm_cvar sv_client_max_interp_ratio 1
    
  2. 创建启动器:在C:\L4D2Server目录下创建一个批处理文件 start.bat,内容如下:

    start srcds.exe -console -game left4dead2 +map c1m1_hotel +allow_all_bot_survivor_team 1 -tickrate 100
    //你可以通过添加代码+hostport XXXXX(设置为你想要的端口) 来更改你想要开放的端口,默认端口为27015 添加-nomaster可以阻止服务器向Steam主服务器注册,从而隐藏服务器,这条代码与server.cfg之中的sv_tags hidden效果类似,但前者的效果更彻底
    

五、安装插件

  1. MetamodSourceMod:安装这些基础插件平台,它们是运行绝大多数服务器插件的前提。

  2. L4DToolZTickrate Enabler:安装这些插件以解除游戏内玩家数量限制,并允许调整服务器的Tickrate。

  3. Left4DHooks 原生函数库:安装这些插件可以为其他更复杂的插件提供必要的支持。

  4. 八角色共存 投票换图:安装这些插件以允许玩家切换角色,并方便玩家通过投票切换地图(包括第三方地图)。

  5. 将下载的文件解压后移动到 C:\L4D2Server\left4dead2\ 文件夹中。

六、设置管理员

  1. 查询SteamID:访问STEAMID I/O将自己的Steam个人资料页URL填入以获取SteamIDst.png

  2. 配置管理员:编辑 addons/sourcemod/configs/admins_simple.ini 文件,添加管理员的SteamID。例如:

    "STEAM_0:1:557791123" "99:z"
    

七、启动服务器

  1. 双击 start.bat 文件启动服务器。

八、启动服务器

  1. 打开求生之路游戏客户端,按~启动控制台输入 connect 你的IP:27015 例如 connect 1.2.3.4:27015 进入游戏服务器,如果没有问题那么就大功告成了

九、补充说明

  • 确保服务器防火墙允许相关端口(默认为27015)通过。

  • 可以通过安装更多插件来增强服务器功能,例如特感血量显示插件。

  • 服务器常用指令 !admin 管理员指令 !chmap 换图指令