Приветствую Вас, Гость! Регистрация RSS

Мой сайт

Суббота, 20.04.2024
[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
  • Страница 1 из 1
  • 1
Форум » Создание и настройка серверов Cs 1.6 » Статьи и мануалы » Создание Серевера CS
Создание Серевера CS
Суббота, 18.08.2012, 23:32 | Сообщение # 1
Ушёл =====> :D :D :D
Сообщений:
276
Награды:
Замечания:
Статус:
[admin]Данное руководство написано для "продвинутых" пользователей, которые относительно неплохо умеют обращаться с Windows.
Если вы не из таких, можете дальше не читать, всё равно ничего не поймёте...
Если вы новичёк в данном деле - не пытайтесь собирать сервер "по шагам" данного мануала, т.к. врядли что-то получится! Сначала прочитайте его 2-3 раза, пока не поймёте все тонкости сборки и настройки, и лишь затем начинайте сборку, используя мануал как памятку.[/admin]



[Table]Примерные требования к ресурсам компьютера, на котором будет располагаться сервер:





Под словом "слот" в данном случае подразумевается игровое место на сервере[/Table]




Оглавление:
[Table]
1) Установка, настройка, запуск базовой платформы сервера
2) Установка Metamod
3) Установка AmxModX, базовая настройка
4) Использование админ-аккаунта в AmxModX, работа с админкой (список основных команд)
5) Установка Booster'а (модуль, понижающий ping игроков)
6) Настройка Half-Life Fast HTTP Access
7) Что такое IP-адрес, и как его узнать?[/Table]




Дополнительная информация:
[Table]1) Установка плагинов Amx Mod X
2) Проблемы с баном через меню amxmodx (игроки не банятся)
3) Анти-читы для сервера
4) Вычисление оптимальных сетевых настроек для сервера
5) На сервере мало народу, как быть?
6) Как поиграть с другом, если вы сервер, но ваш тип адреса - NAT?[/Table]




1) Установка, настройка, запуск базовой платформы сервера
[Table]
1.1) Устанавливаем сервер

Для создания сервера нам понадобится программа Half-Life Dedicated Server Update Tool

Скачать с официального хранилища [/Table]




[Table]Устанавливаем программу в стандартную папку, т.е. в C:\Program Files\Valve\HLServer)

Переходим в папку C:\Program Files\Valve\HLServer, запускаем файл HldsUpdateTool.exe
Он скачивает необходимые обновления и закрывается.

Теперь опять запускаем этот же файл, но уже с ключами:
hldsupdatetool.exe -command update -game cstrike -dir c:\hlds
Инструкция по запуску файла с ключами (для Windows):
Жмём на hldsupdatetool.exe правой кнопкой, жмём "Создать ярлык"
Жмём по созданному ярлыку правой кнопкой, выбираем пункт "Свойства"
На вкладке "Ярлык" в поле "Объект" дописываем после кавычек ключи (т.е. в нашем случае в поле "объект" будет следующая строчка: "C:\Program Files\Valve\HLServer\HldsUpdateTool.exe" -command update -game cstrike -dir c:\hlds)

Прошу заметить, что c:\hlds - это путь, куда будет установлен сервер (в общем-то после скачивания папку с сервером можно будет свободно переместить и переименовать).
После старта файла с ключами начнётся процесс загрузки файлов сервера. Процедура может занять довольно длительное время. Может даже возникнуть ошибка, что сервер не отвечает, или что-то в этом роде. В этой ситуации просто следует попробовать еще раз, но позже.
Внимание! Перед тем, как запускать hldsupdatetool.exe с ключами, необходимо создать папку в том месте, куда вы будете скачивать сервер (в нашем случае это c:\hlds)
Если этого не сделать, скачивание не начнётся и просто вылетит ошибка!

Примечание
Если у вас что-то не получается, то вы можете воспользоваться альтертативным решением, и загрузить сервер с нашего сайта.
"Чистый", не пропатченный на NOWON сервер (Protocol version 48, Exe version 1.1.2.6 [cstrike], Exe build: 14:57:13 Oct 23 2008 [4382], ~166 mb, скачанный 01.01.2009) можно загрузить из нашего файлового архива. [/Table]




[Table]Итак, сервер скачался. Теперь следует решить, какой сервер вы собираетесь использовать.
Есть две разновидности: Steam и Non-Steam
Steam-версия позволяет заходить на сервер только тем игрокам, у кого установлена лицензионная версия игры (Steam).
Non-Steam-версия позволяет заходить как игрокам с пиратской версией игры, так и лицензионщикам.

Если вы выбрали Steam-версию, то отключение WON-аутентификации не потребуется.
Если же вы выбрали Non-Steam-версию, то нужно будет отключить WON-аутентификацию (отключение проверки steam-аккаунтов, т.е. сообщение Invalid CD-KEY).
В данном руководстве я предлагаю два различных варианта отключения WON. Давайте рассмотрим их в порядке нарастания сложности установки...
[/Table]




[Table]1.1.1) Установка NOWON-патча

Данный метод сейчас не актуален, т.к. с этим патчем ваш сервер не будет виден в списке серверов Steam'а!
Рекомендую вам пропустить данный пункт и использовать dproto, о котором речь пойдёт в пункте 1.1.2

Самый простой на мой взгляд метод, заключающийся в подмене оригинальных библиотек сервера "крякнутыми", в которых отключена WON-аутентификация.
После установки данного патча на ваш сервер смогут заходить как пользователи Non-Steam-версии игры, так и пользователи Steam'а.

prot47-48-steam-nonsteam-windows - Скачать

Скачиваем архив и распаковываем его в корневую папку нашего сервера, с заменой совпадающих файлов.
Вот и всё!

Внимание!
После того, как вы пропатчите ваш сервер на NOWON (патчем 47+48), он станет уязвим к некоторым типам атак, при помощи которых злоумышленник может заставить ваш сервер зависнуть.
Чтобы защитить себя от этих атак, я НАСТОЯТЕЛЬНО рекомендую вам скачать и установить данную программу: Anti CSDoS 3.2

После запуска программа внедряется в процесс hlds.exe и не позволяет эксплойтам (хакерским программам) воздействовать на ваш сервер.
Обязательно следите за тем, чтобы программа была запущена паралельно с серверами CS, иначе защита обеспечиваться не будет!
Я рекомендую после запуска программы установить все три галочки, расположенные в нижней части окна - программа будет запускаться при загрузке Windows и сама проверять память на загруженные сервера, и в случае нахождения таковых патчить их автоматически.

Steam-версия, и сервер с dproto (при использовании "родного" swds.dll) в данной программе не нуждаются!
[/Table]




[Table]1.1.2) Установка dproto

Более "сложный" метод, если можно его так назвать. Тут нам будет необходимо выполнить больше действий.
Давайте сначала разберёмся, что же такое dproto:
Цитата с офф. страницы:

Цитата
dproto is a plugin for metamod that allows protocol 47 and 48 no-steam clients to join the server.

FEATURES:

- Server accepts all known clients based on 47 and 48 protocols;
- Customizable SteamIDs for clients;
- Works with latest version of hlds;

Переведу: dproto является плагином для Metamod, и позволяет заходить на сервер клиентам как 47-го (ностим), так и 48-го (стим) протокола.
Чем хорош dproto? Во первых, он частично защищает игроков (клиенты игры) от ошибки svc_bad, во вторых, позволяет выдавать различным версиям клиентов различные AUTHID'ы, в третьих, поддерживает подключение eSTEAMATiON, в четвёртых, не модифицирует библиотеки игры, и если вы не заменяете swds.dll, и оставляете её оригинальную версию, то она будет защищена от DDoS-атак, и в пятых, якобы сам аутентифицируется на мастер-сервере Setti (не проверено лично, так что гарантии нет).
Сразу раскажу, зачем нужна интеграция с eSTEAMATiON, и что она может нам дать. Для начала давайте вспомним, что для nonsteam-клиента игры существует большое кол-во разнообразных патчей. Обычно они различаются версиями sw.dll, и лично я использую 29-ую версию. Но допустим, мой сосед (назовём его Вася) использует патч версии 35. Эта самая 35-ая версия построена не на оригинальных игровых библиотеках, а на эмуляторе Steam'а. Такой патч сделан именно для серверов с eSTEAMATiON. Когда Вася заходит в свою КС с 35-ым патчей 1-ый раз, эмулятор стима генерирует для него уникальный SteamID (на основе хеша конфигурации компьютера). Когда Вася заходит на сервер с eSTEAMATiON, этот самый eSTEAMATiON получает SteamID нашего Василия, как будто бы он и правда играет с лицензионного клиента игры. Т.е. получается как бы "пиратская версия" Steam-аутентификации. Так в чём же разница, спросите вы? А разница в том, что когда мне захочется забанить Василия, и я нажму заветные кнопки бана, его забанит не по IP-адресу, а по этому самому SteamID. Согласитесь, если у Васи динамический IP-адрес, ничего не мешает ему перезайти в интернет (сменить IP), и играть дальше. Но не тут то было! Когда Вася попробует перезайти на сервер, eSTEAMATiON опять получит от его эмулятора тот самый SteamID, по которому Василий был забанен. Естественно, на сервер его попросту не пустит... Переустановка игры/windows проблему не решит, т.к. эмулятор всё равно будет выдавать один и тот же SteamID, сверяясь с хешем конфигурации компьютера. Придётся "дёргать" железо... В общем, получилось что "умельцы" соорудили схему "эмуляционные клиент+сервер", чтобы создать пиратскую версию стим-аутентификации. Если вы хотите иметь возможность раз и навсегда "избавляться" от игроков с патчами на основе эмуляторов стима, то ставьте dproto+esteamation, если не хотите - ставьте только dproto.

Итак, давайте рассмотрим процессы установки и настройки dproto и esteamation
[/Table]




[Table]a) Установка dproto

Качаем последнюю версию отсюда

