记录一下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

Ubuntu下l4d2服务器搭建相关推荐

  1. ubuntu下php服务器搭建_Ubuntu服务器下搭建php运行环境的方法

    本文实例讲述了Ubuntu服务器下搭建php运行环境的方法.分享给大家供大家参考,具体如下: 安装 Apache2: sudo apt-get install apache2 安装PHP模块: sud ...

  2. ubuntu下git服务器搭建过程

    需求 硬件需求:一台Ubuntu或者debian电脑(虚拟机),能通过网络访问到. 软件需求:git-core, gitosis, openssh-server, openssh-client, Ap ...

  3. ubuntu下DHCP服务器搭建

    1. 安装DHCP服务 安装isc-dhcp-server: sudo apt install isc-dhcp-server 2.配置DHCP服务 首先需要知道目标主机的网卡名称: $ ifconf ...

  4. Ubuntu 下 Janus Server 搭建笔记

    1 简介 Janus 是一个开源的,通过 C 语言实现了对 WebRTC 支持的 Gateway:Janus 自身实现得很简单,提供插件机制来支持不同的业务逻辑,配合官方自带插件就可以用来实现高效的 ...

  5. Ubuntu下使用valet搭建laravel生产环境

    Ubuntu下使用valet搭建laravel生产环境 1.安装系统所需软件 更新软件列表 sudo apt update 2.更新软件 echo y | sudo apt upgrade 如果觉得时 ...

  6. ubuntu下用docker搭建sslocal

    ubuntu下用docker搭建sslocal 服务器环境 运行sslocal docker容器 服务器环境 阿里云 docker 运行sslocal docker容器 docker run -d \ ...

  7. linux下svn服务器搭建及使用

    文章目录 1. 安装svn客户端 2. 安装svn服务器 3. 在svn目录下创建版本库 4. 修改版本库配置文件 4.1 修改 authz 文件 4.2 设置密码 passwd 4.3 修改 svn ...

  8. Linux下FTP服务器搭建

    Linux下FTP服务器搭建 一.FTP介绍 二.环境介绍 三.FTP服务端搭建步骤 1.安装相关软件包 2.启动FTP并检查状态 3.检查服务端口运行状态 4.修改FTP配置文件 5.关闭selin ...

  9. Linux centos7 下 svn 服务器搭建

    摘自:https://www.cnblogs.com/mymelon/p/5483215.html 鉴于在搭建时,参考网上很多资料,网上资料在有用的同时,也坑了很多人 本文的目的,也就是想让后继之人在 ...

最新文章

  1. 自相关矩阵和互相关矩阵的matlab实现
  2. Git 的工作区、暂存区、版本库—— Git 学习笔记 15
  3. leetcote34. 在排序数组中查找元素的第一个和最后一个位置
  4. Jenkins自动化CI CD流水线之8--流水线自动化发布Java项目
  5. 零基础入门深度学习(5) - 循环神经网络
  6. php utf8 正则中文表达式
  7. iOS底层探索之多线程(十八)——锁篇章的完结篇(手把手两种方式带你实现一个读写锁!)
  8. 华为云TechWave全球技术峰会,看云基础设施全新打开方式
  9. 深入浅出MVC框架模式
  10. Canny 算子的非极大值抑制
  11. 完全卸载chrome
  12. c语言编程中句柄无效怎么解决,Win7玩英雄联盟出现句柄无效怎么解决?
  13. python和c 情侣网名_超可爱超有趣的情侣ID
  14. 阴历日期和阳历日期互相转换(java)
  15. java jtextarea 滚动条_Java Swing JTextArea自动添加滚动条
  16. iOS 开发工具整理
  17. Android 中关与类转换异常的问题。
  18. 机器人工程毕业设计☞提升突破
  19. CAD打不开怎么办?原因可能是电脑中毒了,6步就能完美解决问题
  20. 从零构建u盘linux,从零开始构建自己的U盘Linux.doc

热门文章

  1. python列表相关操作
  2. Active Directory安全25个最佳实践
  3. 方方:歼-10观察(续)
  4. java 多线程 迅雷_Java 多线程1
  5. Web 开发与搜索引擎优化,你应该选择哪一个?
  6. python网络开发框架_python网络编程学习笔记(10):webpy框架
  7. 卖饭考公当老板,第一批 90 后程序员的转行之路
  8. 精通PHP的六脉神剑
  9. c# split方法
  10. webBrowser中操作网页元素全攻略