Школа Counter-Strike - Как создать CS 1.6 сервер с нуля

Мир Counter-Strike

Приветствую Вас Гость | RSSГлавная | Как создать CS 1.6 сервер с нуля | Регистрация | Вход
Главное меню
Теория CS
Видео школа CS 1.6
Скачать
Магазин
Мастерская
Арт-Cs
Новые видео уроки CS 1.6Новые материалы и файлы

Полное руководство создания сервера для Counter-Strike 1.6
 
В этом разделе мы полностью, пошагово рассмотрим все необходимые действия для создания собственного сервера:
 
Шаг 1: Где взять и как установить чистый сервер.
Шаг 2: Как настроить сервер
Шаг 3: Устанавливаем Metamod
Шаг 4: Ставим и настраиваем AMX Mod X
Шаг 5: Что такое Dproto - нонстим 47/48. Как его установить и зачем
Шаг 6: Установка бустера mmtimer
 
Что ж, давайте разложим по полочкам создание и установку сервера для Counter-Strike 1.6. И не просто сервера, а сервера который:
- отвечает последним тенденциям, содержит в себе все последние обновления.
- виден в Интернете
- стабильно работает при хорошей связи, и нормальных параметрах вашего компьютера.
- не содержит в себе кучи разного мусора, рекламы и т.д.
 
Нужно сразу отметить рекомендуемые параметры вашего компьютера и скорости Интернета, для нормальной работы сервера:
 
Параметры компьютера
- двух ядерный процессор
- 2 GB оперативной памяти
- видео карта роли почти не играет
 
Параметры Интернета
- скорости от 2 Мб/с (для 16 слотов, а если у вас до 1 мб то даже на чужом сервере нормально не поиграете, будет пинг за 150 )))
- выделенный ИП (ip адрес) – если у вас нет, то можно купить у провайдера или присвоить бесплатно с помощью бесплатного Интернет сервиса (подробнее см. раздел «Что делать если сменный IP»)

 
Шаг 1: Где взять и как установить чистый сервер.
 
Сервер в игре Counter-Strike 1.6 да и в Half Life называется – HLDS.
 
HLDS (Half Life Dedicated Server) – выделенный автономный сервер для Half-Life и CS 1.6
 
HLDS запускается без запуска самой игра Counter-Strike 1.6 и работает автономно, что позволяет на одном компьютере запустить его и с этого же компьютера можно и играть на нем!
 
В no-steam версиях Counter Strike сервер обычно устанавливается вместе с самой игрой, т.к. сервер использует многие файлы самой игры (т.е. HLDS – это серверная часть игры). Использовать этот сервер не рекомендуется, но вполне реально.
 
Мы же будем использовать самую последнюю, официальную, "чистую" версию HLDS, которую Вы можете абсолютно бесплатно скачать с официального сайта Steam по адресу:
http://store.steampowered.com
(на этой странице промотайте в самый низ и наведите на вкладку инструменты, в появившемся меню выберите «Windows HLDS Update Tool») Вот вы скачали апдейтер, теперь просто запустите его и следуя инструкциям установите HLDS (при выборе региона укажите «Europe» - вы же в Европе живете? )))
 
Либо Вы можете скачать HLDS с нашего сайта –
 
Теперь, после скачки и разархивирования, у вас есть так сказать чистый сервер, который можно запустить - заходим в папку сервера, запускаем hlds.exe. Выбираем параметры и «Start Server».
Но это пока что чистый, официальный сервер, на котором будет работать только Steam, то есть если вы зайдете с No-Steam (пиратская кс) то увидете ошибку "STEAM validation rejected".
 
Чтобы это избежать, нужно будет установить «Dproto», но об этом позже.
 
Что бы узнать версию севера – наберите в его консоли:
version
- увидите:
 
Protocol version 48
Exe version 1.1.2.6 (cstrike)
Exe build: 14:21:06 Mar 8 2010 (4554)
 
(такой был на момент написания стати 11.04.2011)

 
Шаг 2: Как настроить сервер.
 
Все настройки и параметры сервера хранятся в файле server.cfg в папке cstrike.
Открываем его блокнотом, полностью очищаем его и вставляем следующий текст:
 
