当前位置:   article > 正文

KF2用Linux搭建房间

linux kf2

KF2用Linux搭建房间

目录:

  1. 引语
  2. ssh连接
  3. 运行环境安装
  4. steamcmd的下载及使用
  5. 编写启动文件与生成配置
  6. 房间配置
  7. 开服与网页后台
  8. 安装GNU Screen
  9. 房间欢迎界面设置
  10. 多人房间开设
  11. 补充资料

引语

  1. Linux开服,我默认大家都是用云服务器,想来应该没人电脑是Linux系统吧。
  2. 因为很多人可能不了解Linux,所以文章会写得很详细,有补充资料,大家可以看看

ssh连接

打开putty 或者 Xshell。当然用云服提供给你的远程登陆窗口也行,但强烈推荐Xshell,功能真得很强大。
输入公网ip;连接;输入用户名与密码;连接上服务器

运行环境安装

在开始之前,必须先安装运行SteamCMD所需的依赖项。
在这里说一下,安装程序时,你输入指令后会提示你是否安装,输入y,按键盘[Enter]确定,当然否定就是n

CentOS

sudo yum install xulrunner.i686

或者:

sudo yum install glibc.i686

:我以前是用这条指令 sudo yum install glibc.i686,可能因为CentOS版本问题这次到后面无法运行steamcmd.sh,出现错误error while loading shared libraries: libgcc_s.so.1: cannot open shared object file: No such file or directory,网上解决办法感觉很麻烦,所以现在换成 sudo yum install xulrunner.i686

Ubuntu

sudo apt-get install lib32gcc

steamcmd的下载及使用

CentOS和Ubuntu其实本来没什么区别的,但是偶然发现Ubuntu能直接下载steamcmd,为了写详细点,就分开写了。

下面会新建一个steam用户,因为直接用root有一定的风险。

CentOS用户

  1. adduser -m steam #新建用户steam,在/home目录下有steam文件夹
  2. su - steam #切换为steam用户,注意空格
  3. mkdir ~/steamcmd #创建steamcmd目录
  4. cd ~/steamcmd #进入steamcmd目录
  5. wget http://media.steampowered.com/installer/steamcmd_linux.tar.gz #下载
  6. tar -xvzf steamcmd_linux.tar.gz #解压
  7. ./steamcmd.sh #运行程序
  8. login anonymous #匿名登陆
  9. force_install_dir .\KF2Server\ #设置安装目录
  10. app_update 232130 validate #下载KF2服务器,如果下载失败,继续输入指令重新下载
  11. quit #下载完毕后,退出

注:从官方链接下载steamcmd,用wget下载链接,要是提示 wget:未找到命令,你需要自己安装
yum install wget

Ubuntu用户

  1. useradd -m steam #新建用户steam
  2. cd /home/steam #跳转到用户目录
  3. sudo apt-get install steamcmd #安装steamcmd,steam提供的跨平台开服工具
  4. ln -s /usr/games/steamcmd steamcmd #将安装好的steamcmd链接到当前目录方便执行
  5. ./steamcmd #执行程序
  6. login anonymous #匿名登陆
  7. force_install_dir .\KF2Server\ #设置安装目录
  8. app_update 232130 validate #下载KF2服务器,如果下载失败,继续输入指令重新下载
  9. quit #下载完毕后,退出

编写启动文件与生成配置

  1. cd /home/steam/steamcmd/KF2Server/ #进入KF2Server目录下
  2. vi KF2.sh #用vi编写启动文件,下面是文本中写入的内容

vi输入的文本:

  1. #!/bin/sh
  2. ./Binaries/Win64/KFGameSteamServer.bin.x86_64 kf-bioticslab

接下来开服,第一次开服会生成房间配置文件

  1. chmod -R 777 KF2.sh #给KF2.sh文件权限
  2. ./KF2.sh #运行KF2服务器

最后出现 DevOnline: Advertising: Region= 表示开服成功,然后按组合键CTRL+C退出程序

房间配置

cd /home/steam/steamcmd/KF2Server/KFGame/Config #进入配置文件目录

使用vi修改以下三个文件:KFWeb.iniLinuxServer-KFEngine.iniLinuxServer-KFGame.ini

  1. vim KFWeb.ini
  2. vim LinuxServer-KFGame.ini
  3. vim LinuxServer-KFEngine.ini

配置修改如下:

KFWeb.ini

bEnable=false 改成 bEnabled=true
ListenPort=8080 默认的话,开服后网址输入:ip:8080,访问网页后台。根据需求是否更改

LinuxServer-KFGame.ini

