ایجاد و تنظیم یک سرور جداگانه TF2
این یک راهنمای قدیمی است. جدید - در وبلاگ من.
سرور جداگانه چه تفاوتی با سرور یکپارچه در استیم دارد؟ این سرور قابلیتهای بیشتری ارائه میدهد (برای مثال، پلاگینها) اما تنظیم آن پیچیدهتر است. همچنین نیاز به یک کانال عریض و حتماً بدون محدودیت خواهد بود.
در اینجا و اکنون، شما استخوانها، عضلات، تاندونها و سایر چرخدندههای دوستسرور را خواهید دید.
لطفا به لینک http://store.steampowered.com/about/ بروید و Windows HLDS Update Tool را دانلود کنید
HLDS را در پوشه سرور مورد نظر نصب کنید:
به عنوان منطقه، اروپا را انتخاب کنید:
در نهایت در پوشه شما ۴ فایل ظاهر خواهد شد:
بر روی HldsUpdateTool.exe کلیک کنید و منتظر بمانید تا ابزار خود را بهروزرسانی کند (پنجره زمانی که کار تمام شد، ناپدید خواهد شد).
اکنون میتوانید سرور tf2 را نصب کنید. یک فایل متنی در پوشه سرور ایجاد کنید و نوع آن را به .bat تغییر دهید (نام مهم نیست، اما من معمولاً از hldsupdatetool.bat استفاده میکنم)، آن را با Notepad باز کنید و دو خط زیر را اضافه کنید:
hldsupdatetool.exe -command update -game tf -dir . -verify_all
pause
اینها خیلی ساده هستند، این دستورات سرور tf2 را در همان پوشه نصب خواهند کرد. پارامتر -verify_all ابتدا دایرکتوریهای سرور را برای وجود فایلهای لازم بررسی میکند و فقط فایلهای قدیمی را بهروزرسانی یا فایلهای غایب را دانلود میکند، این مفید است اگر اتصال قطع شود و شما نمیخواهید همه چیز را دوباره بارگذاری کنید، یا برای بهروزرسانی سرور در آینده. دستور pause برای این است که بعد از بهروزرسانی، پنجره hlds بسته نشود - و ما بتوانیم ببینیم که روند چگونه پیش میرود بدون اینکه به لاگ نگاه کنیم.
اکنون از ترفند "دو بار کلیک با ماوس چپ" بر روی .bat ایجاد شده استفاده کنید و میتوانید به کارهای خود بپردازید تا بعد از ۲.۶۶ گیگابایت برگردید:
به پوشه orangebox بروید، اکنون باید یک bat برای راهاندازی سرور ایجاد کنید. نام again مهم نیست، بگذارید این باشد start.bat:
@echo off
cls
echo محافظت از srcds در مقابل کرش...
title srcds.com Watchdog
:srcds
echo (%time%) srcds راهاندازی شد.
start /wait srcds.exe -console -game tf -tickrate 66 -secure +maxplayers 24 -port 27020 +map cp_dustbowl
echo (%time%) هشدار: srcds بسته شد یا کرش کرد، در حال راهاندازی مجدد....
goto srcds
از این تنظیمات، دو مورد مهم هستند - حداکثر تعداد بازیکنان و نقشه پیشفرض.
دو بار کلیک بر روی این فایل سرور را راهاندازی میکند. اما فعلاً به این کار نیازی نیست، فقط یک میانبر برای آن در دسکتاپ ایجاد کنید. البته شما میتوانید این کار را نکنید و هر بار با چراغ قوه در دندانها به فایل منیجر بروید وقتی که نیاز به راهاندازی سرور دارید.
Motd.txt
محتوای این فایل وقتی کاربر به سرور میرسد، دیده میشود. این ممکن است فقط متن یا html باشد.
شما نمیتوانید فیلم را در صفحه خوشآمدگویی خود قرار دهید، اما یک تصویر میتوانید:
</p> <p>body {background-image:url(http://imagefiles.ru/images/1a0809wmw.gif);</p> <p>background-position:bottom center;</p> <p>background-repeat:no-repeat;}</p> <p>این راهحل فشرده به لطف استایلهای سلسلهمراتبی بهدست آمده است، اما این یک موضوع کاملاً متفاوت است. برای قرار دادن تصویر خود، فقط این مسیر http://imagefiles.ru/images/1a0809wmw.gif را با مسیر خود جایگزین کنید.
نقشهها
علاوه بر افزودن منطقی نقشه کاربر به پوشه tf2 dobroserver\orangebox\tf\maps، شما باید آن را به لیست نقشهها اضافه کنید، در غیر این صورت نمیتوانید آن را انتخاب کنید. نام لیست mapcycle.txt است و در \tf2 dobroserver\orangebox\tf قرار دارد.
ضبط دمو
البته هر بازیکن میتواند دمو ضبط کند، اما در آن فقط خودش خواهد بود. این مشکل را source tv حل میکند - یک فایل autoexec.cfg در پوشه tf2 dobroserver\orangebox\tf\cfg ایجاد کنید و دستورات زیر را به آن اضافه کنید:
tv_enable 1
tv_autorecord 1
دستورات اول تلویزیون منبع را فعال میکند، دومی ضبط خودکار دموها را فعال میکند (در tf2 dobroserver\orangebox\tf).
تنظیمات پایه
با ایجاد یک فایل server.cfg در پوشه tf2 dobroserver\orangebox\tf\cfg، خطوط زیر را در آن قرار دهید:
hostname dobroserver
tf_weapon_criticals "0"
mp_timelimit "30"
sv_alltalk 1
sv_allowdownload 1
sv_allowupload 1
نام، غیر فعال کردن ضربات بحرانی تصادفی، زمان برای هر نقشه، آبیها و قرمزها یکدیگر را میشنوند، میتوانند نقشهها را دانلود کنند و سرور اسپریها را بارگذاری میکند.
افزودن مدیران.
در ابتدا شما باید شناسه استیم خود را بدانید، به هر سروری بروید و در کنسول "status" را وارد کنید.
فایل admins_simple.ini را که در \orangebox\tf\addons\sourcemod\configs قرار دارد، باز کنید.
و خط زیر را به آن اضافه کنید:
"STEAM_0:1:16547568" "99:z"
این کار را من را به مدیر سرور با سطح ۹۹ میکند و به تمام امکانات دسترسی دارد. رقم ۹۹ تصادفی نیست، مدیر نمیتواند دیگری را که سطحش بالاتر از اوست، بن کند یا اخراج کند. برای اطلاعات بیشتر درباره پرچمها میتوانید اینجا بخوانید، اما در بیشتر موارد شما فقط به یک مدیر با حداکثر امکانات نیاز دارید.
MetaMod
یکی از جذابترین چیزها در سرور پلاگینهای SourсeMod هستند، اما برای نصب آنها ابتدا باید MetaMod و خود SourсeMod را نصب کنید.
بعد از اینکه آخرین نسخه را دانلود کردید، آن را در tf2 dobroserver\orangebox\tf استخراج کنید.
یک فایل متنی در دایرکتوری \tf2 dobroserver\orangebox\tf\addons ایجاد کرده و خطوط زیر را در آن قرار دهید:
"Plugin"
{
"file" "E:\tf2 dobroserver\orangebox\tf\addons\metamod\bin\server.dll"
}
فایل را به عنوان metamod.vdf ذخیره کنید:
Sourcemod
برای نصب به دانلود و استخراج آن در orangebox\tf\ نیاز خواهید داشت.
تنظیمات بیشتری در اینجا وجود دارد، اما قبل از تغییر آنها، باید مطمئن شوید که همه چیز کار میکند.
سرور را راهاندازی کنید و در کنسول meta list را وارد کنید.
اگر چیزی شبیه به این میبینید، میتوانید ادامه دهید:
رابط
بازی را شروع کرده، کنسول را باز کرده و فرمان زیر را وارد کنید:
bind "f12" "say !admin"
حال، با فشار دادن "F12" در صورتی که خود را به عنوان مدیر سرور اضافه کردهاید، منوی راحتی ظاهر میشود که بسیار удобно مجازات مدیریت سرور را آسان میکند.
خود منو نیز میتوان به هر نحوی تغییر داد، اما این یک موضوع جداگانه برای یک گفتگوی طولانی است - احتمالاً درباره آن بعداً صحبت میکنم.
پلاگینها
پلاگینها فایلهای .smx هستند که در پوشه \orangebox\tf\addons\sourcemod\plugins قرار میگیرند، فایلهای پیکربندی پلاگینها معمولاً در اینجا قرار دارند: \orangebox\tf\cfg\sourcemod.
در این بخش، من مفیدترین پلاگینها را از نظر خود همراه با مثال تنظیمات در صورت لزوم و توضیحات مربوط به نصب که اگر متفاوت از عادی باشد، شرح خواهم داد.
به شما اجازه میدهد تا محدودیتی برای تعداد بازیکنان یک کلاس تعیین کنید.
تنظیمات در اینجا قرار دارد: \orangebox\tf\addons\sourcemod\configs فایل MaxClass.txt
"MaxClassPlayers"
{
//تنظیمات پیشفرض اگر درخت نقشه پیدا نشود
"default"
{
//هنگامی که ۱ تا ۵۰ بازیکن در سرور وجود دارد
"1-50"
{
//Team2 = قرمز و team3 = آبی
//برای اینکه فقط بر روی یک تیم کار کند، مقدار صفر قرار دهید
"red" "1"
"blue" "0"
//مقدار -1 برای بدون حد، 0 برای عدم اجازه و هر عدد دیگری برای تعیین محدودیت
"scout" "3"
"sniper" "3"
"soldier" "3"
"demoman" "3"
"medic" "3"
"heavyweapons" "3"
"pyro" "3"
"spy" "3"
"engineer" "3"
}
//هنگامی که ۱ تا ۵۰ بازیکن در سرور وجود دارد
"1-50"
{
//Team2 = قرمز و team3 = آبی
//برای اینکه فقط بر روی یک تیم کار کند، مقدار صفر قرار دهید
"red" "0"
"blue" "1"
//مقدار -1 برای بدون حد، 0 برای عدم اجازه و هر عدد دیگری برای تعیین محدودیت
"scout" "3"
"sniper" "3"
"soldier" "3"
"demoman" "3"
"medic" "3"
"heavyweapons" "3"
"pyro" "3"
"spy" "3"
"engineer" "3"
}
//وقتی که ۶ بازیکن در سرور وجود دارد
"6"
{
//Team2 = قرمز و team3 = آبی
//برای اینکه فقط بر روی یک تیم کار کند، مقدار صفر قرار دهید
"red" "1"
"blue" "1"
//مقدار -1 برای بدون حد، 0 برای عدم اجازه و هر عدد دیگری برای تعیین محدودیت
"scout" "2"
"sniper" "2"
"soldier" "2"
"demoman" "2"
"medic" "2"
"heavyweapons" "2"
"pyro" "2"
"spy" "2"
"engineer" "2"
}
//هر چیزی که تنظیم نشده باشد، -1 (بدون محدودیت) خواهد بود
}
}
اطلاعات دقیقتری درباره چگونگی مرگ شما ارائه میدهد.
فایل killersinfo.phrases باید در \orangebox\tf\addons\sourcemod\translations قرار بگیرد.
اگر میخواهید سیستم متریک را در سرور خود ببینید، فایل killersinfo.sp را نگه دارید، نه killersinfo.smx.
فایلهای .sp - کدهای منبع هستند، آنها را میتوان ویرایش کرد، اما برای استفاده از آنها باید کامپایل شوند، این کار به سادگی تمام میشود.
فایل killersinfo.sp را با Notepad باز کنید، خط #define METRIC 0 را پیدا کنید و آن را به #define METRIC 1 تغییر دهید، سپس فایل را ذخیره کنید.
اکنون آن را به پوشه \orangebox\tf\addons\sourcemod\scripting کپی کنید و فایل compile.exe که در همان پوشه قرار دارد را اجرا کنید. فقط کافی است که فایل killersinfo.smx را از \orangebox\tf\addons\sourcemod\scripting\compiled به دایرکتوری آشنا \orangebox\tf\addons\sourcemod\plugins منتقل کنید.
میتوانید زمان تا پایان دور را اضافه کنید یا تنظیم کنید.
وضعیت فقط "سلاح سرد" را فعال میکند.
به شما اجازه میدهد زمان تجدید حیات تیمهای قرمز و آبی را تنظیم کنید.
این پلاگین را با اضافه کردن دستورات به server.cfg تنظیم کنید:
mp_disable respawntimes 1
sm_respawn_time_enabled "1"
sm_respawn_time_blue "3.0" //مهاجمان
sm_respawn_time_red "3.0" //مدافعان
پلاگینی بسیار مفید که هدف آن از نامش مشخص است.
پلاگینی که به صورت خودکار بازیکنانی را که پینگ آنها از حد مجاز فراتر رفته، اخراج میکند.
به شما اجازه میدهد هر بازیکنی را به تیم دیگر منتقل کنید.