Как создать свой сервер Counter Strike, подробнейшая инструкция от меня (INFerN@).
Теперь по главам: 1. Что нужно для сервера? 2. Где взять всё это? 3. Как устанавливать? 4. Антилаги (и моё личное мнение о них). 5. Тонкая настройка сервера. 6. Привязка IP. 7. Старт.
Ну что ж, поехали!
Глава 1. Что нужно для сервера?
Для работы сервера нужен неслабый компьютер, примерно такой: на 1-4 игроков минимально необходимо 128 Mb оперативной памяти, рекомендовано 256 Mb. на 4-8 игроков минимально необходимо 256 Mb оперативной памяти, рекомендовано 512 Mb. на 8-12 игроков минимально необходимо 512 Mb оперативной памяти, рекомендовано 768 Mb. на 12-18 игроков минимально необходимо 768 Mb оперативной памяти, рекомендовано 1024 Mb. на 18-24 игроков минимально необходимо 1024 Mb оперативной памяти, рекомендовано 1284 Mb. на 24-28 игроков минимально необходимо 1284 Mb оперативной памяти, рекомендовано 1512 Mb. на 28-32 игроков минимально необходимо 1512 Mb оперативной памяти, рекомендовано 2048+++ Mb.
Интернет, важнейший показатель: на 1-4 игроков необходимо 256 Kb/s на 4-8 игроков необходимо 384 Kb/s на 8-12 игроков необходимо 512 Kb/s на 12-18 игроков необходимо 768 Kb/s на 18-24 игроков необходимо 1024 Kb/s на 24-28 игроков необходимо 1284 Kb/s на 28-32 игроков необходимо 1512 Kb/s
Это чёткая статистика, но допустим если у вас 1512 Mb оперативной памяти, то это не значит что вам обязательно нагружать компьютер и ставить от 28-32х игроков, лучше дать "фору" компьютеру.
Так же нужен AMX mod и Meta mod, и самое главное клиент Counter Strike 1.6 любой понравившейся вам версии.(АМХ поддерживает всё)
Вот и добрались до самого сложного и проблемного, для многих, раздела.
Установим Meta mod Создаем в папке gamedir\cstrike сервера папку addons в ней папку metamod в ней папку dlls должно получится что то вроде %gamedir%\cstrike\addons\metamod\dlls Туда распаковываем файл metamod.dll из архива metamod Теперь находим в папке gamedir\cstrike файл liblist.gam в нём находим строку gamedll "dlls\mp.dll" Заменяем на gamedll "addons\metamod\dlls\metamod.dll" Теперь установка AMX мода. Скаченный по вервой ссылке файл распаковываем куда хотим. Дальше идём в папку files в папку куда распаковывали AMX mod X(пример: C:\AMX Mod X\files). Видим там папки base, cstrike, dod, esf, ns, tfc и ts.(это все игры на подобии CS от издателя Valve). Из них всех нам нужно только 2 папки: base и cstrike. Сначала base: идём по адресу %gamedir%\cstrike\ создаём папку addons, в ней amxmodx, открываем папку base(по вышеуказанному адресу) видим папки configs, plugins и т.д. всё копируем в папку amxmodx. Теперь cstrike: открываем папку cstrike и опять же видим configs, plugins и т.д. и вновь всё копируем в папку amxmod заменяя при этом все файлы. Либо всей этой возне есть замена "Альтернатива AMX mod'у", скаченная по последней ссылке. В данном же случае сначала создаём в %gamedir%\cstrike\ папку addons, в ней amxmodx и туда сливаем всё из архива по последней ссылке. AMX mod X установлен.
Теперь что бы всё это работало нужно создать в папке metamod файл plugins.ini(как создать думаю вопросов невозникнет) в него вписываем всё что выложено в цитате(предусмотрено 90% случаев необходимости + работа статистики, отключён booster, ниже опишу почему)
;; Metamod plugins.ini ; AMX Mod X 1.8.0
win32 addons\amxmodx\dlls\amxmodx_mm.dll win32 addons\amxmodx\dlls\amxmodx_mm_amd64.so win32 addons\amxmodx\dlls\amxmodx_mm_i386.so ; Enable this instead for binary logging ; win32 addons\amxmodx\dlls\amxmodx_bl_mm.dll win32 addons/hlguard/dlls/hlguard_mm.dll win32 addons/hlguard/dlls/hlguard_mm_amd64.so win32 addons/hlguard/dlls/hlguard_mm_i386.so ;win32 addons/booster/booster_mm.dll ;win32 addons/booster/booster_mm_amd64.so win32 addons/cdeath/cdmod.dll win32 addons/amxmodx/dlls/amx_mm.dll linux addons/amxmodx/dlls/amx_mm_i386.so ; More script functions for AMX Mod win32 addons/amxmodx/dlls/fun_ms.dll linux addons/amxmodx/dlls/fun_ms_i386.so ; Stats for Counter-Strike win32 addons/amxmodx/dlls/csstats_ms.dll linux addons/amxmodx/dlls/csstats_ms_i386.so addons/amxmodx/dlls/fun_ms.dll addons/amxmodx/dlls/fun_ms_i386.so ; Counter-Strike Statistics (только если вы хотите использовать статистику) ; AMX LogD (только если плагины используют это) addons/amxmodx/dlls/logd_ms.dll addons/amxmodx/dlls/logd_ms_i386.so ; MySQL access (только если плагины используют это) addons/amxmodx/dlls/mysql_ms.dll addons/amxmodx/dlls/mysql_ms_i386.so ; Rcon and Query (только если плагины используют это) addons/amxmodx/dlls/udp_ms.dll addons/amxmodx/dlls/udp_ms_i386.so win32 dlls/headshot_mm.dll
Теперь устанавливаем ATAC, версия 3.0.1. ATAC 3.0.1 - Продвинутый контроль нападений игроков на свою команду Описание: Плагин предотвращает нападение игроков на свою команду. Реализовано все на высшем уровне. Несколько видов меню, наказания и пр. Поддержка Ip, Steam и AmxBans. Один из самых популярных плагинов на планете.
1. Запускаете ATAC 3.0.1.exe и указываете папку с сервером. 2. Идём по адресу %gamedir%\cstrike\addons\amxmodx\configs открываем файл plugins.ini и в конце добавляем названия (до точки) ниже перечисленных плагинов
atac.amxx - Главный файл мода atac_slap.amxx - Наказание: ударить atac_slap2one.amxx - Наказание: ударить до 1 жизни atac_slay.amxx - Наказание: убить atac_spawnslay.amxx - Наказание: убить в следующем раунде atac_jail.amxx - Наказание: посадить в тюрьму atac_chicken.amxx - Наказание: превратить в курицу (chickenmod) atac_bury.amxx - Наказание: отрубить ноги atac_glow.amxx - Наказание: сделать светящимся atac_bomb.amxx - Наказание: взорвать atac_blind.amxx - Наказание: ослепить atac_rocket.amxx - Наказание: превратить в рокету atac_drop.amxx - Наказание: подбрасывать atac_fire.amxx - Наказание: поджечь atac_drug.amxx - Наказание: неясное зрение atac_badaim.amxx - Наказание: плохое прицеливание atac_hudmsg.amxx - Показывает сообщения atac_ta.amxx - Контролирует атаки atac_cmds.amxx - Создает меню наказаний atac_amxbans.amxx - Поддержка AmxBans Важные особенности: 1. atac_chicken.amxx - работает только если установлен chicken mod 2. atac_jail.amxx - работает только если есть координаты тюрьмы для данной карты - atac.cor
Теперь решаем, это будет Steam или non-steam сервер, если non-steam то устанавливаем swds.dll в директорию игры(%gamedir%/), незабудьте сделать копию заменяемого файла.
Глава 4. Антилаги (и моё личное мнение о них).
ИМХО(in my humble opinion - по-моему скромному мнению), Booster(далее бустер) устарел, окончательно т.к. при выключенном бустере у меня на сервере fps колеблется от 512 до 615, только включаю - дикие лаги, fps 150-260. Лаги эти вызываются тем что бустер увеличивает примерно в 10 раз количество отправляемых пакетов. Сейчас разрабатывается новый продвинутый антилаг, который будет перезапускать сервер при критических ошибках, фиксить ping и fps. А вообще он на 90% защищает сервер от всяких вредных программ и т.п.
/INFerN@... >Думаю, не ошибусь, если ничего не скажу. >Мастерски недоделанное дело лучше, чем плохо завершенное...
Начнём с server.cfg который лежит по адресу %gamedir%\cstrike
// Set the Host Name hostname "CS 1.6 Dedicated Server" // Имя сервера.
// Установка админ пароля(RCON) rcon_password "password" // Пароль для управления сервером через консоль клиента. Чтоб данная функция не работала, оставьте пустым - "".
// Server Logging log on // включаем режим записи логов mp_logdetail 3 // определяем детальность записи логов mp_logmessages 1 // записывать сообщения
// Server Variables cl_minmodels 0
mp_timelimit 30 // Время, которое отводим на карту. (мин) mp_autokick 0 // кикать за нарушение правил, тобишь убийство залогов и т.п. mp_autoteambalance 1 // Автоматический баланс комманд. mp_c4timer 35 // Время таймера на бомбе. (сек) mp_flashlight 1 // Разрешить фонарик mp_footsteps 1 // Разрешить слышать шаги mp_freezetime 0 // Время после которого стартует раунд. (сек) mp_friendlyfire 1 // Включен режим попадания по своим. mp_hostagepenalty 0 // За убийство скольких залогов игрока кикнет с сервера(зависит от mp_autokick) mp_limitteams 0 // Число на которое количество игроков одной команды может превышать другой(0 отключено) mp_tkpunish 0 // Убивать Team Killer'ов в начале следующего раунда
mp_roundtime 3 // Длительность раунда. (мин) mp_buytime 1.25 // Время на покупку(стандартно 0.25 - 15 сек). (сек) mp_fadetoblack 0 // (1 - экран после смерти становиться чёрным, 0 - отключить эту опцию) mp_forcechasecam 0 // Режим камеры (0 - своб., 1 - только за командой, 2 - лежачее положение) mp_forcecamera 0 // установка камеры наблюдения за своей комадой после смерти (0 - за всеми., 1 - только за командой) mp_kickpercent 100 // Шанс кика(только если плагины используют это) mp_playerid 1 // ID игроко sv_airaccelerate 10 // Задает значение сопротивления воздуха sv_airmove 1 // Разрешает управлять в полёте
sv_restartround 0 // Значение этого параметра равно секундам, через которые произойдет рестарт sv_maxspeed 320 // Максимальная скорость движения игроков на карте(позже выложу мануал по этой теме) sv_proxies 1 // Способ подключения allow_spectators 3 // Максимльрное кол-во наблюдателей mp_startmoney 800 // Стартовые деньги mp_chattime 0 // Количество секунд, на которое сервер позволяет игрокам писать в общий чат после конца карты и до загрузки новой sv_allowupload 1 // Разрешить загрузку с сервера sv_voiceenable 1 // Разрешить голосовое общение sv_alltalk 0 // Разговор в микрофон доступен всем играющим на сервере (включая трупы) sv_voicequality 4 // Качества передаваемого звука sv_voicecodec voice_speex // Кодек для кодирования звука pausable 0 // Возможность поствить сервер на паузу decalfrequency 60 // Кол-во одновременно отображаемых дыр от пуль, пятен крови и т.п. mp_falldamage 1 // Урон при падении
// cheat and fun modes sv_aim 0 // Разрешает автоприцеливание из опций клиента sv_cheats 0 // Разрешает читы(описаны в CheMax)
// Set Rates sv_maxrate 25000 // максимальная пропускная способность сетевого канала сервера с учетом клиентской стороны (значение считается по формуле) sv_spectatormaxspeed 500 // Скорость полёта в режиме "наблюдения" sv_maxupdaterate 101 // Ограничивает частоту обновлений сервера. Чем выше значение,тем больше пакетов будет послано клиентам (зависит от sv_maxrate и также считается по формуле ) sv_minrate 2500 // Минимальная пропускная способность сетевого канала sv_minupdaterate 20 // нижний предел частоты обновления сервера sys_ticrate 25000 // Загрузка CPU
// Enable/Disable LAN mode sv_lan 1 // Прошу заметить, если вы пропачили сервер, то этот параметр обязательный! Тоесть если вы заменили swds.dll то 1 если нет 0.
// Exec files on startup (Обязательные файлы для проверки банов и т.п.) exec banned.cfg exec listip.cfg
Теперь эти все опции нужно зафиксировать.(у меня была такая проблема, что при смене карты менялось название сервера на название по умолчанию) Теперь в той же папке открываем блокнотом(чем угодно) файл game.cfg
// Half-Life Server Configuration Settings // DO NOT EDIT, GENERATED BY HALF-LIFE // File generated: Tue Jan 27 10:46:08 AM // // // Cvar - Setting
"mp_timelimit" "30.000000" // Лимит времени на одной карте. (мин) "mp_winlimit" "0.000000" // Количество выигрышей одной команды при достижении которого игра на карте считается законченной "mp_maxrounds" "0.000000" // Максимальное количество раундов, при достижении которого игра на карте будет считаться законченной "mp_roundtime" "3.000000" // Время раунда в сек. "mp_freezetime" "0.000000" // Время невозможности движения игрока в начале раунда в секундах "mp_buytime" "1.250000" // Время закупки оружия в начале раунда в минутах "mp_startmoney" "800.000000" // Стартовые деньги "mp_footsteps" "1" // Шаги "mp_forcecamera" "0" // Возможность следить за игроками своей команды (0 все, 1 ток свои) "mp_friendlyfire" "1" // Повреждения при стрельбе по своим "mp_tkpunish" "0" // Убийство ТК в начале раунда "mp_autokick" "0" // Разрешить серверу выбрасывать игроков(например за убийство залогов) "mp_hostagepenalty" "5.000000" // За убийство скольких залогов игрока кикнет с сервера(зависит от mp_autokick) "mp_flashlight" "1" // Разрешить фонарик mp_autoteambalance "0" // Автобаланс на карте mp_c4timer "35" // Таймер бомбы mp_decals "0" // Количество отображаемых одновременно дыр от выстрелов , пятен крови и т.д mp_fadetoblack "0" // Включение после вашей смерти черного экрана до окончания раунда mp_limitteams "0" // максимальное количество превышения игроков одной команды над другой (0 - выкл, от 1 и до бесконечности ) hostname "CS 1.6 Dedicated Server" // Имя сервера log on // Разрешить серверу записывать все действия sys_ticrate 25000.00 // Загрузка CPU rate 25000 // Частота обновления
sv_unlag "1" // Поддерживать оптимизацию cl_lc sv_unlagmax "0.5" // Максимальное время задержки sv_unlagsamples "2" // Кол-во отправленных пакетов
// Report
echo "Config loaded*"
Теперь нужно настроить администрирование сервера. Идём по адресу %gamedir%\cstrike\addons\amxmodx\configs и открываем текстовым редактором файл amxx.cfg и видим вот чё:
echo Executing AMX Mod X Configuration File // Сообщение в консоль. amx_default_access "z" // Эта строчка отвечает за права пользователя ”по умолчанию” т.е. те права, которые будут даны ВСЕМ игрокам на сервере amx_password_field "_pw" // Префикс перед админ паролем amx_mode 1 // Управляет доступом на сервер ( 0 - игроки не проверяются на права (и их права игнорируются); 1 - нормальный режим; 2 - не пускать на сервер игроков, не входящих в список user.ini) amx_show_activity 1 // Показывать действия админов (0 - отключено (команды не показываются); 1 - показывать без указания имени админа; 2 - указывать с именем админа) amx_scrollmsg "Welcome to server of clan CelestialHeaven, our site www.CH.do.am!" 60 // Бегущая строка("(текст)" (время между повторами)) amx_imessage "Welcome to server of CelestialHeaven!" "000255100" // Сообщение которое будет появляться выше прицела("(текст)" "(цвет по форме RGB: *** *** ***, без пробелов)") amx_imessage "Hight admin and tech admin - INFerN@, icq 492247636" "000100255" // Бегущая строка("(текст)" (время между повторами)) amx_freq_imessage 100 // Время между показом imessage сообщений (сек.) amx_plmenu_bantimes 5 10 15 30 45 60 120 9999 // варианты бана в меню amx_banmenu(переключаются 8 вроде) amx_plmenu_slapdmg 0 1 5 10 50 // Количество урона в amx_slapmenu(или amx_slaymenu как то так) amx_flood_time 0.05 // Время между отправлением сообщений от одного пользователя(по умолчанию 0.75(меньше секунды)) amx_reservation 2 // Зарезервированные для админов слоты amx_hideslots 1 // 1 - если вы хотите спрятать значение зарезирвированных словот, 0 - если вы не хотите ничего прятать amx_time_display "ab 900" "ab 600" "ab 300" "ab 180" "ab 60" "bcde 11" // Оставшееся врмя на карту. Действия: a - показывать текст; b - сказать голосом оставшееся время; c - не показывать текст (только голос); d - не добавлять "часы/мин/сек" (только голос); e - отсчёт оставшегося времени (визуально и голосом) (пишется по форме: "(действие) (время до конца игры на карте)") amx_time_voice 1 // Голосовое сопровождение "say thetime" и "say timeleft" amx_vote_delay 0 // Минимальная задержка в сек. между сессиями голосования amx_vote_time 20 // Время на голосование (сек.) amx_vote_answers 1 // Отображать кто за что голосует amx_votekick_ratio 0.40 // Значения для утверждения голосования (0.40 = 40% проголосовавших) amx_voteban_ratio 0.40 // Значения для утверждения голосования (0.40 = 40% проголосовавших) amx_votemap_ratio 0.40 // Значения для утверждения голосования (0.40 = 40% проголосовавших) amx_vote_ratio 0.02 // Значения для утверждения голосования (0.40 = 40% проголосовавших) amx_extendmap_max 90 // Время в минутах, на которое максимально может быть продлена текущая карта amx_extendmap_step 15 // Шаг в минутах, на который будет продлеваться текущая карта ( ограничено переменной amx_extendmap_max ) amx_client_languages 1 // Количество языков разрешенных игрокам amx_debug 1 // Отладка (0 - выключить, 1 - плагины с опцией "debug" в plugins.ini будут включены в режим отладки, 2 - Все плагины будут включены в режим отладки) amx_mldebug "" // Для настройки языков добавьте 2 кода, например ("en", "de") ("" значит отключён) csstats_rank 0 // Сохранение ранга игроков (0 - ник, 1 - стим ID(только для steam серверов), 2 - IP) csstats_maxsize 350000 // Максимальный размер файла рангов(стандарт 3500, я добавил 00 т.к. у меня место позволяет) csstats_rankbots 0 // Записывать ранги ботов (0 - умолчание, отключено; 1 включить) amx_statsx_duration 12.0 // Длина Hud-статистики amx_statsx_freeze -2.0 // amx_welcome_hudmsg "Hello %name%, welcome to server of clan CelestialHeaven by INFerN@" amx_avlist_mode "abcfghijk"
Теперь "галопом по админам" Сначала раскажу о флагах Флаги доступа: a - иммунитет (против игрока не могут быть использованы команды: kick/ban/slay/slap и т.д) b - резервация (игрок сможет пользоваться резервным слотом) c - amx_kick - доступ к команде amx_kick d - amx_ban and amx_unban commands - доступ к команде amx_ban и amx_unban e - amx_slay and amx_slap commands - доступ к команде amx_slay и amx_slap f - amx_map command - доступ к команде amx_map g - amx_cvar command - доступ к команде amx_cvar (не все переменные могут быть доступны) h - amx_cfg command - доступ к команде amx_cfg i - amx_chat and other chat commands - доступ к команде amx_csay и другим чат командам j - amx_vote and other vote commands - доступ к команде amx_vote и другим командам голосования k - access to sv_password cvar - доступ к переменной sv_password (через команду amx_cvar) l - access to amx_rcon command and rcon_password cvar - доступ к переменной amx_rcon и rcon_password (через amx_cvar) (советую этот флаг никому не давать, т.к. с эти флагом ожно сделать с сервом что угодно) m - произвольный уровень A (если вы используете нестандартные амх плагины) n - произвольный уровень B o - произвольный уровень C p - произвольный уровень D q - произвольный уровень E r - произвольный уровень F s - произвольный уровень G t - произвольный уровень H u - доступ к графическому меню управления (amxmodmenu) (этот всем админам, т.к. не всем удобно через консоль) z - пользователь (не админ)
Теперь флаги акаунта: a - не пускать игрока на сервер с неправильно введенным паролем b - регистрация клан тега c - админ зайдет на сервер только со значениями authid/wonid d - админ заходит только с этого ip адресса e - пароль не проверяется (необходимо только совпадение name/ip/wonid)
Рисуем админов в файле users.ini по адресу %gamedir%\cstrike\addons\amxmodx\configs\
Примеры админ-аккаунтов: "STEAM_0:0:123456" "" "abcdefghijklmnopqrstu" "ce" // по стим ID; пароля нету(если есть стим номер, то пароль можно не ставить); доступны все флаги(тоесть все права админа); проверяется совпадение номера стим аккаунта, пароль не проверяется.
"123.45.67.89" "" "abcdefghijklmnopqrstu" "de" // по IP-адресу; Пароль отсутствует; Все права админа; проверяется совпадение IP-адреса, пароль не проверяется
"My Name" "my_password" "abcdefghijklmnopqrstu" "a" // По нику(в случае если динамический IP или нет Steam аккаунта); пароль проверяется точным совпадением; все права админа; Требуется совпадение с ником, без флага "e" требуется точное совпадение пароля.
Теперь нужно установить точное совпадение произвольно заданного префикса в файл autoexec.cfg по адресу %gamedir%\cstrike\ Добавьте туда: setinfo _pw "" где _pw - произвольный префикс, он должен совпадать со значением строки "amx_password_field ***" в файле amxx.cfg по адресу %gamedir%\cstrike\addons\amxmodx\configs
Настройка АТАС системы 1. addons.cfg atac_hudtext 0 - цвет сообщений (0-стандарт, 1-желтый, 2-зеленый, 3-цвет команды) atac_noattack_within 5 - кол-во секунд с начала раунда, при котором атакующий игрок будет убит мгновенно atac_slap_attacker 0 - бить атакующего игрока atac_slayon_maxattacks 0 - убивать игроков атаковавших свою команду максимальное кол-во раз atac_health_restore 0 - восстанавливать здоровье жерте 2. atac.cfg atac_menu 1 - главное меню аtac_menu_overwrite 0 - переписывать меню (при нестандартных наказаниях) аtac_show_punishment 1 - показывать выбранное наказание аtac_immunity_flags a - флаг для использования иммунитета аtac_admins_immune 1 - иммунитет для администраторов atac_tk_avoidance 1 - увеличить кол-во убийств при попытке избежать наказания atac_store_kills 1 - запоминать убийства в течении одной карты atac_tk_afterdeath 0 - не учитывать убийства гранатами atac_ban_type 3 - тип бана (0-выкл, 1-ip, 2-authid, 3-autodetect аtac_ban_time 120 - время бана в минутах аtac_team_attacks 5 - кол-во атак переводимое в убийство аtac_team_kills 5 - кол-во убийств для бана 3. punishments.cfg atac_slap_amount 10 - кол-во ударов при наказании "Slap" atac_slap_power 5 - сила каждого удара при наказании "Slap" atac_jail_time 45 - время проводимое в тюрьме при наказании "Jail" atac_bomb_mode 0 - действие бомбы на других игроков при наказании "Bomb" atac_bomb_range 1000 - сила бомбы при наказании "Bomb" atac_fire_mode 0 - действие огня на других игроков при наказании "Fire"
Теперь файл cmds.ini по дресу %gamedir%\cstrike\addons\amxmodx\configs\. Этот файл отвечает за меню amx_cmdmenu, всё что вы туда напишете будет в меню. Биндите эту команду на какуюлибо клавишу, к примеру i (в консли игры: bind i "amx_cmdmenu" либо в файл config.cfg(%gamedir%\cstrke\) добавляете строку bind "i" "amx_cmdmenu"), в игре нажимаете I и выскакивает менюшка. Командное меню в файле пишется таким образом: < описание > < команда > < флаги > < флаг доступа > Флаги: "a" - вводиться в консоли сервера "b" - вводиться в консоли администратора "c" - вводиться на всех клиентах "d" - возвращаться в меню когда введено
В файле cmdaccess.ini(%gamedir%\cstrike\addons\amxmodx\configs\) вы можете управлять флагами доступа к командам. Думаю с вашими знаниями вы теперь разберётесь
"amx_ban" "d" ; admincmd.amxx //"команда" "админский флаг(из users.ini)" ; какой плагин за это отвечает
В файле core.ini(%gamedir%\cstrike\addons\amxmodx\configs\) некоторые параметры сервера Он должен совпадать с этим
; Конфигурация файлов для AMX Mod X amxx_logs addons/amxmodx/logs amxx_configsdir addons/amxmodx/configs amxx_datadir addons/amxmodx/data amxx_modules addons/amxmodx/configs/modules.ini amxx_plugins addons/amxmodx/configs/plugins.ini amxx_pluginsdir addons/amxmodx/plugins amxx_modulesdir addons/amxmodx/modules amxx_vault addons/amxmodx/data/vault.ini ; It is important that "csstats" comes before "csstats_score" csstats addons/amxmodx/data/csstats.dat csstats_score addons/amxmodx/data/csstats.amxx
; Тип записи логов ; 0 - Без записи ; 1 - один файл в день ; 2 - один файл на карту ; 3 - HL записи amxx_logging 1
; Уровень бинарной записи ; add these up to get what you want ; these only work with bin logging binaries ; 1 - default ; 2 - log internal string sets/gets ; 4 - log internal formats ; 8 - log all native params ; 16 - log internal function calls (only in debug mode) ; 32 - log line number accesses (only in debug mode) bin_logging 49
; максимальный размер лог-файла, в Mb max_binlog_size 20
; Заебался переводить, переводите сами.. там про оптимизацию сервера. ; Plugin optimization flags - add these up to get what you want ; lowering these may stop crashes on very old CPUs ; set 65536 to disable optimizer, NOT 0! ;------------- ; 1 - float arithmetic ; 2 - float comparisons ; 4 - float rounding optimizer 7
В файл maps.ini добавляйте все свои карты
he_tennis as_oilrig
В файл modules.ini минимум вам потребуются такие модули
cstrike csx fun geoip
Текст вы окне сразу после загрузки(где нужно нажатть OK), вы можете отредактировать в файле motd.txt(%gamedir%\cstrike) имея навыки работы с html.
Либо всё что я описал вы можете без проблем настраивать скачав предпоследний файл. В нём в настройках вам нужно указать пусть к серверу, он загрузит ваши настройки серва по умолчанию и там вы безпроблем сможете их изменять.
Сначала опишу запуск сервера через консоль, потому что визуальный режим сильно жрёт ресурсы компьютера. Делаем shortcut файла hlds.exe и выбираем свойства(properties). В конец строки "объект" добавляем строку вроде этой:
• -game cstrike (указываем, что это CS сервер) • +port (используемый игровой порт(у всех стандарт 27015 а у нас 55555) • -console (консольный режим) • -nosteam (сервер будет неофициальным) • -insecure (valve использует свой собственный античит VAC, но его нет смысла устанавлить на кракнутые No-Steam сервера, потому что он банит только легальных клиентов) • -dev это указывает на то что все свободные ресурсы памяти и т.д. компьютера будут использованы максимально • +maxplayers 18 (указывает, что на сервере смогут играть максимально 18 игроков) • +sv_lan 1 (эта строка должна быть ОБЯЗАТЕЛЬНО, если только сервер не рассчитан для легальных клиентов) • +map de_aztec (указывает, какая карта будет загружаться первой, после запуска сервера)
В общем должно получиться как на Скриншоте В рабочем состоянии видим такое Псоле запуска сервера, для улучшения работы открываем Диспетчер задач(Ctrl+Alt+Delete), находим на вкладке процессы, процесс hlds.exe и устанавливаем максимальный приоритет. А так же завершаем все процессы типа opera, skype и т.д.(все которые очень сильно используют интернет и ресурсы компьютера). Вот скриншот
А теперь визуальный сервер(для начинающих он проще) Опять же создаём shortcut и в поле выделенное на скриншоте дописываем
-nosteam -dev
запускаем сервер и видим такое окошко Разберём по строкам: Game: Counter-Strike // Игра. У меня CelestialHeaven, хотя по умолчанию Counter-Strike Server Name: CelestialHeaven // Имя сервера(hostname). Пишите любое, всеравно смениться на то что в game.cfg Map: he_tennis // Стартовая карта Network: Internet // Тип сервера(интернет/лан) Max.Players: 18 // Максимальное кол-во игроков(у меня 18 -2 резервных скрытых слота) UDP Port: 55555 // Используемый порт RCON Password: my_password // Пароль для администрирования сервера Secure (VAC): // Ставим галочку что бы включить/неставим что бы выключить.(valve использует свой собственный античит VAC, но его нет смысла устанавлить на No-Steam сервера, потому что он банит только легальных клиентов). Ну и собстно нажимает Start Server
Когда сервер загрузится мы увидим такое вот окошко: Вкладки: Main - основное окошко Configure - конфигурация(изменяются значения из game.cfg) Statistics - статисика ставим все галочки и наблюдаем(факт: если фпс выше аплоуда и даунлоуда то сервер не лагает) Players - показывает список играющих в данный момент на сервере и действия над ними Bans - показывает список банов и действия над ними Console - консоль сервера
Теперь о каждой из вкладок: Main Game // текущая игра - обычно КС IP Adress // Ваш Lan адрес сервера и порт(с интернета по нему не зайти) Players // Количество игроков Uptime // Время работы сервера С окошком ниже вы уже знакомы. Configure С действием команды вы уже знакомы. Statistics Постая табличная статистика Vertical Units - можно переключать относительно чего будет отображаться статистика по версикали Show - период работы сервера в течении которого показывается статистика(если например стоит "последний час" то если больше времени проходит то более устаревшая уезжает безвозвратно) Галочки отвечают за показ той или иной статистики. Players Игроки и 2 действия Ban или Kick. Bans Действия над банами: Добавить, удалить, изменить, загрузить. Console Консоль, здесь пишется всё что твориться на сервере, так же вы можете общаться с игроками отсюда, если установлены плагины на сообщения(к примеру amx_csay green hi all, how ping? - оно отобразиться псреди экрана залёным цветом)
Что бы зайти на свой сервер под своим админством нужно в консоли написать setinfo _pw(если смнили _pw то, то на что сменили пишите) my_password А в опциях игры(если ник с пробелами) введите свой админский ник и заходите по любому IP адресу(для LAN или тот по которому из интернета).
Ну вот и всё, если есть вопросы пишите сюда. Только помнитемне понадобились сутки что бы написать всё это(с перерывами на обед и сон), так что уважайте чужой труд как собственный.
/INFerN@... >Думаю, не ошибусь, если ничего не скажу. >Мастерски недоделанное дело лучше, чем плохо завершенное...