- آموزش راهاندازی سرور بازی آنلاین Satisfactory — مروری کلی و پیشنیازها
- پیشنیازها و تصمیمگیری اولیه
- پورتها و اتصالات شبکه
- نصب و راهاندازی — گزینهٔ اول: ویندوز سرور (پیشنهاد شده برای بیشتر کاربران)
- نصب و راهاندازی — گزینهٔ دوم: لینوکس (Debian/Ubuntu) با SteamCMD + Proton
- بهینهسازی عملکرد و کاهش پینگ
- امنیت، مودها و بکاپ
- مانیتورینگ، لاگ و رفع مشکل
- مقایسه لوکیشنها و انتخاب بهترین مکان برای سرور Satisfactory
- نکات عملی و چکلیست قبل از باز کردن سرور برای عموم
- جمعبندی و توصیههای نهایی
- سؤالات متداول
آموزش راهاندازی سرور بازی آنلاین Satisfactory — مروری کلی و پیشنیازها
Satisfactory یک بازی ساخت کارخانهٔ چندنفره مبتنی بر موتور Unreal است که برای تجربهٔ مولتیپلیر پایدار اغلب به یک سرور اختصاصی یا VPS قابل اطمینان نیاز دارد. در این راهنما، مراحل از انتخاب لوکیشن و سختافزار تا نصب روی ویندوز یا لینوکس، تنظیمات شبکه و فایروال، بهینهسازی، امنیت، بکاپ و مدیریت مودها پوشش داده شده است.
پیشنیازها و تصمیمگیری اولیه
قبل از شروع به نصب باید تصمیم بگیرید که سرور روی چه سیستمعاملی اجرا شود، لوکیشن مناسب کدام است و چه منابعی نیاز دارید.
- سیستمعامل: ویندوز سرور (سادهتر و سازگار با باینریهای رسمی) یا لینوکس (هزینه کمتر، امکان اتوماسیون با systemd اما معمولاً با Proton/Wine همراه است).
- لوکیشن: نزدیکترین دیتاسنتر به بازیکنان؛ در صورت پراکندگی بازیکنان میتوان چندین سرور در لوکیشنهای متفاوت راهاندازی کرد (شرکت موردنظر دارای 85+ لوکیشن جهانی است).
- منابع پیشنهادی اولیه (۶–۱۲ بازیکن): CPU 4 هستهٔ اختصاصی، 8–16GB RAM، NVMe SSD با 40+ گیگابایت، شبکه 1Gbps. برای جمعیت یا مودهای سنگین، CPU و RAM بیشتر لازم است.
- دسترسی: حساب Steam / SteamCMD یا دسترسی به بستهٔ Dedicated Server مطابق نسخهٔ بازی (بررسی SteamDB یا مستندات برای AppID و نام توزیع).
پورتها و اتصالات شبکه
پورتهای رایج (بسته به نسخهٔ سرور ممکن است متفاوت باشد؛ حتماً با مستندات رسمی یا SteamDB هماهنگ کنید):
- UDP 7777 — پورت اصلی بازی (listen)
- UDP 15000 — query/heartbeat/Beacon (جستجوی سرور)
- UDP/TCP 27015 — پورتهای مربوط به Steam/Steamworks (در برخی نسخهها)
نکات عملی:
- این پورتها را در فایروال و پنل شبکه باز کنید.
- برای کاهش پینگ، دیتاسنتر با Peering خوب و مسیر BGP مناسب انتخاب کنید.
- اگر سرور عمومی است، از Anti-DDoS سختافزاری/شبکهای استفاده کنید (خدمات ضد-DDoS شرکت در 85+ لوکیشن قابل فعالسازی است).
نصب و راهاندازی — گزینهٔ اول: ویندوز سرور (پیشنهاد شده برای بیشتر کاربران)
نصب و دانلود Dedicated Server
مراحل کلی:
- تهیهٔ VPS یا سرور ویندوز (ترجیحاً Windows Server 2019/2022) با مشخصات پیشنهادی.
- نصب Steam یا SteamCMD. با Steam client وارد شوید و در بخش Tools دنبال “Satisfactory Dedicated Server” بگردید. با SteamCMD از دستورات زیر استفاده کنید.
.\steamcmd.exe +login anonymous +force_install_dir C:\SatisfactoryServer +app_update <APPID> validate +quitنکته: <APPID> را از SteamDB یا مستندات بازی بگیرید.
تنظیم فایل استارت و پارامترها
در پوشهٔ سرور یک فایل start.bat بسازید و نمونهٔ زیر را مطابق فایل اجرایی خود تنظیم کنید:
@echo off
cd /d "C:\SatisfactoryServer\Binaries\Win64"
start "" "FactoryServer.exe" /Game/FactoryGame/Maps/Factory?listen?SessionName="MyServer"?MaxPlayers=8 -log -Port=7777 -QueryPort=15000 -unattendedنکات:
- SessionName نامی است که در لیست سرورها نمایش داده میشود.
- MaxPlayers را براساس منابع سرور تنظیم کنید.
- برای اجرا بهعنوان سرویس میتوانید از NSSM استفاده کنید تا سرور پس از ریبوت خودکار بالا بیاید.
تنظیم فایروال ویندوز
برای باز کردن پورتها از PowerShell:
New-NetFirewallRule -DisplayName "Satisfactory UDP 7777" -Direction Inbound -Protocol UDP -LocalPort 7777 -Action Allow
New-NetFirewallRule -DisplayName "Satisfactory UDP 15000" -Direction Inbound -Protocol UDP -LocalPort 15000 -Action Allowنصب و راهاندازی — گزینهٔ دوم: لینوکس (Debian/Ubuntu) با SteamCMD + Proton
هشدار: باینری رسمی سرور ممکن است Windows-only باشد؛ در لینوکس معمولاً از SteamCMD + Proton یا Wine استفاده میشود که پیچیدهتر اما مقرونبهصرفه است.
نصب پیشنیازها و SteamCMD
نمونهٔ دستورات برای Ubuntu/Debian:
sudo apt update && sudo apt upgrade -y
sudo apt install -y steamcmd lib32gcc-s1 curl unzipsudo adduser --disabled-login --gecos "Satisfactory Server" sfsrv
sudo mkdir -p /opt/satisfactory
sudo chown sfsrv:sfsrv /opt/satisfactoryدانلود سرور با SteamCMD (نمونهٔ عمومی)
اجرای SteamCMD با کاربر سرور:
sudo -u sfsrv -i
steamcmd +login anonymous +force_install_dir /opt/satisfactory +app_update <APPID> validate +quitنکته: <APPID> را از SteamDB چک کنید.
اجرای سرور با Proton
نمونهٔ اسکریپت start.sh برای اجرای با Proton (مسیر Proton را مطابق نصب خود تنظیم کنید):
#!/bin/bash
export STEAM_COMPAT_CLIENT_INSTALL_PATH=/home/sfsrv/.steam
export PROTON_NO_ESYNC=1
cd /opt/satisfactory/Binaries/Win64
/home/sfsrv/.steam/steam/steamapps/common/Proton\ 6.3/proton run ./FactoryServer.exe /Game/FactoryGame/Maps/Factory?listen?SessionName="MyServer"?MaxPlayers=8 -log -Port=7777 -QueryPort=15000 -unattendedchmod +x start.shنمونهٔ unit برای systemd:
[Unit]
Description=Satisfactory Dedicated Server
After=network.target
[Service]
Type=simple
User=sfsrv
WorkingDirectory=/opt/satisfactory/Binaries/Win64
ExecStart=/opt/satisfactory/start.sh
Restart=on-failure
RestartSec=10
[Install]
WantedBy=multi-user.targetsudo systemctl daemon-reload
sudo systemctl enable --now satisfactory.serviceباز کردن پورتها در لینوکس (UFW مثال)
sudo ufw allow 7777/udp
sudo ufw allow 15000/udp
sudo ufw allow 22/tcp
sudo ufw enableبهینهسازی عملکرد و کاهش پینگ
تنظیمات سیستمعامل (Linux)
مثالهایی برای بهبود شبکه و I/O:
sudo sysctl -w net.core.somaxconn=1024
sudo sysctl -w net.core.rmem_max=16777216
sudo sysctl -w net.core.wmem_max=16777216
sudo sysctl -w net.ipv4.udp_mem="8388608 12582912 16777216"برای دائمی کردن مقادیر، آنها را در /etc/sysctl.conf یا فایل تحت /etc/sysctl.d/ ذخیره کنید.
تنظیمات داخل بازی / سرور
- MaxPlayers را منطقی انتخاب کنید.
- در صورت بالا بودن پینگ بازیکنان، پارامترهای مربوط به tickrate یا نرخ فریم سرور (در صورت وجود) را متعادل کنید.
- ذخیرهسازی: استفاده از NVMe SSD سرعت ذخیره و بارگذاری را بهبود میبخشد.
امنیت، مودها و بکاپ
امنیت
- سرور را با یک کاربر غیر-root اجرا کنید.
- دسترسی کنسول/ادیتور را به IPهای مشخص محدود کنید (در صورت پشتیبانی).
- برای سرورهای عمومی از Anti-DDoS شبکهای استفاده کنید.
- استفاده از fail2ban برای محافظت SSH و نظارت روی لاگها پیشنهاد میشود.
مودها و مدیریت مودها
مودهای Satisfactory معمولاً با Satisfactory Mod Loader (SML) مدیریت میشوند. نکات کلیدی:
- برای سرور و کلاینتها نسخهٔ مودها باید یکسان باشد.
- روند کلی: نصب SML روی سرور و کلاینتها، قرار دادن مودها در پوشهٔ Mods سرور، راهاندازی مجدد و بررسی لاگ.
- قبل از فعال کردن مودها در سرور اصلی، ابتدا روی سرور تست یا محلی امتحان کنید.
بکاپگیری و نگهداری سیوها
نمونهٔ اسکریپت بکاپ روزانه با rsync:
rsync -a --delete /opt/satisfactory/Saved/ /backups/satisfactory/$(date +%F)/توصیهها:
- نگهداری حداقل ۷ روزه و جابهجایی به فضای ذخیرهسازی ابری یا snapshot.
- قبل از آپدیت بازی یا مودها، بکاپ کامل تهیه کنید.
مانیتورینگ، لاگ و رفع مشکل
نکات مانیتورینگ و بررسی لاگ:
- لاگها در پوشهٔ
Saved/Logsقرار دارند؛ استفاده از پارامتر-logدر استارت اسکریپت مفید است. - ابزارهای مانیتورینگ مثل Prometheus + Grafana یا سرویسهای مانیتورینگ شرکت برای گرفتن متریک CPU/RAM/Network مناسباند.
- اگر سرور در لیست بازیکنان دیده نمیشود، پورتهای query و وضعیت Steamworks را چک کنید.
مقایسه لوکیشنها و انتخاب بهترین مکان برای سرور Satisfactory
لوکیشن را بر اساس محل جغرافیایی بازیکنان انتخاب کنید. مثالها:
- اروپا: فرانکفورت یا آمستردام
- خاورمیانه: دوبی یا ترکیه
- آمریکا: شرق یا غرب براساس مکان بازیکنان
مزایا و معایب: لوکیشن نزدیک = پینگ پایین؛ اما اگر بازیکنان پراکنده باشند، چندین سرور منطقهای بهتر است. با شبکهٔ 85+ لوکیشن میتوان نزدیکترین نقطه به بازیکنان را انتخاب کرد.
نکات عملی و چکلیست قبل از باز کردن سرور برای عموم
- هماهنگی نسخههای بازی و مود بین کلاینتها و سرور.
- تست چند جلسه با تستکنندگان برای شناسایی مشکلات عملکردی.
- فعال کردن بکاپ خودکار و تهیه snapshot قبل از هر آپدیت.
- راهاندازی مانیتورینگ و alert برای منابع و پورتها.
- ایجاد کانال اطلاعرسانی برای بازیکنان جهت اعلام زمانهای نگهداری و خرابی.
جمعبندی و توصیههای نهایی
راهاندازی سرور Satisfactory میتواند هم ساده و هم چالشبرانگیز باشد. اگر دنبال راهحل سریع و قابلاعتماد هستید، VPS یا سرور اختصاصی ویندوز با منابع مناسب توصیه میشود.
اگر میخواهید هزینه را کاهش دهید یا اتوماسیون بیشتری داشته باشید، راهاندازی روی لینوکس با SteamCMD+Proton مناسب است اما نیاز به تجربهٔ فنی بیشتری دارد.
برای حفظ تجربهٔ بازیکنان، انتخاب لوکیشن نزدیک، استفاده از NVMe و پهنای باند کافی و فعالسازی Anti-DDoS حیاتی است.









