Итак, вам нужен сервер, но вы понятия не имеете как его установить и настроить? Я расскажу вам как сделать т.н. standalone сервер для CS 1.6 на 48/47 протоколе, кстати, описание частично совпадает с установкой серверов для других игр от Valve. Будем действовать по шагам, не пугайтесь объема статьи, тут все по делу. :) Договоримся, что вы будете точно следовать всем стадиям установки и внимательно следить за своими ошибками. Их не должно быть, я все внимательно проверил и ничего не упустил. Кавычки „«»“ копировать не надо, они для оформления текста.
По рукам? Поехали!
Сперва качаем
«//gamedll "бебе"
//gamedll_linux "бебе-бе"
gamedll "/addons/metamod/dlls/metamod.dll"».
Сейчас у нас есть работающий сервер, но он ничем не наполнен и работает только на стиме, как же сделать так, чтобы ваши друзья без стима зашли на сервер? Способ, как можно догадаться, нелегальный, но работает: качаете актуальный патч
Итак, сервер есть, но он все еще не наполнен теми плагинами, которые вам нужны, и вообще не настроен. Сначала рекомендую сделать ярлык к каталогу c:\server\cstrike\addons\amxmodx\configs на рабочий стол, чтобы быстро обращаться к конфигам. Сделали? В этом же каталоге откройте users.ini, сейчас мы сделаем так, чтобы вы были администратором своего сервера. Добавьте следующие строки в этот файл:
«"loopback" "" "abcdefghijklmnopqrstu" "de"» или «"127.0.0.1" "" "abcdefghijklmnopqrstu" "de"» — чтобы любой человек, зашедший на ваш сервер с вашего компьютера, сразу получал максимальные полномочия, рекомендую отключить за ненадобностью;
"righnt0w" "пароль" "abcdefghijklmnopqrstu" "ak"» — только вы с определенным ником и паролем получаете максимальные права;
можете добавить сюда ники или статические айпи-адреса (в первые кавычки) своих друзей или доверенных людей, чтобы они получили те полномочия, которые вы хотите. Конечно, «пароль» смените на тот пароль, который хотите, но ваш сервер никому нафиг не понадобится ломать. :) В третьих кавычках стоят флаги прав, которые вы назначите данному нику, в users.ini они все перечислены.
Чтобы выполнить команду на сервере, подключившись к игре, напишите в консоли «rcon_password пароль», потом «rcon команда», например, «rcon amxx plugins». Или просто в окошке сервера пишите команду, но это дольше и по-ламерски. :) Кстати, rcon_password можно внести в свой конфиг «bind insert "rcon_password пароль"» — повешено на кнопку, чтобы на не своем сервере не банило за перебор пароля.
Далее вам надо определить набор плагинов, который должен запускаться при старте сервера. За это отвечает plugins.ini.
Синтаксис обычный — вписываете в этот файл имя файла с расширением и он подгрузится при старте или следующей смене карты.
Символ «;» является началом комментария, после которого все до конца строки игнорируется парсером, т.е. чтобы запретить плагин или добавить замечание о плагине, добавьте «;». Где брать плагины?
Скачали и не знаете куда их распаковать? В c:\server\cstrike\addons\amxmodx\plugins\ кладете .amxx, а .sma никуда — это нескомпилированные плагины, фактически это просто текстовые файлы, они вам не нужны, если не хотите ничего исправлять в плагинах. Если это единственный файл, который вы скачали, найдите
Теперь надо как-то быстро запускать сервер, ага? Есть несколько способов: через bat-файл, через ярлычок :), или windows-службой, опишу все способы. Создаете там, где вам удобно, текстовый файл и копируете туда следующий текст:
«@echo off
start/low C:\server\hlds.exe -game cstrike +port 27015 +map de_inferno +maxplayers 20 +rcon_password пароль от сервера -nomaster -insecure -console
exit». Называете файл как хотите, но с расширением bat допустим, «start HLDS.bat».
Расшифрую: «start/low» говорит с каким приоритетом запускать сервер — с низким, чтобы не грузил систему, потом идет путь до сервера и параметры запуска, по порядку: для какой игры запускать сервер, на каком порту, какая карта будет стандартная при запуске сервера, максимальное количество игроков (определяется иcходя из вашего соединения и оперативной памяти), rcon-пароль, «nomaster» нужен, чтобы ваш сервер не соединялся с мастер-серверами valve, если вам не хочется видеть ваш сервер в общем списке «find servers», «insecure» сообщает, что вы не будете пользоваться VAC, а «console» говорит серверу, чтобы тот запускался в консольном режиме — так тратится меньше памяти.
Поправки: если у вас IP статический, добавьте его в строку запуска «+ip айпи», если вам не хочется разрешать IPX, добавьте «-noipx», но я не заметил разницы без IPX и с ним.
Возьмемся за ярлычок. :) Если вам не хочется случайно удалить на рабочем столе драгоценный bat-файл для запуска, создайте ярлык к нему и делайте с ним все, что хотите — файл, на который ссылается ярлык, не пострадает.
А теперь непростая вещь — запуск сервера как windows-службы. Для начала решите для себя, зачем вам это надо. Если вас не слишком утомляет запуск через батник или вы вообще не знаете, что такое служба в windows-е, то можно и без этого обойтись. Все же опишу плюсы этого способа:
1. Служба запускается еще до входа пользователя в систему, т.е. когда вы включили компьютер и с помощью титанических усилий дождались экрана выбора пользователя, то все службы уже запущены, соответственно, и ваш сервер тоже.
2. Службы автоматически перезапускается при неожиданном падении, что в windows-е не редкость.
3. Сервер ест меньше памяти.
4. Можно настроить события после падения, допустим, отправить письмо на выбранный адрес, если сервер стоит где-то в шкафу без монитора и клавиатуры — это хороший вариант, но тогда вам и винда-то особо не нужна. :)
Вы готовы? Читайте дальше, если вам это все-таки незачем — пропустите.
Идите на
Теперь еще два параметра: «AppDirectory, REG_SZ, C:\server\» и «AppParameters, REG_SZ, -game cstrike +port 27015 +map de_inferno +maxplayers 20 +rcon_password пароль от сервера -nomaster -insecure -console», последние параметры можете скопировать из вашего батника, если вы его создали. Выходите из regedita-а.
А сейчас идите в Панель управления > Администрирование > Службы. Правой кнопкой жмете на HLDS и выбираете «Свойства». Ставите, если не поставлено, тип запуска на «Авто», во вкладке «Вход в систему» ставите галочку «С системной учетной записью» (или с какой хотите, в поле чуть ниже). Теперь в окне «Выполнить» («Windows»+«R») пишите: «net start HLDS», если все запустилось, в «Службах» статус должен поменяться на «Запущено», а вы сможете подключиться в игре. Если статус есть, а подключиться не можете, ставьте в свойствах службы HLDS на вкладке «Вход в систему» ставьте галочку «Разрешить взаимодействие с рабочим столом». Если у вас какие-то странные ошибки, ищите опечатки или ненужные пробелы в разделах реестра, которые вы правили, или по фразам из ошибки в гугле. Удалить службу можно, набрав в командной стороке «c:\server\instsrv.exe HLDS remove».
На этом все. :) Теперь у вас есть работающий сервер, играйте!
Говорю спасибо: маме за все хорошее, моим друзьям за терпение и хорошее тестирование сервера, себе за статью, за знания — Сергею Брину (основатель Гугла) и также всем, с кем я когда-либо играл за свою долгую практику. :)
Автор: righnt0w, мой skype — visual.cookie, пожалуйста, пишите мне, если копируете на свой ресурс — мне будет приятно. Копировать разрешаю только статью целиком с указанием меня как автора, не разрешаю исправлять текст статьи, за это к вам приедет штурмовой отряд зомби-бегемотов и накажет по всей суровости.