Ubuntu下l4d2服务器搭建

记录一下l4d2服务器搭建过程,不然服务器过期了又要被吐槽怎么不备份啊,这样也不用去找别人的教程了

1. 安装SteamCMD

SteamCMD官网:https://developer.valvesoftware.com/wiki/SteamCMD

64位服务器先执行下列命令:

add-apt-repository multiverse
pkg --add-architecture i386
apt update
apt install lib32gcc-s1 steamcmd 

然后再安装SteamCMD

apt-get install lib32gcc1 #运行steamcmd所需依赖
apt install steamcmd

2.运行SteamCMD安装l4d2服务端

首先进入到steamcmd的安装目录,我这里是在/usr/games 目录下然后运行./steamcmd

login anonymous 匿名登录,force_install_dir <path> 指定安装目录 <path> 为安装目录,我是安装到 /game/steam/l4d2app_update 222860 validate 下载l4d2服务端,等待下载完成。

下载完成之后进入游戏跟目录 cd /game/steam/l4d2 执行 ./srcds_run 若最后出现如下字样就说明游戏安装成功,启动参数详细说明 https://developer.valvesoftware.com/wiki/Command_Line_Options,当然这些参数也可以再配置文件中添加

Connection to Steam servers successful.
   VAC secure mode is activated.

3. 服务端mod/插件安装

  • SourceMod

    SourceMod官网:https://www.sourcemod.net/

    SourceMod下载:https://www.sourcemod.net/downloads.php?branch=stable

    下载完解压将 addonscfg 目录复制到 ~/left4dead2/ 目录下

  • Metamod

    Metamod官网:https://www.sourcemm.net/

    当然不要忘记生成对应游戏的VDF文件:https://www.sourcemm.net/vdf

    下载完解压将 addons 目录复制到 ~/left4dead2/ 目录下,之后再生成VDF文件覆盖掉 ~/left4dead2/addons/ 下的 metamod.vdf 文件

  • L4DToolZ

    L4DToolZ:https://forums.alliedmods.net/showthread.php?t=93600

    L4DToolZ的GitHub:https://github.com/ivailosp/l4dtoolz/

    下载完解压将 l4dtoolzmetamod 目录复制到 ~/left4dead2/addons/ 目录下

都安装完成之后再次启动游戏,在Console中执行 meta list

meta list
Listing 3 plugins:
  [01] SourceMod (1.10.0.6540) by AlliedModders LLC
  [02] L4DToolZ (1.0.0.9h-2-g7465d71b-dirty) by Ivailosp
  [03] SDK Tools (1.10.0.6540) by AlliedModders LLC

这样的话就没什么问题了