Цитата
1. Идём в cstrike/addons/ и создаём папку dproto
2. Копируем dproto.dll в cstrike/addons/dproto/
3. Идём в папку с установленным metamod'ом (обратитесь к пункту 2 данного руководства) (обычно это cstrike/addons/metamod/) и добавляем в plugins.ini с чистой строки:

win32 addons\dproto\dproto.dll

4. Копируем dproto.cfg в корневую папку сервера, открываем блокнотом, настраиваем под себя (я уже всё более менее настроил, так что если ничего там не понимаете - не трогайте).
5. Запускаем сервер.
6. Когда сервер запустился, пишем в его консоли команду meta list
Вы должны будете увидеть там примерно следующее:

Currently loaded plugins:

[1] dproto RUN - dproto.dll v0.2.6 ini Start Never

Очень важно, чтобы было написано именно RUN, a не Bad Load! Bad Load означает, что скорее всего серверная библиотека не совместима с dproto. Просто попробуйте другую версию swds.dll

7. Готово![/Table]




[Table]б) Установка eSTEAMATiON

Качаем eSTEAMATiON 1.8: eSTEAMATiON 1.8 for dproto
Цитата
Папку cfg и файл eSTEAMATiON.dll размещаем в корне сервера
Заходим в папку нашего dproto, и идём в \src\dproto\stub_steam\windows\vlvticket\Release
Берём отсюда файл vlvticket.dll, и размещаем его в корне сервера
Настраиваем eSTEAMATiON (если требуется), редактируя cfg/esteamation.cfg
Включаем поддержку eSTEAMATiON'а - выставляем Emulation = 1 в dproto.cfg
Запускаем сервер...

Готово! [/Table]




1.2) Настраиваем сервер

[Table]Ниже приведена примерная, "базовая" конфигурация сервера.
Если вы ничего не понимаете в этом, то я думаю, данные настройки подойдут для вас.
Тот, кто разбирается в консольных командах игры, может поменять всё "под себя".
Список настроек размещается в файле server.cfg, который находится в папке cstrike. Откройте этот файл блокнотом, удалите все записи, и затем копируйте в него данные настройки:

Код
echo Executing server configuration...

// Set the Host Name

hostname "My First CS Server" // Имя вашего сервера в списке серверов

// Set the rcon password

rcon_password "password" // Пароль для управления сервером через консоль клиента. Чтобы данная функция не работала, оставьте пустым - ""

// Server Logging

log on // включаем режим записи логов (off - выключаем) [логи помещаются в папку logs, находящуюся в папке cstrike]

mp_logdetail 3 // определяем детальность записи логов

mp_logmessages 1 // 1 - записывать сообщения чата, 0 - нет

// LAN Mode
// Если sv_lan установить в 1, то во первых, ваш сервер перестанет пускать пользователей Steam'а и игроков с патчами на основе эмуляторов стима, а во вторых, ваш сервер перестанет отображаться во вкладке Internet Servers клиента игры

sv_lan 0 // Обязательно ставим 0

// Server Variables

mp_maxrounds 0 // макс. кол-во раундов перед сменой карты

mp_winlimit 0 // лимит побед перед сменой карты

mp_timelimit 20 // время на карту (в минутах)

mp_roundtime 2 // время на раунд (в минутах)

mp_freezetime 5 // время в начале раунда, в течении которого игроки не могут двигаться и стрелять

mp_chattime 10 // определяет промежуток времи, в течении которого игроки могут чатиться после окончания игры на карте

mp_c4timer 35 // время, по истечении которого будет взрываться бомба (c4)

mp_buytime 0.25 // время, в течении которого можно покупать оружие и боеприпасы (начинает истекать после начала раунда)

mp_startmoney 800 // стартовая сумма денег

mp_flashlight 1 // разрешить фонарик

mp_footsteps 1 // включить слышимость шагов

mp_friendlyfire 1 // включить ff - игроки одной команды могут наносить урон друг другу.

mp_fadetoblack 0 // 1 - включает чёрный экран после вашей смерти (вы не видите, что происходит в игре)

mp_forcechasecam 0 // 1, 2 - различные режимы блокировки наблюдения за игроками (видно только от 1 лица; от 3 лица)

mp_forcecamera 0 // 1, 2 - режимы наблюдения за командами (видно всех; только своих; только чужих)

mp_autoteambalance 1 // автоматический баланс команд

mp_limitteams 1 // лимит превышения числа игроков в команде относительно противоположной команды

mp_autokick 0 // автоматическое выкидывание убийц своих и AFK'шников с сервера

mp_tkpunish 0 // убивать в следующем раунде убийц своих или нет

mp_hostagepenalty 0 // кикать за убийство заложников или нет

mp_playerid 1 // вывод имени игрока большим шрифтом при наведении на него (только при установленном amxmodx)

sv_airaccelerate 10

sv_airmove 1

sv_gravity 800 // уровень графитации

sv_timeout 35

sv_allowupload 1

sv_allowdownload 1

sv_voiceenable 1

sv_alltalk 0

sv_voicequality 5

sv_voicecodec voice_speex

sv_aim 0

sv_cheats 0

sv_clienttrace 1

sv_maxrate 30000

sv_spectatormaxspeed 500

sv_maxspeed 320

sv_maxupdaterate 101

sv_minrate 0

sv_minupdaterate 13

sv_region 255

decalfrequency 60

sys_ticrate 10000

pausable 0

allow_spectators 2

mapchangecfgfile server.cfg

exec banned.cfg

exec listip.cfg

echo Executing server configuration... Done!

Готово! Сервер настроен и готов к старту! [/Table]




1.3) Решение проблемы с отображеним сервера во вкладке Internet Servers

[Table]Теперь давайте сделаем так, чтобы наш сервер было видно в списке интернет-серверов:

1) Скачайте данный архив, распакуйте. Полученным файлом замените одноимённый файл в папке ваш_сервер/cstrike. Не модифицируйте данный файл! Это очень важно!
steam.rar ( 115 байт )

2) Откройте server.cfg в папке ваш_сервер/cstrike и допишите в самый низ следующее:

Цитата
setmaster enable "1"
setmaster add 213.239.209.221 27010
setmaster add 72.165.61.189
setmaster add 72.165.61.190
setmaster add 68.142.72.250
setmaster add 69.28.151.162 27010
setmaster add 207.173.177.11
setmaster add 68.142.72.250
setmaster add hlmaster.jolt.co.uk
setmaster add 65.73.232.251 27040
setmaster add 65.73.232.253 27040
setmaster add 207.173.177.12 27010
setmaster add 207.173.177.11 27010
setmaster add 69.28.151.178 27010
setmaster add css.setti.info

3) Запустите ваш сервер (обязательно бат-скриптом, в консольном режиме. подбробнее о данном методе запуска написано в пункте 1.4, т.е. чуть ниже). Сервер может выдать "Unknown command setmaster enable", либо "Invalid master, command ignored", или что-то типа того. Не волнуйтесь, так и должно быть. Главное что сервер не выдаёт "Your server is out of date", что означало бы, что у вас либо кривой NOWON-патч (не тот, что выложил я), либо вы забыли про файл steam.inf, и кинули его не туда/внесли в него изменения.
Ну да ладно, давайте ближе к делу... Пройдите по адресу http://css.setti.info/. Вы попали на оффициальную страницу мастер-сервера Setti. Данный сервер используется большинством патчей на основе эмуляторов стима (к примеру, тот же патч 35), и очень важно, чтобы наш с вами сервер отображался в списке этого мастер-сервера. Пролистайте страницу до самого низа. Там вы увидите поле для ручного добавления сервера в список "Add your server to the masterserver list". Введите IP:PORT вашего сервера и нажмите Add. Ни в коем случае не выключайте сервер! Примерно через 20-30 минут ваш сервер должен будет появиться в списке серверов Setti. Его присутствие в списке можно проверить по данной ссылке, введя в предложенное поле IP-адрес вашего сервера. Если страница возвращает пустой результат, то видимо произошла ошибка: либо вы установили sv_lan в 1, либо ввели неправильный IP:PORT, либо ваш сервер не может соединиться с мастер-сервером Setti, либо глючит сам мастер-сервер. Попробуйте добавить сервер заново и подождать... Сервера в данный список желательно добавлять именно по IP:PORT, а не по DOMAIN_NAME:PORT, т.к. Setti часто глючит при определении доменных имён, и он отображает сервер в offline, когда тот работает. Владельцам статических IP-адресов достаточно посещать http://css.setti.info/servers/list-search....ch=ваш_ip-адрес, проверяя, правильно ли Setti отображает статус сервера. Если ваш сервер вышел в онлайн более часа назад, а Setti пишет что сервер offline (не показывает его), то просто добавьте его в список заново. Владельцы динамических IP-адресов должны каждый раз (при смене IP) добавлять сервер в список заново (по новому IP). Можете пробовать добавлять сервер через DOMAIN_NAME:PORT, если испольузете привязку компьютера к бесплатному DNS-имени (к примеру сервис no-ip.org), но работоспособность не гарантируется. Вообще, работа с мастер-сервером Setti - это "танец с бубном". Он то отображает сервера, то не отображает. И не понятно, с чем это связано... В общем, надеюсь вы быстро получите нужный вам результат!

P.s.
Подробнее о том, как узнать свой IP, будет описано в конце статьи.[/Table]




1.4) Запускаем сервер

[Table]Запускать сервер мы будем при помощи bat-скрипта. Этот самый скрипт необходим нам для того, чтобы в случае "падения" сервера его перезапуск происходил автоматически, без нашего с вами участия.
Если вы можете сами создать bat-файл, то сделайте это, и поместите в него следующий (но изменённый) код (об этом ниже):
Готовый bat-файл (имя файла не играет роли) необходимо поместить в корневую папку сервера (туда, где лежит hlds.exe)

Код
@echo off
cls
:hlds
echo (%time%) Server has been started!
START/HIGH /min /wait hlds.exe -noipx -console +ip 0.0.0.0 +port 27015 -tickrate 100 -secure -game cstrike +maxplayers 22 +map de_dust2
echo (%time%) WARNING! hlds closed or crashed! Restarting...
goto hlds

