《Satisfactory幸福工厂》专用服务器搭建(Linux及Windows环境)

您所在的位置:网站首页 幸福工厂专用服务器 《Satisfactory幸福工厂》专用服务器搭建(Linux及Windows环境)

《Satisfactory幸福工厂》专用服务器搭建(Linux及Windows环境)

2024-05-30 19:52| 来源: 网络整理| 查看: 265

《Satisfactory幸福工厂》专用服务器搭建

在2021年10月26日工厂5更新中,第一次推送工厂专用服务器系统(终于不用联机时卡卡卡了)。目前,专用服务器可用于 Windows 和 Linux 平台,只能通过 Steam 或Steam控制台SteamCMD 安装。目前仅支持测试版的专用服务器。

目录《Satisfactory幸福工厂》专用服务器搭建一、服务器搭建前提1、开放端口2、服务器配置需求二、Linux环境搭建1、安装编译环境2、下载 steamCMD,安装3、在steam 状态下匿名登录,安装工厂服务器4、加载存档5、服务器编译配置6、服务器更新三、Windows环境搭建1、下载安装SteamCMD2、在steam 状态下匿名登录,安装工厂服务器3、加载存档4、启动服务器5、更新服务器四、服务器初始化1、服务器连接2、设置存档

一、服务器搭建前提 1、开放端口

在开始之前,需要确保以下端口是开放的,因此可能需要创建防火墙规则或在路由器中配置端口转发。端口重定向目前不支持,因此在路由器中打开的端口需要与此处提供的端口匹配(IE:不要将端口 7777 转发为路由器上的端口 7778)。根据下面的表,每个端口都可以通过参数覆盖。如果你想在一台计算机上运行服务器的多个实例,则必须覆盖至少一个端口。

默认端口(仅限 UDP)重写参数注释15777-ServerQueryPort=???这是您第一次连接到专用服务器时需要输入的端口。此端口可以自由重定向。15000-BeaconPort=???此端口目前无法重定向。如果启动服务器的多个实例并且默认已在使用中,则会自动增量。7777-Port=???此端口目前无法重定向。如果启动服务器的多个实例并且默认已在使用中,则会自动增量。

总之,如果你使用的是云服务,记得在在安全组中开放这几个端口。

2、服务器配置需求

官方提供的数据服务器至少需要4 GB内存和10 GB的存储空间。但实际测试中建议运行具有Linux下6+ GB、Windows下8+G内存和更多存储空间的服务器,以支持> 4 个小伙伴同时联机或大型、复杂的工厂。

二、Linux环境搭建 1、安装编译环境

ubuntu

sudo add-apt-repository multiverse sudo dpkg --add-architecture i386 sudo apt update -y sudo apt install lib32gcc1 libcurl4-gnutls-dev:i386 lib32stdc++6 lib32z1 -y

centos 7

yum update -y yum install https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm -y yum install glibc.i686 libstdc++.i686 libcurl.i686 screen -y

centos 8

yum update -y yum install https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm -y yum install glibc.i686 libstdc++.i686 libcurl.i686 screen -y 2、下载 steamCMD,安装

这里需要使用非root用户

useradd -m steam su steammkdir ~/steamcmd cd ~/steamcmd wget https://steamcdn-a.akamaihd.net/client/installer/steamcmd_linux.tar.gz tar -xvzf steamcmd_linux.tar.gz

安装包运行

./steamcmd.sh

安装完成后输入quit退出Steam控制台。

3、在steam 状态下匿名登录,安装工厂服务器 ./steamcmd.sh +login anonymous +force_install_dir ~/SatisfactoryDedicatedServer +app_update 1690800 validate +quit

这个是下载 工厂的服务器,需要一定的时间

1690800是幸福工厂在steam 中的 id

如果这里提示"Failed to init SDL priority manager: SDL not found"之类的,执行

ubuntu

sudo apt install libsdl2-2.0-0:i386

centos

yum -y install SDL2.i686 SDL2.x86_64

后再重复以上操作

4、加载存档

获取存档的Session Name

在游戏中查看存档的Session Name,这里的Session Name并非游戏存档名称。在这里插入图片描述

查找存档文件

存档位置%LOCALAPPDATA%\FactoryGame\Saved\SaveGames

上传存档至服务器

mkdir -p ~/.config/Epic/FactoryGame/Saved/SaveGames/server cd ~/.config/Epic/FactoryGame/Saved/SaveGames/server#上传.sav存档文件至此处 5、服务器编译配置

将专用服务器作为服务运行,允许服务器在发生冲突时自动重新启动,并在启动服务器后自动启动。

(以下内容须root权限)

为了简单起见,创建服务器启动脚本,将其放置在 /home/steam/SatisfactoryDedicatedServer/start_server.sh下(其中/home/steam是用户目录)。

vim /home/steam/SatisfactoryDedicatedServer/start_server.sh

