一文搞懂【Linux 搭建 Dread Hunger 服务器】附本体及Docker部署集群方案 ...

瑞星  金牌会员 | 2025-1-14 09:21:52 | 显示全部楼层 | 阅读模式
打印 上一主题 下一主题

主题 954|帖子 954|积分 2862

<hr> 前言

看直播发现了五花八门的开服器和版本,一时鼓起按官方文档进行了搭建尝试,所以我的版本基于官方Stream2024.01.10更新的版本,也就是停服时的玩法,应该可以根据mod和补丁魔改成更那些开服器一样的版本,本文不做评论,注意服务器搭建,毕竟8个人不可能在一个局域网里
乱象:
起首,我看了大量教程视频,一类是开服器的推广,另一类自建的根本采用Windows搭建,我以为最离谱的是大部分教程都会教你买一台远程Windows假造机???
作为一个后端开辟我不能明白,除了一些特别政企项目服务器可能采用Windows体系搭建,阐明如今大多数三方从事这些服务器搭建的人多数黑白计算机职员,Windows显然成本太高而且我以为也不专业,应该没有游戏公司会采用Windows搭建服务器吧

关于搭建体系:Linux根本都行,CentOs、ubuntu、debian,我试了都行,唯独我想用alpine镜像构建发现启动不了服务,懒得办理,也不省多少资源。
资源占用:Docker镜像总运行内存在1.0-1.3G,我直接限制Docker容器内存在1G(至少800),也能正常利用,也就是说1核2G的服务器,最多也就委曲构建两个镜像
一、前置必读

1.1运行效果

Linux启动游戏服务器


毗连自定义端口


开启单人游戏当狼





1.2官方文档解读

开房间


  1. 主机
  2. 对于主机,游戏设置与以前非常相似。
  3. 前往船长室中的桌子,与桌子上的地图交互,打开探险用户界面,选择要在大厅中宣传的地图,并自定义游戏设置(译者注:这些设置只在码头上起到视觉上的效果,所有的地图相关设置,包括选择哪一张地图,都需要在服务端中配置)。可以取消选择“公开”框,使你的大厅变为私有。
  4. 等待玩家加入你的大厅。
  5. 玩家定制他们的装扮或食人族血咒,然后启动锅炉。
  6. 将船只驶出港口。
  7. 将出现连接到 IP 的界面。输入 IP,大厅中所有人都将连接到到该服务器。如果不输入端口号,将自动设置端口号 7777。
  8. 客户端
  9. 对于客户端,游戏设置与以前相同。
  10. 查找要加入的大厅,或使用 Steam “游戏中”界面加入您朋友的大厅。
  11. 自定义装扮或食人族血咒。
  12. 登上船,等待主机驶离。
复制代码
公开会使你的房间出如今表面的房间列表
就是告诉你想开游戏的先创建一个房间,默认就可以什么都不用改,默认发起远征即可,客户端设置参数没用

点发起远征什么都不用改直接创建,要开的时候点火开船,开几秒会弹出输入服务器ip端口
通过steam邀请好友进房间,当前也有其他办法

填写你运行游戏服务端服务器的ip和端口,端口是可以自定义的,不指定的话默认是7777
Linux运行命令


分析这个脚本,实在他在文档里这些写轻易引起误解,上面的脚本带了三个固定的参数,由于它的游戏包里的LinuxService不是这样,是不带任何参数的:
  1. #!/bin/sh
  2. UE4_TRUE_SCRIPT_NAME=$(echo "$0" | xargs readlink -f)
  3. UE4_PROJECT_ROOT=$(dirname "$UE4_TRUE_SCRIPT_NAME")
  4. chmod +x "$UE4_PROJECT_ROOT/DreadHunger/Binaries/Linux/DreadHungerServer-Linux-Shipping"
  5. "$UE4_PROJECT_ROOT/DreadHunger/Binaries/Linux/DreadHungerServer-Linux-Shipping" DreadHunger "$@"