Этот же файл (в архиве) на нашем сайте (редактируйте при помощи того же блокнота)
auto_UP.rar ( 304 байт ) Кол-во скачиваний: 14

Рассмотрим подробнее возможные ключи запуска:
-noipx - необходим в том случае, если вы планируете в будующем установить на сервер анти-пинг модуль (booster)
-console - старт в консольном режиме (экономит ресурсы системы)

+ip - IP-адрес, к которому привязывается сервер, и с которого он связывается с мастер-серверами. Следует указать ваш внешний IP-адрес, либо оставить 0.0.0.0 (старт на всех доступных интерфейсах), и тогда сервер сам разберётся, с какого IP ему дозваниваться до мастер-серверов.

+port - порт, на котором работает сервер.
-tickrate 100 - частота "прорисовки" игрового мира. стандартно 66, но я рекомендую ставить именно 100. доступные значения: 33, 66, 100. чем выше значение, тем плавнее игра, но больше загрузка серверного процессора
-secure - включает VAC (жёлтый значёк щита в списке серверов) (для отключения ставьте -insecure, но я рекомендую оставить включённым)
-nomaster - указывает серверу, что ему не нужно соединяться с глобальными серверами VALVE (сервер не будет отображаться во вкладке Internet Servers)
-game cstrike - сообщает серверу, какой мод запускать (в нашем случае CS 1.6)
+maxplayers - кол-во мест на сервере (слотов)
+map de_dust2 - после старта сервера будет загружаться данная карта [/Table]




2) Установка Metamod

[Table]Если в будующем планируется установить AmxModX, то эту часть можно пропустить, т.к. amxx идёт с уже встроенным metamod'ом.

Metamod служит для подключения дополнительных mod'ов на сервер, таких как AmxModX, AdminMod, StatsMe, Booster, HLGuard и т.д.

Офф. сайт: metamod.org
[/Table]

[Table]Достаем из архива папку cstrike, и кладем её поверх одноимённой папки в корне нашего сервера.

Открываем cstrike\liblist.gam блокнотом.
Для Windows изменяем строчку gamedll "dllsmp.dll" на gamedll "addons\metamod\dlls\metamod.dll".

Все готово для подключения дополнительных модов! [/Table]




3) Установка AmxModX, базовая настройка

[Table]3.1) Устанавливаем AmxModX

На момент написания статьи последняя версия AmxModX'a - 1.8.1

Скачиваем AMX Mod X Full Installer:

Официальный сайт[/Table]

[Table]Запускаем установщик, ставим в папку по умолчанию (у меня это C:\Program Files\AMX Mod X), галочку Run AMX Mod X Installer не снимаем!

Вылетает интуитивно понятное меню установки... Жмём везде "угу", "ага" т.п.
Когда дело доходит до ситуации с выбором Local Instalation, выбираем Select Mod Directory, выбираем из списка Counter-Strike, а в дереве папок указываем папку нашего сервера/cstrike (т.е. устанавливаем amxx в папку cstrike)

Установка закончена! [/Table]




3.2) Настраиваем AmxModX

[Table]Для начала нам нужно отредактировать главный конфиг AmxModX'а.
Переходим в csrtike/addons/amxmodx/configs и открываем блокнотом файл amxx.cfg
Большинство настроек неподготовленному пользователю трогать не стоит, поэтому я опишу лишь самые важные и значимые.
Знак ";" перед строкой определяет, что строка является комментарием, а значит не воспринимается AmxModX'ом как служебная (не загружается).

Код
amx_show_activity 2 // 0 - не показывать действия админов, 1 - показывать действия под общим тегом ADMIN (ники не показываются), 2 - показывать ники админов, выполняющих действия.

amx_reservation 2 // кол-во слотов от общего кол-ва слотов сервера, зарезервированное для админов. Т.е. если поставить 2, то при 22-ух слотах последние 2 могут занимать только админы.

amx_client_languages 0 // позволить игрокам менять язык меню AmxModX'а или нет.

csstats_rank 0 // по каким критериям вести запись статистики игроков. 0 - по нику, 1 - по steamid'у (только стим), 2 - по IP. Для non-steam ставьте 0.

csstats_maxsize 25000 // максимальное кол-во записей в файле статистике. При переполнении статистика обнуляется.

csstats_rankbots 1 // записывать ботов в статистику или нет (нужно лишь в том случае, если вы будете устанавливать на сервер ботов).[/Table]

Теперь открываем modules.ini

[Table]и убираем там знак ";" перед словами "engine" и "fakemeta".
Этот файл определяет, какие модули грузятся при запуске сервера.
При установке сторонних плагинов, в их шапке (или файлах readme) вы можете увидеть записи о том, какие модули нужны для правильной работы плагина.
Вот как раз в этом файле и нужно включать/выключать загрузку модулей. [/Table]

Теперь открываем plugins.ini

[Table]
Снимаем ";" перед словами "restmenu.amxx", "miscstats.amxx", "stats_logging.amxx", "statsx.amxx", "amxmod_compat.amxx"
Этот файл определяет, какие плагины (из папки plugins) грузятся при запуске сервера.
При установке новых плагинов, сюда нужно дописывать их имена (включая .amxx) [/Table]

Теперь открываем users.ini

[Table]
Этот файл содержит записи, касающиеся админ-аккаунтов.
Сейчас мы сделаем себя администратором.
Переходим в самый конец файла, и видим там:

Код
; Examples of admin accounts:

; "STEAM_0:0:123456" "" "abcdefghijklmnopqrstu" "ce"

; "123.45.67.89" "" "abcdefghijklmnopqrstu" "de"

; "My Name" "my_password" "abcdefghijklmnopqrstu" "a"

Как вы видите, существует три способа назначения админ-прав: 1 - по steamid (только для Steam'а), 2 - по IP-адресу, 3 - по нику.
Свой steamid можно узнать, зайдя на любой сервер и открыв консоль (~), написать status. Там, рядом с вашим ником будет строчка вида STEAM_0:0:123456. Вот это и есть ваш steamid.
Помните, что если вы включили sv_lan 1, то по steamid'у выдавать админки уже не получится (вместо steamid будут видны steam_id_lan).
Если вы знаете что такое IP-адрес, и он у вас статический, то можете задать себе админку именно по нему.
Получение админки по нику - самый популярный метод.

Рассмотрим подробнее пример аккаунта и флаги полномочий + флаги доступа (; - перед строкой означает, что аккаунт неактивен):

"My Name" "my_password" "abcdefghijklmnopqrstu" "a"

"My Name" - в это поле вписывается steamid, IP, или ваш игровой ник
"my_password" - в это поле вписывается ваш пароль на сервер
"abcdefghijklmnopqrstu" - флаги полномочий (их распишу ниже)
"a" - флаги доступа на сервер (так же ниже)

Флаги полномочий:

Код
; a - Флаг иммунитета. Человека нельзя кикнуть/забанить/сделать slay/slap и т.п.

; b - Флаг разрешающий подключение на резервные слоты.

; c - Флаг доступа к команде amx_kick.

; d - Флаг доступа к командам amx_ban и amx_unban.

; e - Флаг доступа к командам amx_slap и amx_slay.

; f - Флаг досутпа к команде amx_map.

; g - Флаг доступа для изменений настроек через amx_cvar. Прошу заметить, доступны не все cvar-переменные.

; h - Флаг доступа к amx_cfg.

; i - Флаг доступа к amx_chat и другим чат командам.

; j - Флаг доступа к amx_vote и другим командам голосования.

; k - Флаг доступа для изменения cvar переменной sv_password.

; l - Флаг доступа к amx_rcon и возможности изменения всех cvar на сервере.

; m, n, o, p, q, r, s, t, - Флаги полномочий, касающиеся сторонних (читай "нестандартных") плагинов. Своего рода резерв.

; u - Флаг доступа к меню (к консольной команде amxmodmenu).

; z - Флаг пользователя. Не даёт ни каких полномочий.

Флаги доступа:
Рассмотрим только те флаги, которые чаще всего используются.

Код
; a - кикать игрока с сервера, если он зашёл по этим ником, но пароль отсутствует или не совпадает.

; c - указывает, что значение в первом поле - steamid

; d - указывает, что значение в первом поле - ip-адрес

; e - пароль не проверяется (с выдачей админки по нику использовать не рекомендуется)

Итак, давайте предположим, что наш ник в игре test, и придумаем пароль: test123
Наш аккаунт мы защитим флагом доступа A, чтобы никто кроме нас не смог войти под нашим ником.
Так же мы дадим нашему аккаунту все полномочия на сервере (полноправие).
Наша запись будет такой:

"test" "test123" "abcdefghijklmnopqrstu" "a"

Добавляем эти данные в чистую строку файла.
Аккаунт добавлен! [/Table]




4) Использование админ-аккаунта в AmxModX, работа с админкой (список основных команд)

4.1) Использование админ-аккаунта в AmxModX

[Table]Наш аккаунт добавлен в файл users.ini, сервер запущен. Но как же теперь получить админ-права при заходе на сервер, и начать уже пользоваться админ-функциями?
Я предлагаю метод с авто-загрузкой пароля из собственного конфига.
Давайте рассмотрим мой метод на примере нашего тестового аккаунта test, с паролем test123
Для начала нам с вами нужно будет окрыть блокнотом файл config.cfg, расположенный в папке cstrike вашего клиента игры (не сервера, а именно игры).
Затем пролистать этот файл до самого низа и убедиться, что там находится строчка exec userconfig.cfg
Если этой строчки там нет, допишите её вручную.

Теперь нам нужно создать файл userconfig.cfg
Для этого мы жмём на файле config.cfg правой кнопкой, жмём копировать, и вставляем копию файла в эту же папку (cstrike).
Получившуюся копию переименовываем в userconfig.cfg и так же открываем блокнотом.
Нам нужно удалить совершенно все записи из данного файла, и написать всего три новые строчки:

setinfo _pw "test123"
bind INS "amxmodmenu"
echo BCE BEPHO!

Сохраняем файл, закрываем. Заходим в игру, открываем консоль (кнопка ~), ищем в открывшемся окне надпись BCE BEPHO!
Если её нет - вы сделали что-то не так. Возможно разместили файл не там, или забыли его сохранить. Всякое бывает...
Если она есть - читаем дальше...
[/Table]

[Table]Примерная (чтобы было понятнее) схема действий сервера:
Давайте представим, что при подключении сервер считывает ваш ник test, и сверяет его с теми данными, которые записаны в файл users.ini
Если ник НЕ совпадает ни с одним из тех ников, что указаны в users.ini, сервер выдаёт вам флаг Z (отсутствие прав - обычный игрок)
Если ник совпадает с одним из тех ников, что указаны в users.ini, сервер продолжает проверку согласно данным в полях после ника:
Если указан пароль, он сверяет пароль с вашим, считывая его из переменной _pw.
Если пароль совпал, выдаются указанные далее полномочия.
Если пароль НЕ совпал, происходит обработка поля с флагами доступа, и если там стоит A, то вас кикает, т.к. пароля либо нет, либо он неверен. [/Table]

[Table]Заходим на наш с вами сервер:

Если вас кикает с надписью "You have no entry...", то вы что-то намудрили с паролем (не прописали, прописали не так, не туда и т.д.)
Если вход на сервер успешно производится - читаем далее...
После входа под админским аккаунтом сразу нажмите на клавиатуре кнопку Insert (на неё мы с вами забиндили админ-меню).
Если админка открывается (белые строчки слева) - замечательно.
Если нет - попробуйте написать в консоли amx_kick - что в итоге происходит?
Если пишет "You have no access..." - смените ник на другой, и затем на админский - должно помочь.
Если не помогло - скорее всего вы накосячили с расположением userconfig.cfg или попросту допустили ошибку в написании ника в игре или файле users.ini
В крайнем случае вы можете скачать отсюда клиент игры + патч 29, и попробовать выполнить вышеизложенное на нашей версии игры. По идее, всё должно работать (проверено на личном опыте).

Если всё получилось, и админка работает (вызывается на Insert, либо консольной командой amxmodmenu), то можно смело переходить к изучению всех функций админ-меню.
Все функции интуитивно понятны, и я думаю у вас не возникнет проблем с их освоением. [/Table]




4.2) Список основных команд AmxModX

[Table]На всякий случай выложу список основных команд AmxModX'а (в основном консольных).
Большинство этих команд можно выполнять в консоли сервера, а так же в консоли клиента (для тех, кому не хватает функциональности amxmodmenu)

Цитата
amx_kick [ник] [причина] Кикнуть игрока с сервера
amx_banid [steamid] [причина] Забанить игрока на сервере по SteamID/WonID
amx_banip [ник] [причина] Забанить игрока по IP
amx_unban [ip или steamid] Разбанить игрока
amx_slay [ник] Убить игрока
amx_slap [ник] [сила удара в hp] Пнуть игрока
amx_leave [тег] [тег] [тег] Оставить на сервере только игроков с определёным "тегом" в имени
amx_pause Поставить/Убрать паузу
amx_who Отобразить список игроков
amx_last Отобразить список последних отключавшихся игроков
amx_cvar [value] Изменить или отобразить настройки сервера (cvar'ы)
amx_map Сменить карту
amx_cfg Выполнить конфиг
amx_rcon Выполнить команду в консоли сервера
amx_plugins Список всех загруженых плагинов
amx_modules Cписок всех загруженых модулей
amx_say Отправить сообщение всем игрокам
amx_chat Отправить сообщение админам
amx_psay Отправить приватное сообщение
amx_tsay Отправить сообщение всем игрокам (слева, жирным текстом)
amx_csay Тоже самое, только по центру экрана
amx_help Показывает справку по доступным командам
amx_votemap [карта] [карта] [карта] Начать голосование за смену карты
amx_votekick Начать голосование на кик игрока
amx_voteban Начать голосование на бан игрока
amx_vote [вопрос] [ответ № 1] [ответ № 2] Просто так любое голосование типа Вася лох? 1) Да! 2) Да, конечно!
amx_cancelvote Прервать текущее голосование
say /hp Показать информацию о вашем убийце
say /statsme Отобразить вашу статистику
say /stats Показать статистику остальных
say /top15 Отобразить 15 лучших игроков
say /rank Отобразить ваше место на в статистике сервера
say nextmap Отобразить следующую по списку карту
say timeleft Показывает, сколько времени осталось до конца текущей карты
say thetime Отображает текущее время
amxmodmenu Отображает админ-меню
amx_cvarmenu Отображает меню настроек сервера
amx_mapmenu Отображает меню смены карт
amx_votemapmenu Отображает меню голосований на смену карты
amx_kickmenu Отображает меню кика игроков
amx_banmenu Отображает меню бана игроков
amx_slapmenu Отображает slap/slay меню
amx_teammenu Отображает меню выбора команды игроков
amx_clcmdmenu Отображает меню клиентских команд
amx_restmenu Меню для установки ограничений на использование оружия
amx_teleportmenu Отображает меню телепортации
amx_pausecfgmenu Постановка и снатие с паузы с использованием меню

amx_pausecfg [параметры] Список команд для управления паузами:
Параметры:
off - Приостановить все плагины не включёные в список
on - Возобновить работу всех плагинов
stop - Остановить плагин
pause - Приостановить плагин
enable - Разрешить плагин
save - Сохранить список остановленых плагинов
clear - Обнулить список остановленых плагинов
list [id] - Список плагинов
add - Пометить плагин как неостанавливаемый

amx_statscfg [параметры] Отображает справку по конфигурации статистики:
Параметры:
on - Опция доступна
off - Опция недоступна
save - Сохранить конфигурацию статистики
load - Загрузить конфигурацию статистики
list [id] - Отобразить статус статистики
add - Добавить пункт в список

amx_statscfgmenu Отобразить меню конфигурации статистики
amx version Отобразить версию amxx
amx modules Отобразить модули amxx
amx plugins Отобразить плагины amxx[/Table]




5) Установка Booster'а (модуль, понижающий ping игроков)

5.1) Подробная информация о видах Booster'а

[Table]Booster по своей сути является модом для HL-движка (для win32 это metamod-модуль), который понижает пинг игроков за счёт повышения FPS сервера (т.е. фактически уменьшения времени отклика сервера на действия игрока).

Booster использует два полностью различных, взаимоисключающих подхода к увеличению FPS. Один основан на манипуляции Win32-таймером мультимедиа и переменной sys_ticrate, чтобы ускорить выполнение циклов "бездействия". Второй подход состоит в том, чтобы заставить сервер "просыпаться" каждый раз, когда данные от игрока начинают поступать. Таким образом, тратится меньше времени на холостые циклы.

Уменьшение времени бездействия увеличивает нагрузку на процессор сервера.
Фактически - это та цена, которую приходится платить за использование Booster'a.

Каково различие между Booster, WinHL-Booster и Booster-Lite?
WinHL-Booster и был оригинальным Booster, использущим метод разгона systicrate/mmtimer.
Booster-Lite ввел подход, основанный на "прибытии пакета" как отдельной модуль.
С версии Booster 2.0, эти подходы были объединены в один единственный модуль - Booster.

Сразу прошу заметить: Booster повышает риск падения сервера. Если сервер у вас падает с одной из версий, то попробуйте поставить другую.
На мой взгляд, Booster необходимо ставить только на "мясных" серверах (10x10-12x12, и выше). Если у вас CW-сервер (5x5-6x6), то на мой взгляд, смысла в его установке нет.

Нам нужно выбрать, какой тип Booster'а мы будем использовать.
От себу скажу лишь что Booster-Lite больше (намного, в сравнении с WinHL-Booster) грузит процессор, но зато лучше понижает пинг.[/Table]




5.2) Устанавливаем WinHL-Booster

[Table]1) Скачиваем сам Booster (версия 1.7)
2) Распаковываем в папку cstrike/addons
3) Добавляем модуль в список Metamod'а, открыв addons/metamod/plugins.ini и прописав туда с чистой строки:
win32 addons\booster\booster_mm.dll
4) Добавляем в cstrike/server.cfg следующие строки (прошу заметить, значения являются базовыми):

Код
booster_show_connmsg 1
booster_autofps 400
booster_minsleepms 5
booster_force_systicrate 0
booster_cpu_enabled 0
booster_cpu_spikemax 3
booster_cpu_spikelevel 75
booster_cpu_floor 50
booster_cpu_mminc 2
booster_cpu_quiettime 300
booster_cpu_mmmin 3
booster_cpu_mmmax 8
booster_lite_mode 3
booster_lite_extra_sleep_frequency 0

Или же следующие настройки (наши сервера используют именно такие):

Код
booster_show_connmsg 1
booster_autofps 1000
booster_minsleepms 1
booster_force_systicrate 10000
booster_cpu_enabled 0
booster_cpu_spikemax 3
booster_cpu_spikelevel 75
booster_cpu_floor 50
booster_cpu_mminc 2
booster_cpu_quiettime 300
booster_cpu_mmmin 3
booster_cpu_mmmax 8
booster_lite_mode 3
booster_lite_extra_sleep_frequency 0

Установка закончена! [/Table]




5.3) Устанавливаем Booster-Lite
[Table]
1) Скачиваем сам Booster (версия 1.1.3)
2) Распаковываем в папку cstrike/addons
3) Добавляем модуль в список Metamod'а, открыв addons/metamod/plugins.ini и прописав туда с чистой строки:
win32 addons\boosterlite\booster_lite_mm.dll
4) Добавляем в cstrike/server.cfg следующую строку:
booster_lite_mode 0

!!! ВНИМАНИЕ !!!
1) Что-бы Booster-Lite работал, в server.cfg должна быть прописана команда sys_ticrate 10000
2) Так же обязательно пропишите в строку запуска сервера команду -noipx

