一.做好准备

1.首先需要准备一台VPS

一个地图大概会占用2G左右的内存,在线的玩家每个人也就50M左右的内存,带宽官方提供的是每个玩家7KB/s就好


根据我目前搭建的情况来看,VPS的推荐配置如下:

CPU:2核以上

内存:2G以上

带宽:2M以上(3-5个小伙伴玩耍)

当然以上配置低一点也是能跑、但是不保证会不会掉线之类的。

本文后续也是使用阿里云进行配置。

2.准备远程工具

本文使用的远程访问工具是xshell 和 xftp,当然也可以选用putty之类的远程工具仅仅只是作

者觉得xshell和xftp比较好用。

3.准备一份地图

接下来获取token

首先访问klei的网站 https://accounts.klei.com/account/info

我游戏是steam的所以选steam

fivem服务器管理代码_fivem服务器管理代码

fivem服务器管理代码_上传_02

fivem服务器管理代码_fivem服务器管理代码_03

然后就能获取到token了

是一串无规则的字符串来的

然后配置你的服务器生成你的地图存档

fivem服务器管理代码_服务器_04

点击下载

你能得到一个存档

fivem服务器管理代码_linux_05

二.开始搭建

1.链接服务器

到阿里云获取你的服务器的外网ip,图3红框内就是了。

fivem服务器管理代码_linux_06

接下来先开始连接上你的服务器

打开你的xshell新建一个连接,如图4。

fivem服务器管理代码_fivem服务器管理代码_07

2.环境配置

连上你的服务器,账号密码如果初始化的时候没设请去重设一个(账号一般是root 密码要设置)。

因为饥荒的服务端和steam都有一些依赖要安装

首先安装依赖包。

sudo add-apt-repository multiverse

fivem服务器管理代码_服务器_08

sudo dpkg --add-architecture i386

sudo apt update -y

sudo apt install lib32gcc1 libcurl4-gnutls-dev:i386 lib32stdc++6 lib32z1 -y

这几条命令执行过后会安装了一堆东西

3.安装steam

先给steam创建一个文件夹

mkdir /steam //创建文件夹

cd /steam   //进入文件夹

wget https://steamcdn-a.akamaihd.net/client/installer/steamcmd_linux.tar.gz //下载steam

fivem服务器管理代码_服务器_09

tar -xvzf steamcmd_linux.tar.gz //解压安装包

用 ls 命令可以看到该文件夹下多了一些文件

fivem服务器管理代码_linux_10

./steamcmd.sh  //安装steam  前面的./也要带上哦~ 下图就是安装好了

fivem服务器管理代码_服务器_11

4.获取启动脚本(官方提供)

cd ~

wget https://accounts.klei.com/assets/gamesetup/linux/run_dedicated_servers.sh

获取官方的脚本

但是这个脚本不能马上使用 因为steam 还有存档的位置有一点不同 这是为了更好管理服务器

 在Xshell上打开Xftp 用于传输文件 如图九

fivem服务器管理代码_服务器_12

我们可以把文件下载到windos编辑一下

#!/bin/bash

steamcmd_dir="/steam"
install_dir="/dontstarvetogether_dedicated_server"
cluster_name="MyDediServer"
dontstarve_dir="/dontstarvetogether_dedicated_server/saves"

function fail()
{
	echo Error: "$@" >&2
	exit 1
}

function check_for_file()
{
	if [ ! -e "$1" ]; then
		fail "Missing file: $1"
	fi
}

cd "$steamcmd_dir" || fail "Missing $steamcmd_dir directory!"

check_for_file "steamcmd.sh"
check_for_file "$dontstarve_dir/$cluster_name/cluster.ini"
check_for_file "$dontstarve_dir/$cluster_name/cluster_token.txt"
check_for_file "$dontstarve_dir/$cluster_name/Master/server.ini"
check_for_file "$dontstarve_dir/$cluster_name/Caves/server.ini"

./steamcmd.sh +force_install_dir "$install_dir" +login anonymous +app_update 343050 validate +quit

check_for_file "$install_dir/bin"

cd "$install_dir/bin" || fail

run_shared=(./dontstarve_dedicated_server_nullrenderer)
run_shared+=(-console)
run_shared+=(-cluster "$cluster_name")
run_shared+=(-monitor_parent_process $$)

"${run_shared[@]}" -shard Caves  | sed 's/^/Caves:  /' &
"${run_shared[@]}" -shard Master | sed 's/^/Master: /'

5.上传存档

把我们准备好的存档r 上传到 /root/.klei/DoNotStarveTogethe这个目录下

6.Mod安装

在/dontstarvetogether_dedicated_server/mods文件夹下dedicated_server_mods_setup.lua

把该文件下载到windos用文本编辑

ServerModSetup("1207269058")填写这样的语句

在你本地游戏的mods文件夹里就有这些数字

fivem服务器管理代码_服务器_13

这样服务器就会下载这些mod

接下来要让mod生效就需要修改一下存档

fivem服务器管理代码_服务器_14

把本地modoverrides.lua上传到服务器的存档里覆盖就好了

7.启动服务

首先赋予一下启动脚本权限

cd ~

chmod u+x run_dedicated_servers.sh

~/run_dedicated_servers.sh

三.一些坑

1.sudo: add-apt-repository: command not found

ubuntu安装 software-properties-common 即可

sudo apt-get install software-properties-common

fivem服务器管理代码_linux_15