前置
Windows
Visual C++ Redistributable for Visual Studio 2013 vc_redist.x64.exe
Visual C++ Redistributable for Visual Studio 2015 vc_redist.x64.exe
DirectX End-User Runtimes (June 2010)
ADVERTISEMENT
Linux
GLIBC 2.17 或更高
安装
Windows
1. 下载 SteamCMD 并解压到您的安装目录 如:(C:\ 指定文件名),以下用C:\ SteamCMD表示。
2. 新建一个文件夹用于放置服务端文件(C:\ SteamCMD\Servers\Squad)。
3. 在文件夹中新建一个名为 “更新战术小队服务端.bat” 的文件。
4. 将以下内容复制到文件 “更新战术小队服务端.bat” 中:
SET SRVPATH="C:\Servers\Squad"
SET STEAMCMD="C:\SteamCMD\steamcmd.exe"
%STEAMCMD% +login anonymous +force_install_dir %SRVPATH% +app_update 403240 validate +quit
5. 运行 “更新战术小队服务端.bat” 文件。
6. 等待 CMD窗口 自动关闭,则代表 更新 完成。
7. 进入服务端文件夹(C:\ SteamCMD\Servers\Squad)。
8. 新建一个名为 "启动.bat" 的文件,并将以下内容写入文件内:
start SquadGameServer.exe Port=6301 QueryPort=26301 RANDOM=ALWAYS -log
9. 运行 "启动.bat" 文件,启动服务器。
您现在已经成功安装好服务器了,但是您仍然必须配置网络以允许客户端从 Internet 连接到服务器。您可以在下面的 "开放端口" 中找到 战术小队 服务器 的连接端口。
Linux
首先,本教程假设您已经安装了一个 64位 的 Linux 发行版。(大多数托管公司都使用的 64位)
除此之外,本教程不需要任何 Linux 经验。
本教程中的 $ 符号之后的任何命令都需要在 Linux 终端(SSH)中执行。
提示: Linux 终端(SSH)可以使用 Tab 补全,假如你有一个名为 "testfolder" 的文件或文件夹,你可以输入 "text",然后按 Tab 键,它会自动补全 "testfolder"。
Linux 服务器终端(SSH)连接工具:
- PUTTY https://the.earth.li/~sgtatham/putty/latest/w64/putty.exe
- Xshell https://www.netsarang.com/zh/xshell-download/(可以自己百度下载)
好了,我们开始吧:
安装服务器:
1. 以 root 用户身份登录,安装 SteamCMD 以及所需要的库。
Debian/Ubuntu: $ apt-get install screen lib32gcc1
CentOS: $ yum -y install screen glibc libstdc++ glibc.i686 libstdc++.i686
2. 创建一个用于 squadgameservers 的用户。
$ adduser 用户名
给这个用户设置一个密码,您可能必须使用 "sudo passwd 用户名" 来设置密码。 当提示您输入全名、地址、电话等其它信息时,只需要按回车键即可。 当询问您信息是否正确时,请输入 Y 并按回车键。
3. 登录到新的用户: ssh 用户名@localhost,然后输入您的密码。
4. 创建一个名为 SquadGameServer 的目录。
$ mkdir SquadGameServer
5. 进入目录
$ cd SquadGameServer
6. 使用其中一个命令 下载&解压 SteamCMD:
$ wget -q -O - https://steamcdn-a.akamaihd.net/client/installer/steamcmd_linux.tar.gz | tar xzv
$ curl -so - https://steamcdn-a.akamaihd.net/client/installer/steamcmd_linux.tar.gz | tar xzv
注意:部分人出现了 不可信/许可错误,那么你可以试试这些命令:
$ wget -q -O - http://media.steampowered.com/installer/steamcmd_linux.tar.gz | tar xzv
$ curl -so - http://media.steampowered.com/installer/steamcmd_linux.tar.gz | tar xzv
7. 创建用于 安装&更新 战术小队服务端 的实例脚本:
$ echo "./steamcmd.sh +login anonymous +force_install_dir server1 +app_update 403240 validate" > updateserver1.sh
8. 设置执行权限
$ chmod +x updateserver1.sh
9. 安装服务器实例 (发布新版本时,可以使用相同的命令更新服务器)
$ ./updateserver1.sh
10. 安装完成时会显示 "Success! App '403240' fully installed.",使用 exit 退出 SteamCMD。
$ exit
然后按回车键
11. 创建 启动服务器实例 的脚本:
$ echo "cd server1; ./SquadGameServer.sh Port=6301 QueryPort=26301 FIXEDMAXPLAYERS=100 RANDOM=NONE" > startserver1.sh
12. 设置执行权限
$ chmod +x startserver1.sh
13. 打开一个运行服务器的窗口,然后进入窗口。
$ screen -dmS server1 $ screen -r server1
启动服务器:
$ ./startserver1.sh
窗口可以让服务器后台运行,即使您关闭了 SSH 会话。
编辑配置文件:
1. 登录运行服务器的账户,并进入配置文件夹:SquadGameServer/server1/SquadGame/ServerConfig。
$ cd SquadGameServer/server1/SquadGame/ServerConfig
2. 使用文本编辑器打开配置文件(nano、vim、vi)。
$ $编辑器 Server.cfg
编辑文件,完成后保存文件。如果您使用的是 Nano,可以使用 Ctrl + O 保存文件,按 Ctrl + X 退出 Nano。
关闭服务器:
1. SSH 登录用于 squadgameserver 的账户连接到服务器(非root),打开运行服务器的窗口。
$ screen -r server1
2. 你可以看到 SquadGameServer 的日志窗口,按 Ctrl + C 关闭服务器。(您可以使用启动命令重新启动服务器)
Docker
如果您的服务器有 Docker,你可以跳过上述步骤,只需要使用:
docker run -d --net=host --name=squad-dedicated cm2network/squad
Docker 启动服务器时会自动更新,如果有更新只需重新启动服务器。
配置文件目录:/home/steam/squad-dedicated/SquadGame/ServerConfig/
- Docker Volumes
当 Docker 容器被销毁时,它的整个文件系统也会被销毁。与其在容器上编辑文件,使用 Docker Volumes 是一个好主意,这样做的好处是数据是持久的,如果你删除容器并从图像中创建一个新的,你不需要修改任何配置文件。
docker run -d --net=host --volume=/<您的本地目录>:/home/steam/squad-dedicated --name=squad-dedicated cm2network/squad
- 多个实例
如果你想启动另一个实例,你可以增加环境变量。使用 -e (--env):
docker run -d --net=host -e PORT=6301 -e QUERYPORT=26301 -e RCONPORT=21115 --name=squad-dedicated2 cm2network/squad
别忘了更改 Rcon.cfg 使用的端口(默认为 21114)
您可以在此处找到相关的 Docker Hub 页面: https://hub.docker.com/r/cm2network/squad/
多实例
Linux
注意事项:
- 复制目录并重命名。
- 然后编辑配置文件,在 Rcon.cfg 中设置一个端口号(+10).
例子:
服务器1 Rcon 端口: 21114
服务器2 Rcon 端口: 21124
- 请在 start.sh 脚本中更改连接端口,避免出现问题。
测试版参数
许可证 服务器有时候会被允许访问游戏测试版本,这些测试版本通常在一个单独的仓库中发布。要访问这些测试版本,请将 “NAMEOFTHEBETA” 和 “PASSWORD” 替换为测试版名称和密码。
Linux
./steamcmd.sh +login anonymous +force_install_dir server1 +app_update 403240 -beta NAMEOFTHEBETA -betapassword PASSWORD validate +quit
Windows
SET STEAMCMD="C:\SteamCMD\steamcmd.exe" %STEAMCMD% +login anonymous +force_install_dir "C:\Servers\Squad" +app_update 403240 -beta NAMEOFTHEBETA -betapassword PASSWORD validate +quit
开放端口
需要在 Windows 防火墙和路由器上打开(仅入站)
游戏端口 = UDP 6301 + 6302
Steam 查询端口 = UDP & TCP 26301 + 26302
RCON 端口 = UDP & TCP 21114 + 21124
温馨提示
启动服务器前请确保 Steam Client 已关闭,否则服务端无法运行。
有关于战术小队服务器相关问题,请访问 Offworld Industries Hosting Discord 服务器:https://discord.gg/VmUwR7J
[Windows] 允许 SquadGameServer.exe 文件通过防火墙可以为您省去很多麻烦。
当 战术小队 服务端 与 游戏 在同一主机时,请先关闭 Steam 再启动服务器。 服务器启动后再登录 Steam 启动游戏,否则服务端会出错。
AppID - 403240
许可证
部分相关问题解答
- 不可以使用 许可证 来运行测服务器
- 100人的服务器最低宽带需要15m/s
- Xeon 的服务器不能获得许可证,也不能给玩家提供良好的游戏体验
- 授权服务器/未授权服务器 都可以运行DLC,DLC是游戏的一部分,不算MOD
- 需要申请许可证才能在 主浏览器 中显示,你可以看看这个:PAGE服务器授权
- 可以授权一个 60+ 的服务器,但是你的服务器硬件必须可以容纳 80 个玩家
- 在认证服务器上玩训练场地图:玩家 < 30人 可以,玩家 > 30人 不能
- 不能授权服务器上设置密码,如需设置密码请先删除许可证
- 许可证超过一个星期没有使用将被注销。
- 每个许可证服务器至少需要 10 个管理员
- 申请服务器许可证地址:服务器许可证门户
- 许可证安装:将申请下来的许可证文件放至于C:\servers\squad_server\SquadGame\ServerConfig\License.cfg 文件中
申请服务器许可证
如果您通过Offworld托管合作伙伴租用服务器实例(非专用服务器),请在服务器许可证门户上申请时选择合适的托管商。如果您租用专用服务器或拥有自己的服务器硬件,您仍然可以申请许可证,但请确保在申请时不要选择合作伙伴托管商。
如果您通过我们的合作游戏服务器提供商之一进行托管,即:
- AWN - https://awn.gg/
- GamerzHost - https://www.gamerzhost.de/
- 南节点 - https://southnode.net/
- BB主机 - http://bbhost.com.br/
- Oasis Hosting - https://oasis-hosting.net/
- G-Portal - https://www.g-portal.com/
- Blue Fang 解决方案 - https://www.bluefangsolutions.com/
- 澳大利亚服务器主机 - https://aussieserverhosts.com/
- LOW.MS - https://low.ms/
- PSG托管 - https://psg-hosting.com
运行 80-100 个玩家的服务器需要什么 CPU
INTEL:
- I7 6700K 超频到 4.5 或更高
- I7 7700K
- I7 7700K 超频到 4.5 或更高
- I7 8086K
- I7 8700K
- I7 9700K
- I9 9900K
目前还没有任何 XEON 服务器可以正常运行 战术小队 服务器。
AMD:
- Ryzen 5 3600
- Ryzen 5 3600X
- Ryzen 7 2700X 超频到 4.3 或更高
- Ryzen 7 3700X
- Ryzen 7 3800X
- Ryzen 9 3900X
服务器配置
可以将以下参数加到您的启动命令行中来配置你的服务器,添加这些参数时要注意错别字。
MULTIHOME = 服务器IP地址 (可选)
Port = 游戏端口 (必要)
QueryPort = Steam 查询端口 (必要)
RANDOM = 地图循环方式 [ALWAYS, FIRST, NONE] (可选)
FIXEDMAXPLAYERS = 最大玩家数量 (可选)
FIXEDMAXTICKRATE = 服务器刷新率 [Tickrate] (可选)
PREFERPREPROCESSOR = CPU Affinity (可选) UNTESTED
-log = 显示日志窗口 (可选)
-fullcrashdump = 崩溃时保存完整的服务器日志 (可选)
例子:
start SquadGameServer.exe MULTIHOME=127.0.0.1 Port=6301 QueryPort=26301 FIXEDMAXPLAYERS=100 FIXEDMAXTICKRATE=50 RANDOM=ALWAYS -log
设置处理器使用率
计算使用率
打开您的 Windows 计算器
1 - 点击 菜单图标
2 - 选择 程序员 模式
3 - 选择 位切换键盘
4 - 单击,直到看到 BYTE 就是 4 核心 8 线程。(您也可以切换其它选项来适配您的CPU)
5 - 点击 HEX 切换到十六进制
核心线程计数从 0 开始,您可以在第三张图片中看到哪个数字负责哪个线程。1=使用;0=不使用;
所需的结果限制在 HEX 中,如果所有核心线程都为 1,结果将显示 "FF"。
对于我们的 "/AFFINITY" 参数,我们需要 "FF" 来设置 CPU 的核心线程使用率。
如果之选择核心线程 4-7 [0000 1111],则对应结果应该为 "F"。
[建议] 尽量使用偶数的 核心线程 使用数(2 4 6 8),否则容易造成服务端崩溃。
F = 2核心 FF = 4核心 FFF = 6核心 FFFF = 8核心 ...
ADVERTISEMENT
Windows
您可以使用 start-命令 来设置每个服务器的核心线程使用率(如果您在一台主机上运行多个服务器):
start /AFFINITY C /WAIT SquadGameServer.exe Port=6301 QueryPort=26301 FIXEDMAXPLAYERS=100 RANDOM=ALWAYS -log
Linux
Linux 用户可以通过 "taskset" 命令来设置核心线程使用率,核心线程索引从 0 开始。如果您的处理器有 8 个核心,那么您可以分配的核心就是 0-7。
cd server1; taskset -c 0-3 ./SquadGameServer.sh Port=6301 QueryPort=26301 FIXEDMAXPLAYERS=80 RANDOM=NONE
配置文件
服务器的配置文件目录位于:C:\servers\squad_server\SquadGame\ServerConfig\
Admins.cfg # 权限组[管理员] Bans.cfg # 封禁玩家列表 License.cfg # 许可证 MapRotation.cfg # 地图循环列表 MOTD.cfg # 服务器介绍[每日消息] Rcon.cfg # 远程管理配置 RemoteAdminListHosts.cfg # 远程权限组[管理员]列表 RemoteBanListHosts.cfg # 远程封禁玩家列表 Server.cfg # 服务器配置 ServerMessages.cfg # 服务器循环[红字]公告
权限组[管理员]
文件名:Admins.cfg
可以创建一个 权限组,并将管理员分配到该组中。您可以创建 任意类型,任意数量 的权限组。这些文件在更新时将不会被覆盖,所以当我们添加权限时您需要前往 官方Wiki/en 更新。
必须使用 SteamID64,您可以在 steamid.io/lookup 中转换。
Group=SuperAdmin:changemap,cheat,private,balance,chat,kick,ban,config,cameraman,debug,pause Group=Admin:changemap,balance,chat,kick,ban,cameraman,pause Group=Moderator:changemap,chat,kick,ban Group=Whitelist:reserve //实习管理员 Admin=76561115695178:Moderator //玩家 5 Admin=8915618948911:Moderator //玩家 4 //管理员 Admin=7894591951519:Admin //玩家 3 Admin=7895365435431:Admin //玩家 8792 //超级管理员 Admin=7984591565611:SuperAdmin //玩家 2 Admin=7917236241624:SuperAdmin //玩家 1 //白名单 - VIP&SVIP Admin=7984591565611:Whitelist //玩家 123 Admin=7984591565523:Whitelist //玩家 156
权限列表
changemap # 更换/预设地图 pause # 暂停游戏 cheat # 使用作弊命令 private # 设置服务器密码 balance # 忽略服务器阵营平衡 chat # 管理员聊天/服务器公告 kick # 踢出玩家 ban # 封禁玩家 config # 更改服务器配置 cameraman # 摄影机 - 管理员视角 immune # 无法被 踢出/封禁 manageserver # 关闭服务器 reserve # 预留位 debug # 调试 teamchange # 忽略更换阵营时间限制 forceteamchange # 允许执行强制更换阵营命令 canseeadminchat # 查看 管理员聊天/友军击杀/管理员加入 消息
封禁玩家
文件名:Bans.cfg
这个文件储存的是封禁玩家列表,格式为:SteamID64:封禁时间戳 //备注
76561198039509812:0 //永久封禁-使用作弊程序 7862895148978485:1623366856 //击杀友军
手动添加封禁玩家时,请使用 换行符 作为每个封禁玩家的分割。
如果要检查封禁玩家的封禁时间或创建一个限时的玩家封禁,请使用此工具转换时间戳:
- https://tool.chinaz.com/Tools/unixtime.aspx
地图循环模式
在2.0地图更新后,现在有两种模式来进行地图循环,第一种是分类循环,第二种是逐个循环,逐个循环方法与1.0的MapRotation.cfg的方法类似
文件名:LevelRotation.cfg
若您想使用分类循环请在Server.cfg内将“MapRotationMode=”设置为LevelList或者LevelList_Randomized即可
# v2.0 分类循环 : 里面的内容必须为相应的地图组,与在游戏内显示的地图不一样! //注意:只有你使用LevelList模式或LevelList_Randomized模式才会使用此文件内的循环列表 AlBasrah Belaya Chora Fallujah FoolsRoad Gorodok Kamdesh Kohat Kokan Lashkar Logar Mestia Mutaha Narva Skorpo Sumari Tallil Yehorivka # v2.0 加拿大DLC GooseBay Manic-5
文件名:LayerRotation.cfg
此运行模式与之前的循环方式一致,直接运行指定的地图,若您想使用该循环方法请在Server.cfg内将“MapRotationMode=”设置为LayerList或者LayerList_Randomized即可
# v1.0 地图循环 Al Basrah AAS v1 Al Basrah AAS v2 Al Basrah Insurgency v1 Al Basrah Invasion v1 Al Basrah Invasion v2 Al Basrah RAAS v1 Al Basrah Skirmish v1 Al Basrah Skirmish v2 Al Basrah TA v1 Al Basrah TC v1 Al Basrah TC v2 Belaya AAS v1 Belaya AAS v2 Belaya Invasion v1 Belaya Invasion v2 Belaya Invasion v3 Belaya RAAS v1 Belaya RAAS v2 Belaya RAAS v3 Belaya Skirmish v1 Belaya TC v1 Chora AAS v1 Chora AAS v2 Chora Insurgency v1 Chora Invasion v1 Chora Invasion v2 Chora RAAS v1 Chora RAAS v2 Chora Skirmish v1 Chora TC v1 Fallujah AAS v1 Fallujah AAS v2 Fallujah Insurgency v1 Fallujah Invasion v1 Fallujah Invasion v2 Fallujah Invasion v3 Fallujah RAAS v1 Fallujah RAAS v2 Fallujah RAAS v3 Fallujah Skirmish v1 Fallujah Skirmish v2 Fallujah TC v1 Fallujah TC v2 Fool's Road AAS v1 Fool's Road AAS v2 Fool's Road Destruction v1 Fool's Road Invasion v1 Fool's Road RAAS v1 Fool's Road RAAS v2 Fool's Road RAAS v3 Fool's Road Skirmish v1 Fool's Road Skirmish v2 Fool's Road TC v1 Gorodok AAS v1 Gorodok AAS v2 Gorodok Destruction v1 Gorodok Insurgency v1 Gorodok Invasion v1 Gorodok Invasion v2 Gorodok RAAS v1 Gorodok RAAS v2 Gorodok RAAS v3 Gorodok RAAS v4 Gorodok RAAS v5 Gorodok Skirmish v1 Gorodok TC v1 Jensen's Range v1 Jensen's Range v2 Jensen's Range v3 Kamdesh AAS v1 Kamdesh Insurgency v1 Kamdesh Insurgency v2 Kamdesh Invasion v1 Kamdesh Invasion v2 Kamdesh Invasion v3 Kamdesh RAAS v1 Kamdesh RAAS v2 Kamdesh RAAS v3 Kamdesh RAAS v4 Kamdesh Skirmish v1 Kamdesh TC v1 Kamdesh TC v2 Kohat AAS v1 Kohat AAS v2 Kohat Insurgency v1 Kohat Invasion v1 Kohat Invasion v2 Kohat RAAS v1 Kohat RAAS v2 Kohat RAAS v3 Kohat RAAS v4 Kohat Skirmish v1 Kohat TC v1 Kokan AAS v1 Kokan Insurgency v1 Kokan Invasion v1 Kokan RAAS v1 Kokan RAAS v2 Kokan Skirmish v1 Kokan TC v1 Lashkar Valley AAS v1 Lashkar Valley AAS v2 Lashkar Valley Insurgency v1 Lashkar Valley Invasion v1 Lashkar Valley RAAS v1 Lashkar Valley Skirmish v1 Lashkar Valley TC v1 Lashkar Valley TC v2 Logar Valley AAS v1 Logar Valley AAS v2 Logar Valley Insurgency v1 Logar Valley RAAS v1 Logar Valley Skirmish v1 Logar Valley TC v1 Mestia AAS v1 Mestia Invasion v1 Mestia Invasion v2 Mestia RAAS v1 Mestia Skirmish v1 Mestia TC v1 Mutaha AAS v1 Mutaha Invasion v1 Mutaha RAAS v1 Mutaha Skirmish v1 Mutaha TC v1 Mutaha TC v2 Narva AAS v1 Narva AAS v2 Narva AAS v3 Narva Destruction v1 Narva Invasion v1 Narva Invasion v2 Narva RAAS v1 Narva Skirmish v1 Narva TA v1 Narva TC v1 Narva TC v2 Skorpo AAS v1 Skorpo Invasion v1 Skorpo Invasion v2 Skorpo RAAS v1 Skorpo RAAS v2 Skorpo RAAS v3 Skorpo RAAS v4 Skorpo Skirmish v1 Skorpo TC v1 Skorpo TC v2 Skorpo TC v3 Sumari AAS v1 Sumari Insurgency v1 Sumari Invasion v1 Sumari RAAS v1 Sumari RAAS v2 Sumari Skirmish v1 Sumari TC v1 Tallil Outskirts AAS v1 Tallil Outskirts AAS v2 Tallil Outskirts Invasion v1 Tallil Outskirts Invasion v2 Tallil Outskirts Invasion v3 Tallil Outskirts RAAS v1 Tallil Outskirts RAAS v2 Tallil Outskirts RAAS v3 Tallil Outskirts RAAS v4 Tallil Outskirts Skirmish v1 Tallil Outskirts Skirmish v2 Tallil Outskirts Skirmish v3 Tallil Outskirts Tanks v1 Tallil Outskirts Tanks v2 Tallil Outskirts TA v1 Tallil Outskirts TC v1 Yehorivka AAS v1 Yehorivka AAS v2 Yehorivka Destruction v1 Yehorivka Invasion v1 Yehorivka Invasion v2 Yehorivka RAAS v1 Yehorivka RAAS v2 Yehorivka RAAS v3 Yehorivka RAAS v4 Yehorivka RAAS v5 Yehorivka Skirmish v1 Yehorivka Skirmish v2 Yehorivka Skirmish v3 Yehorivka TA v1 Yehorivka TC v1 Yehorivka TC v2 # v1.0 加拿大DLC CAF_Al_Basrah_Invasion_v1 CAF_Al_Basrah_Invasion_v2 CAF_Belaya_AAS_v1 CAF_Belaya_RAAS_v1 CAF_Belaya_RAAS_v2 CAF_Chora_AAS_v1 CAF_Chora_RAAS_v1 CAF_Fallujah_Invasion_v1 CAF_Fallujah_RAAS_v1 CAF_Fools_Road_RAAS_v1 CAF_Gorodok_AAS_v1 CAF_Gorodok_Invasion_v1 CAF_Gorodok_RAAS_v1 CAF_Gorodok_RAAS_v2 CAF_Gorodok_TC_v1 CAF_Jensens_Range_v4 CAF_Kamdesh_Invasion_v1 CAF_Kamdesh_RAAS_v1 CAF_Kamdesh_TC_v1 CAF_Kohat_Invasion_v1 CAF_Kokan_RAAS_v1 CAF_Lashkar_Valley_Invasion_v1 CAF_Lashkar_Valley_RAAS_v1 CAF_Lashkar_Valley_TC_v1 CAF_Logar_Valley_RAAS_v1 CAF_Manic-5_AAS_v1 CAF_Manic-5_AAS_v2 CAF_Manic-5_Invasion_v1 CAF_Manic-5_Invasion_v2 CAF_Manic-5_RAAS_v1 CAF_Manic-5_RAAS_v2 CAF_Manic-5_RAAS_v3 CAF_Manic-5_RAAS_v4 CAF_Manic-5_Skirmish_v1 CAF_Manic-5_Skirmish_v2 CAF_Manic-5_TC_v1 CAF_Mestia_RAAS_v1 CAF_Mutaha_AAS_v1 CAF_Mutaha_RAAS_v1 CAF_Mutaha_RAAS_v2 CAF_Nanisivik_AAS_v1 CAF_Nanisivik_Invasion_v1 CAF_Nanisivik_RAAS_v1 CAF_Narva_RAAS_v1 CAF_Skorpo_RAAS_v1 CAF_Sumari_AAS_v1 CAF_Tallil_Outskirts_RAAS_v1 CAF_Tallil_Outskirts_RAAS_v2 CAF_Yehorivka_Invasion_v1 CAF_Yehorivka_RAAS_v1 CAF_Yehorivka_TC_V1
地图循环: 添加创意工坊地图
See this article: How to add one or more Steam Workshop Maps to the Squad Server
服务器介绍[每日消息]
文件名:MOTD.cfg
MOTD.cfg 支持两个 HTML 标记:
<a>黄色字体</a> <a href="link.com">黄色字体链接</a>
- 注意: MOTD.cfg 文件名必须是大写的,对 UNIX 很重要。
远程权限组[管理员]列表
文件名:RemoteAdminListHosts.cfg
每行应包含指向 权限组[管理员] 列表的URL,格式遵循上面 权限组[管理员] 相同。
如果您运行多个服务器,且希望所有服务器都使用一个 权限组[管理员] 文件,请使用此项。
远程封禁玩家列表
文件名:RemoteBanListHosts.cfg
每行应包含指向 封禁玩家 列表的URL,封禁玩家格式与上面 封禁玩家 相同。
如果您运行多个服务器,且希望所有服务器都使用一个 封禁玩家 文件,请使用此项。
服务器配置
文件名:Server.cfg
这个文件储存的是常规的服务器配置,新添加的内容请前往 官方Wiki/en 更新。
因此您如果想更改默认值,您需要手动把配置项添加到现有服务器配置中。
- 如果服务器名称的特殊字符在 服务器列表 中显示为 "?????",解决方法:将特殊字符粘贴到文本编辑器,然后再复制到配置文件。示例:
ServerName="Test Server Λ"
. - AutoTkBanTime: 此选项可用于在服务器玩家击杀7个友军时,自动封禁的时间秒数。例子: AutoTkBanTime=1209600 封禁玩家 14 天
- PublicQueueLimit: Cap public queue. Standard is PublicQueueLimit=25 and this cap the public queue to 25. =0 means that there wont be public queue. =-1 is unlimited queue.
ServerName="Squad Dedicated Server" IsLANMatch=false ShouldAdvertise=true MaxPlayers=40 NumReservedSlots=0 PublicQueueLimit=25 NumPlayersDiffForTeamChanges=3 AllowTeamChanges=true PreventTeamChangeIfUnbalanced=true EnforceTeamBalance=true RejoinSquadDelayAfterKick=180 ServerMessageInterval=300 ServerPassword=Password AutoTkBanTime=1209600 TKAutoKickEnabled=true //设置为 false 则禁用服务器击杀友军自动踢出,认证服务器必须为 true。 RecordDemos=false VehicleClaimingDisabled=false VehicleKitRequirementDisabled=false AllowQA=false // 强制启用服务器认证 (仅 OWI 开发人员 & qa 管理员) AllowCommunityAdminAccess=false // 强制启用服务器认证 (仅 OWI 开发人员) AllowDevProfiling=false
服务器消息
文件名:ServerMessages.cfg
在游戏中每隔 x 秒按顺序循环发送一条消息(基于服务器配置)
远程管理[Rcon]
文件名:Rcon.cfg
如果您不想使用 远程管理[Rcon],请将密码 [Password=] 设置为空。 注意: 如果IP为 0.0.0.0,将自动绑定到默认的公网IP。
// 远程管理[Rcon] IP // 或者,在命令行中使用以下参数来设置: // RCONIP=0.0.0.0 IP=0.0.0.0 // 远程管理[Rcon] 端口 // 或者,在命令行中使用以下参数来设置: // RCONPORT=21114 Port=21114 // 远程管理[Rcon] 密码 // 如果为空,则关闭 远程管理[Rcon]。 // 或者,在命令行中使用以下参数来设置: // RCONPASSWORD=MyPassword Password= // 远程管理[Rcon] 并发数量 // 同时使用 Rcon 连接到服务器的最大数量 // 或者,在命令行中使用以下参数来设置: // RCONMAXCONNECTIONS=5 MaxConnections=5 // 远程管理[Rcon] 超时时间(秒) // 可选值为:30 - 3600 // 或者,在命令行中使用以下参数来设置: // RCONSECONDSBEFORETIMEOUTCHECK=120 SecondsBeforeTimeoutCheck=120
比赛模式
1. 要启用比赛模式,至少启动一次服务器以生成必要的文件。
2. 进入服务器文件夹,找到 \Saved\Config\WindowsServer 或 Saved\Config\LinuxServer 下的 Game.ini 文件,然后根据需要 添加/修改 内容。
3. 需要重新启动服务器才能更改比赛模式配置。
相关详情信息,请参阅:forum post. This mode was added with Alpha 5.2。
V15 兼容版本:
[/Script/Squad.SQGameMode] bTournamentMode=true
[/Script/Squad.SQTournamentModeRuleset] Restrictions=(Setting="r.ShadowQuality", Min=1, Max=5) Restrictions=(Setting="r.ViewDistanceQuality", Min=3, Max=4) Restrictions=(Setting="r.ViewDistanceScale", Min=1, Max=4) Restrictions=(Setting="grass.MaxUpdateFrequency", Min=10, Max=40)
旧版本:
[/Script/Squad.SQGameMode] bTournamentMode=true [/Script/Squad.SQTournamentModeRuleset] Restrictions=(Setting="r.LightFunctionQuality", Min=1, Max=1) Restrictions=(Setting="r.ShadowQuality", Min=3, Max=5) Restrictions=(Setting="r.Shadow.CSM.MaxCascades", Min=1, Max=10) Restrictions=(Setting="r.Shadow.MaxResolution", Min=1024, Max=4096) Restrictions=(Setting="r.Shadow.RadiusThreshold", Min=0.03, Max=0.05) Restrictions=(Setting="r.Shadow.DistanceScale", Min=0.5, Max=1.0) Restrictions=(Setting="r.Shadow.CSM.TransitionScale", Min=0.4, Max=1.0) Restrictions=(Setting="r.DistanceFieldShadowing", Min=0, Max=1) Restrictions=(Setting="r.DistanceFieldAO", Min=0, Max=1) Restrictions=(Setting="r.AllowLandscapeShadows", Min=0, Max=1) Restrictions=(Setting="r.MotionBlurQuality", Min=0, Max=4) Restrictions=(Setting="r.AmbientOcclusionMipLevelFactor", Min=0.4, Max=1.0) Restrictions=(Setting="r.AmbientOcclusionMaxQuality", Min=0, Max=100) Restrictions=(Setting="r.DepthOfFieldQuality", Min=0, Max=4) Restrictions=(Setting="r.RenderTargetPoolMin", Min=300, Max=1000) Restrictions=(Setting="r.LensFlareQuality", Min=0, Max=3) Restrictions=(Setting="r.SceneColorFringeQuality", Min=0, Max=1) Restrictions=(Setting="r.EyeAdaptationQuality", Min=0, Max=2) Restrictions=(Setting="r.FastBlurThreshold", Min=0, Max=100) Restrictions=(Setting="r.Upscale.Quality", Min=1, Max=3) Restrictions=(Setting="r.Tonemapper.GrainQuantization", Min=0, Max=1) Restrictions=(Setting="r.LightShaftQuality", Min=0, Max=1) Restrictions=(Setting="r.Filter.SizeScale", Min=0.6, Max=1) Restrictions=(Setting="r.Tonemapper.Quality", Min=0, Max=5) Restrictions=(Setting="r.SkeletalMeshLODBias", Min=-1, Max=0) Restrictions=(Setting="r.ViewDistanceScale", Min=1.0, Max=10.0) Restrictions=(Setting="r.MipMapLODBias", Min=-1, Max=0) Restrictions=(Setting="r.Streaming.MipBias", Min=0, Max=1.5) Restrictions=(Setting="r.MaxAnisotropy", Min=0, Max=16) Restrictions=(Setting="r.TranslucencyLightingVolumeDim", Min=24, Max=64) Restrictions=(Setting="r.RefractionQuality", Min=0, Max=2) Restrictions=(Setting="r.SSR.Quality", Min=0, Max=4) Restrictions=(Setting="r.SceneColorFormat", Min=3, Max=4) Restrictions=(Setting="r.DetailMode", Min=0, Max=2) Restrictions=(Setting="r.TranslucencyVolumeBlur", Min=0, Max=1) Restrictions=(Setting="r.MaterialQualityLevel", Min=0, Max=2) Restrictions=(Setting="r.SSS.Scale", Min=0, Max=1) Restrictions=(Setting="r.SSS.SampleSet", Min=0, Max=2) Restrictions=(Setting="r.EmitterSpawnRateScale", Min=0.125, Max=1.0) Restrictions=(Setting="r.ParticleMinTimeBetweenTicks", Min=8, Max=33) Restrictions=(Setting="foliage.DensityScale", Min=0, Max=1.0) Restrictions=(Setting="grass.DensityScale", Min=0, Max=1.0) Restrictions=(Setting="grass.MaxUpdateFrequency", Min=10, Max=30) Restrictions=(Setting="r.PostProcessAAQuality", Min=0, Max=6) Restrictions=(Setting="r.Shadow.MaxCSMResolution", Min=512, Max=4096) Restrictions=(Setting="r.VolumetricFog", Min=0, Max=1) Restrictions=(Setting="r.Streaming.LimitPoolSizeToVRAM", Min=0, Max=1) Restrictions=(Setting="r.Streaming.MaxEffectiveScreenSize", Min=0, Max=0) Restrictions=(Setting="r.SSS.HalfRes", Min=0, Max=1) Restrictions=(Setting="r.ParticleLightQuality", Min=0, Max=2)
Categories
Community content is available under CC BY-NC-SA unless otherwise noted.
Comments NOTHING