// Старт сервера
hostname "WORLD-CS.NET" // Название сервера
maxplayers 16 // Количество слотов
map de_dust2 // Карта, с которой стартует сервер
sv_lan 0
 
// Подгружаем бан-листы
exec banned.cfg
exec listip.cfg
 
// Настройки
mp_autokick 0 // (1) Автокик тимкиллеров
mp_autoteambalance 1 // (1) Автоматический баланс команд
mp_buytime 0.5 // (1.5) Время на покупку (мин)
mp_c4timer 35 // (45) Время таймера на бомбе (сек)
mp_chattime 3 // (10) Время до загрузки следующей карты (сек)
mp_flashlight 1 // (0) Разрешить фонарик
mp_forcecamera 0 // (0) Ограничение просмотра игры после смерти
mp_forcechasecam 1 // (0) После смерти можно смотреть только за своей командой
mp_freezetime 2 // (6) Время, после которого стартует раунд (сек)
mp_friendlyfire 0 // (0) Попадения по своим не будут учитываться
mp_limitteams 0 // (2) Максимальная разница игроков в командах (для автобаланса)
mp_playerid 1 // (0) Выводить информацию о игроках при наведении прицела
mp_roundtime 2 // (5) Длительность раунда (мин)
mp_timelimit 30 // (0) Время на карту (мин)
 
sv_voicequality 5 // (3) Качество голоса
sv_voicecodec voice_speex // (voice_miles) Звуковой кодек
 
// Рейты
sv_maxrate 20000
sv_maxupdaterate 101
sv_minrate 10000
sv_minupdaterate 60
 
Самые основные настройки у вас есть. Текст после "//" считается комметарием и не воспринимается программой. В скобках указано значение по умолчанию.
 
Теперь открываем блокнот и пишем следующую строчку (строка запуска сервера):
 
start "Server" /min /high "hlds.exe" -game cstrike -console +port 27015 +ip 255.255.255.255
 
Рассмотрим подробнее, что здесь написано:
start "Server" – запуск консоли с заголовком Server
/min – свернуть после запуска
/high – ставим высокий приоритет
-game cstrike - запускать сервер под CS
-console - сервер стартует в консольном режиме
+port 27015 - порт, на котором будет работать сервер (по умолчанию порт 27015)
+ip 255.255.255.255 – ip адрес сервера
 
Если разбираетесь в этом - то можете поменять необходимые настройки, если же нет - то не трогайте, здесь все гладко стоит.
 
Далее...
1) нажимаем «сохранить как»,
2) имя файла: «Server.cmd»,
3) тип файла: все файлы.
4) Сохраняем в корневом каталоге сервера.
 
Теперь запускаем сервер только через Server.cmd.
 
При желании добавьте:
-nomaster – не выводить сервер в списке серверов интернета
-insecure – отключить VAC

 
Шаг 3: Устанавливаем metamod
 
Metamod служит для подключения дополнительных модов на сервер, таких как AMX Mod X, StatsMe, античитов и др. Он встроен в автоматический установщик Amx Mod X Full Installer, но мы всё будем делать сами, так что начнем.
 
Качаем самую последнюю версию Metamod с официального сайта -
metamod.org
(выбирайте windows Binary если у вас Windows OS)
 
или с нашего сайта –
 
В папке cstrike создаем папку addons, а внутри неё папку metamod. И распаковываем файл metamod.dll в неё. Открываем \cstrike\liblist.gam (блокнот) и исправляем строчку
 
gamedll "dlls\mp.dll"
на
gamedll "addons\metamod\metamod.dll"
 
и сохраняем.
 
Вот и все - метамод на своем месте.

 
Шаг 4: Ставим и настраиваем AMX Mod X
 
Скачать AMX Mod X можно с официального сайта –
amxmodx.org
(с левой стороны, в меню найдите раздел - ".downloads"),
 
или с нашего сайта –
 
После распаковки открываем первый архив (amxmodx-1.8.1-base.rar) и распаковываем его в папку сервера \cstrike\ (например D:\Server\cstrike).
После открываем второй архив, распаковываем туда же, соглашаемся на замену всех файлов.
 
