Black Mesa开服教程

此次教程使用Ubuntu 22,暂时没有研究Windows,但是步骤几乎是一样的,可以按照官方的Windows命令来一步步执行

成功开服以后,可以把整个目录打包压缩上传,分享给其它人,别人就可以直接开箱即用了,非常方便

开服教程

开服教程按照官方的一键安装脚本,逐步拆解(不直接使用脚本是因为在国内,部分链接需要科学上网,只能是在电脑下载后手动上传到服务器)

参考脚本:

由于我们用的是Ubuntu Linux,官方推荐的也是Ubuntu和Debian,所以咱们跟着bash脚本一步步操作,Windows端同理

  1. 安装必要依赖
# Install packages for SteamCMD and Black Mesa Dedicated Server.
sudo dpkg --add-architecture i386
sudo apt-get update -y
sudo apt-get install unzip -y
sudo apt-get install wget -y
# Required for running SteamCMD.
sudo apt-get install lib32gcc-s1 -y
# Required for running Black Mesa Dedicated Server.
sudo apt-get install lib32stdc++6 -y
sudo apt-get install libncurses5 libncurses5:i386 -y
  1. 你可以按照CS:MOS 开服教程 - 编程 - 学不会-热爱学习的技术论坛的教程,完成 一、安装 SteamCMD以后,再继续以下步骤,或者直接按顺序执行
# Install SteamCMD.
mkdir -p "./SteamCMD"
wget "http://media.steampowered.com/client/steamcmd_linux.tar.gz" -O ".tmp.tar.gz"
tar -xf ".tmp.tar.gz" -C "./SteamCMD"
rm ".tmp.tar.gz"
  1. 确保是否有30G以上的储存空间,否则安装过程会失败。下载黑山基地服务端的时候走的Steam网络,一般不需要代理,接下来执行
# 创建一个文件夹,来存放黑山基地服务端
mkdir -p "./Black_Mesa"
# 开始从Steam下载服务端
echo -e "force_install_dir \"../Black_Mesa\"\nlogin anonymous\napp_update 346680 validate\nquit" | ./SteamCMD/steamcmd.sh

当然steamcmd的指令你也可以一个个手敲执行,以确保每一步都执行正确

  1. 服务端下载成功后(显示Successfully字样就表示下载成功),下载最新版本的起源插件平台两件套
    metamod
    sourcemod
    注意sourcemod需要使用特定版本Build 7163,而metamod直接使用最新版本,我这里需要Linux版本,就直接点击企鹅图标下载即可,Windows用户选择窗口图标
    image

  2. 下载最新版accelerator

  3. 进入黑山基地开源插件的发布页
    GitHub - ampreeT/SourceCoop: Black Mesa cooperative plugin for SourceMod
    进入Release页面,点击下载最新版的联机插件

  4. 总共四个文件全部下载完成,上传到服务器上,然后将这四个文件全部解压到Black_Mesa/bms

  5. 在服务端目录Black_Mesa创建一个脚本文件srcds_coop.sh,输入

#!/bin/bash

./srcds_run -console -game bms -ip 0.0.0.0 +maxplayers 32 +mp_teamplay 1 +map bm_c0a0a
  1. Black_Mesa\bms中创建mapcycle.txt,输入
bm_c0a0a
bm_c1a0a
bm_c1a1a
bm_c1a2a
bm_c1a3a
bm_c1a4a
bm_c2a1a
bm_c2a1a
bm_c2a2a
bm_c2a3a
bm_c2a4a
bm_c2a4e
bm_c2a5a
bm_c3a1a
bm_c3a2a
bm_c4a1a
bm_c4a2a
bm_c4a3a
  1. Black_Mesa/bms/cfg中创建server.cfg,添加以下内容
// SourceCoop settings.
mp_fraglimit 0      // Prevents the match from ending when a player has a high enough score.
mp_teamplay 1       // Enables the scientist team.
mp_friendlyfire 0   // Disables friendly fire.
mp_forcerespawn 1   // Forces the player to respawn.

// Add your settings below.
hostname "黑山基地剧情合作服"  // 服务器列表显示的名称
sv_password ""                      // 服务器密码,不设置密码留空即可
rcon_password ""                    // Sets a RCON password for accessing adminstrative features. This is not recommended and SourceMod should be used instead.

注意如果设置了密码,需要在游戏设置中开启控制台功能,然后点击键盘的 [`~] 按键(这个按键一般在Esc的下方),输入

password 123456

才能进入服务器!
把123456换成你的密码即可,password后面是有个空格的,别删掉了

  1. 最后进入Black_Mesa/bms/cfg/autoexec.cfgautoexec.cfg文件内容清空,然后新建Black_Mesa/bms/cfg/userconfig.cfg文件

  2. srcds_coop.sh可执行权限,然后执行./srcds_coop.sh即可开启服务端,想在后台运行可以使用screen管理后台,在多个screen中可以同时开启多个服务端(同一个服务器ip不要开太多个进程,一般游戏主服务器列表限制只会显示其中15个或者20个)