复制代码
第一行、标准开头
第二行、第三行找到当前文件夹的绝对路径,这个路径的值赋给UE4_PROJECT_ROOT这个变量
第四行、给DreadHungerServer-Linux-Shipping这个实际的步伐文件一个可实行权限,让他可以被sh实行
第五行、根据绝对路径启动DreadHungerServer-Linux-ShippingDreadHunger 是固定写法
“$@” 是什么意思呢,代表接受输入的所有参数,在哪儿输入呢,启动的时候,看一下这个脚本的路径

包罗在了游戏本体里,可以打开看看,在Linux体系运行这个脚本时,可以利用 sh DreadHungerServer.sh
后面是可以跟参数,例如等效官方文档里的:
  1. sh DreadHungerServer.sh Expanse_Persistent?maxplayers=6?daysbeforeblizzard=1
复制代码
分别代表利用代价地图、最大玩家数为6、间隔狂风雪的一天
这些参数的意义开辟者文档里也写了,英文原版我就不贴了:
  1. Dread Hunger 服务器通过命令行参数进行设置。
  2. 三张地图分别标记为:
  3. Approach_Persistent(入口)
  4. Departure_Persistent(峰顶)
  5. Expanse_Persistent(代价)
  6. 自定义服务器设置标记为:
  7. maxplayers(最大玩家数,范围:1 - 8,默认值:8)
  8. daysbeforeblizzard(开始时距离暴风雪的天数,范围:2-7,默认值:3)
  9. dayminutes(一天的分钟数,范围:5-16,默认值:9)
  10. predatordamage(捕食者伤害乘数,范围:0.25-3,默认值:1)
  11. coldintensity(寒冷强度乘数,范围:0.25-3,默认值:1)
  12. hungerrate(饥饿速度乘数,范围:0.25-3,默认值:1)
  13. coalburnrate(锅炉燃料消耗率,范围:0.1-2,默认值:1)
  14. thralls(内奸阵营人数,范围:0-8,默认值:2)
复制代码
可以什么都不设置利用默认开峰顶 sh DreadHungerServer.sh Departure_Persistent
自定义端口

除了官方文档,UE4服务器是有许多通用参数的,例如:


  • -Port 用于指定服务器监听的端口号:-Port=7777
  • -log 用于启用日志记录:-log=ServerLog.txt
  • -ServerName 服务器的名称:-ServerName=“My UE4 Server”
  • -QueryPort 设置查询端口:-QueryPort=27015
  • -HeartbeatInterval 设置服务器的心跳间隔:-HeartbeatInterval=5
  • -bIsLanMatch 是否在局域网模式下运行:-bIsLanMatch=true
我们只用的上端口设置,例如我将端口设置为10016开一局峰顶
  1. sh DreadHungerServer.sh Departure_Persistent?Port=10016
复制代码

LogNet: Created socket for bind address: 0.0.0.0 on port 10016
1.3前置预备

公网服务器

腾讯云比较划算,可以点击下面跳到运动地址 38的抢一下,抢不到68也不贵,一台一年的公网服务器非常有用,能做的事太多了,包括搭建你本身的网站,你想用当地假造机体验固然可以,实在本质题目是大部分人没由公网IP,你frp做内网穿透,也要有公网媒介,题目就又绕回来了,你利用openVpn把玩家组在一个局域网里,照旧逃不开公网媒介,我不买服务器的预想是走cf署理,不知道是否支持(母鸡啊),有公网ip的可以忽略吧
腾讯云运动专场


游戏下载

   买了游戏的直接在Stream下载,没买的网上找一下,着实找不到淘宝一元租号下一个就行,压缩包7个G左右,我先不提供下载,后续我看一下怎么分享,估计是

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

瑞星

金牌会员
这个人很懒什么都没写!
快速回复 返回顶部 返回列表