На мой взгляд создание кс сервера довольна тяжёлая задача и
трудоёмкая. Сама установка сервера занимает не больше 30 мин, а вот
настройка и установка плагинов гораздо больше. Но я вкратце попробую в
данную статью внести большинство всех аспектов сборки кс сервера. Да! и
ещё одно, эта статья написана для того чтобы Вы смогли просто собрать
сервер, но и понимали что и зачем и почему. Я пишу её с опыта
накопленного мною создания сервера -=Kuznec=-, и всей той кучей статей
которые я перечитал, когда только начал собирать сервера.
Зачем создавать сервер кс 1.6 с нуля если существует множество готовых
серверов? - Это наверное первый вопрос который возникает у Вас. Поспешу
ответить, когда я сам только начал заниматься кс серверами, я тоже качал
готовые сервера и просто их запускал. Конечно множество из них были
просто коряво собраны, а некоторые просто не работали, но все же находил
пару хороших серверов и они нормально работали. Но когда я задумался о
продвижении своего сервера я понял, что надо его сделать уникальным
(установить новые плагины, изменить надписи). Но когда открыл папку с
сервером всё что я увидел это набор файлов с непонятными названиями=)
И тогда я решил собрать кс сервер сам с нуля, настроить его как я считаю
нужным и поставить плагины те которые я сам захочу и переписать их.
Сборка Сервера
1. Первое с чего начнем это надо скачать hldsupdatetool.exe (с Оф.Сайта
или с нашего) и запустить его (проходит процедура проверки на
обновления)
2. Запускаем повторно hldsupdatetool.exe но уже с параметрами
hldsupdatetool.exe -command update -game cstrike -dir c:\hlds;
Сейчас объясню что значат эти команды:
а)-command update - Я думаю всем понятны эти слова, но для незнающих
англ.яз. это команда обозначает обновление. Но по скольку у нас нет
сервера она начнёт скачивать все необходимые файлы. Но как она узнает к
какой игре ей скачивать файлы? - Спросите Вы, а вот для этого нам и
нужна следующая команда;
б)-game cstrike - Это команда указывает какую игру вы хотите
обновить/установить себе;
в)-dir c:\hlds - Наверно совсем для ясности разобью её на две части.
1)dir - Это команда выбора/создание раздела(проще говоря папки);
2)c:\hlds - Это полный путь папки.
Да, что я ещё хочу сказать по поводу команды -dir c:\hlds? Её можно
не писать, и тогда все файлы сервера кс установятся в папку где
расположен файл hldsupdatetool.exe. (я лично так всегда делаю, создаю
мне нужную папку, кидаю туда hldsupdatetool.exe и запускаю его без
команды -dir c:\hlds то есть так hldsupdatetool.exe -command update
-game cstrike)
На данном этапе могут возникнуть ошибки, но они редкость, в основном
требуется просто повторить запуск hldsupdatetool.exe -command update
-game cstrike -dir c:\hlds.
У Вас всё удачно загрузилась? Если да(а иначе и быть не может) то я
Вас поздравляю! У вас есть сервер кс 1.6 48 протокола (или проще говоря
STEAM) без плагинов и модов. А как его сделать теперь 47/48 протокол и
установить моды и плагины? Спросите Вы, а об этом я расскажу ниже=)
3. Данный этап посвящу установки metamod.
Немного ифы. Что такое metamod? Metamod это плагин интерфейс для
Half-Life модификаций, что расположен между двигателем Half-Life игры и
Half-Life Mod, обеспечивая динамическую загрузку и выгрузку DLL плагинов
для добавления или удаления дополнительных функций с игрового сервера.
(Проще говоря плагин позволяющий устанавливать различные модули типа
amxmodx, dproto, booster, mmtimer и т.д)
Я думаю и так ясно что он нам нужен, даже очень=)
И так, приступим к установке metamod
а)Качаем от сюда metamod(Оф.Сайт) Если не получается скачать вот с
нашего сайта;
б)Файл metamod.dll кидаем в \cstrike\addons\metamod (две последние
папки приедаться создать), и там же создаем файл plugins.ini-зачем этот
файл, я расскажу ниже;
в)Теперь открываем файл liblist.gam, он лежит в папке
cstrike(\cstrike\liblist.gam)
И ищем и меняем строчку (gamedll "dlls\mp.dll") на (gamedll
"addons\metamod\metamod.dll").
Всё Вы молодцы! Мы установили metamod на Ваш сервер.
4. Установка AMXMODx
Опять немного ифы=) Что такое AMXMODx? AMX Mod X (AMXX) является
Metamod плагин, который позволяет писать и запускать модификации для
Half-Life движка с малым языком сценариев.
И так установка:
а)Качаем AMXMOD с Оф.сайта (или с нашего)
б)Из архива берем папку amxmodx и кидаем к нам на сервер в папку
addons (cstrike/addons/)
в)Теперь нам его надо подключить. Как мы уже знаем что модули типа
amxmod'a на сервере, запускает metamod, и что бы он знал что у нас стоит
модуль который нужно запускать, мы идем в папку metamod и открываем
файл plugins.ini(именно в него мы вписываем все подключаемые модули)
(/cstrike/addons/metamod/plugins.ini). И так открыли файл plugins.ini и
вписываем следующий строчку
win32 addons/amxmodx/dlls/amxmodx_mm.dll (сохраняем и закрываем)
Объясню.
win32-Это платформа сервера(то есть сервер запускается на Windows и не
важно 32 или 64 битный он).
addons/amxmodx/dlls/amxmodx_mm.dll- это путь файла начиная с папки
addons.
Я Вас поздравляю! Вы установили AMXMOD на ваш кс сервер, и скоро мы
сможем устанавливать плагины на ваш сервер но а пока...
5. Установка Dproto
Что такое Dproto? DPROTO - плагин для Metamod решающий проблему
мультипротокола и эмулирующий SteamID для NoSteam-клиентов. Имеет гибкую
систему настроек и богатые функциональные возможности.
Как вы догадались Dproto позволяет сделать Ваш кс сервер 47/48
протокола. То есть на Ваш сервер кс смогут зайти как игроки со стим так и
без него.
Установка его происходит так:
а)Качаем Dproto с Оф.Сайт или с нашего (лично я устанавливаю более
старую версию - dproto 0.4.8(мне она больше нравиться));
б)Создаем папку dproto в папке addons. в архиве ищем папку windows
(bin/windows) берем файл dproto.dll и кидаем в папку
dproto(addons/dproto/);
в)Также нам понадобиться файл dproto.cfg, его мы кидаем в корневую
папку сервера, то есть там где файл запуска сервера и папки
cstrike,valve,reslists и т.д.
г)И также как и AMXMOD подключаем dproto. Заходим в папку metamod и
открываем файл plugins.ini(/cstrike/addons/metamod/plugins.ini). И
добавляем новую строку
win32 addons/dproto/dproto.dll (сохраняем и закрываем)
Теперь на Ваш сервер смогут зайти игроки как нонстим так и стим.
Поздравляю!
Я считаю что это самые важные модули для сервера. Но опишу ещё один
модуль который позволит повысить фпс (FPS) сервера.
6.Установка Mmtimer.
Вкратце про фпс.
И так что это такое? FPS (frames per second) - Частота смены кадров.
Чтобы оценить быстродействие системы трехмерной визуализации, достаточно
запустить приложение, динамически создающее трехмерные сцены, и
подсчитать число кадров в секунду, которое система способна отобразить.
Однако, единого, достаточно авторитетного теста такого рода еще не
создано. Большинство имеющихся тестов, основаны на фрагментах трехмерных
игр и проверяют поведение графической карты на весьма ограниченном
наборе функций. Это определении так сказать для "клиентов".
Но есть фпс "сервера" и значение его другое немного. Тут задействована
не графическая обработка, а программная то есть, мы увеличиваем не
частоту кадров а частоту операций произведённых процессором в секунду,
что приводит к более низкому пингу сервера и "плавности" видео у
клиента.
Я думаю понятно что чем выше фпс тем меньше пинг и лагов. Но все хорошо в
меру, если вы поставите сильно высокий фпс сервера, а железо сервера не
тянет, то это приведёт к обратному пинг начнёт скакать, и появятся
лаги. советую Вам значение от 500 до 1000 для комфортной игры.
Чистый сервер кс выдаёт приблизительно 100фпс(много зависит не только от
программы но и от железа, и даже производителя. Если я начну и это
описывать, то эту статью уже и статьей нельзя будет назвать, это будет
книга=)Так что не будем тут сильно углубляться).
Так если чистый сервер кс выдаёт максимум 100фпс а нам надо 500-1000фпс,
что нам требуется установить? - спросите Вы.
А ответов на это вопрос есть много, такие модули как Booster, ALX LOW
PING, Mmtimer.
Мой выбор Mmtimer! Он прост в использовании и хорошо себя проявил.
Установка его производиться также как и других metamod плагинов:
а)Качаем Mmtimer (Оф.Сайт я не нашёл, вот с нашего) .
б)Создаем папку в addons с названием mmtimer;
в)Копируем в папку mmtimer (cstrike/addons/mmtimer) файл mmtimer.dll
г)Говорим metamod'у что у нас есть новый модуль который надо
запускать=) Открываем файл plugins.ini
(/cstrike/addons/metamod/plugins.ini) и вписываем новую строчку:
win32 addons/mmtimer/mmtimer.dll
Этотим модулем управляет две команды (которые вы должны вписать в
server.cfg (cstrike/server.cfg)):
mm_insane 0
sys_ticrate 1000
Кратко об этих командах:
mm_insane 0 - У mmtimer 1.6 есть 3 режима работы
а)mm_insane 0 - Минимальная нагрузка на проц(при таком значении выше
1000фпс не выжать)
б)mm_insane 1 - Максимальная нагрузка на ядро(при этом значении ваше
ЦП будет держаться на уровне загрузки 80%-100% даже если игроков нету,
но при таком значении можно выжать 20000фпс(на мой взгляд в этом смысл
просто отсутствует, разве что просто по выделываться=));
в)mm_insane 2 - Средняя нагрузка на ядро(Имеют версии выше 1.6,
полезное значение для стабильного заданного фпс от 500-1000, плюс
полезна для тех кто хочет держать пару серверов на одном ядре)
sys_ticrate 1000 - Указывает mmtimer'у какое значение фпс удерживать
1000=1000фпс(ну тут, думаю я, всё понятно).
И не забывайте! Стабильный fps зависит не только от сборки сервера, но и
от железа на котором стоит сервер.
7.Установка плагинов amxx
Начну наверное с того что полностью описать данный раздел я не смогу,
поскольку разные плагены имеют файлы которые надо роскидывать по разным
папка, и есть плагены состоящие из одного файла *amxx, поэтому чёткое
описание установки читайте в архиве самого плагена.
Но могу коечто обьяснить.
а)Главный файл плагена *amxx всегда должен находиться в папке
plugins (cstrike/addons/amxmodx/plugins);
б)Любой плаген должен прописываться в файле plugins.ini
(cstrike/addons/amxmodx/configs/plugins.ini);
в)"Файлы *amxx и *sma. Чем они отличаються?"
1)*sma - это исходник плагена и в работе самого плагена он не
задействованный.
2)*amxx - Ключевой файл плагена. Несет в себе код операций
выполнения необходимых операций на сервере.
Тут всё
Пока это всё, дорогие друзья. Вторая часть статьи будет выложена после
того как я её допишу. В ней пойдёт речь о настройке сервера(файлах
настройки, командах и характеристиках)
С вами был Влад Dj.Blade777 Юнденко.
|