В папке cstrike/addons/metamod создаём файл plugins.ini. В этом файле будут содержаться пути к библиотекам подключаемых модов. Впишите туда первую строчку:
win32 addons/amxmodx/dlls/amxmodx_mm.dll
 
и сохраните.
 
Все, AMX Mod X подключен.
 
Далее, по ходу создания сервера вам придется подключать и другие моды, в результате чего файл addons/metamod/plugins.ini может выглядеть так:
win32 addons/amxmodx/dlls/amxmodx_mm.dll
win32 addons/dproto/dproto.dll
win32 addons/mmtimer/mmtimer.dll
win32 addons/podbot/podbot_mm.dll
 
Теперь переходим к настройке AMX Mod X.
В папке csrtike/addons/amxmodx/configs. Открываем файл amxx.cfg, в котором содержатся основные настройки AMX Mod X, далее все необходимые настройки с пояснениями:
 
echo Executing AMX Mod X Configuration File
 
// Уровень доступа (права на сервере) тех, кто не прописан в users.ini (обычных игроков, не админов). По умолчанию: "z"
amx_default_access "z"
 
// Поле (~переменная) для пароля // Для ввода пароля (админам) используется команда setinfo _pw pass (где _pw – это и есть поле пароля, а pass - сам пароль). По умолчанию: "_pw"
amx_password_field "_pw"
 
// Вход на сервер
// 0 – отключить авторизацию, игроки не будут проверяться (не будет присвоен ни один уровень доступа)
// 1 – нормальный режим, все флаги в аккуантах ставятся (стоит по умолчанию)
// 2 – кикать всех, кого нет в листе юзеров (users.ini)
amx_mode 1
 
// Показывать активность администратора.
// 0 – не показывать
// 1 – показывать, но без ника админа (например, ADMIN Kicked Player)
// 2 – показывать, с ником (например, ADMIN MegaPlayer Kicked Player). По умолчанию: 2
amx_show_activity 2
 
// Частота в секундах и текст сообщения, которое будет прокручиваться
// По умолчанию: "Welcome to %hostname% -- This server is using AMX Mod X" 600
amx_scrollmsg "Welcome to %hostname% -- This server is using AMX Mod X" 600
 
// Сообщение по центру экрана (в конце цвет в RGB)
// По умолчанию: "Welcome to %hostname%" "000255100"
// "This server is using AMX ModX\nVisit http://www.amxmodx.org" "000100255"
amx_imessage "Welcome to %hostname%" "000255100"
amx_imessage "This server is using AMX Mod X\nVisit http://www.amxmodx.org" "000100255"
 
// Частота вывода на экран этого сообщения (см. выше) в секундах
// По умолчанию: 180
amx_freq_imessage 180
 
// Время бана для меню (amx_banmenu)
// Используйте 0 для перманент банов (навсегда)
// По умолчанию: 0 5 10 15 30 45 60 (на ваш выбор)
amx_plmenu_bantimes 0 5 10 15 30 45 60
 
// Урон от слэпа (slap) для меню (amx_slapmenu)
// Слэй автоматически идет первым параметром
// По умолчанию: 0 1 5
amx_plmenu_slapdmg 0 1 5
 
// Как часто игроки могут писать сообщения в чат в секундах (защита от флуда). По умолчанию: 0.75
amx_flood_time 0.75
 
// Количество резервируемых слотов для админов. По умолчанию: 0
amx_reservation 0
 
// Скрывать резервируемые слоты. По умолчанию: 0
amx_hideslots 0
 
// Показывать оставшееся время до конца карты
// a – белый текст внизу по центру экрана
// b – голосовое сопровождение
// c – не добавлять "remaining" (для голоса)
// d – не добавлять "hours/minutes/seconds" (для голоса)
// e – показывать/озвучивать, если текущее время меньше, чем установлено в параметре
// По умолчанию: "ab 1200" "ab 600" "ab 300" "ab 180" "ab 60" "bcde 11"
amx_time_display "ab 1200" "ab 600" "ab 300" "ab 180" "ab 60" "bcde 11"
 
// Сопровождать голосом команды "say thetime" и "say timeleft". По умолчанию: 1
amx_time_voice 1
 
// Минимальная задержка в секундах между двумя голосованиями. По умолчанию: 10
amx_vote_delay 10
 
