Это не копирайт! Это дополнение, на основе опыта администраторов игровых серверов
Не для linux!
Файлы для Linux вы тут не найдёте..
Оглавление:
1. Установка HLDS + cstrike сервера.
2. Установка metamod для подключения доп. модов.
3. Установка AMXx.
4. Установка Booster'a.
5. Настройка "Half-Life Fast HTTP Asset Downloading".
6. No-Won патч и лечилка Invallid CD-Key.
7. Список основных команд AMX
8. Настройка всяких конфигов в папке configs Особо детально ничего не описано.
Прошу заметить, документ до конца не готов. Могуть быть ошибки и т.п.
1. Установка CS 1.6 сервера
Если нет возможности тратить трафик на скачивание сервера через интернет, то все ниже описанное про hldsupdatetool не для тебя. Позже я в эту статью добавлю ссылку на архив с сервером. "А какая разница, качать архив или так?" - спросите вы. А разница в том, чтоб при загрузке через hldsupdatetool, передаются непакованные файлы.
- Берем hldsupdatetool
Для Win32
Он находиться ниже
Ставим. Запускаем hldsupdatetool.exe (./steam для linux). Проходит процедура проверки на обновление.
Далее снова стартуем hldsupdatetool, но уже с ключами:
hldsupdatetool.exe -command update -game cstrike -dir c:\hlds
Прошу заметить, что c:\hlds - это путь, куда будет установлен сервер. Начинается процесс загрузки. Процедура может занять довольно длительное время. Может возникнуть ошибка, что сервер не отвечает, или что-то в этом роде. В этой ситуации просто следует попробовать еще раз, но позже.
После загрузки, следует пропатчить сервер на nowon.
Как это сделать, читаем в конце статьи.
Далее при настройке сервер, не забываем добавиться в server.cfg параметр sv_lan 1.
Запуск сервера CS 1.6
Запускается сервер следующей строкой:
hlds.exe -console +sv_lan 1 -insecure -game cstrike -nomaster +maxplayers 21 +map de_dust +port 27015 +ip 255.255.255.255 +exec listip.cfg
Рассмотрим подробнее:
-console - сервер стартует в консольном режиме.
-game cstrike - запускать мод CS. (собственно за него и бьемся).
+maxplayers 21 - максимальное кол-во игроков, которое сервер будет принимать.
+map de_dust - сервер запуститься с карты de_dust.
+port 27015 - порт, который сервер будет слушать.
+ip 255.255.255.255 - тут вы должны написать IP, на котором будет сервер.
2. Установка metamod.
metamod служит для подключения дополнительных модов на сервер, таких как AMX(x), AdminMod, StatsMe и т.п.
Скачать metamod можно в конце этой статьи. Приклеплён там metamod p(не путать со стандартным метамодом, вложенным в установщик амхх) Намного лучше обычного. Все его достоинства не буду перечислять, для этого есть официальный сайт Metamod-P Project Developers
Достаем из архива и кладем в \cstrike\addons\metamod.
Если у нас win32 сервер, то туда мы дожны скопировать metamod.dll. В варианте linux, metamod_i386.so.
Открываем \cstrike\liblist.gam.
Для windows иправляем там строчку gamedll "dlls\mp.dll" на gamedll "addons\metamod\metamod.dll".
Для linux gamedll_linux "dlls/cs_i386.so" на gamedll_linux "addons\metamod\metamod_i386.so".
Все готово для подлючения доп. модов.
3.Установка AMXX.
В оригинальной статье была описана установака обоих модов, но на настоящий момент лучше ставить АМХХ, поэтому я опишу именно этот вариант. На момент написания статьи последняя версия стабильная версия АМХХ 1.76 d (1.8.0 - очень не советую, ибо глюков в ней больше чем волос на теле)
Качаем AMXХ. Делаем это с оффициального сайта www.amxmodx.org. А вообще www.gogle.com вам в помощь
Если ставить автоматом, то всё само поставится, если ручками то делаем следующее:
Распаковываем папки amxmodx и metamod в cstrike/addons/.
Идем в папку cstrike/addons/metamod/ и открываем файл plugins.ini, там прописываем строчку:
win32 addons/amxmodx/dlls/amxmodx_mm.dll
Далее идем в папку csrtike/addons/amxmodx/configs
Открываем amxx.cfg
Цитата:
// AMX Configuration File
echo Executing AMX Mod X Configuration File
// Default access for all non admin players (see users.ini for access details)
// эта строчка отвечает за права пользователя “по умолчанию”
// т.е. те права, которые будут даны ВСЕМ игрокам на сервере.
// Например amx_default_access "j" – даст возможность ЛЮБОМУ игроку
// на сервере подымать голосования на смену карты, кик и т.д.
amx_default_access "z"
// Name of setinfo which should store a password on a client (you should change this)
// (Example: setinfo _pw "password")
// Отвечает за то, какой префикс будет использован
// для указания пароля для входа на сервер игроком с правами админа.
// Замените "_pw" на любое другое, например: "mypass"
// Вам, чтоб получить свои админские права, надо прописать в своём конфиге:
// setinfo mypass 123456
amx_password_field "_pw"
// Mode of logging to a server
// 0 - disable logging, players won't be checked (and access won't be set)
// 1 - normal mode which obey flags set in accounts
// 2 - kick all players not on list
// Управляет доступом на сервер:
// 0 – игроки не проверяются на права (и их права игнорируются)
// 1 – нормальный режим
// 2 – не пускать на сервер игроков, не входящих в список админов.
amx_mode 1
// Show admins activity
// 0 - disabled
// 1 - show without admin name
// 2 - show with name
// Отвечает, будет ли показано имя админа, от имени которого выполняются те или иные команды.
// Например, если админ наберет в консоли “amx_tsay white BbI BCE JIAMKu, A 9I /7A/7KA”
// (графическое сообщение в нижнем левом углу белого цвета),
// то на экране все увидят, кому именно принадлежат эти слова.
//Значения:
// 0 – отключено (команды не показываются)
// 1 – показывать без указания имени админа.
// 2 – указывать с именем админа.
amx_show_activity 2
// Frequency in seconds and text of scrolling message
// Показывает сообщение типа “бегущая строка” внизу в центре экрана с интервалом в 300 секунд.
// Может быть исправлено на любое ваше, если хотите.
amx_scrollmsg "Welcome to %hostname% -- Chiters go to home 8-)" 600
// Center typed colored messages (last parameter is a color in RRRGGGBBB format)
// Показывает сообщение по центру экрана(работает с цветом..)
amx_imessage "Welcome to %hostname%" "000255100"
amx_imessage "Chiters go to home 8-)" "255000000"
amx_imessage "This server by Rockon\nVisit http://www.spb-net.ru " "255193064"
amx_imessage "Visit official forum\nhttp://bif-team.ucoz.ru/forum/7" "255193064"
// Frequency in seconds of colored messages
// Время между показом сообщений (сек.)
amx_freq_imessage 180
// Set in seconds how fast players can chat (chat-flood protection)
// Нет флуду на сервере. Через какое время клиент может послать след. сообщение (загрузите плагин antiflood.amx)
amx_flood_time 0.75
// Amount of reserved slots, amx_hideslots must be 1 to use this cvar (for more details see comments in plugin source)
// Сумма зарезервированных мест, amx_hideslots должно быть 1, чтобы использовать эту cvar (подробнее см. комментарии в плагине источник)
amx_reservation 1
// If you set this to 1, you can hide slots on your server
// Если стоит 1 - вы можете скрывать зарезервированные слоты
amx_hideslots 1
// Displaying of time remaining
// a - display white text on bottom
// b - use voice
// c - don't add "remaining" (only in voice)
// d - don't add "hours/minutes/seconds" (only in voice)
// e - show/speak if current time is less than this set in parameter
// Оставшееся врмя на карту. Действия:
// a - показывать текст.
// b - сказать голосом оставшееся время.
// c - не показывать текст (только голос)
// d - не добавлять "часы/мин/сек" (только голос)
// e - отсчёт оставшегося времени (визуально и голосом).
amx_time_display "ab 1200" "ab 600" "ab 300" "ab 180" "ab 60" "abde 10"
// Announce "say thetime" and "say timeleft" with voice
// Голосовое сопровождение "say thetime" и "say timeleft"
amx_time_voice 1
// Minimum delay in seconds between two voting sessions
// Минимальная задержка в сек. между сессиями голосования
amx_vote_delay 10
// How long voting session goes on
// Время на голосование (сек.)
amx_vote_time 10
// Display who votes for what option
// Отображать кто за что голосует
amx_vote_answers 1
// Some ratios for voting success
// Значения для утверждения голосования (0.40 = 40% проголосовавших)
amx_votekick_ratio 0.40
amx_voteban_ratio 0.40
amx_votemap_ratio 0.40
amx_vote_ratio 0.60
// Max. time to which map can be extended
//Время в минутах, на которое максимально может быть продлена текущая карта.
//Т.е. если amx_extendmap_max 90 и amx_extendmap_step 15, то карту можно продлить 6 раз (90/15=6) по 15 минут
amx_extendmap_max 90
// Step for each extending
amx_extendmap_step 15
// Rank mode
// Что отобразить CSStats в статистике
// 0 - by nick
// 1 - by authid
// 2 - by ip
csstats_rank 0
// Max size of the stats file
// Когда число ников в статистике превысит заданное значение произойдёт обнуление статистики.
csstats_maxsize 6500
// Duration of HUD-statistics
// (minimum 1.0 seconds)
// Время отображения статистики (HUD)
amx_statsx_duration 12.0
// HUD-statistics display limit relative round freeze end
// Negative time will clear the HUD-statstics before the round freeze time has ended
// За сколько секунд исчезнет отображение статистики (HUD) до конца mp_freexetime
// изчезнет за 2 секунды до окончания freezetime
amx_statsx_freeze -2.0
//If you set this to 0, clients cannot chose their language
//Могут ли клиенты выбирать свой язык
amx_client_languages 1
// Plugin Debug mode
// 0 - No debugging (garbage line numbers)
// 1 - Plugins with "debug" option in plugins.ini are put into debug mode
// 2 - All plugins are put in debug mode
// Note - debug mode will affect JIT performance
// Установки для режима отладки для плагинов:
// 1 - отладка отключена
// 2 - только для плагинов с пометкой "debug" в plugins.ini
// 3 - режим отладки для всех плагинов
amx_debug 1
// Plugin MultiLingual Debug
// To debug a language put its 2 letter code between quotes ("en", "de", etc)
// "" means disabled
amx_mldebug "en"
// Как писать csstats.dat.
// 0 - бинарник (быстро)
// 1 - текстовый документ
// Используйте "amx_cvar csstats_storagetype <0|1>" или "csstats_storagetype <0|1>" в консоле сервера.
//csstats_storagetype 0
// Перезапустить /top15 and all CSStats info use "amx_cvar csstats_reset 1"
// или команда "csstats_reset 1" в консоли сервера
//csstats_reset 1
Сохраняем, закрываем. Открываем modules.ini:
Цитата:
;;;
; Чтобы разрешить модуль, уберите ; перед его названием
; Чтобы наоборот отключить - добавте ; перед названием модуля.
; You don't need to write the _amxx part or the file extension.
;;;
; ------------------------------
fun_amxx_i386.so
fun_amxx.dll
fun_amxx_amd64.so
; ----------------------------------------------------
; Engine - provides engine functions core to Half-Life
; ----------------------------------------------------
;engine_amxx_i386.so
engine_amxx.dll
;engine_amxx_amd64.so
; ----------------------------------------------------------
; Fakemeta - provides a massive interface into the HL engine
; ----------------------------------------------------------
;fakemeta_amxx_i386.so
fakemeta_amxx.dll
;fakemeta_amxx_amd64.so
; -------------------------------------------
; Database Access - only enable one of these
; -------------------------------------------
; MySQL
;mysql_amxx_i386.so
;mysql_amxx.dll
;mysql_amxx_amd64.so
; PostgreSQL
;pgsql_amxx_i386.so
;pgsql_amxx.dll
; Microsoft SQL
;mssql_amxx.dll
; SQLite
;sqlite_amxx.dll
;sqlite_amxx_i386.so
;sqlite_amxx_amd64.so
; ---------------------------------------------
; GeoIP - determines the country of ip adresses
; ---------------------------------------------
;geoip_amxx_i386.so
;geoip_amxx.dll
;geoip_amxx_amd64.so
; --------------------------------
; Sockets - network socket support
; --------------------------------
;sockets_amxx_i386.so
sockets_amxx.dll
;sockets_amxx_amd64.so
; --------------------------
; Regular Expression support
; --------------------------
;regex_amxx_i386.so
;regex_amxx.dll
;regex_amxx_amd64.so
; --------------------
; Binary Vault support
; --------------------
;nvault_amxx_i386.so
;nvault_amxx.dll
;nvault_amxx_amd64.so
; ----------------------------------------------------------
; Counter-Strike - adds functions specific to Counter-Strike
; ----------------------------------------------------------
cstrike_amxx_i386.so
cstrike_amxx.dll
cstrike_amxx_amd64.so
; -----------------------------------------------------
; CSX - adds functionality for CS statistics and events
; -----------------------------------------------------
csx_amxx_i386.so
csx_amxx.dll
csx_amxx_amd64.so
Впринципе можете снять все комментарии, но это значительно увеличит нагрузку сервера, поэтому следует подгружать только модули, которые требуют устанавливаемые вами плагины. Обычно необходимые модули пишутся в шапке плагинов.
Сохраняем файл. Далее открываем users.ini.
В самом низу мы будем прописывать админов. Есть несколько вариантов. Закрепление на имя или на IP.
Для имени у нас будет следующая строка:
"superadmin" "password" "access flag" "account flags"
Для IP:
"255.255.255.255" "password" "access flag" "account flags"
"И что же это такое?!?!?"
Подробнее:
В первых ковычка ставится имя или IP адрес. Во вторых задается пароль для доступа на сервер. Далее проставляются флаги полномочий. В последних - флаги доступа на сервер.
Список флагов полномочий:
Цитата:
a - Флаг иммунитета. Человека нельзя кикнуть/забанить/сделать slay/slap и т.п.
b - Флаг разрешающий подключение на резервные слоты.
c - Флаг доступа к команде amx_kick.
d - Флаг доступа к командам amx_ban и amx_unban.
e - Флаг доступа к командам amx_slap и amx_slay.
f - Флаг досутпа к команде amx_map.
g - Флаг доступа для изменений cvar настроек через amx_cvar. Прошу заметить, доступны не все cvar переменные.
h - Флаг доступа к amx_cfg.
i - Флаг доступа к amx_chat и другим чат командам.
j - Флаг доступа к amx_vote и другим командам голосования.
k - Флаг доступа для изменения cvar переменной sv_password.
l - Флаг доступа к amx_rcon и возможности изменения всех cvar на сервере.
u - Флаг доступа к меню amx.
z - Флаг пользователя. Не даёт ни каких полномочий
Флаги доступа на сервер:
Их несколько, но используются не все
Цитата:
a - отлючать игрока если пароль не совпадает.
d - Это IP адрес.
e - Пароль не проверяется.
Два способа сразу сделать себя админом:
1. Пишем такую строчку в конце файла users.ini
"123.45.678.90" "" "abcdefghijklmnopqrstu" "de"
Что мы сделали? Мы написали, что при заходе с IP 123.45.678.90 следует дать пользователю максимальные полномочия, и флаги доступа на сервер "de" значат, что первым параметром явлется IP и что пароля не требуется.
2. "pap0_K4rl0" "pinnokio" "abcdefghijklmnopqrstu" "a"
Теперь ползователю с ником "pap0_K4rl0" и паролем (прописанным через setinfo _pw) "pinnokio" будут даны максимальные полномочия.
Вот и все.
О плагинах и т.п. пока не рассказываю. Можете сами заглянуть в plugins.ini и посмотреть там, какой плагин за что отвечает. Возможно вам какой нибудь и не нужен. Чтоб его отключить, достаточно поставить ";" перед ним.
Запускаем сервер.
Для того чтоб админу получить права на сервер, ему надо в консоле своего клиента написать setinfo _pw mypass.
И только !после этого!, подключаться к серверу.
4. Установка Booster
Booster - мод для HL движка, понижающий пинг игроков.
Собственно работает неплохо на 300-400 фпс, больше ставить не рекомендую - наблюдаються глюки со стрельбой. Так что не увлекайтесь. Ещё помогает загрузка Windows Media Player - почему? Он повышает активность системного процессора. Главное - запустить на нём какую нить музыку и поставить её на паузу.
Сразу скажу, владельцы *nix систем могут дальше не читать. Вы можете использовать встроенный бустер, который активировать можно, добавив в строку запуска сервера параметр -pingbooster 2. Плохой результат? Пробуем -pingbooster 3.
Владельцы win32 систем.
Качаем Booster 1.70.
Он ниже
Как со всеми модами, расспаковываем его в \cstike\addons\booster. Прописываем dll файл в plugins.ini, в папке с metamod р.
Настройка booster'a идет по средствам cvar значений, которые в свою очередь прописываются в server.cfg. Ниже приведен пример моих установок на сервере.
Цитата:
// Booster configuration:
booster_show_connmsg 1 //Показывать информацию игрокам о Booster при их подключении к серверу (0 = не показывать, 1 = маленькое сообщение, 2 = большой сообщение)
booster_autofps 400 //Автоматическое изменение значение команды sys_ticrate и управлением FPS сервера. (X = значение от 0 до 1000). Настройки booster_autofps требует значение booster_lite_mode 3.
booster_minsleepms 5 //Cвязано с CPU. Cпящий режим для HLDS. (x = от 1 до 10)
booster_force_systicrate 0 //Управление значением sys_ticrate. Использование этой опции установит booster_autofps в 0 и booster_lite_mode to 3. Настройте sys_ticrate в server.cfg. (x = 0 до 10000)
booster_cpu_enabled 0 //Booster монитор CPU. Может понижать нагрузку, когда требуется.
(0 = выключить, 1 = включить, 2 = сообщать CPU, но не управлять им)
booster_cpu_spikemax 3 //Управляет CPU.
booster_cpu_spikelevel 75 //Управляет CPU.
booster_cpu_floor 50 //Управляет CPU.
booster_cpu_mminc 2 //Управляет CPU. (x = от 1 до 10)
booster_cpu_quiettime 300 //Bремя в секундах, когда без CPU используется booster_cpu_floor.
booster_cpu_mmmin 3 //Управляет CPU. (x = от 1 до 10)
booster_cpu_mmmax 8 //Управляет CPU. (x = от 1 до 10)
booster_lite_mode 3 //Управление Booster'ом. 0 - HLDS спит 10 миллисекунд, если не получает пакеты, если он получает пакеты, то спячка прекращается. 1 - HLDS спит 10 миллисекунд. Если он получает пакеты, то спячка прекращается. 2 - HLDS спит 50 миллисекунд. Если он получает пакеты, то спячка прекращается. 3 - HLDS спит в стандартном значении.
booster_lite_extra_sleep_frequency 0 //Управляет HLDS сервером, устанавливая его в спящий режим, когда получает пакеты. Понижает загрузку на процессор.
А вот это неплохо бы прописать в server.cfg
Цитата:
rate 23000
cl_cmdrate 45
cl_updaterate 40
cl_rate 23000
cl_cmdbackup 2
Сразу прошу заметить, что Booster повышает риск падения сервера. Если сервер у вас падает с этой версией, то попробуйте поставить Booster Lite. Ставить Booster v2.40 смысла нет, слишком много на него жалоб на всевозможных форумах.
Смысл ставить бустер имеет только на "мясных" серверах (10x10-12x12). Если у вас CW сервер (5x5-6x6), то на мой взгляд, смысла в его установке нет.