Установка закончена! [/Table]


        
Сообщение[admin]Данное руководство написано для "продвинутых" пользователей, которые относительно неплохо умеют обращаться с Windows.
Если вы не из таких, можете дальше не читать, всё равно ничего не поймёте...
Если вы новичёк в данном деле - не пытайтесь собирать сервер "по шагам" данного мануала, т.к. врядли что-то получится! Сначала прочитайте его 2-3 раза, пока не поймёте все тонкости сборки и настройки, и лишь затем начинайте сборку, используя мануал как памятку.[/admin]



[Table]Примерные требования к ресурсам компьютера, на котором будет располагаться сервер:





Под словом "слот" в данном случае подразумевается игровое место на сервере[/Table]




Оглавление:
[Table]
1) Установка, настройка, запуск базовой платформы сервера
2) Установка Metamod
3) Установка AmxModX, базовая настройка
4) Использование админ-аккаунта в AmxModX, работа с админкой (список основных команд)
5) Установка Booster'а (модуль, понижающий ping игроков)
6) Настройка Half-Life Fast HTTP Access
7) Что такое IP-адрес, и как его узнать?[/Table]




Дополнительная информация:
[Table]1) Установка плагинов Amx Mod X
2) Проблемы с баном через меню amxmodx (игроки не банятся)
3) Анти-читы для сервера
4) Вычисление оптимальных сетевых настроек для сервера
5) На сервере мало народу, как быть?
6) Как поиграть с другом, если вы сервер, но ваш тип адреса - NAT?[/Table]




1) Установка, настройка, запуск базовой платформы сервера
[Table]
1.1) Устанавливаем сервер

Для создания сервера нам понадобится программа Half-Life Dedicated Server Update Tool

Скачать с официального хранилища [/Table]




[Table]Устанавливаем программу в стандартную папку, т.е. в C:\Program Files\Valve\HLServer)

Переходим в папку C:\Program Files\Valve\HLServer, запускаем файл HldsUpdateTool.exe
Он скачивает необходимые обновления и закрывается.

Теперь опять запускаем этот же файл, но уже с ключами:
hldsupdatetool.exe -command update -game cstrike -dir c:\hlds
Инструкция по запуску файла с ключами (для Windows):
Жмём на hldsupdatetool.exe правой кнопкой, жмём "Создать ярлык"
Жмём по созданному ярлыку правой кнопкой, выбираем пункт "Свойства"
На вкладке "Ярлык" в поле "Объект" дописываем после кавычек ключи (т.е. в нашем случае в поле "объект" будет следующая строчка: "C:\Program Files\Valve\HLServer\HldsUpdateTool.exe" -command update -game cstrike -dir c:\hlds)

Прошу заметить, что c:\hlds - это путь, куда будет установлен сервер (в общем-то после скачивания папку с сервером можно будет свободно переместить и переименовать).
После старта файла с ключами начнётся процесс загрузки файлов сервера. Процедура может занять довольно длительное время. Может даже возникнуть ошибка, что сервер не отвечает, или что-то в этом роде. В этой ситуации просто следует попробовать еще раз, но позже.
Внимание! Перед тем, как запускать hldsupdatetool.exe с ключами, необходимо создать папку в том месте, куда вы будете скачивать сервер (в нашем случае это c:\hlds)
Если этого не сделать, скачивание не начнётся и просто вылетит ошибка!

Примечание
Если у вас что-то не получается, то вы можете воспользоваться альтертативным решением, и загрузить сервер с нашего сайта.
"Чистый", не пропатченный на NOWON сервер (Protocol version 48, Exe version 1.1.2.6 [cstrike], Exe build: 14:57:13 Oct 23 2008 [4382], ~166 mb, скачанный 01.01.2009) можно загрузить из нашего файлового архива. [/Table]




[Table]Итак, сервер скачался. Теперь следует решить, какой сервер вы собираетесь использовать.
Есть две разновидности: Steam и Non-Steam
Steam-версия позволяет заходить на сервер только тем игрокам, у кого установлена лицензионная версия игры (Steam).
Non-Steam-версия позволяет заходить как игрокам с пиратской версией игры, так и лицензионщикам.

Если вы выбрали Steam-версию, то отключение WON-аутентификации не потребуется.
Если же вы выбрали Non-Steam-версию, то нужно будет отключить WON-аутентификацию (отключение проверки steam-аккаунтов, т.е. сообщение Invalid CD-KEY).
В данном руководстве я предлагаю два различных варианта отключения WON. Давайте рассмотрим их в порядке нарастания сложности установки...
[/Table]




[Table]1.1.1) Установка NOWON-патча

Данный метод сейчас не актуален, т.к. с этим патчем ваш сервер не будет виден в списке серверов Steam'а!
Рекомендую вам пропустить данный пункт и использовать dproto, о котором речь пойдёт в пункте 1.1.2

Самый простой на мой взгляд метод, заключающийся в подмене оригинальных библиотек сервера "крякнутыми", в которых отключена WON-аутентификация.
После установки данного патча на ваш сервер смогут заходить как пользователи Non-Steam-версии игры, так и пользователи Steam'а.

prot47-48-steam-nonsteam-windows - Скачать

Скачиваем архив и распаковываем его в корневую папку нашего сервера, с заменой совпадающих файлов.
Вот и всё!

Внимание!
После того, как вы пропатчите ваш сервер на NOWON (патчем 47+48), он станет уязвим к некоторым типам атак, при помощи которых злоумышленник может заставить ваш сервер зависнуть.
Чтобы защитить себя от этих атак, я НАСТОЯТЕЛЬНО рекомендую вам скачать и установить данную программу: Anti CSDoS 3.2

После запуска программа внедряется в процесс hlds.exe и не позволяет эксплойтам (хакерским программам) воздействовать на ваш сервер.
Обязательно следите за тем, чтобы программа была запущена паралельно с серверами CS, иначе защита обеспечиваться не будет!
Я рекомендую после запуска программы установить все три галочки, расположенные в нижней части окна - программа будет запускаться при загрузке Windows и сама проверять память на загруженные сервера, и в случае нахождения таковых патчить их автоматически.

Steam-версия, и сервер с dproto (при использовании "родного" swds.dll) в данной программе не нуждаются!
[/Table]




[Table]1.1.2) Установка dproto

Более "сложный" метод, если можно его так назвать. Тут нам будет необходимо выполнить больше действий.
Давайте сначала разберёмся, что же такое dproto:
Цитата с офф. страницы:

Цитата
dproto is a plugin for metamod that allows protocol 47 and 48 no-steam clients to join the server.

FEATURES:

- Server accepts all known clients based on 47 and 48 protocols;
- Customizable SteamIDs for clients;
- Works with latest version of hlds;

Переведу: dproto является плагином для Metamod, и позволяет заходить на сервер клиентам как 47-го (ностим), так и 48-го (стим) протокола.
Чем хорош dproto? Во первых, он частично защищает игроков (клиенты игры) от ошибки svc_bad, во вторых, позволяет выдавать различным версиям клиентов различные AUTHID'ы, в третьих, поддерживает подключение eSTEAMATiON, в четвёртых, не модифицирует библиотеки игры, и если вы не заменяете swds.dll, и оставляете её оригинальную версию, то она будет защищена от DDoS-атак, и в пятых, якобы сам аутентифицируется на мастер-сервере Setti (не проверено лично, так что гарантии нет).
Сразу раскажу, зачем нужна интеграция с eSTEAMATiON, и что она может нам дать. Для начала давайте вспомним, что для nonsteam-клиента игры существует большое кол-во разнообразных патчей. Обычно они различаются версиями sw.dll, и лично я использую 29-ую версию. Но допустим, мой сосед (назовём его Вася) использует патч версии 35. Эта самая 35-ая версия построена не на оригинальных игровых библиотеках, а на эмуляторе Steam'а. Такой патч сделан именно для серверов с eSTEAMATiON. Когда Вася заходит в свою КС с 35-ым патчей 1-ый раз, эмулятор стима генерирует для него уникальный SteamID (на основе хеша конфигурации компьютера). Когда Вася заходит на сервер с eSTEAMATiON, этот самый eSTEAMATiON получает SteamID нашего Василия, как будто бы он и правда играет с лицензионного клиента игры. Т.е. получается как бы "пиратская версия" Steam-аутентификации. Так в чём же разница, спросите вы? А разница в том, что когда мне захочется забанить Василия, и я нажму заветные кнопки бана, его забанит не по IP-адресу, а по этому самому SteamID. Согласитесь, если у Васи динамический IP-адрес, ничего не мешает ему перезайти в интернет (сменить IP), и играть дальше. Но не тут то было! Когда Вася попробует перезайти на сервер, eSTEAMATiON опять получит от его эмулятора тот самый SteamID, по которому Василий был забанен. Естественно, на сервер его попросту не пустит... Переустановка игры/windows проблему не решит, т.к. эмулятор всё равно будет выдавать один и тот же SteamID, сверяясь с хешем конфигурации компьютера. Придётся "дёргать" железо... В общем, получилось что "умельцы" соорудили схему "эмуляционные клиент+сервер", чтобы создать пиратскую версию стим-аутентификации. Если вы хотите иметь возможность раз и навсегда "избавляться" от игроков с патчами на основе эмуляторов стима, то ставьте dproto+esteamation, если не хотите - ставьте только dproto.

Итак, давайте рассмотрим процессы установки и настройки dproto и esteamation
[/Table]




[Table]a) Установка dproto

Качаем последнюю версию отсюда

Цитата
1. Идём в cstrike/addons/ и создаём папку dproto
2. Копируем dproto.dll в cstrike/addons/dproto/
3. Идём в папку с установленным metamod'ом (обратитесь к пункту 2 данного руководства) (обычно это cstrike/addons/metamod/) и добавляем в plugins.ini с чистой строки:

win32 addons\dproto\dproto.dll