// Сколько длится голосование в секундах. По умолчанию: 10
amx_vote_time 10
 
// Показывать, кто за что проголосовал. По умолчанию: 1
amx_vote_answers 1
 
// Отношения для результатов голосования // По умолчанию: 0.40
amx_votekick_ratio 0.40
 
// По умолчанию: 0.40
amx_voteban_ratio 0.40
 
// По умолчанию: 0.40
amx_votemap_ratio 0.40
 
// По умолчанию: 0.02
amx_vote_ratio 0.02
 
// Максимальное время, на которое может быть продлена карта (в минутах). По умолчанию: 90
amx_extendmap_max 90
 
// На сколько может быть продлена карта за раз (в минутах). По умолчанию: 15
amx_extendmap_step 15
 
// Разрешить выбирать язык. По умолчанию: 1
amx_client_languages 1
 
// Дебаг-режим
// 0 - отключен
// 1 – плагины с опцией "debug" в plugins.ini запускаются в debug режиме
// 2 – все плагины запускаются в debug режиме
// По умолчанию: 1
amx_debug 1
 
// Статистика ведётся
// 0 – по нику
// 1 - по authid
// 2 - по ip
// По умолчанию: 1
csstats_rank 1
 
// Максимальный размер файла статистики
// По умолчанию: 3500
csstats_maxsize 3500
 
// Записывать статистику ботов. По умолчанию: 0
csstats_rankbots 0
 
// Время для отображения статистики после смерти (в секундах). По умолчанию: 12.0
amx_statsx_duration 12.0
 
// Время отображения статистики (HUD) после конца раунда
// Отрицательное время уберёт статистику до того, как freezytime раунда закончится
// По умолчанию: -2.0
amx_statsx_freeze -2.0
 
Теперь открываем modules.ini, в нём содержится список подключаемых модулей.
Модули содержат стандартные функции, необходимые для работы плагинов amxx.
Если в описании плагина сказано, что он не будет работать без определенного модуля, этот модуль следует включить, убрав ";" в строке перед его названием.
 
Для начала оставим вот такой набор модулей:
;mysql
;sqlite
fun
engine
fakemeta
;geoip
;sockets
;regex
;nvault
cstrike
csx
;hamsandwich
 
Админские права (или как сделать себя админом сервера CS 1.6).
 
Что бы сделать себя (или кого то) админом сервера CS 1.6 - откройте файл users.ini, в нём расписаны полномочия юзеров.
В самом низу файла будут строчки вида .
Одна строчка – один юзер.
 
"aaa" "bbb" "???" "xx"
 
где:
aaa - ник или ip или steam_id
bbb - пароль
??? - флаги полномочий (права админа)
xx - флаги входа на сервер
 
Теперь подробнее.
 
Флаги полномочий:
b - Флаг, разрешающий подключение на резервные слоты.
c - Флаг доступа к команде amx_kick.
d - Флаг доступа к командам amx_ban и amx_unban.
e - Флаг доступа к командам amx_slap и amx_slay.
f - Флаг доступа к команде amx_map.
g - Флаг доступа для изменений cvar настроек через amx_cvar.
h - Флаг доступа к amx_cfg.
i - Флаг доступа к amx_chat и другим чат командам.
j - Флаг доступа к amx_vote и другим командам голосования.
k - Флаг доступа для изменения cvar переменной sv_password.
l - Флаг доступа к amx_rcon и возможности изменения всех cvar на сервере.
m-t - Зарезервированные флаги (для сторонних плагинов)
u - Флаг доступа к меню.
z - Флаг пользователя. Не даёт ни каких полномочий.
 
Флаги входа на сервер:
a - отключает игрока, если пароль не совпадает
b - клан тэг
c - это steam_id или won_id
d - это ip
e - пароль не проверяется (нужен только ник/ip/steam_id)
k - имя или тэг чувствительны к регистру (т.е. если вы поставите этот флаг к нику Player и на него стоит пароль, тогда кто угодно может использовать имя plAyEr, никаких полномочий он при этом не получит)
 
Исходя из этого - пропишем себя админом, добавив такую строчку:
 
"123.45.67.89" "" "abcdefghijklmnopqrstu" "de"
(где 123.45.67.89 – ваш ip, пароля не требуется, только не глупите, ставьте именно СВОЙ ИП.)
 