将?改为你的设定,#后为注释,请善用查找功能

  • GameDifficulty=? #对游戏难度进行设置 =0(普通)=1(困难)=2(自虐)=3(地狱)
    注:试了才发现Linux的配置文件和windows不一样,查找有两个GameDifficulty,
    你要改这个[Engine.GameInfo]下面的GameDifficulty,是后一个

  • AdminPassword=? #管理员密码

  • GamePassword=? #游戏密码

  • GameLength=? #对游戏波数进行设置 =0(4波)=1(7波)=2(10波)

  • ServerName=? #房间名

  • GameMapCycles=? #地图循环

    这三个是房间欢迎界面设置,详细点击这里:房间欢迎界面设置

  • BannerLink=? #PNG图像的外链

  • ServerMOTD=? #BannerLink图像下的消息显示

  • WebsiteLink=? #您网站的网址

LinuxServer-KFEngine.ini

  • 查找 bUsedForTakeover,将其改为false

  • 查找 [IpDrv.TcpNetDriver] 下一行添加一行代码,为了让别人能从创意工坊下载三方地图或插件:DownloadManagers=OnlineSubsystemSteamworks.SteamWorkshopDownload
    注:不能直接查找 [IpDrv.TcpNetDriver],因为编辑器对于方括号处理是括号内各个字母出现位置标识,
    或许你可以只查找一半就行了,例如这样查找:[IpDrv.Tcp

  • 复制下面代码最后,这段代码是加三方地图或插件的的(其实大家玩最久得还是官方,开始设置可以跳过此步)

    1. [OnlineSubsystemSteamworks.KFWorkshopSteamworks]
    2. ServerSubscribedWorkshopItems=?

    代码解释:这个很好理解,其实就是让服务器从创意工坊下载地图或插件

    ServerSubscribedWorkshopItems=?你可以多复制几行这段代码,将?改为三方地图或插件的id

    具体举例:
    假如我要装一个三方地图(id:935744975)和一个插件(id:1412883748),我文档最后是这样:

    1. [OnlineSubsystemSteamworks.KFWorkshopSteamworks]
    2. ServerSubscribedWorkshopItems=935744975
    3. ServerSubscribedWorkshopItems=1412883748

    插件名字:Controlled Difficulty - Tiger's Build V.2
    链接(URL):https://steamcommunity.com/sharedfiles/filedetails/?id=1412883748&searchtext=cd
    你可以从url中找到id=1412883748,然后把?改成id就行了

    三方图名字:KF-De_Dust2
    链接(URL):https://steamcommunity.com/sharedfiles/filedetails/?id=935744975&searchtext=dust

    同理,但多一步骤,在地图循环中添加地图的名称,按格式写就行了。另外加名称也可以在网页后台实现。

开服与网页后台

  1. cd /home/steam/steamcmd/KF2Server/ #回到KF2Server目录下
  2. ./KF2.sh #运行KF2服务器

上面就算开服成功了,打开浏览器,公网IP:8080进入网页后台,管理员密码登录,里面可以看一些直观数据,以后修改也方便。

安装GNU Screen

ssh连接云服,上面虽然开服了,但是关掉ssh,这个任务就会结束,所以需要Screen,能够开一个独立窗口运行任务,即使断掉ssh连接也能一直运行任务。

按上面步骤来的话,如果你是在新建的steam用户下,记得切到root用户安装,输入su,回车,输密码。切回steam用户则是su - steam

  1. yum install screen #安装Screen
  2. screen -S KF2server #创建一个Kf2窗口,这里 KF2server 你也可以改成任意名字
  3. ./KF2.sh #运行KF2服务器
  4. ctrl+a+d #会使当前screen窗口分离(detach)为独立的会话。会话分离后就可以断开SSH连接(关闭Xshell)

注:ctrl+a+d有的人按了没反应,我是按住ctrl不放,先按一下a然后松开a再按一下d,不是a与d一起按

  • 如果想切回KF2服务器的Screen窗口,可使用如下命令

    1. screen –ls #列出所有screen窗口,可以看到进程号,例如9567
    2. screen –R 9567 #恢复KF2Server窗口
  • 如果想杀死进程然后做其他操作

    kill 9567 #杀死9567进程

房间欢迎界面设置

  1. 确保游戏服务器没有运行
  2. 编辑PCServer-KFGame.ini:

找到这个部分并进行编辑,这是默认的部分:

  1. BannerLink=http://art.tripwirecdn.com/TestItemIcons/MOTDServer.png
  2. ServerMOTD=Welcome to our server. \n \n Have fun and good luck!
  3. WebsiteLink=http://killingfloor2.com/
  1. BannerLink是必须是PNG图像。想添加自己的图片,你可以自己搭建图床或者用别人的免费图床。
    网上一大堆免费图床,选择你喜欢的,一般要你注册账号,然后你就可以上传图片。
    注:图片必须是PNG格式,分辨率为512×256,然后用图片外链地址,就是输入链接能直接打开一张图片的那个,举例:http://art.tripwirecdn.com/TestItemIcons/MOTDServer.png

  2. ServerMOTD是BannerLink图像下的消息显示
    注:Linux中文会显示乱码,用英文吧

    • 您可以使用“ n”来创建一个新行,就像在默认消息中一样

    • 改变字体颜色和大小

      ServerMOTD=<font color="#FF0000" size="60">weijiejie</font> 

      展示效果:


      weijieji


      #FF0000是红色,想改成其他颜色,度娘html颜色代码表
      60 当然是px大小,自己根据情况改

  3. WebsiteLink是您网站的网址(随便填,默认也行)

  4. 保存,启动服务器,享受欢迎屏幕。

多人房间开设

  1. 复制房间启动程序KF2.sh然后重命名,加入代码 ?ConfigSubDir=Name

    1. cd /home/steam/steamcmd/KF2Server/ #进入KF2.sh所在的目录
    2. cp KF2.sh KF2_new.sh #复制KF2.sh并命名为KF2_new.sh,这个命名根据你自己,xxx.sh
    3. vim KF2_new.sh

    修改KF2_new.sh,改成如下:

    1. #!/bin/sh
    2. ./Binaries/Win64/KFGameSteamServer.bin.x86_64 kf-bioticslab?ConfigSubDir=Name

    开服:

    ./KF2_new.sh

    开服成功后,ctrl+c关闭窗口,

    1. cd /home/steam/steamcmd/KF2Server/KFGame/Config ##进入Name文件夹所在目录
    2. ls ##列出当前目录文件

    你在这可以看见Name文件夹

    cd Name  #进入Name文件夹

    接下来就是和之前一样,修改那三个配置文件

  2. vim LinuxServer-KFEngine.ini,打开文件,查找 PortPeerPort
    默认Port=7777,PeerPort=7778
    你将Port改为其他数字,PeerPort为Port+1
    例如:Port=7773,PeerPort=7774

  3. vim KFWeb.ini,打开文件, 更改网络端口 ,默认ListenPort=8080,改为其他数字,比如8081。
    bEnable=false 改成 bEnabled=true

  4. vim LinuxServer-KFGame.ini,打开文件,改名,其他配置也可以改改。

补充资料

很多人不了解Linux,在此补充点知识,写得并不详细。如果不理解可以直接度娘,网上一大把详细文档

一些指令含义

小技巧:代码补全,按键盘[Tab]

  1. pwd #看当前所处目录
  2. ls #列出目录
  3. cd #切换目录,比如进入home目录下:cd /home
  4. cd .. #上级目录
  5. mkdir test #创建test文件夹
  6. rm -rf test #删除文件夹test及其子文件
  7. chmod -R 777 test #给test及其子文件授予777权限,即能进行读、写和执行操作
  8. cp file1 另一路径/file2 复制文件file1到另一路径并命名为file2

vi/vim使用

vi/vim 共分为三种模式,分别是命令模式(Command mode),输入模式(Insert mode)和底线命令模式(Last line mode)

  • 命令模式:
    一进来就算命令模式,此时敲字母会被当做命令来使用。
    :进入底线命令模式,i进入输入模式

    命令含义
    :进入底线命令模式,注意如果没反应,关掉输入法
    i进入输入模式
    gg回到文档第一行
    /txt向下查找 txt ,就是记事本里面的查找功能
    ?txt向上查找 txt
    n配套上面的查找,查找下一个txt
    N往上查找,找上一个txt
  • 输入模式:
    进入这里就能输入文本啦!操作和普通文本编辑器一样,没什么要说的。
    输入完成后,按键盘[Esc]退回命令模式。

  • 底线命令模式:
    你输入命令后按键盘[Enter]可以执行命令。

    命令含义
    q!不保存退出
    wq保存退出

Filezilla使用简述

如果你用不习惯vi,可以将配置文件从云服下载下来,本地改好然后再上传回去

连接FIlezilla填写内容举例:

  1. sftp://118.25.173.70 #形如此格式在主机那栏目填写公网IP
  2. root #用户名
  3. WOR1545FCW #密码
  4. 22 #端口默认22

转载于:https://www.cnblogs.com/princesskat/p/10404213.html

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/Gausst松鼠会/article/detail/165009
推荐阅读
相关标签
  

闽ICP备14008679号