آموزش ساخت سرور CS 1.6
در این صفحه
Counter-Strike 1.6 بیش از بیست سال عمر دارد و هنوز هر شب سرورهای پر دارد، چون اجرای سرور CS 1.6 ارزان است، بینهایت قابل شخصیسازی است و دقیقاً همانطور بازی میشود که مردم به یاد دارند. ساختن یک سرور یک بعدازظهر وقت میگیرد؛ اما ساختن سروری که با اضافه کردن اولین پلاگین کرش نکند، نیاز دارد بدانید اجزای آن چگونه یکدیگر را بارگذاری میکنند.
این راهنما هر دو را پوشش میدهد. ابتدا توضیح میدهد یک سرور مدرن CS 1.6 در واقع روی چه مجموعهای اجرا میشود، سپس دو راه آنلاین کردن آن — روی سیستم خودتان با SteamCMD، یا روی سروری میزبانیشده که این مجموعه از قبل روی آن نصب است — و در پایان به کرشی میپردازد که عامل بیشتر گزارشهای «سرورم بالا نمیآید» است، همراه با راهحل دودقیقهای آن.
نسخه کوتاه
- سرور را با SteamCMD دانلود کنید. سرور اختصاصی CS 1.6 همان اپلیکیشن شماره 90 در Steam است، رایگان است و بهصورت ناشناس نصب میشود.
- موتور و کتابخانه بازی را با ReHLDS و ReGameDLL_CS جایگزین کنید، سپس Metamod-r و AMX Mod X را اضافه کنید. تقریباً همه سرورهای جدی CS 1.6 امروز روی همین مجموعه اجرا میشوند.
- تنظیمات پایه را در
server.cfgانجام دهید — نام، رمز RCON، مپها — و آن را روی پورت UDP شماره 27015 اجرا کنید. - پلاگینها و مپها را اضافه کنید، و مطمئن شوید محتوای سفارشی از طریق HTTP (FastDL) برای بازیکنان دانلود میشود، نه اینکه آهسته از مسیر اتصال بازی منتقل شود.
یا مراحل 1 و 2 را کاملاً رد کنید: سرور میزبانیشده CS 1.6 با کل مجموعه نصبشده و FastDL پیکربندیشده تحویل داده میشود و شما از مرحله 3 شروع میکنید.
کل مجموعه را از پیش نصبشده تحویل بگیرید — ReHLDS، ReGameDLL، Metamod-r و AMX Mod X — روی سرور CS 1.6 از HytHost از €1.44/ماه.
مشاهده پلنهای CS 1.6یک سرور مدرن CS 1.6 از چه چیزهایی تشکیل شده است
سروری که Valve منتشر میکند هنوز کار میکند، اما جامعه کاربران سالها پیش بیشتر آن را با بازنویسیهایی نگهداریشده، سریعتر و امنتر جایگزین کرد. دانستن اینکه هر جزء چه کاری انجام میدهد، تفاوت میان رفع یک کرش در دو دقیقه و نصب دوباره همهچیز است.
| جزء | کاری که انجام میدهد |
|---|---|
| HLDS / ReHLDS | موتور. ReHLDS بازنویسی نگهداریشدهای از HLDS ساخت Valve است، با رفع اشکالات و کارایی بهتر، و مستقیماً جایگزین آن میشود. |
| ReGameDLL_CS | خود منطق بازی Counter-Strike (cstrike/dlls/cs.so)، بازنویسیشده و گسترشیافته با تنظیماتی که نسخه اصلی هرگز نداشت. |
| Metamod-r | بارگذار پلاگین که بین موتور و کتابخانه بازی قرار میگیرد و بقیه اجزا را بارگذاری میکند. |
| AMX Mod X | پلتفرم پلاگین: منوهای ادمین، بن، رأیگیری مپ، آمار، حالتهای بازی. پلاگینها فایلهای .amxx هستند. |
| ReAPI | ماژولی برای AMX Mod X که قابلیتهای ReHLDS و ReGameDLL را در اختیار پلاگینها میگذارد. بسیاری از پلاگینهای فعلی به آن نیاز دارند. |
این اجزا بهصورت زنجیرهای بارگذاری میشوند: موتور → cstrike/liblist.gam → Metamod → plugins.ini → AMX Mod X → کتابخانه بازی. اگر هر حلقهای از این زنجیره قابل خواندن نباشد، سرور پیش از بارگذاری مپ از کار میافتد — و بخش عیبیابی پایین دقیقاً درباره همین است.
مسیر الف: میزبانی توسط خودتان با SteamCMD
SteamCMD نصبکننده خط فرمان Valve است و برای Windows و Linux در دسترس است. روی Linux به محیط اجرای 32 بیتی هم نیاز دارد، چون سرور CS 1.6 یک برنامه 32 بیتی است.
- سرور را دانلود کنید:
steamcmd +force_install_dir ./hlds +login anonymous +app_set_config 90 mod cstrike +app_update 90 validate +quit
منتظرSuccess! App '90' fully installed.بمانید. اگر زودتر متوقف شد، همان دستور را دوباره اجرا کنید — از همانجا ادامه میدهد. - یک بار اجرا کنید تا مطمئن شوید موتور کار میکند:
cd hlds ./hlds_run -game cstrike +map de_dust2 +maxplayers 16 -port 27015
در Windows برنامهhlds.exeاست با همین آرگومانها. - مجموعه مدرن را نصب کنید. ReHLDS، ReGameDLL_CS، Metamod-r، AMX Mod X و ReAPI را از نسخههای رسمیشان دانلود کنید و دستورالعمل نصب هر کدام را دنبال کنید — آنها فایلهای موتور را جایگزین میکنند،
addons/را اضافه میکنند وliblist.gamرا به Metamod ارجاع میدهند. این کار را پیش از افزودن پلاگینها انجام دهید، نه بعد از آن. cstrike/server.cfgرا بنویسید. دستکم:hostname "My CS 1.6 Server" rcon_password "use-a-long-random-password" sv_password "" mp_timelimit 25
- پورت را باز کنید. بازیکنان از طریق UDP 27015 به شما وصل میشوند که باید روی روتر فوروارد شود — و روی برخی اتصالهای اینترنت این کار ممکن نیست. راهنمای پورت فورواردینگ توضیح میدهد چطور بفهمید، و برای CS 1.6 هم به همان شکل صدق میکند.
سرور شما حالا دقیقاً تا زمانی آنلاین است که سیستمتان روشن باشد — و IP خانگی شما آدرس آن است، که برای یک سرور عمومی CS 1.6 مهمتر از تقریباً هر بازی دیگری است.
مسیر ب: سرور میزبانیشده با مجموعه از پیش نصبشده
در هاستینگ CS 1.6 در HytHost، سرور با ReHLDS، ReGameDLL_CS، Metamod-r، AMX Mod X و ReAPI از پیش نصبشده تحویل داده میشود و FastDL هم از قبل به سرور دانلود ما متصل است — بنابراین مپها و صداهای سفارشی از همان اولین تعویض مپ از طریق HTTP به بازیکنان میرسند.
- تعداد اسلات را انتخاب کنید. پلنها با 12، 16، 24 و 32 اسلات ارائه میشوند، از €1.44 در ماه. بر اساس تعداد بازیکنانی که در شلوغترین ساعت انتظار دارید انتخاب کنید، نه میانگین.
server.cfgرا ویرایش کنید در مدیر فایل پنل: نام سرور، رمز RCON و تنظیمات مپ.- پلاگینها و مپها را آپلود کنید از طریق مدیر فایل یا SFTP، همانطور که در بخش بعد توضیح داده شده است.
- ریاستارت کنید و بازی کنید. کنسول پنل بارگذاری زنجیره را نشان میدهد، پس فوراً میبینید آیا پلاگینی شکست خورده است یا نه.
سرور چه کامپیوترتان روشن باشد چه نباشد اجرا میشود، پشت فیلترینگ DDoS شرکت Voxility، روی یک آدرس عمومی که آدرس خانه شما نیست، با SLA در دسترسبودن 99.9%. پشتیبانی گفتگوی زنده از 8 صبح تا 11 شب (به وقت کیشیناو) در دسترس است.
افزودن پلاگینهای AMX Mod X و مپهای سفارشی
پلاگینها
- فایل کامپایلشده
.amxxرا درcstrike/addons/amxmodx/plugins/قرار دهید. - نام فایل را در یک خط جداگانه در
cstrike/addons/amxmodx/configs/plugins.iniاضافه کنید. - اگر پلاگین فایل تنظیمات یا فایل زبان دارد، آنها را در پوشههای متناظر زیر
addons/amxmodx/کپی کنید. - ریاستارت کنید، سپس جدیدترین لاگ را در
cstrike/addons/amxmodx/logs/بررسی کنید — یک خط تازه در آنجا ثابت میکند که Metamod و AMX Mod X هر دو بارگذاری شدهاند.
پلاگینها را یکییکی اضافه کنید. وقتی سرور بعد از اضافه شدن همزمان پنج پلاگین خراب شود، به جای یک مظنون پنج مظنون دارید.
مپها و FastDL
مپها در cstrike/maps/ قرار میگیرند و اگر باید در چرخه باشند، در mapcycle.txt هم. بازیکنانی که مپ سفارشی را ندارند هنگام ورود آن را دانلود میکنند — آهسته، از مسیر اتصال بازی، مگر اینکه سرور به آنها بگوید آن را از کجا با HTTP بگیرند. این کار sv_downloadurl است:
sv_downloadurl "https://your-fastdl-host/cstrike/"
در میزبانی شخصی به یک وبسرور با همان ساختار پوشهها نیاز دارید. روی سرور HytHost این مورد خودکار تنظیم میشود؛ فقط زمانی خط sv_downloadurl خودتان را اضافه کنید که عمداً بخواهید فایلها را از جای دیگری ارائه دهید، چون خط موجود در server.cfg تنظیم خودکار را بازنویسی میکند.
وقتی بالا نمیآید: exit code 139 و مشکلات مشابه
یک کرش بیش از همه موارد دیگر روی هم گزارشهای «سرور CS 1.6 من خراب است» ایجاد میکند. در کنسول این شکلی است:
Host_Error: Couldn't get DLL API from ! Segmentation fault (core dumped)
…و سرور با exit code 139 متوقف میشود، معمولاً درست بعد از آپلود یک پک پلاگین یا پک اسکین.
علت: پوشهای بدون مجوز اجرا
آرشیوها اغلب مجوزهای فایل خودشان را همراه دارند. هنگام استخراج یک فایل zip، پوشهها ممکن است بهجای 755 با 644 بیرون بیایند. در Linux یک پوشه برای اینکه اصلاً باز شود به بیت اجرا نیاز دارد — بدون آن هیچ چیز داخلش در دسترس نیست، حتی فایلهایی که کاملاً سالماند. پس اگر cstrike/addons این بیت را از دست بدهد، Metamod بارگذاری نمیشود، کتابخانه بازی هرگز بارگذاری نمیشود و موتور کرش میکند. ممکن است در لاگ Permission denied برای plugins.ini هم ببینید — همان علت.
راهحل
نیازی به نصب دوباره هیچ چیز نیست. مجوز پوشههای آسیبدیده را به 755 برگردانید — cstrike/addons و پوشههایی که همین حالا در آنها آپلود کردهاید. در پنل: Files، منوی پوشه، Permissions، 755، سپس ریاستارت. در میزبانی شخصی، find cstrike/addons -type d -exec chmod 755 {} + همین کار را انجام میدهد.
کرشهای دیگری که خوب است بشناسید
Precache can only be done in spawn functions— یک پلاگین اسکین یا مدل اسلحه، مدلها را در زمان نادرست بارگذاری میکند. آخرین پلاگین اسکینی را که اضافه کردهاید غیرفعال کنید.- بعد از ریاستارت چیزی در
addons/amxmodx/logs/نیست — Metamod یا AMX Mod X بارگذاری نشده است؛liblist.gamوaddons/metamod/plugins.iniرا بررسی کنید.
آیا واقعاً آنلاین است؟
CS 1.6 فقط از UDP استفاده میکند، پس تست پورت با ابزار TCP همیشه "connection refused" میدهد — این طبیعی است، نه خطا. آن را همانطور که مرورگر سرورها انجام میدهد، با یک درخواست A2S روی UDP بررسی کنید:
printf '\xff\xff\xff\xffTSource Engine Query\x00' | nc -u -w3 SERVER_IP 27015 | strings
یک سرور فعال با نام خود، مپ فعلی و 1.1.2.7/Stdio پاسخ میدهد.
پرسشهای پرتکرار
بهطور پیشفرض پورت UDP شماره 27015، و فقط UDP. سرور شخصی نیاز دارد این پورت روی روتر فوروارد شود؛ سرور میزبانیشده با پورتی از پیش اختصاصیافته و در دسترس تحویل داده میشود. تست آن با ابزار TCP همیشه ناموفق است که طبیعی است — بهجای آن از طریق UDP بررسی کنید.
تقریباً برای هر سروری، بله. ReHLDS بازنویسی نگهداریشده موتور HLDS ساخت Valve است با رفع باگها، اصلاحات امنیتی و کارایی بهتر، و مستقیماً جایگزین آن میشود. بیشتر پلاگینهای فعلی ReGameDLL_CS و ReAPI را هم انتظار دارند که بر پایه آن ساخته شدهاند.
برای اجرای سرور نه، اما تقریباً همه سرورها از آن استفاده میکنند. AMX Mod X پلتفرم پلاگینی است که پشت منوهای ادمین، بنها، رأیگیری مپ، آمار و حالتهای بازی سفارشی قرار دارد. توسط Metamod بارگذاری میشود و پلاگینها بهصورت فایلهای .amxx فهرستشده در plugins.ini اضافه میشوند.
برای شلوغترین ساعت برنامهریزی کنید، نه میانگین. 12 اسلات برای سرور دوستانه مناسب است، 16 برای بازی عمومی کلاسیک 8 در برابر 8، و 24 یا 32 برای یک سرور عمومی شلوغ یا deathmatch. در HytHost پلنها با 12، 16، 24 و 32 اسلات ارائه میشوند، از €1.44 در ماه.
معمولاً چون یک پوشه هنگام استخراج آرشیو مجوز اجرای خود را از دست داده است، اغلب cstrike/addons. در این حالت Metamod بارگذاری نمیشود، کنسول "Couldn't get DLL API from !" را نشان میدهد و موتور کرش میکند. برگرداندن مجوز پوشههای آسیبدیده به 755 و ریاستارت مشکل را حل میکند؛ نیازی به نصب دوباره هیچ چیز نیست.
بله. بازیکنان هنگام ورود مپها و صداهای ناموجود را دانلود میکنند. وقتی sv_downloadurl به یک سرور HTTP اشاره کند که پوشه cstrike را آینه کرده است (FastDL)، دانلود سریع است؛ بدون آن فایلها آهسته از مسیر اتصال بازی منتقل میشوند. در HytHost، FastDL بهطور خودکار پیکربندی میشود.
نرمافزار سرور رایگان است: سرور اختصاصی Valve بدون هزینه از طریق SteamCMD نصب میشود و ReHLDS، ReGameDLL_CS، Metamod-r و AMX Mod X هم رایگاناند. اجرای آن در خانه فقط هزینه برق دارد، اما سیستم باید روشن بماند و IP خانگی شما آدرس سرور میشود.
سرور CS 1.6 شما، همراه با کل مجموعه
سرورهای CS 1.6 در HytHost با ReHLDS، ReGameDLL، Metamod-r، AMX Mod X و FastDL خودکار، پشت فیلترینگ DDoS ارائه میشوند — از €1.44 در ماه.
Live chat 8 AM – 11 PM (Chișinău time) · tickets answered during business hoursاین راهنما برایتان مفید بود؟