4. Копируем dproto.cfg в корневую папку сервера, открываем блокнотом, настраиваем под себя (я уже всё более менее настроил, так что если ничего там не понимаете - не трогайте).
5. Запускаем сервер.
6. Когда сервер запустился, пишем в его консоли команду meta list
Вы должны будете увидеть там примерно следующее:

Currently loaded plugins:

[1] dproto RUN - dproto.dll v0.2.6 ini Start Never

Очень важно, чтобы было написано именно RUN, a не Bad Load! Bad Load означает, что скорее всего серверная библиотека не совместима с dproto. Просто попробуйте другую версию swds.dll

7. Готово![/Table]




[Table]б) Установка eSTEAMATiON

Качаем eSTEAMATiON 1.8: eSTEAMATiON 1.8 for dproto
Цитата
Папку cfg и файл eSTEAMATiON.dll размещаем в корне сервера
Заходим в папку нашего dproto, и идём в \src\dproto\stub_steam\windows\vlvticket\Release
Берём отсюда файл vlvticket.dll, и размещаем его в корне сервера
Настраиваем eSTEAMATiON (если требуется), редактируя cfg/esteamation.cfg
Включаем поддержку eSTEAMATiON'а - выставляем Emulation = 1 в dproto.cfg
Запускаем сервер...

Готово! [/Table]




1.2) Настраиваем сервер

[Table]Ниже приведена примерная, "базовая" конфигурация сервера.
Если вы ничего не понимаете в этом, то я думаю, данные настройки подойдут для вас.
Тот, кто разбирается в консольных командах игры, может поменять всё "под себя".
Список настроек размещается в файле server.cfg, который находится в папке cstrike. Откройте этот файл блокнотом, удалите все записи, и затем копируйте в него данные настройки:

Код
echo Executing server configuration...

// Set the Host Name

hostname "My First CS Server" // Имя вашего сервера в списке серверов

// Set the rcon password

rcon_password "password" // Пароль для управления сервером через консоль клиента. Чтобы данная функция не работала, оставьте пустым - ""

// Server Logging

log on // включаем режим записи логов (off - выключаем) [логи помещаются в папку logs, находящуюся в папке cstrike]

mp_logdetail 3 // определяем детальность записи логов

mp_logmessages 1 // 1 - записывать сообщения чата, 0 - нет

// LAN Mode
// Если sv_lan установить в 1, то во первых, ваш сервер перестанет пускать пользователей Steam'а и игроков с патчами на основе эмуляторов стима, а во вторых, ваш сервер перестанет отображаться во вкладке Internet Servers клиента игры

sv_lan 0 // Обязательно ставим 0

// Server Variables

mp_maxrounds 0 // макс. кол-во раундов перед сменой карты

mp_winlimit 0 // лимит побед перед сменой карты

mp_timelimit 20 // время на карту (в минутах)

mp_roundtime 2 // время на раунд (в минутах)

mp_freezetime 5 // время в начале раунда, в течении которого игроки не могут двигаться и стрелять

mp_chattime 10 // определяет промежуток времи, в течении которого игроки могут чатиться после окончания игры на карте

mp_c4timer 35 // время, по истечении которого будет взрываться бомба (c4)

mp_buytime 0.25 // время, в течении которого можно покупать оружие и боеприпасы (начинает истекать после начала раунда)

mp_startmoney 800 // стартовая сумма денег

mp_flashlight 1 // разрешить фонарик

mp_footsteps 1 // включить слышимость шагов

mp_friendlyfire 1 // включить ff - игроки одной команды могут наносить урон друг другу.

mp_fadetoblack 0 // 1 - включает чёрный экран после вашей смерти (вы не видите, что происходит в игре)

mp_forcechasecam 0 // 1, 2 - различные режимы блокировки наблюдения за игроками (видно только от 1 лица; от 3 лица)

mp_forcecamera 0 // 1, 2 - режимы наблюдения за командами (видно всех; только своих; только чужих)

mp_autoteambalance 1 // автоматический баланс команд

mp_limitteams 1 // лимит превышения числа игроков в команде относительно противоположной команды

mp_autokick 0 // автоматическое выкидывание убийц своих и AFK'шников с сервера

mp_tkpunish 0 // убивать в следующем раунде убийц своих или нет

mp_hostagepenalty 0 // кикать за убийство заложников или нет

mp_playerid 1 // вывод имени игрока большим шрифтом при наведении на него (только при установленном amxmodx)

sv_airaccelerate 10

sv_airmove 1

sv_gravity 800 // уровень графитации

sv_timeout 35

sv_allowupload 1

sv_allowdownload 1

sv_voiceenable 1

sv_alltalk 0

sv_voicequality 5

sv_voicecodec voice_speex

sv_aim 0

sv_cheats 0

sv_clienttrace 1

sv_maxrate 30000

sv_spectatormaxspeed 500

sv_maxspeed 320

sv_maxupdaterate 101

sv_minrate 0

sv_minupdaterate 13

sv_region 255

decalfrequency 60

sys_ticrate 10000

pausable 0

allow_spectators 2

mapchangecfgfile server.cfg

exec banned.cfg

exec listip.cfg

echo Executing server configuration... Done!

Готово! Сервер настроен и готов к старту! [/Table]




1.3) Решение проблемы с отображеним сервера во вкладке Internet Servers

[Table]Теперь давайте сделаем так, чтобы наш сервер было видно в списке интернет-серверов:

1) Скачайте данный архив, распакуйте. Полученным файлом замените одноимённый файл в папке ваш_сервер/cstrike. Не модифицируйте данный файл! Это очень важно!
steam.rar ( 115 байт )

2) Откройте server.cfg в папке ваш_сервер/cstrike и допишите в самый низ следующее:

Цитата
setmaster enable "1"
setmaster add 213.239.209.221 27010
setmaster add 72.165.61.189
setmaster add 72.165.61.190
setmaster add 68.142.72.250
setmaster add 69.28.151.162 27010
setmaster add 207.173.177.11
setmaster add 68.142.72.250
setmaster add hlmaster.jolt.co.uk
setmaster add 65.73.232.251 27040
setmaster add 65.73.232.253 27040
setmaster add 207.173.177.12 27010
setmaster add 207.173.177.11 27010
setmaster add 69.28.151.178 27010
setmaster add css.setti.info

3) Запустите ваш сервер (обязательно бат-скриптом, в консольном режиме. подбробнее о данном методе запуска написано в пункте 1.4, т.е. чуть ниже). Сервер может выдать "Unknown command setmaster enable", либо "Invalid master, command ignored", или что-то типа того. Не волнуйтесь, так и должно быть. Главное что сервер не выдаёт "Your server is out of date", что означало бы, что у вас либо кривой NOWON-патч (не тот, что выложил я), либо вы забыли про файл steam.inf, и кинули его не туда/внесли в него изменения.
Ну да ладно, давайте ближе к делу... Пройдите по адресу http://css.setti.info/. Вы попали на оффициальную страницу мастер-сервера Setti. Данный сервер используется большинством патчей на основе эмуляторов стима (к примеру, тот же патч 35), и очень важно, чтобы наш с вами сервер отображался в списке этого мастер-сервера. Пролистайте страницу до самого низа. Там вы увидите поле для ручного добавления сервера в список "Add your server to the masterserver list". Введите IP:PORT вашего сервера и нажмите Add. Ни в коем случае не выключайте сервер! Примерно через 20-30 минут ваш сервер должен будет появиться в списке серверов Setti. Его присутствие в списке можно проверить по данной ссылке, введя в предложенное поле IP-адрес вашего сервера. Если страница возвращает пустой результат, то видимо произошла ошибка: либо вы установили sv_lan в 1, либо ввели неправильный IP:PORT, либо ваш сервер не может соединиться с мастер-сервером Setti, либо глючит сам мастер-сервер. Попробуйте добавить сервер заново и подождать... Сервера в данный список желательно добавлять именно по IP:PORT, а не по DOMAIN_NAME:PORT, т.к. Setti часто глючит при определении доменных имён, и он отображает сервер в offline, когда тот работает. Владельцам статических IP-адресов достаточно посещать http://css.setti.info/servers/list-search....ch=ваш_ip-адрес, проверяя, правильно ли Setti отображает статус сервера. Если ваш сервер вышел в онлайн более часа назад, а Setti пишет что сервер offline (не показывает его), то просто добавьте его в список заново. Владельцы динамических IP-адресов должны каждый раз (при смене IP) добавлять сервер в список заново (по новому IP). Можете пробовать добавлять сервер через DOMAIN_NAME:PORT, если испольузете привязку компьютера к бесплатному DNS-имени (к примеру сервис no-ip.org), но работоспособность не гарантируется. Вообще, работа с мастер-сервером Setti - это "танец с бубном". Он то отображает сервера, то не отображает. И не понятно, с чем это связано... В общем, надеюсь вы быстро получите нужный вам результат!

P.s.
Подробнее о том, как узнать свой IP, будет описано в конце статьи.[/Table]




1.4) Запускаем сервер

[Table]Запускать сервер мы будем при помощи bat-скрипта. Этот самый скрипт необходим нам для того, чтобы в случае "падения" сервера его перезапуск происходил автоматически, без нашего с вами участия.
Если вы можете сами создать bat-файл, то сделайте это, и поместите в него следующий (но изменённый) код (об этом ниже):
Готовый bat-файл (имя файла не играет роли) необходимо поместить в корневую папку сервера (туда, где лежит hlds.exe)

Код
@echo off
cls
:hlds
echo (%time%) Server has been started!
START/HIGH /min /wait hlds.exe -noipx -console +ip 0.0.0.0 +port 27015 -tickrate 100 -secure -game cstrike +maxplayers 22 +map de_dust2
echo (%time%) WARNING! hlds closed or crashed! Restarting...
goto hlds

Этот же файл (в архиве) на нашем сайте (редактируйте при помощи того же блокнота)
auto_UP.rar ( 304 байт ) Кол-во скачиваний: 14