启动器包含以下行:

#!/bin/bashexport InstallationDir=/home/steam/SatisfactoryDedicatedServer export templdpath=$LD_LIBRARY_PATH export LD_LIBRARY_PATH=$InstallationDir/linux64:$LD_LIBRARY_PATH # Install or update the server before launching it /usr/games/steamcmd +login anonymous +force_install_dir $InstallationDir +app_update 1690800 validate +quit # Launch the server $InstallationDir/FactoryServer.shexport LD_LIBRARY_PATH=$templdpath

InstallationDir是工厂服务器目录位置,根据自身情况修改

创建后,设置可执行执行项

chmod +x /home/steam/SatisfactoryDedicatedServer/start_server.sh

创建服务(需要root权限)

vim /etc/systemd/system/satisfactory.service

包含以下行:

[Unit] Description=Satisfactory Server Wants=network.target After=syslog.target network-online.target[Service] Type=simple Restart=always RestartSec=10 User=steam WorkingDirectory=/home/steam/SatisfactoryDedicatedServer ExecStart=/home/steam/SatisfactoryDedicatedServer/start_server.sh[Install] WantedBy=multi-user.target

User为用户

WorkingDirectory为游戏服务位置

ExecStart为启动器位置

最后,启用该服务:

systemctl enable satisfactory.servicesystemctl start satisfactory.service

这将启动服务器。如果您手之前尚未安装它,则服务开始后也将安装服务器。每次重新启动服务时,服务器都会通过SteamCMD进行更新。要重新启动服务器,只需运行:

systemctl restart satisfactory.service

例如,每晚 04:00 自动完成此任务,将命令添加到root crontab:

# This will open an interactive editorcrontab -e# Add this line to the file then save it.0 4 * * * systemctl restart satisfactory.service

服务器环境配置完成,接下来需要进行服务器初始化。

6、服务器更新

将服务重启,服务器会自动更新。

systemctl restart satisfactory.service

或手动更新

./steamcmd.sh +login anonymous +force_install_dir ~/SatisfactoryDedicatedServer +app_update 1690800 validate +quit 三、Windows环境搭建 1、下载安装SteamCMD

创建一个为SteamCMD准备的文件夹

下载Windows系统专用的SteamCMD 点击下载

解压Zip文件中的文件到文件夹。

双击运行解压出来的文件,将自动联网完成更新

更新完成后会出现“Steam>”等待输入命令:

2、在steam 状态下匿名登录,安装工厂服务器

在SteamCMD目录下进入控制台

steamcmd +login anonymous +force_install_dir steamapps/SatisfactoryDedicatedServer +app_update 1690800 validate +quit

这个是下载 工厂的服务器,需要一定的时间

1690800是幸福工厂在steam 中的 id

安装完成后,在Steamcmd文件夹下会生成SatisfactoryDedicatedServer文件夹。

3、加载存档 获取存档的Session Name 在游戏中查看存档的Session Name,这里的Session Name并非游戏存档名称。在这里插入图片描述 查找存档文件 存档位置%LOCALAPPDATA%\FactoryGame\Saved\SaveGames 上传存档至服务器 将存档复制到%LOCALAPPDATA%\FactoryGame\Saved\SaveGames\server 4、启动服务器

在/steamcmd/steamapps/SatisfactoryDedicatedServer目录下进入CMD控制台

FactoryServer.exe -log -unattended

服务器启动后,就可以进入游戏进行服务器初始化了。

5、更新服务器

更新服务器只需将服务器重新加载即可,在steamcmd目录下:

steamcmd +login anonymous +force_install_dir steamapps/SatisfactoryDedicatedServer +app_update 1690800 validate +quit 四、服务器初始化

初始配置由连接到服务器的第一个玩家在游戏中进行,包括设置服务器名称和管理密码。更多设置可通过游戏服务器管理器提供。服务器不会自行启动任何游戏。管理员必须通过游戏中的 UI 创建游戏。默认情况下,玩家密码保护不是启用的,但玩家密码可以通过管理器 UI 设置。

1、服务器连接

在Server Manager(服务管理)界面,点击Add Server,输入服务器地址,默认为服务器IP地址,端口号默认为15777。

在这里插入图片描述

第一位连接服务器的用户可以设置服务器的名称及管理密码,后期用户可以通过管理密码进入服务器设置页面。

在这里插入图片描述

2、设置存档

在加载存档时,我们记录了存档的Session Name,在Server Settings页面中,填写Session Name。

在这里插入图片描述

Session Name填写完成后,系统自动加载存档

在这里插入图片描述

如果使用Create Game直接创建存档,无需手动填写Session Name。

存档加载完成后,在Status界面,可以看到服务器信息,点击Join Game加入游戏。

在这里插入图片描述

到这里,你就完成了服务器的搭建工作。。

更多信息可以参考Satisfactory WIKI。



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3