ساخت سرور Empyrion Galactic Survival؛ آموزش نصب Scenario و Workshop Mods
Empyrion Server یک سرور اختصاصی برای بازی Empyrion Galactic Survival است که به شما اجازه میدهد دنیای فضایی خودتان را بهصورت چندنفره اجرا کنید. در این بازی، بازیکنان میتوانند سیارههای مختلف را کاوش کنند، پایگاه فضایی بسازند، سفینه طراحی کنند و در محیطهای PvE یا PvP با یکدیگر بازی کنند.
یکی از ویژگیهای مهم Empyrion، پشتیبانی از Custom Scenario است. سناریوهای سفارشی میتوانند نقشه کهکشان، سیارهها، مأموریتها، دشمنان، تجهیزات و بخشهای مختلف Gameplay را تغییر دهند. بسیاری از این سناریوها از طریق Steam Workshop منتشر میشوند.
اما نصب یک سناریوی Workshop فقط به دانلود آن محدود نمیشود. باید فایلها در پوشه صحیح قرار بگیرند، نام Scenario در dedicated.yaml دقیق باشد، ساختار YAML سالم بماند و Save بازی با سناریوی انتخابشده سازگار باشد.
در این آموزش، نصب Empyrion Dedicated Server با SteamCMD، تنظیم فایلهای YAML، نصب سناریوهای Workshop مانند Reforged Eden، مدیریت پورتها، رفع مشکلات اتصال، پشتیبانگیری از Save و بهینهسازی مصرف منابع را مرحلهبهمرحله توضیح میدهیم.
Empyrion Dedicated Server چیست؟
Empyrion Galactic Survival یک بازی Survival و Sandbox با محیط علمیتخیلی است. در این بازی، دنیای قابل کاوش از سیارهها، مدارهای فضایی، ایستگاهها، سفینهها و مناطق مختلف تشکیل شده است.
با Dedicated Server میتوانید یک World مستقل بسازید که حتی زمانی که هیچ بازیکنی آنلاین نیست، سرویس آن فعال بماند.
امکانات اصلی سرور اختصاصی عبارتاند از:
- ساخت سرور عمومی یا خصوصی با رمز ورود.
- تعیین تعداد بازیکنان و قوانین World.
- استفاده از Scenarioهای پیشفرض یا سفارشی.
- نصب محتوای Steam Workshop.
- مدیریت Playfieldها و سیارهها.
- تنظیم قوانین PvP و PvE.
- مدیریت مدیران و دسترسیهای سرور.
- پشتیبانگیری و انتقال Save به سرور جدید.
ابزار رسمی Dedicated Server از طریق Steam با App ID شماره 530870 در دسترس است. نسخه رسمی Windows 64-bit را میتوان روی Windows Server یا سیستم Windows مناسب اجرا کرد.
اجرای سرور روی Linux نیز با بعضی روشهای سازگاری مانند Wine یا Proton انجام میشود، اما این روشها به آزمایش و نگهداری بیشتری نیاز دارند و معادل پشتیبانی Native رسمی نیستند.
برای ساخت Empyrion Server چه مقدار RAM و CPU لازم است؟
مصرف منابع Empyrion تنها به تعداد بازیکنان وابسته نیست. تعداد Playfieldهای فعال، تعداد سفینهها، پایگاهها، NPCها و اندازه Scenario نیز بر عملکرد سرور تأثیر میگذارند.
در Empyrion هر سیاره یا منطقه فضایی میتواند بهعنوان یک Playfield جداگانه پردازش شود. بنابراین یک سرور با تعداد بازیکنان کمتر اما Playfieldهای متعدد، ممکن است منابع بیشتری از یک سرور ساده مصرف کند.
جدول منابع پیشنهادی
| نوع سرور | RAM پیشنهادی | CPU پیشنهادی | کاربرد |
|---|---|---|---|
| آزمایشی | ۸ تا ۱۲ گیگابایت | ۴ vCPU | نصب اولیه و تست محدود |
| خصوصی کوچک | ۱۶ گیگابایت | ۴ تا ۶ vCPU سریع | بازی دوستانه با Scenario سبک |
| سناریوی سفارشی سنگین | ۲۴ تا ۳۲ گیگابایت | ۶ تا ۸ vCPU | Playfieldهای بیشتر و World فعال |
| عمومی گسترده | ۳۲ تا ۶۴ گیگابایت یا بیشتر | CPU قدرتمند و منابع پایدار | بازیکنان و مناطق فعال متعدد |
این جدول یک پیشنهاد اولیه برای انتخاب سختافزار است و حداقل رسمی تضمینشده محسوب نمیشود. مصرف واقعی باید با توجه به Scenario، تعداد Playfieldهای همزمان و فعالیت بازیکنان اندازهگیری شود.
چه مقدار فضای دیسک لازم است؟
برای نصب، ذخیره سناریوها، فایلهای Workshop، Logها و Backupها بهتر است فضای کافی روی SSD یا NVMe در نظر بگیرید. بهعنوان نقطه شروع، اختصاص حدود ۳۰ تا ۵۰ گیگابایت فضای آزاد برای یک نصب آزمایشی همراه با فضای رشد میتواند مناسب باشد؛ اما سناریوهای بزرگ و Backupهای متعدد ممکن است به فضای بسیار بیشتری نیاز داشته باشند.
اندازه واقعی فایلهای Build فعلی و Scenario موردنظر را قبل از انتخاب ظرفیت نهایی بررسی کنید.
آموزش نصب Empyrion Dedicated Server با SteamCMD
مرحله اول: نصب SteamCMD
SteamCMD ابزار خط فرمان Valve برای دریافت و بهروزرسانی فایلهای Steam است.
ابتدا آن را از راهنمای SteamCMD دریافت کرده و در مسیر نمونه زیر استخراج کنید:
C:\SteamCMD\
مرحله دوم: دانلود فایلهای Dedicated Server
Command Prompt را باز کنید و دستور زیر را اجرا کنید:
C:\SteamCMD\steamcmd.exe +force_install_dir C:\EmpyrionServer +login anonymous +app_update 530870 validate +quit
در این دستور، شناسه 530870 مربوط به Empyrion Dedicated Server است و فایلها در C:\EmpyrionServer نصب میشوند.
مرحله سوم: بررسی فایلهای نصب
بعد از دانلود، در پوشه اصلی نصب باید فایلهای راهاندازی و تنظیمات سرور را مشاهده کنید.
فایلهای مهم عبارتاند از:
| فایل یا پوشه | کاربرد |
|---|---|
| EmpyrionDedicated.cmd | راهاندازی سرور با رابط اولیه |
| EmpyrionDedicated_NoGraphics.cmd | راهاندازی بدون رابط گرافیکی بازی |
| dedicated.yaml | تنظیمات اصلی سرور و World |
| Content/Scenarios | سناریوهای پیشفرض و سفارشی |
| Saves/Games | اطلاعات Worldهای ذخیرهشده |
| Logs | فایلهای گزارش اجرای سرور |
مسیر Log و بعضی پوشهها ممکن است با توجه به Build یا نحوه نصب متفاوت باشد. ابتدا ساختار واقعی پوشه نصب خود را بررسی کنید.
مرحله چهارم: اولین اجرای سرور
برای اجرای اولیه میتوانید فایل EmpyrionDedicated_NoGraphics.cmd را اجرا کنید.
این فایل سرور را بدون رابط گرافیکی کامل بازی راهاندازی میکند و برای محیط Dedicated مناسب است.
پس از اجرا، منتظر آماده شدن World و Playfieldهای اولیه بمانید. در اولین اجرا، ساخت Save و بارگذاری Scenario ممکن است چند دقیقه زمان ببرد.
تنظیم dedicated.yaml در Empyrion Server
فایل dedicated.yaml یکی از مهمترین فایلهای سرور است. نام سرور، پورت اصلی، تعداد بازیکنان، تنظیمات مدیریت و Scenario از طریق این فایل مشخص میشوند.
بهتر است فایل اصلی را مستقیماً تغییر ندهید. یک کپی با نام اختصاصی بسازید تا هنگام Update بتوانید تنظیمات را با نسخه جدید مقایسه کنید.
ساخت فایل تنظیمات اختصاصی
در PowerShell:
Copy-Item "C:\EmpyrionServer\dedicated.yaml" "C:\EmpyrionServer\iranica-dedicated.yaml"
سپس فایل کپیشده را با Notepad++ یا VS Code باز کنید.
نمونه ساختار تنظیمات
نمونه زیر برای نمایش گزینههای اصلی است. اگر Build فعلی کلیدهای بیشتری دارد، آنها را در فایل اصلی حفظ کنید.
ServerConfig:
Srv_Port: 30000
Srv_Name: 'Iranica Empyrion Server'
Srv_MaxPlayers: 20
Srv_Public: true
Srv_Description: 'Empyrion Survival Server'
Srv_ReservePlayfields: 1
Tel_Enabled: false
SaveDirectory: Saves
GameConfig:
GameName: IranicaGalaxy01
Mode: Survival
Seed: 123456
CustomScenario: 'Default Multiplayer'
در این نمونه، Telnet غیرفعال است تا پورت مدیریت بدون نیاز در دسترس شبکه قرار نگیرد.
نام Scenario باید با نام پوشه واقعی آن در Content/Scenarios یکسان باشد.
اجرای سرور با فایل تنظیمات اختصاصی
برای استفاده از فایل اختصاصی، در فایل Batch راهاندازی، پارامتر زیر را به دستور اجرای فعلی اضافه کنید:
-dedicated iranica-dedicated.yaml
دستور کامل اجرای فایل را از Batch موجود در نسخه فعلی سرور بردارید و تنها نام فایل تنظیمات را تغییر دهید. به این ترتیب پارامترهای موردنیاز Build فعلی حفظ میشوند.
Scenario در Empyrion چیست و چه تفاوتی با Mod دارد؟
در Empyrion، Scenario مجموعهای از فایلها و تنظیمات است که میتواند ساختار World را تغییر دهد.
یک Scenario ممکن است شامل نقشه کهکشان، سیارهها، Playfieldها، POIها، مأموریتها، تنظیمات Gameplay و فایلهای موردنیاز بازیکنان باشد.
تفاوت Scenario، Workshop Content و Blueprint
| نوع محتوا | کاربرد | روش استفاده |
|---|---|---|
| Scenario | تغییر ساختار World و Gameplay | قرار دادن در Content/Scenarios |
| Workshop Scenario | سناریوی ساختهشده توسط جامعه کاربران | دانلود از Workshop و فعالسازی با CustomScenario |
| Blueprint | طرح سفینه، پایگاه یا سازه | سیستم Blueprint بازی |
| فایل تنظیمات | تغییر قوانین و ویژگیهای World | ویرایش YAML مربوط به همان World |
عبارت Workshop Mods در میان کاربران Empyrion رایج است، اما همه محتوای Workshop به شکل Mod مستقل قابل نصب روی سرور نیست. برای سناریوها باید از ساختار مخصوص Scenario استفاده کنید.
مسیر Scenarioها کجاست؟
در نصب نمونه ما:
C:\EmpyrionServer\Content\Scenarios\
هر سناریو باید پوشه جداگانه داشته باشد. برای مثال:
Content\
Scenarios\
IranicaGalaxy\
Configuration\
Playfields\
Prefabs\
Sectors\
Extras\
ساختار دقیق پوشهها بسته به Scenario متفاوت است. سناریوی موجود را بدون حذف فایلهای ناشناخته منتقل کنید.
آموزش نصب Scenario از Steam Workshop
Steam Workshop یکی از منابع اصلی دریافت Scenarioهای سفارشی برای Empyrion است.
برای مشاهده سناریوها میتوانید وارد Steam Workshop بازی Empyrion شوید.
مرحله اول: انتخاب Scenario
سناریوی موردنظر را پیدا کنید و توضیحات سازنده را بخوانید. به نسخه بازی، پیشنیازها، وضعیت توسعه و سازگاری با Dedicated Server توجه کنید.
بعضی سناریوها برای نسخههای قدیمی ساخته شدهاند و ممکن است در Build جدید بدون اصلاح کار نکنند.
مرحله دوم: دانلود Scenario
در Steam روی Subscribe کلیک کنید تا محتوای سناریو دانلود شود.
شناسه بازی اصلی Empyrion در Steam برابر 383120 است. فایلهای Workshop معمولاً در مسیر زیر ذخیره میشوند:
C:\Program Files (x86)\Steam\steamapps\workshop\content\383120\
در این پوشه، هر محتوای Workshop معمولاً با شناسه عددی خودش مشخص میشود.
مرحله سوم: انتقال فایلها به Dedicated Server
سرور را متوقف کنید و پوشه سناریوی دانلودشده را به Content/Scenarios منتقل کنید.
برای مثال، نام پوشه را به IranicaGalaxy تغییر دهید:
C:\EmpyrionServer\Content\Scenarios\IranicaGalaxy\
دقت کنید که پوشه اضافه ایجاد نشده باشد. برای مثال، اگر فایلهای سناریو داخل IranicaGalaxy/123456789 قرار گرفتهاند، ممکن است بازی نتواند ساختار مورد انتظار را پیدا کند.
مرحله چهارم: فعالسازی Scenario
فایل iranica-dedicated.yaml را باز کنید و مقدار CustomScenario را تغییر دهید:
GameConfig:
GameName: IranicaGalaxy02
Mode: Survival
Seed: 123456
CustomScenario: IranicaGalaxy
در این مثال، نام Save را نیز تغییر دادهایم تا World جدید با Scenario تازه ساخته شود.
نکته مهم: تغییر CustomScenario روی یک Save موجود الزاماً Scenario آن World را جایگزین نمیکند. برای مهاجرت از یک Scenario به Scenario دیگر، معمولاً باید World جدید ایجاد کنید؛ مگر اینکه سازنده Scenario روش ارتقای سازگار با Save قبلی را مستند کرده باشد.
مرحله پنجم: اجرای سرور و بررسی World
سرور را اجرا کنید و Logها را بررسی کنید.
پس از آماده شدن، با نسخه سازگار بازی وارد شوید و بررسی کنید که سیارهها، مأموریتها و محتوای Scenario درست بارگذاری شدهاند.
نصب Reforged Eden روی Empyrion Server
Reforged Eden از سناریوهای شناختهشده Empyrion است که تغییرات گستردهای در Gameplay، کهکشان، پیشرفت و محتوای بازی ایجاد میکند.
نسخههای مختلف این پروژه را نباید با یکدیگر اشتباه گرفت. برای مثال، Reforged Eden 2 یک پروژه متفاوت از نسخههای قدیمیتر است و باید سازگاری آن با Build فعلی بررسی شود.
برای مشاهده صفحه Workshop مربوط به Reforged Eden 2 میتوانید از لینک زیر استفاده کنید:
مشاهده Reforged Eden 2 در Steam Workshop
مراحل نصب Reforged Eden
- نسخه سازگار Reforged Eden را از Workshop دریافت کنید.
- سرور را متوقف کنید.
- از Save و فایلهای تنظیمات Backup بگیرید.
- پوشه سناریو را به Content/Scenarios منتقل کنید.
- نام پوشه را به یک نام مشخص مانند ReforgedEden2 تغییر دهید.
- مقدار CustomScenario را با نام همان پوشه هماهنگ کنید.
- برای نصب تازه، یک GameName جدید انتخاب کنید.
- سرور را اجرا کنید و Logها را بررسی کنید.
نمونه تنظیمات:
GameConfig:
GameName: IranicaRE2
Mode: Survival
Seed: 202611
CustomScenario: ReforgedEden2
اگر Scenario به فایلهای SharedData نیاز دارد، دستورالعمل همان نسخه را نیز اجرا کنید. بعضی فایلها باید هنگام اتصال در اختیار Client قرار بگیرند.
همچنین نسخههای آزمایشی یا Beta ممکن است تغییرات ناسازگار داشته باشند. قبل از آپدیت Reforged Eden، توضیحات سازنده و وضعیت Save Compatibility را بررسی کنید.
اعتبارسنجی YAML و رفع خطاهای تنظیمات Empyrion
فایلهای YAML در Empyrion برای تنظیم سرور، قوانین بازی و بخشهایی از Scenario استفاده میشوند.
YAML نسبت به فاصلهگذاری و ساختار تورفتگی حساس است. حتی یک فاصله اشتباه میتواند باعث شود فایل بهدرستی خوانده نشود.
اشتباهات رایج YAML
- استفاده از Tab بهجای Space برای تورفتگی.
- قرار دادن کلید در سطح اشتباه.
- حذف علامت Colon بعد از نام کلید.
- استفاده نادرست از علامت نقلقول.
- تکرار یک کلید در یک بخش.
- ویرایش فایل با Encoding نامناسب.
- استفاده از کلیدهایی که Build فعلی بازی پشتیبانی نمیکند.
نمونه YAML اشتباه
ServerConfig:
Srv_Port: 30000
Srv_Name: Iranica Server
در این نمونه، تورفتگی Srv_Port با Srv_Name هماهنگ نیست و ساختار مورد انتظار بههم خورده است.
نمونه اصلاحشده
ServerConfig:
Srv_Port: 30000
Srv_Name: 'Iranica Server'
اعتبارسنجی YAML با Python
اگر Python روی سیستم نصب است، میتوانید از کتابخانه PyYAML برای بررسی ساختار فایل استفاده کنید.
ابتدا در PowerShell:
py -m pip install pyyaml
سپس فایل validate_yaml.py را با محتوای زیر ایجاد کنید:
import sys
import yaml
path = sys.argv[1]
try:
with open(path, "r", encoding="utf-8-sig") as file:
yaml.safe_load(file)
print("YAML syntax is valid")
except (yaml.YAMLError, UnicodeError) as error:
print("YAML validation failed:")
print(error)
sys.exit(1)
برای بررسی فایل تنظیمات:
py validate_yaml.py "C:\EmpyrionServer\iranica-dedicated.yaml"
اگر فایل از نظر نحوی سالم باشد، پیام YAML syntax is valid نمایش داده میشود.
توجه: اعتبارسنجی عمومی YAML فقط ساختار نحوی را بررسی میکند. این آزمایش تضمین نمیکند که نام کلیدها، شناسه آیتمها، مقادیر Playfield یا تنظیمات Scenario توسط Empyrion پشتیبانی شوند.
برای تشخیص کلیدهای تکراری نیز باید از Validator سختگیرانهتر استفاده کنید؛ زیرا بعضی Parserها هنگام مواجهه با کلید تکراری فقط یکی از مقدارها را نگه میدارند.
بررسی YAML قبل از Restart
برای جلوگیری از توقف طولانی سرور، بهتر است این ترتیب را رعایت کنید:
- از فایل قبلی Backup بگیرید.
- تغییرات را در یک کپی آزمایشی انجام دهید.
- ساختار YAML را Validate کنید.
- مقادیر را با فایل نمونه Build فعلی مقایسه کنید.
- سرور را متوقف کنید.
- فایل اصلاحشده را جایگزین کنید.
- سرور را اجرا کنید و Logها را بررسی کنید.
تفاوت dedicated.yaml و gameoptions.yaml چیست؟
یکی از اشتباهات رایج این است که مدیر سرور تمام تنظیمات Gameplay را فقط در dedicated.yaml تغییر میدهد و انتظار دارد World موجود بلافاصله تغییر کند.
در Empyrion، فایل dedicated.yaml عمدتاً تنظیمات سرویس و انتخاب World را کنترل میکند؛ در حالی که gameoptions.yaml برای بسیاری از قوانین Gameplay استفاده میشود.
فایل gameoptions.yaml در Scenario
سناریوهای سفارشی ممکن است فایل gameoptions.yaml خودشان را داشته باشند.
این فایل برای تعیین گزینههای اولیه World کاربرد دارد و ممکن است بخشهایی مخصوص Single Player و Multiplayer داشته باشد.
فایل gameoptions.yaml در Save فعال
پس از ساخت World، تنظیمات فعال بازی معمولاً در Save همان World نگهداری میشوند.
مسیر نمونه:
C:\EmpyrionServer\Saves\Games\IranicaGalaxy01\gameoptions.yaml
اگر SaveDirectory را تغییر دادهاید، مسیر واقعی را مطابق تنظیمات خودتان پیدا کنید.
برای تغییر قوانین یک World موجود، ابتدا بررسی کنید آیا گزینه موردنظر در gameoptions.yaml مربوط به Save فعال قرار دارد یا خیر.
بعضی تغییرات تنها روی World جدید اثر میگذارند یا به روش مهاجرت مخصوص Scenario نیاز دارند.
پورتهای Empyrion Dedicated Server و تنظیم Firewall
پورت پیشفرض اصلی Empyrion معمولاً 30000 است. برای ارتباطات Gameplay، در بسیاری از نصبهای فعلی مجموعه پورتهای 30000 تا 30003 استفاده میشود.
پورت 30004 نیز در پیکربندیهای رایج به Telnet مدیریتی اختصاص دارد و نباید بدون نیاز در اینترنت عمومی باز شود.
| پورت نمونه | پروتکل | کاربرد |
|---|---|---|
| 30000 | TCP/UDP | پورت اصلی بازی |
| 30001 تا 30003 | TCP/UDP | ارتباطات تکمیلی Gameplay |
| 30004 | طبق تنظیم Telnet | مدیریت از راه دور، در صورت فعالسازی |
اگر Srv_Port را تغییر دادهاید، پورتهای موردنیاز را مطابق Build و تنظیمات فعلی سرور بررسی کنید.
باز کردن پورتها در Windows Firewall
PowerShell را با دسترسی Administrator اجرا کنید:
New-NetFirewallRule -DisplayName "Empyrion Game UDP" -Direction Inbound -Protocol UDP -LocalPort 30000-30003 -Action Allow
New-NetFirewallRule -DisplayName "Empyrion Game TCP" -Direction Inbound -Protocol TCP -LocalPort 30000-30003 -Action Allow
این دستورات فقط برای پیکربندی نمونه با پورت اصلی 30000 هستند.
اگر سرور روی VPS قرار دارد، Firewall پنل ارائهدهنده را نیز بررسی کنید. در شبکه خانگی ممکن است Port Forwarding در Router ضروری باشد.
بررسی پورتهای فعال
برای مشاهده پورتهای UDP:
Get-NetUDPEndpoint |
Where-Object { $_.LocalPort -ge 30000 -and $_.LocalPort -le 30004 } |
Select-Object LocalAddress,LocalPort,OwningProcess
برای TCP:
Get-NetTCPConnection -State Listen -ErrorAction SilentlyContinue |
Where-Object { $_.LocalPort -ge 30000 -and $_.LocalPort -le 30004 }
این دستورات فقط وضعیت محلی را نشان میدهند. برای بررسی دسترسی واقعی از اینترنت باید اتصال یک Client خارج از شبکه سرور را آزمایش کنید.
آیا Telnet را فعال کنیم؟
Telnet برای بعضی ابزارهای مدیریت سرور کاربرد دارد، اما پروتکل آن رمزنگاری ارتباط را بهصورت پیشفرض فراهم نمیکند.
اگر از آن استفاده نمیکنید، Tel_Enabled را false نگه دارید.
اگر به Telnet نیاز دارید، پورت را فقط برای IP مدیریتی یا از طریق تونل امن قابل دسترسی کنید و رمز قوی انتخاب کنید.
رفع مشکل نمایش ندادن سرور و اتصال بازیکنان
اگر سرور اجرا شده اما بازیکنان نمیتوانند آن را پیدا کنند، ابتدا مشخص کنید آیا مشکل از شبکه است یا World و Scenario بهدرستی بارگذاری نشدهاند.
۱. بررسی Srv_Public
برای نمایش عمومی سرور، تنظیم Srv_Public را مطابق قابلیتهای Build فعلی بررسی کنید.
نمونه:
Srv_Public: true
۲. بررسی Firewall و پورتها
مطمئن شوید پورتهای بازی در Windows Firewall و Firewall شبکه باز هستند.
اگر سرور روی Router خانگی قرار دارد، احتمال وجود CGNAT را نیز بررسی کنید؛ زیرا در این شرایط Port Forwarding معمولی ممکن است کافی نباشد.
۳. بررسی Scenario
اگر سرور در فهرست نمایش داده میشود اما ورود بازیکنان روی Loading متوقف میشود، فایلهای Scenario و SharedData را بررسی کنید.
سناریوی ناقص، نسخه ناسازگار یا فایلهای YAML نامعتبر میتوانند باعث خطا در بارگذاری World شوند.
۴. بررسی نسخه Client و Server
پس از Update، نسخه Client و Dedicated Server باید سازگار باشند. همچنین بعضی سناریوها با نسخههای خاصی از بازی سازگار هستند.
۵. بررسی GameName
اگر سرور بهجای World قبلی، یک World تازه ایجاد میکند، مقدار GameName و SaveDirectory را بررسی کنید.
ممکن است سرور به پوشه Save متفاوتی اشاره کند و به همین دلیل اطلاعات قبلی نمایش داده نشوند.
فایلهای Save در Empyrion کجا ذخیره میشوند؟
اطلاعات World، بازیکنان، سفینهها، پایگاهها و بخشهای مختلف بازی در ساختار Save نگهداری میشوند.
مسیر پیشفرض معمولاً به شکل زیر است:
C:\EmpyrionServer\Saves\Games\IranicaGalaxy01\
در این مثال، IranicaGalaxy01 همان مقدار GameName است.
پوشههای مهم Save
| بخش | کاربرد |
|---|---|
| Players | اطلاعات مربوط به بازیکنان |
| Playfields | وضعیت مناطق و Playfieldهای World |
| Shared | دادههای مشترک موجودیتها و سازهها |
| gameoptions.yaml | بخشی از تنظیمات Gameplay در Save فعال |
| game.dat | اطلاعات مربوط به World و Scenario در برخی نسخهها |
ساختار دقیق فایلها ممکن است با نسخه بازی و Scenario متفاوت باشد. برای Backup مطمئن، کل پوشه Save را حفظ کنید.
انتقال World به سرور جدید
برای انتقال World:
- سرور قدیمی را بهصورت صحیح متوقف کنید.
- از پوشه کامل Save نسخه پشتیبان بگیرید.
- نسخه سازگار Dedicated Server را روی مقصد نصب کنید.
- Scenario و فایلهای سفارشی موردنیاز را منتقل کنید.
- پوشه Save را به مسیر درست انتقال دهید.
- مقدار GameName و SaveDirectory را هماهنگ کنید.
- سرور را اجرا کرده و World را بررسی کنید.
در انتقال سناریوهای سفارشی، حفظ نام پوشه Scenario اهمیت دارد. تغییر نام آن ممکن است باعث شود World قبلی نتواند محتوای موردنیاز خود را پیدا کند.
آموزش Backup گرفتن از Empyrion Server
Backup برای سرورهای Empyrion اهمیت زیادی دارد؛ زیرا World ممکن است شامل صدها ساعت پیشرفت بازیکنان، سفینهها و پایگاههای ساختهشده باشد.
بهترین روش برای یک Backup ساده و سازگار این است که سرور را بهصورت صحیح متوقف کنید و سپس از Save و تنظیمات نسخه پشتیبان بگیرید.
توقف صحیح سرور
اگر به Console مدیریتی دسترسی دارید، از دستور توقف مناسب مانند زیر استفاده کنید:
saveandexit 0
پس از توقف کامل فرایندهای سرور و Playfield، Backup را شروع کنید.
Backup با PowerShell
نمونه زیر از پوشه Save نسخه ZIP تهیه میکند:
$Source = "C:\EmpyrionServer\Saves"
$BackupDir = "D:\EmpyrionBackups"
New-Item -ItemType Directory -Force -Path $BackupDir | Out-Null
$Stamp = Get-Date -Format "yyyyMMdd-HHmmss"
Compress-Archive -Path $Source -DestinationPath "$BackupDir\Empyrion-$Stamp.zip"
این دستور فرض میکند SaveDirectory روی مقدار پیشفرض Saves قرار دارد.
برای حفاظت کاملتر، از فایل تنظیمات اختصاصی و پوشه سناریوی سفارشی نیز Backup جداگانه بگیرید.
چه فایلهایی را باید نگه داریم؟
- پوشه کامل Saves.
- فایل dedicated.yaml اختصاصی.
- پوشه Scenario سفارشی فعال.
- فایلهای gameoptions.yaml.
- تنظیمات ادمین و ابزارهای مدیریتی.
- فهرست Workshop IDهای مورد استفاده.
بهتر است حداقل یک نسخه Backup خارج از سرور اصلی نگهداری شود تا خرابی دیسک یا حذف اشتباه فایلها باعث از دست رفتن همه نسخهها نشود.
چگونه مصرف RAM و CPU سرور Empyrion را کاهش دهیم؟
مصرف منابع در Empyrion به تعداد Playfieldهای فعال و فعالیت بازیکنان وابسته است.
۱. تعداد Playfieldهای فعال را کنترل کنید
اگر بازیکنان در سیارهها و مناطق فضایی مختلف حضور داشته باشند، چند Playfield ممکن است همزمان فعال بمانند.
هر Playfield میتواند مصرف حافظه و CPU ایجاد کند. بنابراین برای سرور کوچک بهتر است Scenario و تعداد بازیکنان را متناسب با منابع انتخاب کنید.
۲. Srv_ReservePlayfields را بررسی کنید
گزینه Srv_ReservePlayfields تعداد Playfield Serverهای رزرو را کنترل میکند.
برای سرور کوچک، مقدار پیشفرض میتواند نقطه شروع مناسبی باشد. افزایش این مقدار ممکن است برای بارگذاری سریعتر مناطق در سرورهای فعال مفید باشد، اما منابع بیشتری مصرف میکند.
۳. مصرف RAM را اندازهگیری کنید
در PowerShell:
Get-Process |
Where-Object { $_.ProcessName -match 'Empyrion|Playfield' } |
Select-Object ProcessName,Id,
@{Name="RAM_GB";Expression={[math]::Round($_.WorkingSet64/1GB,2)}}
این دستور فرایندهای مرتبط را بر اساس نام نمایش میدهد. نام واقعی فرایندها ممکن است با Build نصبشده متفاوت باشد.
۴. فشار CPU را بررسی کنید
برای مشاهده مصرف CPU کل سیستم:
Get-Counter '\Processor(_Total)\% Processor Time' -SampleInterval 2 -MaxSamples 5
اگر CPU هنگام سفر بین سیارهها یا بارگذاری Playfield جدید بهشدت افزایش پیدا میکند، تعداد مناطق فعال و تنظیمات Scenario را بررسی کنید.
۵. Scenarioهای سنگین را با منابع مناسب اجرا کنید
سناریوهایی مانند Reforged Eden میتوانند محتوای گستردهتری نسبت به World پیشفرض داشته باشند.
برای این سناریوها، ظرفیت RAM و CPU را با آزمایش واقعی مشخص کنید. تعداد بازیکنان بهتنهایی معیار کافی برای انتخاب منابع نیست.
آپدیت Empyrion Dedicated Server و Scenario
برای آپدیت فایلهای رسمی سرور، ابتدا World را بهصورت صحیح متوقف کنید و Backup بگیرید.
سپس SteamCMD را اجرا کنید:
C:\SteamCMD\steamcmd.exe +force_install_dir C:\EmpyrionServer +login anonymous +app_update 530870 validate +quit
بعد از Update، فایل تنظیمات اختصاصی را با ساختار نسخه جدید مقایسه کنید.
آیا Scenarioهای Workshop خودکار آپدیت میشوند؟
اگر Scenario را بهصورت دستی در Content/Scenarios کپی کردهاید، نباید فرض کنید که آپدیت Steam Workshop روی رایانه شما همان پوشه کپیشده روی سرور را هم تغییر میدهد.
برای آپدیت Scenario:
- سازگاری نسخه جدید با Save فعلی را بررسی کنید.
- از Save و پوشه Scenario فعلی Backup بگیرید.
- نسخه جدید Scenario را دانلود کنید.
- مطابق دستورالعمل سازنده، فایلهای موردنیاز را جایگزین کنید.
- نام پوشه Scenario را در صورت نیاز ثابت نگه دارید.
- YAMLها را بررسی کنید.
- سرور را اجرا کرده و World را آزمایش کنید.
بعضی آپدیتهای Scenario ممکن است نیاز به World جدید داشته باشند. قبل از جایگزینی فایلها، توضیحات نسخه منتشرشده را بخوانید.
جدول عیبیابی مشکلات رایج Empyrion Server
| مشکل | علت احتمالی | راهحل اولیه |
|---|---|---|
| سرور اجرا نمیشود | YAML نامعتبر یا فایل ناقص | Validate تنظیمات و SteamCMD |
| Scenario بارگذاری نمیشود | نام پوشه یا CustomScenario اشتباه | تطبیق دقیق نامها |
| World پیشفرض باز میشود | GameName یا Save قبلی | بررسی SaveDirectory و GameName |
| بازیکن روی Loading میماند | SharedData یا Scenario ناسازگار | بررسی فایلها و Log |
| سرور در Browser دیده نمیشود | Firewall، پورت یا Public Settings | بررسی شبکه و Srv_Public |
| خطای YAML | تورفتگی یا ساختار اشتباه | استفاده از Validator |
| مصرف RAM زیاد است | Playfieldهای فعال متعدد | پایش فرایندها و ظرفیتسنجی |
| مشکل بعد از Update | ناسازگاری Scenario یا Save | بررسی Release Notes و Backup |
| اطلاعات قبلی نمایش داده نمیشود | مسیر Save یا GameName اشتباه | بازبینی فایل تنظیمات فعال |
چرا بعد از نصب Scenario سرور Crash میکند؟
ابتدا ساختار YAML را بررسی کنید. سپس مطمئن شوید سناریو کامل دانلود شده و با نسخه فعلی بازی سازگار است.
اگر مشکل پس از آپدیت ایجاد شده، نسخه قبلی Scenario را روی محیط آزمایشی همراه با Backup بررسی کنید.
چرا World قبلی بعد از تغییر Scenario باز نمیشود؟
ممکن است Save به ساختار Scenario قبلی وابسته باشد. تغییر نام پوشه یا جایگزینی سناریو با پروژهای متفاوت میتواند باعث ناسازگاری شود.
در چنین شرایطی ابتدا تنظیمات قبلی را بازگردانید و از حذف Save خودداری کنید.
سؤالات متداول درباره Empyrion Server
آیا میتوان Empyrion Dedicated Server شخصی ساخت؟
بله. ابزار Dedicated Server با App ID شماره 530870 از طریق Steam در دسترس است و میتوانید آن را روی Windows Server اجرا کنید.
Empyrion Server روی Linux اجرا میشود؟
نسخه رسمی Dedicated Server برای Windows ارائه شده است. بعضی روشهای غیررسمی با Wine یا Proton امکان اجرا روی Linux را فراهم میکنند، اما به تست سازگاری نیاز دارند.
فایل dedicated.yaml کجاست؟
این فایل معمولاً در پوشه اصلی نصب Dedicated Server قرار دارد و تنظیمات سرویس و انتخاب World را کنترل میکند.
چگونه Scenario سفارشی نصب کنیم؟
پوشه Scenario را داخل Content/Scenarios قرار دهید، مقدار CustomScenario را با نام پوشه هماهنگ کنید و برای World جدید یک GameName تازه انتخاب کنید.
آیا Reforged Eden از Workshop نصب میشود؟
بله. نسخههای Reforged Eden از طریق Steam Workshop منتشر میشوند. برای Dedicated Server باید نسخه سازگار را دانلود کرده و طبق دستورالعمل سازنده در پوشه Scenario قرار دهید.
آیا همه Workshop Mods مانند Scenario نصب میشوند؟
خیر. Scenario، Blueprint و دیگر انواع محتوای Workshop کاربرد و روش نصب یکسانی ندارند.
چرا Scenario نصبشده اجرا نمیشود؟
نام پوشه اشتباه، ساختار ناقص فایلها، YAML نامعتبر، نسخه ناسازگار یا استفاده از Save قبلی میتواند باعث این مشکل شود.
پورت پیشفرض Empyrion چیست؟
پورت اصلی معمولاً 30000 است. در پیکربندی رایج، پورتهای 30000 تا 30003 برای Gameplay استفاده میشوند. پورت Telnet مدیریتی را نباید بدون نیاز عمومی کرد.
چرا تغییر gameoptions.yaml اعمال نمیشود؟
ممکن است فایل Scenario اولیه را ویرایش کرده باشید، در حالی که World فعال تنظیمات خودش را در پوشه Save نگهداری میکند.
چگونه فایل YAML را بررسی کنیم؟
میتوانید از یک YAML Validator یا کتابخانه PyYAML استفاده کنید. این ابزارها ساختار نحوی را بررسی میکنند، اما سازگاری گزینهها با Empyrion را تضمین نمیکنند.
Save سرور Empyrion کجاست؟
مسیر پیشفرض معمولاً Saves/Games/GameName است. مقدار GameName و SaveDirectory در فایل تنظیمات مشخص میشوند.
آیا تغییر Scenario باعث حذف Save میشود؟
تغییر تنظیمات بهخودیخود الزاماً فایل Save را حذف نمیکند، اما ممکن است World قبلی ناسازگار شود یا سرور یک Save جدید ایجاد کند. قبل از تغییر Scenario حتماً Backup بگیرید.
چرا Empyrion RAM زیادی مصرف میکند؟
تعداد Playfieldهای فعال، سفینهها، پایگاهها، NPCها و اندازه Scenario بر مصرف منابع تأثیر میگذارند.
آیا SteamCMD سناریوی Workshop را هم آپدیت میکند؟
دستور app_update 530870 فایلهای رسمی Dedicated Server را بهروزرسانی میکند. سناریویی که دستی در Content/Scenarios کپی شده است باید جداگانه بررسی و آپدیت شود.
جمعبندی
برای ساخت Empyrion Server ابتدا فایلهای Dedicated Server را با SteamCMD و شناسه 530870 نصب کنید. سپس با فایل dedicated.yaml نام سرور، تعداد بازیکنان، پورتها و Scenario را تنظیم کنید.
برای نصب محتوای Workshop، پوشه Scenario را در Content/Scenarios قرار دهید و نام آن را در CustomScenario وارد کنید. اگر از سناریوهای بزرگی مانند Reforged Eden استفاده میکنید، سازگاری نسخه و ساختار Save اهمیت بیشتری دارد.
در صورت بروز مشکل، ابتدا YAMLها، مسیر Scenario، GameName، پورتها و Logهای سرور را بررسی کنید. همچنین پیش از هر Update یا تغییر مهم، از Save و فایلهای سفارشی نسخه پشتیبان تهیه کنید.
با انتخاب منابع متناسب با تعداد Playfieldهای فعال و مدیریت صحیح Scenarioها میتوانید یک سرور Empyrion پایدارتر برای دوستان یا جامعه بازیکنان خود راهاندازی کنید.
منابع و مستندات معتبر
برای بررسی روش نصب، ساختار سناریوها، تنظیمات YAML و مدیریت Workshop از منابع زیر استفاده شده است.
۱. Empyrion Wiki — Dedicated Server Setup
راهنمای نصب Dedicated Server، تنظیمات اولیه، SteamCMD، پورتها و فایلهای مدیریت سرور.
۲. Empyrion Official Forum — Customization & Scenario FAQ
راهنمای منتشرشده در انجمن رسمی بازی برای ساخت Scenario، پوشههای Configuration، Playfields، Prefabs و Sectors.
۳. Valve Developer Community — SteamCMD
مستندات نصب و بهروزرسانی فایلهای سرور با ابزار SteamCMD.
۴. Steam Community — Dedicated Server Setup
راهنمای جامعه کاربران برای نصب سرور، ساخت فایل تنظیمات اختصاصی، Firewall و ابزارهای مدیریتی.
۵. Host Havoc — Workshop Scenario Installation
راهنمای بهروزشده در ژوئن ۲۰۲۶ برای نصب Scenarioهای Workshop و تنظیم CustomScenario.
۶. Steam Community — SharedData to Cloud
آموزش مدیریت SharedData در سناریوهای سفارشی و انتقال فایلهای موردنیاز Client.
۷. Empyrion Steam Workshop
مرجع دریافت سناریوها، Blueprintها و محتوای منتشرشده توسط جامعه کاربران بازی.






دیدگاهها (۰)