4.服务端配置

  • 服务器配置

    修改 ~/left4dead2/cfg/server.cfg 文件

    //修改服务器名
    sm_cvar hostname "FF" 
    
    //关联STEAM组(xxxxx为STEAM组ID,请组管理员到组配置页面查看)
    sm_cvar sv_steamgroup "xxxxx"
    
    //组成员游戏(0为公共游戏,任何人都可以加入;1为没人时仅限组成员加入,组成员加入后他们的非组成员好友也能加入;2为永远只有组成员可以加入游戏,即使是他们的好友,只要不是本组成员就不能加入游戏) 
    sm_cvar sv_steamgroup_exclusive "0"
    
    //只能在游戏大厅连接,1为开,0为关,开了之后只能通过新建大厅才能搜索该服务器
    sm_cvar sv_allow_lobby_connect_only "0"
    
    //一致性校验,1为开,0为关,开了之后要求游戏版本和服务器版本一致才可进入
    sm_cvar sv_consistency "0"   
    
    //地区代码: 0 - 美国东海岸, 1 - 美国西海岸, 2 - 南美洲, 3 - 欧洲, 4 - 亚洲, 5 - 澳大利亚, 6 - 中东, 7 - 非洲, 255 - 世界
    sm_cvar sv_region "4"
    
    //最大支持玩家数量
    sm_cvar sv_visiblemaxplayers "8"
    
    //服务器告知外界的最大玩家数(该参数不会影响上面的参数,只是显示在服务器列表信息中)
    sm_cvar sv_maxplayers "8"
    
    //每秒客户端发给服务器的数据包数量,设置过高没什么大坏处,只是浪费了你的带宽。
    sm_cvar sv_cl_cmdrate "30"
    
    //每秒服务器发给客户端的数据包数量,如果服务器设定每秒更新发送30次数据,你设30就正好
    sm_cvar sv_cl_updaterate "30"
    
    //激活游戏模式合作,对抗,生存
    sm_cvar mp_gamemode "coop"
    //sm_cvar mp_gamemode "versus"
    //sm_cvar mp_gamemode "survival"
    
    //游戏难度设置(分别对应:简单、正常、困难、专家)
    //sm_cvar z_difficulty "Easy" 
    //sm_cvar z_difficulty "Normal" 
    //sm_cvar z_difficulty "Hard" 
    sm_cvar z_difficulty "Impossible" 
    
    //人死掉后3秒就可以出现在任一房间给人救,默认60
    sm_cvar rescue_min_dead_time "3"
    
  • SourceMod 插件安装

    一般到 http://www.sourcemod.net/plugins.php 搜索下载,按照作者说明来就行了,我一般到这 http://mlui.ysepan.com/ 下载

    若下载的是源码即 .sp 文件,则需要自己使用 ~/left4dead2/addons/sourcemod/scripting/compile.sh 编译为 .smx 文件,运行 ./compile.sh ***.sp 之后会在 compile 目录下生成 ***.smx

    插件的安装是直接把生成/下载的 .smx 文件放入 ~/left4dead2/addons/sourcemod/plugins/ 目录下,有的插件还会附带配置文件一般为 .cfg 文件放到 ~/left4dead2/cfg/sourcemod/

  • 三方图和mod安装

    将mod文件或三方图的 .vpk 文件放到 ~/left4dead2/addons/ 目录下

  • 权限设置

    ./left4dead2/addons/sourcemod/configs/admins_simple.ini 中添加 STEAM_1:0:00000000 "99:z" ,这一串是在本地进入游戏随便开一个战役然后在控制台输入 state 会出现如下信息,注意一定要进图

    status
    hostname: ; w ;
    version : 2.2.2.5 8490 insecure  
    udp/ip  : 0.0.0.0:27015 [ public n/a ]
    os      : Windows Listen
    map     : c1m1_hotel at ( 518, 5631, 2911 )
    players : 1 humans, 0 bots (4 max) (not hibernating) (unreserved)
    
    # userid name uniqueid connected ping loss state rate adr
    # 1 "steam昵称" STEAM_1:0:00000000 01:04 33 0 active 30000 loopback	//这里就是权限设置所需要的信息
    # 3 "Rochelle" BOT active
    # 4 "Coach" BOT active
    # 5 "Ellis" BOT active
    #end
    

5.后台运行

这里我使用的是 screen ,使用 apt install screen 命令安装 screen ,常用命令如下

screen -ls               //列出所有的会话及pid
screen -S xxx            //新建一个名为"xxx"的会话
screen -r xxx 或 pid     //恢复名为"xxx"或某个pid的会话
screen -R                //恢复上一次挂起的会话
screen -S -X xxx 或 pid  //关闭一个名为"xxx"或某个pid的会话
Ctrl a+d                 //将当前会话挂起到后台

新建 runl4d2.sh-insecure 是选项指不开启VAC反作弊,+hostport 指定运行端口,+map 指定地图

/game/steam/l4d2/srcds_run -game left4dead2 -insecure +hostport 27016 +map c5m1_waterfront

使用 chmod +x runl4d2.sh 添加执行权限,这样每次运行执行只需 ./runl4d2.sh 了,用 screen -S l4d2 新建窗口,在运行 ./runl4d2.sh ,最后再按 Ctrl a+d 挂到后台运行

PS:最后别忘了在云服务器中开放相应的端口,可以在游戏控制台中使用 connect IP:端口 进入服务器

参考:
https://www.jianshu.com/p/436a2d3496ee

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值