آموزش راه اندازی سرور بازی آنلاین Satisfactory
راهنمایی جامع برای راه‌اندازی سرور بازی آنلاین Satisfactory با نکات کلیدی در انتخاب لوکیشن، سخت‌افزار و تنظیمات امنیتی.

آموزش راه اندازی سرور بازی آنلاین Satisfactory

در این مقاله به آموزش راه اندازی سرور بازی آنلاین Satisfactory می‌پردازیم. موضوعات شامل انتخاب لوکیشن مناسب، نصب بر روی ویندوز یا لینوکس، بهینه‌سازی عملکرد و امنیت سرور هستند. راهنمایی‌های عملی و مفید برای مدیران سرور و گیمرها ارائه می‌شود.
0 اشتراک گذاری
0
0
0
0

آموزش راه‌اندازی سرور بازی آنلاین 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

مراحل کلی:

  1. تهیهٔ VPS یا سرور ویندوز (ترجیحاً Windows Server 2019/2022) با مشخصات پیشنهادی.
  2. نصب 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 unzip
sudo 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 -unattended
chmod +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.target
sudo 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 حیاتی است.

سؤالات متداول

شاید دوست داشته باشید

داستان بازی God Of War: Ragnarok

مقدمه این بر کریتوس، خدای جنگ، و پسر نوجوانش، آترئوس متمرکز است، که با درگیری راگناروک آینده روبرو…

داستان بازی God Of War 2

مقدمه با شکست دادن آرس، کریتوس، جنگجوی زمانی فانی، به خدای جدید جنگ تبدیل شد. با این حال،…

داستان God Of War 3

مقدمه قبل از عصر گرگ و میش بر خدایان، افسانه ای برخاست تا جای او را در میان…