Рассмотрим подробнее возможные ключи запуска:
-noipx - необходим в том случае, если вы планируете в будующем установить на сервер анти-пинг модуль (booster)
-console - старт в консольном режиме (экономит ресурсы системы)

+ip - IP-адрес, к которому привязывается сервер, и с которого он связывается с мастер-серверами. Следует указать ваш внешний IP-адрес, либо оставить 0.0.0.0 (старт на всех доступных интерфейсах), и тогда сервер сам разберётся, с какого IP ему дозваниваться до мастер-серверов.

+port - порт, на котором работает сервер.
-tickrate 100 - частота "прорисовки" игрового мира. стандартно 66, но я рекомендую ставить именно 100. доступные значения: 33, 66, 100. чем выше значение, тем плавнее игра, но больше загрузка серверного процессора
-secure - включает VAC (жёлтый значёк щита в списке серверов) (для отключения ставьте -insecure, но я рекомендую оставить включённым)
-nomaster - указывает серверу, что ему не нужно соединяться с глобальными серверами VALVE (сервер не будет отображаться во вкладке Internet Servers)
-game cstrike - сообщает серверу, какой мод запускать (в нашем случае CS 1.6)
+maxplayers - кол-во мест на сервере (слотов)
+map de_dust2 - после старта сервера будет загружаться данная карта [/Table]




2) Установка Metamod

[Table]Если в будующем планируется установить AmxModX, то эту часть можно пропустить, т.к. amxx идёт с уже встроенным metamod'ом.

Metamod служит для подключения дополнительных mod'ов на сервер, таких как AmxModX, AdminMod, StatsMe, Booster, HLGuard и т.д.

Офф. сайт: metamod.org
[/Table]

[Table]Достаем из архива папку cstrike, и кладем её поверх одноимённой папки в корне нашего сервера.

Открываем cstrike\liblist.gam блокнотом.
Для Windows изменяем строчку gamedll "dllsmp.dll" на gamedll "addons\metamod\dlls\metamod.dll".

Все готово для подключения дополнительных модов! [/Table]




3) Установка AmxModX, базовая настройка

[Table]3.1) Устанавливаем AmxModX

На момент написания статьи последняя версия AmxModX'a - 1.8.1

Скачиваем AMX Mod X Full Installer:

Официальный сайт[/Table]

[Table]Запускаем установщик, ставим в папку по умолчанию (у меня это C:\Program Files\AMX Mod X), галочку Run AMX Mod X Installer не снимаем!

Вылетает интуитивно понятное меню установки... Жмём везде "угу", "ага" т.п.
Когда дело доходит до ситуации с выбором Local Instalation, выбираем Select Mod Directory, выбираем из списка Counter-Strike, а в дереве папок указываем папку нашего сервера/cstrike (т.е. устанавливаем amxx в папку cstrike)

Установка закончена! [/Table]




3.2) Настраиваем AmxModX

[Table]Для начала нам нужно отредактировать главный конфиг AmxModX'а.
Переходим в csrtike/addons/amxmodx/configs и открываем блокнотом файл amxx.cfg
Большинство настроек неподготовленному пользователю трогать не стоит, поэтому я опишу лишь самые важные и значимые.
Знак ";" перед строкой определяет, что строка является комментарием, а значит не воспринимается AmxModX'ом как служебная (не загружается).

Код
amx_show_activity 2 // 0 - не показывать действия админов, 1 - показывать действия под общим тегом ADMIN (ники не показываются), 2 - показывать ники админов, выполняющих действия.

amx_reservation 2 // кол-во слотов от общего кол-ва слотов сервера, зарезервированное для админов. Т.е. если поставить 2, то при 22-ух слотах последние 2 могут занимать только админы.

amx_client_languages 0 // позволить игрокам менять язык меню AmxModX'а или нет.

csstats_rank 0 // по каким критериям вести запись статистики игроков. 0 - по нику, 1 - по steamid'у (только стим), 2 - по IP. Для non-steam ставьте 0.

csstats_maxsize 25000 // максимальное кол-во записей в файле статистике. При переполнении статистика обнуляется.

csstats_rankbots 1 // записывать ботов в статистику или нет (нужно лишь в том случае, если вы будете устанавливать на сервер ботов).[/Table]

Теперь открываем modules.ini

[Table]и убираем там знак ";" перед словами "engine" и "fakemeta".
Этот файл определяет, какие модули грузятся при запуске сервера.
При установке сторонних плагинов, в их шапке (или файлах readme) вы можете увидеть записи о том, какие модули нужны для правильной работы плагина.
Вот как раз в этом файле и нужно включать/выключать загрузку модулей. [/Table]

Теперь открываем plugins.ini

[Table]
Снимаем ";" перед словами "restmenu.amxx", "miscstats.amxx", "stats_logging.amxx", "statsx.amxx", "amxmod_compat.amxx"
Этот файл определяет, какие плагины (из папки plugins) грузятся при запуске сервера.
При установке новых плагинов, сюда нужно дописывать их имена (включая .amxx) [/Table]

Теперь открываем users.ini

[Table]
Этот файл содержит записи, касающиеся админ-аккаунтов.
Сейчас мы сделаем себя администратором.
Переходим в самый конец файла, и видим там:

Код
; Examples of admin accounts:

; "STEAM_0:0:123456" "" "abcdefghijklmnopqrstu" "ce"

; "123.45.67.89" "" "abcdefghijklmnopqrstu" "de"

; "My Name" "my_password" "abcdefghijklmnopqrstu" "a"

Как вы видите, существует три способа назначения админ-прав: 1 - по steamid (только для Steam'а), 2 - по IP-адресу, 3 - по нику.
Свой steamid можно узнать, зайдя на любой сервер и открыв консоль (~), написать status. Там, рядом с вашим ником будет строчка вида STEAM_0:0:123456. Вот это и есть ваш steamid.
Помните, что если вы включили sv_lan 1, то по steamid'у выдавать админки уже не получится (вместо steamid будут видны steam_id_lan).
Если вы знаете что такое IP-адрес, и он у вас статический, то можете задать себе админку именно по нему.
Получение админки по нику - самый популярный метод.

Рассмотрим подробнее пример аккаунта и флаги полномочий + флаги доступа (; - перед строкой означает, что аккаунт неактивен):

"My Name" "my_password" "abcdefghijklmnopqrstu" "a"

"My Name" - в это поле вписывается steamid, IP, или ваш игровой ник
"my_password" - в это поле вписывается ваш пароль на сервер
"abcdefghijklmnopqrstu" - флаги полномочий (их распишу ниже)
"a" - флаги доступа на сервер (так же ниже)

Флаги полномочий:

Код
; a - Флаг иммунитета. Человека нельзя кикнуть/забанить/сделать slay/slap и т.п.

; b - Флаг разрешающий подключение на резервные слоты.

; c - Флаг доступа к команде amx_kick.

; d - Флаг доступа к командам amx_ban и amx_unban.

; e - Флаг доступа к командам amx_slap и amx_slay.

; f - Флаг досутпа к команде amx_map.

; g - Флаг доступа для изменений настроек через amx_cvar. Прошу заметить, доступны не все cvar-переменные.

; h - Флаг доступа к amx_cfg.

; i - Флаг доступа к amx_chat и другим чат командам.

; j - Флаг доступа к amx_vote и другим командам голосования.

; k - Флаг доступа для изменения cvar переменной sv_password.

; l - Флаг доступа к amx_rcon и возможности изменения всех cvar на сервере.

; m, n, o, p, q, r, s, t, - Флаги полномочий, касающиеся сторонних (читай "нестандартных") плагинов. Своего рода резерв.

; u - Флаг доступа к меню (к консольной команде amxmodmenu).

; z - Флаг пользователя. Не даёт ни каких полномочий.

Флаги доступа:
Рассмотрим только те флаги, которые чаще всего используются.

Код
; a - кикать игрока с сервера, если он зашёл по этим ником, но пароль отсутствует или не совпадает.

; c - указывает, что значение в первом поле - steamid

; d - указывает, что значение в первом поле - ip-адрес

; e - пароль не проверяется (с выдачей админки по нику использовать не рекомендуется)

Итак, давайте предположим, что наш ник в игре test, и придумаем пароль: test123
Наш аккаунт мы защитим флагом доступа A, чтобы никто кроме нас не смог войти под нашим ником.
Так же мы дадим нашему аккаунту все полномочия на сервере (полноправие).
Наша запись будет такой:

"test" "test123" "abcdefghijklmnopqrstu" "a"

Добавляем эти данные в чистую строку файла.
Аккаунт добавлен! [/Table]




4) Использование админ-аккаунта в AmxModX, работа с админкой (список основных команд)

4.1) Использование админ-аккаунта в AmxModX

[Table]Наш аккаунт добавлен в файл users.ini, сервер запущен. Но как же теперь получить админ-права при заходе на сервер, и начать уже пользоваться админ-функциями?
Я предлагаю метод с авто-загрузкой пароля из собственного конфига.
Давайте рассмотрим мой метод на примере нашего тестового аккаунта test, с паролем test123
Для начала нам с вами нужно будет окрыть блокнотом файл config.cfg, расположенный в папке cstrike вашего клиента игры (не сервера, а именно игры).
Затем пролистать этот файл до самого низа и убедиться, что там находится строчка exec userconfig.cfg
Если этой строчки там нет, допишите её вручную.

Теперь нам нужно создать файл userconfig.cfg
Для этого мы жмём на файле config.cfg правой кнопкой, жмём копировать, и вставляем копию файла в эту же папку (cstrike).
Получившуюся копию переименовываем в userconfig.cfg и так же открываем блокнотом.
Нам нужно удалить совершенно все записи из данного файла, и написать всего три новые строчки:

setinfo _pw "test123"
bind INS "amxmodmenu"
echo BCE BEPHO!

Сохраняем файл, закрываем. Заходим в игру, открываем консоль (кнопка ~), ищем в открывшемся окне надпись BCE BEPHO!
Если её нет - вы сделали что-то не так. Возможно разместили файл не там, или забыли его сохранить. Всякое бывает...
Если она есть - читаем дальше...
[/Table]

