Linx运行七日杀的服务相比Windows稳定而消耗内存更小。下面是部署方法:
安装的先决条件,你需要一个Steam的账号,网络有传不需要Steam也可以成功安装,由于酶试过,不保证。
升级系统
先来升级下系统
|
|
创建账户
创建一个账户,这个账户是用于运行七日杀的,七日杀不允许直接root运行
|
|
设置防火墙
这里对应的端口26900
是默认的,在后面的serverconfig.xml
文件中有设定,所以这里开放了26900
后面就不要修改了,如果需要别的端口在这步改。
|
|
安装SteamCMD支持库
|
|
开始部署
切换账号到开始创建的七日杀运行账号
|
|
获取Steam在Linux下的程序包
|
|
进入Steam运行环境
|
|
输入账号和密码进行登录
|
|
在这里基于Steam的安全机制,会给你的邮箱或手机邮件,提示输入安全码,按照邮件中的安全码输入即可。
设定安装目录
|
|
升级安装命令:app_update
这个命令包含了两个功能,安装或更新。
|
|
这里的294420
是七日杀服务器程序的ID。
接下来等待漫长的安装吧
请注意,这里最好将 app_update 294420 validate
多执行几次,直到提示无需更新为止。
设置配置文件
|
|
如果需要修改,只需要修改里面的值即可
创建一个快速的升级脚本
如果说每次升级用命令很麻烦,这里可以一劳永逸,创建一个脚本来解决。
|
|
首先我们创建一个名字是update_7d2d.txt
的文本文件;
接着我们把下面的内容丢进去(需要执行的命令行);
|
|
这样,以后服务器升级的命令会非常容易
|
|
运行服务器
启动服务器
32位服务器
|
|
64位服务器
|
|
screen
这个命令的作用是在ssh
的链接关闭后,仍然用进程来运行这个程序;如果没有装
screen
可以yum install screen
安装一个;screen -ls
可以列出目前在后台运行的屏幕进程,用screen -r 进程号
即可切换到这个屏幕,例子如下:
|
|
如果需要切换到这个屏幕,screen -r 3922
- 如果你在开始创建的
7d2d
这个账号开了一个screen
那么在切换或运行命令的时候同样要用su 7d2d
将当前操作账号切换到7d2d
这个账户上
serverconfig.xml
这可能是网络上最全面的配置说明了
只需要修改value
中的值即可
property | 默认值 | 可选项 | 备注 |
---|---|---|---|
ServerPort | 26900 | 服务器的端口号 | |
ServerIsPublic | true | true/false | 这个服务器是否注册到全球服务器,即是否开放 |
ServerName | My Game Host | 服务器名字 | |
ServerPassword | 服务器密码 | ||
ServerMaxPlayerCount | 8 | 最大玩家并发数,一般个人PC 8G 20人 | |
ServerReservedSlots | 0 | 可设置权限的管理员数量 | |
ServerReservedSlotsPermission | 100 | 设置服务器同时允许几不同级别管理员在线 | |
ServerAdminSlots | 0 | 同时允许几个次级管理员在线 | |
ServerAdminSlotsPermission | 0 | 是否超权可以登录的管理 | |
ServerDescription | A 7 Days to Die server | 服务器的描述信息,可以填一些你认为有用的 | |
ServerWebsiteURL | 服务器网站,一般不用设置 | ||
ServerDisabledNetworkProtocols | UNET | 禁用的网络协议,默认的UNET即可 | |
GameWorld | Navezgane | Navezgane / Random Gen | 游戏世界设置,默认是有限的Navezgane地图,也可以改为Random Gen,即随机无限地图 |
GameName | My Game | 游戏名字,如果上面填了Random Gen,这个名字将被用于随机种子生成 | |
GameDifficulty | 2 | 0-5 | 模式难度, 0=简单, 5=困难,填写0-5之间的数字 |
GameMode | GameModeSurvivalMP | GameModeSurvivalMP/GameModeSurvivalSP | 游戏模式,MP(联网),SP(单机)(MP产生领地石效果) |
ZombiesRun | 0 | 0 =夜间狂暴,1 =永不狂暴,2 =始终狂暴 | 僵尸狂暴设置 |
BuildCreate | false | true/false | 创造模式,默认关闭,开启后全体可创造 |
DayNightLength | 60 | 游戏中24小时等于现实中多少分钟 | |
DayLightLength | 18 | 在游戏时间里,每天的阳光照射:默认白天18,夜间6 | |
PlayerKillingMode | 3 | 0 =无杀戮,1 =仅杀死盟友,2 =仅杀死陌生人,3 =杀死所有人 | 玩家杀戮设置 |
PersistentPlayerProfiles | false | true/false | 是否拖入玩家单机资料,默认关闭,打开的话联网就完全失去了意义 |
PlayerSafeZoneLevel | 5 | 如果玩家的等级在这个级别以下,那么他出生复活时周围不会有僵尸 | |
PlayerSafeZoneHours | 5 | 这个安全区存在的时间,是游戏中的时间 | |
ControlPanelEnabled | false | true/false | 启用/禁用控制面板,默认关闭 |
ControlPanelPort | 8080 | 控制面板端口 | |
ControlPanelPassword | CHANGEME | 网页控制端密码 | |
TelnetEnabled | true | true/false | 是否开启telnet登录 |
TelnetPort | 8081 | telnet端口 | |
TelnetPassword | telnet链接密码 | ||
AdminFileName | serveradmin.xml | 服务器管理文件名,此文本内记录玩家白名单和黑名单以及管理员 | |
DropOnDeath | 2 | 0 =一切,1 =仅腰带,2 =仅背包,3 =全部删除 | 死亡掉落设置 |
DropOnQuit | 0 | 0 =不掉落,1 =一切,2 =仅腰带,3 =仅背包 | 退出掉落 |
BloodMoonEnemyCount | 8 | 在每个玩家的血月里产生的僵尸数量,第七日每个玩家刷新多少僵尸 | |
EnemySpawnMode | true | true/false | 启用/禁用僵尸刷新,默认开启,关掉就没有僵尸了 |
EnemyDifficulty | 0 | 0 =无法感应,1 =能感应 | 僵尸能不能隔墙感应到玩家 |
BlockDurabilityModifier | 100 | 游戏中各种方块的强度 | |
LootAbundance | 100 | 刷新物资的丰富度 | |
LootRespawnDays | 30 | 游戏中多少天刷新一次物资 | |
LandClaimSize | 41 | 领地石保护大小 | |
LandClaimDeadZone | 30 | 领地石范围不能放任何东西(除非你是与其他玩家的朋友) | |
LandClaimExpiryTime | 3 | 玩家离线多少天不再保护 | |
LandClaimDecayMode | 0 | 0 =线性,1 =指数,2 =完全保护,直到过期 | 离线玩家领地石衰落 |
LandClaimOnlineDurabilityModifier | 4 | 0表示无敌(不会损坏)。 默认值为4 | 当玩家在线时,领地石保护硬度增加了多少 |
LandClaimOfflineDurabilityModifier | 4 | 0表示无敌(不会损坏)。 默认值为4 | 当玩家离线时,领地石硬度会增加 |
AirDropFrequency | 72 | 0 = 从不 | 空投,在游戏时间里多少小时一次 |
AirDropMarker | false | true/false | 是否在地图上开启空头标志 |
MaxSpawnedZombies | 80 | 丧尸刷新数(超过80个)可能会导致服务器运行在较差的帧率,这将影响客户的延迟和流畅度 | |
MaxSpawnedAnimals | 50 | 服务器生成动物的数量 | |
EACEnabled | true | true/false | Eac校验,如果关了外挂就进来了 |
HideCommandExecutionLog | 0 | 0 =显示所有内容,1 =仅从Telnet / ControlPanel隐藏,2 =也隐藏远程游戏客户端,3 =隐藏所有内容 | 隐藏命令执行记录 |
MaxUncoveredMapChunksPerPlayer | 131072 | 覆盖每个玩家在游戏地图上可以发现多少块。 最大地图文件大小为512字节。 默认131072意味着最多32公里2可以随时发现 | |
BedrollDeadZoneSize | 15 | 死亡区域的大小,这个区域内不会产生僵尸,任何清除的睡眠者数量,触摸死板死亡区域将不会产生后 | |
SaveGameFolder | 存盘位置,linux版本默认是注释掉的,windows版可以设置 |