Или по нику: "My Name" "my_password" "abcdefghijklmnopqrstu" "a"
(где My Name – ваш ник, а пароль - my_password, не забудьте перед коннектом к серверу прописать в консоли setinfo _pw "my_password")
 
Переходим к плагинам.
Плагины добавляют всякие примочки на сервер (статистика, эффекты и т.д.) и повышают функциональность сервера.
Открываем файл plugins.ini, и видим набор стандартных плагинов.
Отключается любой плагин так же, как и модуль – нужно поставить ";" перед его названием.
А что бы установить новый – просто скопируйте его в папку plugins, и пропишите название файла (не забудьте на конце .amxx) в plugins.ini.
 
В результате файл addons/amxmodx/configs/plugins.ini может выглядеть где то так:
 
chat_logger.amxx ; Chat Logger v2.1a
admin_freelook.amxx ; Admin Free Look
admin_spec_esp.amxx ; Admin Spectator ESP v1.3
afkkicker2.amxx ; AFK KiSSS
auto_res_in_x_round.amxx ; Autorestart in X Seconds
descriptive_fire_in_the_hole.amxx ; Descriptive "Fire In The Hole"
high_ping_kicker.amxx ; High Ping Kicker
 
; Оригинальные плагины
admin.amxx ; admin base (required for any admin-related)
adminchat.amxx ; console chat commands
admincmd.amxx ; basic admin console commands
adminhelp.amxx ; help command for admin console commands
adminslots.amxx ; slot reservation
adminvote.amxx ; vote commands
amxmod_compat.amxx ; AMX Mod backwards compatibility layer
antiflood.amxx ; prevent clients from chat-flooding the server
cmdmenu.amxx ; command menu (speech, settings)
imessage.amxx ; displays information messages
mapchooser.amxx ; allows to vote for next map
mapsmenu.amxx ; maps menu (vote, changelevel)
menufront.amxx ; front-end for admin menus
miscstats.amxx ; bunch of events announcement for Counter-Strike
multilingual.amxx ; Multi-Lingual management
nextmap.amxx ; displays next map in mapcycle
pausecfg.amxx ; allows to pause and unpause some plugins
plmenu.amxx ; players menu (kick, ban, client cmds.)
pluginmenu.amxx ; Menus for commands/cvars organized by plugin
restmenu.amxx ; restrict weapons menu
scrollmsg.amxx ; displays a scrolling message
statscfg.amxx ; allows to manage stats plugins via menu and commands
statsx.amxx ; stats on death or round end (CSX Module required!)
stats_logging.amxx ; weapons stats logging (CSX Module required!)
;telemenu.amxx ; teleport menu (Fun Module required!)
timeleft.amxx ; displays time left on map
 
Важно: все карты на сервере необходимо прописывать файле maps.ini.
Если добавили новую карту в папку maps - не забудьте прописать её название в maps.ini, или она не отобразится на голосовании.

 
Шаг 5: Что такое Dproto - нонстим 47/48. Как его установить и зачем
 
Как уже говорилось выше, к официальному серверу нельзя присоединятся на No-Steam CS 1.6. При попытке зайти на Steam сервер с пиратской версии, увидите сообщение «Steam validation rejected».
 
Чтобы исправить это раньше приходилось использовать патчи или патченые библиотеки. К тому же недавно появилась ещё одна проблема: официальный клиент перешел на новый 48 протокол, несовместимый с 47 (т.е. на сервер 48 протокола нельзя зайти с клиентом 47 протокола и наоборот).
 
К привеликому счастью, появился нормальный патч-мультипротокол в виде плагина к Метамоду – Dproto. Он пропускает на сервер все известные клиенты (Steam, NoSteam 47/48 протоколы), позволяет настроить SteamID для клиентов и др.
 
Скачать последнюю версию Dproto вы можете на официальном сайте разработчиков:
dproto.com
(здесь же можно задать вопрос разработчику)
 
или с нашего сайта –
 
Скачали? Теперь создайте папку dproto в каталоге D:\Server\cstrike\addons\. (у вас может быть по другому) Файл dproto.dll из архива, в папке bin\windows скопируйте в папку D:\Server\cstrike\addons\dproto\. (смотрите свою соответственно).
 