[Table]Примерная (чтобы было понятнее) схема действий сервера:
Давайте представим, что при подключении сервер считывает ваш ник test, и сверяет его с теми данными, которые записаны в файл users.ini
Если ник НЕ совпадает ни с одним из тех ников, что указаны в users.ini, сервер выдаёт вам флаг Z (отсутствие прав - обычный игрок)
Если ник совпадает с одним из тех ников, что указаны в users.ini, сервер продолжает проверку согласно данным в полях после ника:
Если указан пароль, он сверяет пароль с вашим, считывая его из переменной _pw.
Если пароль совпал, выдаются указанные далее полномочия.
Если пароль НЕ совпал, происходит обработка поля с флагами доступа, и если там стоит A, то вас кикает, т.к. пароля либо нет, либо он неверен. [/Table]

[Table]Заходим на наш с вами сервер:

Если вас кикает с надписью "You have no entry...", то вы что-то намудрили с паролем (не прописали, прописали не так, не туда и т.д.)
Если вход на сервер успешно производится - читаем далее...
После входа под админским аккаунтом сразу нажмите на клавиатуре кнопку Insert (на неё мы с вами забиндили админ-меню).
Если админка открывается (белые строчки слева) - замечательно.
Если нет - попробуйте написать в консоли amx_kick - что в итоге происходит?
Если пишет "You have no access..." - смените ник на другой, и затем на админский - должно помочь.
Если не помогло - скорее всего вы накосячили с расположением userconfig.cfg или попросту допустили ошибку в написании ника в игре или файле users.ini
В крайнем случае вы можете скачать отсюда клиент игры + патч 29, и попробовать выполнить вышеизложенное на нашей версии игры. По идее, всё должно работать (проверено на личном опыте).

Если всё получилось, и админка работает (вызывается на Insert, либо консольной командой amxmodmenu), то можно смело переходить к изучению всех функций админ-меню.
Все функции интуитивно понятны, и я думаю у вас не возникнет проблем с их освоением. [/Table]




4.2) Список основных команд AmxModX

[Table]На всякий случай выложу список основных команд AmxModX'а (в основном консольных).
Большинство этих команд можно выполнять в консоли сервера, а так же в консоли клиента (для тех, кому не хватает функциональности amxmodmenu)

Цитата
amx_kick [ник] [причина] Кикнуть игрока с сервера
amx_banid [steamid] [причина] Забанить игрока на сервере по SteamID/WonID
amx_banip [ник] [причина] Забанить игрока по IP
amx_unban [ip или steamid] Разбанить игрока
amx_slay [ник] Убить игрока
amx_slap [ник] [сила удара в hp] Пнуть игрока
amx_leave [тег] [тег] [тег] Оставить на сервере только игроков с определёным "тегом" в имени
amx_pause Поставить/Убрать паузу
amx_who Отобразить список игроков
amx_last Отобразить список последних отключавшихся игроков
amx_cvar [value] Изменить или отобразить настройки сервера (cvar'ы)
amx_map Сменить карту
amx_cfg Выполнить конфиг
amx_rcon Выполнить команду в консоли сервера
amx_plugins Список всех загруженых плагинов
amx_modules Cписок всех загруженых модулей
amx_say Отправить сообщение всем игрокам
amx_chat Отправить сообщение админам
amx_psay Отправить приватное сообщение
amx_tsay Отправить сообщение всем игрокам (слева, жирным текстом)
amx_csay Тоже самое, только по центру экрана
amx_help Показывает справку по доступным командам
amx_votemap [карта] [карта] [карта] Начать голосование за смену карты
amx_votekick Начать голосование на кик игрока
amx_voteban Начать голосование на бан игрока
amx_vote [вопрос] [ответ № 1] [ответ № 2] Просто так любое голосование типа Вася лох? 1) Да! 2) Да, конечно!
amx_cancelvote Прервать текущее голосование
say /hp Показать информацию о вашем убийце
say /statsme Отобразить вашу статистику
say /stats Показать статистику остальных
say /top15 Отобразить 15 лучших игроков
say /rank Отобразить ваше место на в статистике сервера
say nextmap Отобразить следующую по списку карту
say timeleft Показывает, сколько времени осталось до конца текущей карты
say thetime Отображает текущее время
amxmodmenu Отображает админ-меню
amx_cvarmenu Отображает меню настроек сервера
amx_mapmenu Отображает меню смены карт
amx_votemapmenu Отображает меню голосований на смену карты
amx_kickmenu Отображает меню кика игроков
amx_banmenu Отображает меню бана игроков
amx_slapmenu Отображает slap/slay меню
amx_teammenu Отображает меню выбора команды игроков
amx_clcmdmenu Отображает меню клиентских команд
amx_restmenu Меню для установки ограничений на использование оружия
amx_teleportmenu Отображает меню телепортации
amx_pausecfgmenu Постановка и снатие с паузы с использованием меню

amx_pausecfg [параметры] Список команд для управления паузами:
Параметры:
off - Приостановить все плагины не включёные в список
on - Возобновить работу всех плагинов
stop - Остановить плагин
pause - Приостановить плагин
enable - Разрешить плагин
save - Сохранить список остановленых плагинов
clear - Обнулить список остановленых плагинов
list [id] - Список плагинов
add - Пометить плагин как неостанавливаемый

amx_statscfg [параметры] Отображает справку по конфигурации статистики:
Параметры:
on - Опция доступна
off - Опция недоступна
save - Сохранить конфигурацию статистики
load - Загрузить конфигурацию статистики
list [id] - Отобразить статус статистики
add - Добавить пункт в список

amx_statscfgmenu Отобразить меню конфигурации статистики
amx version Отобразить версию amxx
amx modules Отобразить модули amxx
amx plugins Отобразить плагины amxx[/Table]




5) Установка Booster'а (модуль, понижающий ping игроков)

5.1) Подробная информация о видах Booster'а

[Table]Booster по своей сути является модом для HL-движка (для win32 это metamod-модуль), который понижает пинг игроков за счёт повышения FPS сервера (т.е. фактически уменьшения времени отклика сервера на действия игрока).

Booster использует два полностью различных, взаимоисключающих подхода к увеличению FPS. Один основан на манипуляции Win32-таймером мультимедиа и переменной sys_ticrate, чтобы ускорить выполнение циклов "бездействия". Второй подход состоит в том, чтобы заставить сервер "просыпаться" каждый раз, когда данные от игрока начинают поступать. Таким образом, тратится меньше времени на холостые циклы.

Уменьшение времени бездействия увеличивает нагрузку на процессор сервера.
Фактически - это та цена, которую приходится платить за использование Booster'a.

Каково различие между Booster, WinHL-Booster и Booster-Lite?
WinHL-Booster и был оригинальным Booster, использущим метод разгона systicrate/mmtimer.
Booster-Lite ввел подход, основанный на "прибытии пакета" как отдельной модуль.
С версии Booster 2.0, эти подходы были объединены в один единственный модуль - Booster.

Сразу прошу заметить: Booster повышает риск падения сервера. Если сервер у вас падает с одной из версий, то попробуйте поставить другую.
На мой взгляд, Booster необходимо ставить только на "мясных" серверах (10x10-12x12, и выше). Если у вас CW-сервер (5x5-6x6), то на мой взгляд, смысла в его установке нет.

Нам нужно выбрать, какой тип Booster'а мы будем использовать.
От себу скажу лишь что Booster-Lite больше (намного, в сравнении с WinHL-Booster) грузит процессор, но зато лучше понижает пинг.[/Table]




5.2) Устанавливаем WinHL-Booster

[Table]1) Скачиваем сам Booster (версия 1.7)
2) Распаковываем в папку cstrike/addons
3) Добавляем модуль в список Metamod'а, открыв addons/metamod/plugins.ini и прописав туда с чистой строки:
win32 addons\booster\booster_mm.dll
4) Добавляем в cstrike/server.cfg следующие строки (прошу заметить, значения являются базовыми):

Код
booster_show_connmsg 1
booster_autofps 400
booster_minsleepms 5
booster_force_systicrate 0
booster_cpu_enabled 0
booster_cpu_spikemax 3
booster_cpu_spikelevel 75
booster_cpu_floor 50
booster_cpu_mminc 2
booster_cpu_quiettime 300
booster_cpu_mmmin 3
booster_cpu_mmmax 8
booster_lite_mode 3
booster_lite_extra_sleep_frequency 0

Или же следующие настройки (наши сервера используют именно такие):

Код
booster_show_connmsg 1
booster_autofps 1000
booster_minsleepms 1
booster_force_systicrate 10000
booster_cpu_enabled 0
booster_cpu_spikemax 3
booster_cpu_spikelevel 75
booster_cpu_floor 50
booster_cpu_mminc 2
booster_cpu_quiettime 300
booster_cpu_mmmin 3
booster_cpu_mmmax 8
booster_lite_mode 3
booster_lite_extra_sleep_frequency 0

Установка закончена! [/Table]




5.3) Устанавливаем Booster-Lite
[Table]
1) Скачиваем сам Booster (версия 1.1.3)
2) Распаковываем в папку cstrike/addons
3) Добавляем модуль в список Metamod'а, открыв addons/metamod/plugins.ini и прописав туда с чистой строки:
win32 addons\boosterlite\booster_lite_mm.dll
4) Добавляем в cstrike/server.cfg следующую строку:
booster_lite_mode 0

!!! ВНИМАНИЕ !!!
1) Что-бы Booster-Lite работал, в server.cfg должна быть прописана команда sys_ticrate 10000
2) Так же обязательно пропишите в строку запуска сервера команду -noipx

Установка закончена! [/Table]



Автор -
Дата добавления - в
Форум » Создание и настройка серверов Cs 1.6 » Статьи и мануалы » Создание Серевера CS
  • Страница 1 из 1
  • 1
Поиск: