1. 从零开始:为什么选择自己搭建SCUM服务器?
如果你是一个《SCUM》的深度玩家,厌倦了官方服务器的种种限制,比如规则不透明、外挂横行、或者只是想和三五好友在一个完全由自己掌控的世界里生存,那么搭建一个私人服务器几乎是唯一的选择。这听起来可能有点技术门槛,但别担心,我当初也是从零开始摸索的。自己搭服务器,最大的好处就是“我的地盘我做主”。你可以自定义一切:从资源刷新率、僵尸数量、天气循环,到更硬核的生存参数,比如新陈代谢速度、伤口感染概率。更重要的是,你可以打造一个纯粹的、没有作弊者的游戏环境,或者创建一个主题服务器,比如纯PVE的生存挑战服,或是高倍资源的爽快服。整个过程,其实就是把一个游戏服务端程序,部署到一台7x24小时运行的电脑(服务器)上,并配置好网络,让其他人能连进来。接下来,我会把我搭建和优化服务器的完整过程,以及踩过的所有坑,毫无保留地分享给你。
2. 搭建前的核心准备:硬件、网络与文件获取
在点击任何安装按钮之前,充分的准备能让你后续的搭建过程顺畅十倍。这里主要分为三块:硬件环境、网络环境,以及最重要的——服务端文件。
2.1 硬件与操作系统选择
对于一个小型私人服务器(支持10-30人同时在线),硬件要求并不夸张。我建议的最低配置是:一颗四核处理器(如Intel i5或AMD Ryzen 5)、16GB内存、以及至少50GB的固态硬盘(SSD)空间。内存是关键,《SCUM》服务端比较吃内存,人多了或者模组多了,16GB是起步,32GB会更从容。硬盘一定要用SSD,机械硬盘的加载速度会成为整个服务器的瓶颈,玩家登录和地图读取会慢得让人抓狂。
操作系统方面,Windows Server和Windows 10/11是大多数人的选择,因为图形化界面操作友好。我个人更推荐使用Windows 10/11专业版或更高版本,兼容性最好。虽然Linux在性能和资源占用上更有优势,但配置过程相对复杂,对新手不友好,我们这里以Windows方案为主。确保你的系统已经安装了最新的.NET Framework运行库和Visual C++ Redistributable,这些是很多游戏服务端的基础依赖。
2.2 网络环境配置:穿透内网是关键
这是搭建服务器最容易卡住的一步。你的家庭网络通常处于运营商的“内网”中,外部的玩家无法直接通过你的公网IP(实际上你获取到的可能是一个内网IP)找到你的电脑。你需要进行“端口转发”。
- 获取本地IP地址:在Windows命令行(cmd)里输入
ipconfig,找到“以太网适配器”或“WLAN适配器”下的“IPv4 地址”,记下它,比如192.168.1.100。这是你电脑在家庭路由器下的内部地址。 - 登录路由器管理界面:在浏览器输入路由器的管理地址(通常是
192.168.1.1或192.168.0.1,见路由器背面标签),输入账号密码登录。 - 设置端口转发(Port Forwarding):在路由器管理页面找到“端口转发”、“虚拟服务器”或“NAT”相关选项。你需要添加两条规则,将外部端口映射到你电脑的本地IP和《SCUM》服务端使用的端口上。
- 规则一:外部端口
7777,内部端口7777,协议TCP/UDP(或选择“ALL”),内部IP地址填你刚才记下的192.168.1.100。 - 规则二:外部端口
27015,内部端口27015,协议TCP/UDP,内部IP地址同上。 - 有些路由器还需要开启UPnP(通用即插即用)功能,可以一并开启。
- 规则一:外部端口
- 检查公网IP与防火墙:完成转发后,你可以通过访问“ip138.com”这类网站查看你的公网IP地址,这就是你将来要告诉朋友的服务器地址。最后,别忘了在Windows防火墙(或你使用的第三方防火墙软件)中为《SCUM》服务端程序(
SCUM.exe或SCUMServer.exe)添加入站规则,允许它通过7777和27015端口通信。
注意:很多家庭宽带获取到的所谓“公网IP”其实是运营商级NAT(CGNAT)下的共享IP,这种情况下端口转发是无效的。如果你尝试了转发仍无法连接,可能需要联系运营商申请独立的公网IPv4地址,或者使用内网穿透工具(如SakuraFrp、NATAPP等),后者会提供一个固定的域名地址供玩家连接,但通常有流量或速度限制。
2.3 获取官方服务端文件
最可靠的方式是通过SteCMD(Steam命令行工具)来获取。这能保证你下载的是最新版本的服务端。
- 在你的服务器电脑上安装Steam。
- 在Steam安装目录下(通常是
C:\Program Files (x86)\Steam)找到steamcmd.exe。你可以为其创建一个快捷方式到桌面。 - 创建一个用于下载的批处理脚本。新建一个文本文档,命名为
update_scum_server.bat,用记事本编辑,输入以下内容:
将@echo off set STEAMCMD_PATH="C:\Program Files (x86)\Steam\steamcmd.exe" set INSTALL_DIR="D:\SCUM_Server" %STEAMCMD_PATH% +login anonymous +force_install_dir %INSTALL_DIR% +app_update 1016920 validate +quit pauseINSTALL_DIR后的路径修改为你希望安装服务器文件的目录,比如D:\SCUM_Server。驱动器最好有足够SSD空间。 - 以管理员身份运行这个批处理文件。它会自动登录匿名账户,并将《SCUM》专用服务器文件下载到你指定的目录。这个过程会下载数十GB的文件,请耐心等待。首次运行或游戏更新后,都需要执行此步骤来更新服务端。
3. 服务端配置详解:从基础设置到核心参数
下载完文件后,真正的配置工作才开始。所有配置都通过修改.ini文件来完成,它们位于服务端安装目录下的SCUM\Saved\Config\WindowsServer文件夹中。如果这个文件夹不存在,你需要先运行一次服务端程序来生成它。
3.1 基础服务器配置(Engine.ini与Game.ini)
首先配置Engine.ini,这里包含一些底层引擎设置。在[/Script/Engine.GameSession]部分,设置服务器最大玩家数:
[/Script/Engine.GameSession] MaxPlayers=20接下来是重头戏Game.ini,这是服务器游戏规则的核心。
- 服务器基础信息:
[/Script/SCUM.SCUMGameInstance] ServerName=My Awesome SCUM Server // 服务器名称,显示在游戏列表里 ServerDescription=PVE Focused, Friendly Community. // 服务器描述 ServerPassword= // 如果设密码,则变为私人密码服 AdminPassword=MySuperSecretAdminPass // *非常重要*的管理员密码,用于Web管理面板和游戏内管理员指令 MaxPlayers=20 ServerTags=PVE,Roleplay,HighLoot // 服务器标签,方便玩家筛选 - 游戏难度与规则:
[/Script/SCUM.SCUMGameModeBase] bEnableFriendlyFire=false // 关闭友军伤害 PlayerDamageMultiplier=1.0 // 玩家受到伤害倍率 ZombieDamageMultiplier=1.0 // 僵尸伤害倍率 MetabolismSpeedRate=1.0 // 新陈代谢速度,1.0为标准,调低更硬核 StomachVolumeMultiplier=1.0 // 胃容量倍率 - 物资刷新率(Loot):这是影响游戏体验的关键。
Game.ini中有大量以LootProbabilityMultiplier开头的参数,控制各类物品的刷新概率。例如:
不建议一开始就调得过高,这会让游戏失去生存压力。建议从1.5-2.0开始微调。LootProbabilityMultiplier=2.0 // 全局物品刷新概率倍率 WeaponLootProbabilityMultiplier=1.5 // 武器类单独倍率 FoodLootProbabilityMultiplier=3.0 // 食物类单独倍率
3.2 地图与环境配置(ServerSettings.ini)
ServerSettings.ini主要控制地图事件、载具、僵尸等。
- 僵尸与动物:
ZombieCountMultiplier=2.0 // 僵尸数量倍率 ZombieHealthMultiplier=1.0 // 僵尸生命值倍率 AnimalCountMultiplier=1.5 // 动物数量倍率 - 载具与空投:
VehicleSpawnProbabilityMultiplier=1.0 // 载具刷新概率 AirdropSpawnFrequency=3600 // 空投事件触发间隔(秒),3600=1小时 - 时间与天气:
DayLength=120 // 一天的真实时间分钟数,120=2小时 NightLength=60 // 一夜的真实时间分钟数 WeatherChangeSpeed=1.0 // 天气变化速度
3.3 首次启动与生成世界
配置好核心文件后,就可以首次启动了。在服务端安装目录下,找到SCUM\Binaries\Win64里的SCUMServer.exe。我强烈建议你创建一个启动批处理文件start_server.bat:
@echo off cd /d "D:\SCUM_Server\SCUM\Binaries\Win64" start SCUMServer.exe -log -Port=7777 -QueryPort=27015 -MaxPlayers=20 -configsubfolder=WindowsServer pause这个命令指定了游戏端口、查询端口和配置文件夹。首次运行会花较长时间生成地图数据,直到你在控制台看到类似LogWorld: Loaded world map和服务器IP、端口的日志,才算启动成功。
4. 高级管理与优化:让服务器稳定且易用
一个光能跑起来的服务器是远远不够的,稳定、易管理才是长期运营的关键。
4.1 Web管理面板的配置与使用
《SCUM》服务端自带一个强大的Web管理面板,这是管理员最重要的工具。要启用它,需要在Game.ini中确保管理员密码已设置,并且服务端启动参数正确。启动服务器后,在任何能访问到服务器IP的电脑浏览器上,输入http://你的服务器IP:8082即可访问(默认管理端口是8082,如果被占用可在启动参数中用-WEBPORT=新端口修改)。
在Web面板中,你可以:
- 实时监控:查看在线玩家、服务器状态、性能指标。
- 玩家管理:踢出、封禁玩家,查看玩家库存和位置(需权限)。
- 服务器控制:执行广播消息、保存世界、关闭服务器等操作。
- 直接修改部分配置:有些参数可以热修改,无需重启。
实操心得:务必修改默认的8082端口和管理员密码!将
-WEBPORT=8082改为一个不常见的端口,并在路由器中为此端口也做转发,可以大幅提升面板安全性。我曾因为使用默认端口和弱密码,导致面板被尝试爆破。
4.2 性能监控与稳定性调优
服务器运行后,要关注其资源占用。打开任务管理器,观察SCUMServer.exe的CPU、内存和磁盘占用。
- 内存泄漏观察:《SCUM》服务端长时间运行后可能存在内存缓慢增长的问题。如果发现内存占用持续升高且不释放,定期重启(比如每天一次)是最简单的解决办法。你可以用计划任务在凌晨低峰期自动执行重启脚本。
- CPU占用高峰:当大量玩家同时登录、或地图事件(如空投、大量僵尸刷新)集中发生时,CPU使用率会飙升。在
ServerSettings.ini中适当调高AirdropSpawnFrequency(空投间隔),降低ZombieCountMultiplier可以缓解。 - 网络带宽:确保你的上行带宽足够。一个20人的服务器,稳定运行时可能需要2-5Mbps的上行带宽。在玩家集中登录或大规模战斗时,峰值会更高。
4.3 自动化脚本与定时任务
手动更新和维护太麻烦,我们可以用脚本自动化。
- 自动更新脚本:将之前提到的
update_scum_server.bat改进一下,加入更新前关闭服务器、更新后启动的逻辑。@echo off echo Stopping SCUM Server... taskkill /F /IM SCUMServer.exe timeout /t 10 echo Updating SCUM Server... set STEAMCMD_PATH="C:\Steam\steamcmd.exe" set INSTALL_DIR="D:\SCUM_Server" %STEAMCMD_PATH% +login anonymous +force_install_dir %INSTALL_DIR% +app_update 1016920 validate +quit echo Update complete. Starting server... cd /d "%INSTALL_DIR%\SCUM\Binaries\Win64" start SCUMServer.exe -log -Port=7777 -QueryPort=27015 -MaxPlayers=20 -configsubfolder=WindowsServer echo Server restart sequence finished. pause - 定时重启脚本:利用Windows的“任务计划程序”,设定在每天凌晨4点执行一个重启服务器的批处理文件,内容就是先结束进程,再启动。
4.4 备份策略:防止世界崩溃
玩家建筑、储物箱数据都保存在SCUM\Saved\SaveFiles目录下。定期备份这个文件夹至关重要。你可以写一个简单的批处理文件,用xcopy或robocopy命令将文件夹复制到另一个硬盘或网络存储,然后同样通过任务计划程序每周执行一次。
5. 常见问题排查与安全加固
即使按照步骤操作,也难免会遇到问题。这里汇总几个我踩过的坑和解决方案。
5.1 玩家无法连接服务器
这是最常见的问题,排查链路如下:
- 检查服务器进程:确认
SCUMServer.exe已在运行,并且控制台日志没有红色错误,最后显示监听在0.0.0.0:7777。 - 检查本地防火墙:确保Windows防火墙已为
SCUMServer.exe放行7777和27015端口的入站规则(TCP和UDP)。 - 检查路由器端口转发:这是重灾区。再次登录路由器,确认转发规则的内网IP是你服务器电脑当前的IP(因为DHCP可能导致IP变化)。最好在路由器中为你的服务器电脑设置“静态IP地址分配”或“DHCP保留”,将其MAC地址与一个固定的内网IP(如192.168.1.100)绑定。
- 检查公网IP与CGNAT:在服务器电脑上打开浏览器访问
ip138.com,记下IP。让朋友在游戏里用“直连”方式输入IP:7777。如果不行,在服务器电脑上访问canyouseeme.org,分别检查7777和27015端口。如果显示“超时”或“无法访问”,说明端口未成功映射,很可能就是运营商使用了CGNAT。此时只能联系运营商申请公网IP,或使用内网穿透服务。 - 检查启动参数:确认启动命令中的
-Port和-QueryPort与路由器转发的端口、防火墙规则端口完全一致。
5.2 服务器出现在列表但显示“无响应”或Ping值过高
- 查询端口问题:确保
27015端口转发正确。游戏列表是通过查询端口获取服务器信息的。 - 服务器性能瓶颈:登录服务器,查看任务管理器。如果CPU或磁盘持续100%,玩家就会卡顿、掉线。考虑升级硬件或优化配置(减少僵尸、拉长事件间隔)。
- 网络带宽不足:特别是上行带宽。在服务器运行时,用资源监视器查看网络活动,如果上行速度持续接近你的带宽上限,就需要限制玩家人数或升级宽带。
5.3 管理员权限失效或Web面板无法登录
- 密码一致性:确保
Game.ini中的AdminPassword、Web面板登录密码、以及游戏内使用#login 密码指令的密码是完全相同的。 - Web面板端口冲突:检查是否有其他程序占用了
8082端口。可以在命令行用netstat -ano | findstr :8082查看。如果有,在服务端启动参数中更换-WEBPORT。 - 配置文件未生效:修改
Game.ini后,必须完全重启服务器(关闭进程再启动),而不是仅仅在游戏里重载配置。部分核心参数不支持热重载。
5.4 安全加固建议
- 强密码:管理员密码、Web面板密码、甚至服务器连接密码(如果设置)都要使用高强度、无规律的密码。
- 修改默认端口:将Web管理端口从
8082改为一个不常用的端口,并在防火墙和路由器中只转发必要的游戏端口(7777, 27015)和这个新的管理端口。 - 定期备份与更新:每周备份存档,并通过SteamCMD定期更新服务端,修复已知漏洞。
- 日志监控:定期查看服务器日志文件(位于
SCUM\Saved\Logs),关注异常连接和错误信息。
搭建和维护一个《SCUM》私人服务器,就像在数字世界里经营一片自留地。从最初的网络配置磕磕绊绊,到后来游刃有余地调整参数、写脚本自动化运维,这个过程本身带来的成就感和对游戏更深的理解,是单纯玩游戏无法获得的。最深的体会是,稳定性高于一切,一次意外的存档丢失足以摧毁一个社区。所以,做好备份,谨慎修改,从小范围测试开始,你的私人服务器就能成为你和朋友们最稳固的末日家园。如果在搭建过程中遇到上面没覆盖的奇怪问题,多去《SCUM》官方社区或相关论坛搜索,你踩的坑,很可能早就有人填平了。