В файле metamod\plugins.ini допишите такую строчку:
win32 addons/dproto/dproto.dll.
 
Файл dproto.cfg из архива поместите в корень сервера (D:\Server\).
 
Вот и все, dproto установлен. (настройки по умолчанию нормальные - можно не менять).

 
Шаг 6: Установка бустера mmtimer
 
Что такое mmtimer и зачем он нужен!
 
В сервере постоянно идет расчет и обработка игровой ситуации: кто куда стреляет, куда бежит, что делает и т.д.
 
Кадром сервера называется единичный игровой, просчитываемый момент.
Частота просчитывания кадров называется FPS (frames per second, кадры в секунду).
Чем больше это значение, тем плавнее будет игра для игроков.
Также FPS влияет на прибавку к пингу, она вычисляется по формуле 1000/your_fps.
 
Т.е. если у вашего сервера fps = 64, прибавка к пингу будет 1000/64 ~ 16 ms.
Так что чем больше fps, тем лучше игрокам, но нагрузка на сервер больше.
 
По умолчанию частота кадров равна 100, задается переменной sys_ticrate и имеет ограничение в 1000 fps.
В Windows обычными средствами поднять fps выше 512 нельзя.
Также важна стабильность fps, лучше стабильные 200 fps, чем скачущие 100-500.
 
Бустеры - плагины (модули), используются для понижения пинга и увеличения fps на сервере за счет увеличения нагрузки на процессор.
 
Наиболее известные бустеры: HLBooster 1.7, 2.4, Lite и ALX Lowping. HLBooster 1.7, релиз которого был аж в 2003, изменял функцию "sleep" ОС, что ускоряло работу сервера. HL Booster Lite заставлял "просыпаться" сервер, как только к нему приходили данные от игрока. Ну а HLBooster 2.40 (2004 год) гордо объединил эти две функции. Проект ALX Lowping почему-то быстро загнулся и не получил большой популярности (возможно, из-за того, что сложен в настройке).
 
А совсем недавно, к великой радости КС общества, замечательный человек - crock (автор Dproto) сделал новый бустер - mmtimer.
 
Как пишет автор, он действует сразу в трёх направлениях:
- увеличивает точность таймера ОС (только под Windows),
- уменьшает время "сна" процесса HLDS
- снимает ограничение 1000 FPS, встроенное в HLDS.
 
Желаемый FPS сервера задаётся значением sys_ticrate.
Так же имеется "Insane mode", включается с помощью mm_insane 1, в этом режиме HLDS загружает CPU на 100%, выдавая максимально возможное FPS.
Можно, кстати, использовать как бенчмарк.
 
На хорошим процессоре можно получить интересные цифры вроде 50000 FPS.
В режиме mm_insane 2 HLDS более "лояльно" относится к другим приложениям, давая им шанс поработать после обсчета каждого кадра.
Этот режим позволяет держать несколько серверов на одном ядре.
 
Скачиваем mmtimer с нашего сайта -
 
Устанавливается бустер стандартно:
файл mmtimer.dll помещается в папку cstrike\addons\mmtimer,
а в plugins.ini прописывается путь к этому файлу строчкой
win32 addons\mmtimer\mmtimer.dll.
 
Настройки добавляем в server.cfg:
sys_ticrate 1100 // Для 1024 fps
mm_insane 0 // Insane mode off

 
Вот и все, Ваш сервер готов и ждет запуска, как запускать сервер читайте в разделе "Запуск сервера КС 1.6 в консольном режиме"
 
Если есть какие то вопросы по стате то задавайте их на форуме или пишите админу сайта!
Форма входа
Гость

Здравствуйте Гость! Пожалуйста зарегестрируйтель или зайдите под своим ником.biggrin
Поиск по сайту
Облако тегов
Тактика в CS 1.6
Опрос
Оцените мой сайт
Всего ответов: 493
Материалы
Comments: 49
Forum: 12/45
News: 6
Downloads: 250
Guestbook: 54
Кто онлайн

Онлайн всего: 1
Гостей: 1
Пользователей: 0
uCoz
При копировании материалов активная ссылка на world-cs.net обязательна © 2016