Как установить сервер CS под Юникс

Добавлено: 11.08.2002 - 22:40 Автор: Cris
Предисловие
Этот хелп был написан мной, из-за того что мне надоело объяснять одно и то же многим парням, которым захотелось
поставить контру под Юникс-подобную ОС.

Железо для сервера
В первую очередь желателен большой объем памяти (чем больше тем лучше, не будет свопиться), рекомендуеться 256M. Процессор желательно P3 700 и выше, этого вполне хватает, если вы будете запускать только один КС сервер на этой машине.
Хочу заметить что ставить 2-х процессорник, если на сервере будет только 1 сервер КС не имеет никакого смысла :) .
Если вы хотите поставить сервак для инета, то понадобиться нормальный канал, ато кроме вашей локалки там все равно
играть никто не будет.

OS
Желательно Линукс но, можно и на других Юникс-подобных. Здесь я расскажу как это сделать под FreeBSD.

Установка непосредственно :)
Предположим, что у вас уже есть сервер, на нем установлен Линукс.
Для нормальной роботы нужно создать юзер halflife, и желательно не вносить его в рутовскую групу (wheel). Это делаеться с целью безопасности, сервак сам по себе содержит дыри и было время когда куча буржуйских серваков была закрыта, потому что появился эксплоит под халф-лайф сервер. Сервер будем ставить из под этого юзера.
Заходим в его корневую директорию. Тут делаем папочку, например download. Теперь надо закачать 2 файла : халфлайф сервер и коунтер страйк сервер:

hlds_l_*_full.tar.gz (HLDS)
cs_*_full.tar.gz (Counterstrike Server)
Примечание : здесь вместо звездочки (*) ставиться текущая версия сервера.

Тут — http://www.gameinside.com/files.php можно скачать оба файла.
Теперь надо распаковать hlds_l_*_full.tar.gz (команда: tar -xvzf hlds_l_*_full.tar.gz) в корневой директории юзера халфлайф.
Появиться папка hlds_l (можете переименовать ее по своему вкусу, здесь и будет находиться сервак). Нужно зайти в нее и распаковать файл cs_*_full.tar.gz (команда: tar -xvzf cs_*_full.tar.gz).
Собственно вы уже сделали все чтобы запустить сервак. Но лучше делать это с помощью нехитрого скрипта.
Создаем файл который будет запускать сервер, называем его, скажем cs_run и ставим ему права для запуска ( команда: chmod 744 cs_run).
Открываем редактор и пишем

#!/usr/local/bin/bash

cd ~halflife/hlds_l
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:./
./hlds_run +exec server.cfg -game cstrike +map de_dust2 -port 27015 +sv_lan 1 &

Поясним как это работает. Первые 3-ри строки служат для корректной работы системы.
Строчка ./hlds_run +exec server.cfg запускает сервер халфлайфа и указывает конфигурационный
файл.
-game cstrike +map de_dust2 дает указание запустить сервер КС с картой de_dust2.
-port 27015 говорит на каком порту запускать сервер.
+sv_lan 1 указывает на то что сервер локальный, но вобщем эта строчка нужна и для интернет-серваков. Но для того чтоб сервак работал в инете надо достать патч от Кота Базилио :) .
& — запускает сервер в фоновом режиме.

Чтобы запустить сервак достаточно набрать строчку:
nohup ./cs_run — сервак запустится и перейдет в фоновый режим. При этом будет создан файл в директории халфлайф nohup.out, куда будут писаться логи.

server.cfg

Один из последних этапов работы это настойка конфигурационного файла(server.cfg). Он находиться в папке hlds_l/cstrike/.
Открываем его и меняем некоторые переменные.
  • maxplayers 20 — ставим любое число ( в пределах разумного :) ), максимальное количество игроков.
  • sv_aim 0 — отключить авто-наводку.
  • pausable 0 — отключить возможность ставить паузу.
  • hostname «YOUR SERVER NAME» — название сервака.
  • sv_challengetime 65 — помогает при долгой перезагрузке сервака.
  • mp_timelimit 30 — установка времени игры на карте( в минутах).
  • mp_mapvoteratio 0.5 — процент голосов необходимый для смены карты по команде votemap xxx.
  • mp_autoteambalance 0 — отключает автоматическое балансирование равенства команд.
  • mp_friendlyfire 1 — свои нанасят повреждение чужим.
  • ghosts 1 — разрешить полет «духом» .
  • mp_footsteps 1 — слышны шаги ходьбы.
  • mp_forcerespawn 1 — быстрый переход для полета духом.
  • rcon_password «YOUR_RCON_PASSWORD» — пассворд для админа.
  • sv_cheats 0 — отключить встроеные читы контры.
  • log on — включить запись логов
  • logaddress 193.125.78.45 27500 — куда будут записываться
  • mp_logmessages 1 — включить запись логов


    mapcycle.txt

    А этот файл хранит список карт, которые будут запускаться на сервере автоматически. Отредактируйте его по своему вкусу. Находиться там же, где и server.cfg .

    Запуск и остановка
    Запускать сервер надо строчкой (команда : nohup ./cs_run ) или просто (команда : ./cs_run )с директории hlds_l, проверить запустился ли можно набрав (команда: ps -x), если в процессах висит что-то похожее на:

    halflife$ ps -x
    PID TT STAT TIME COMMAND
    53099 p0- S 464:13.76 ./hlds_run +exec server.cfg -game cstrike +map de_dust2 -port 27015 +sv_lan 1

    то по всей видимости сервак работает. Остановить его можно (команда: kill -9 PID), где PID- это номер процесса, в нашем примере 53099.

    Установка под FreeBSD
    Чтобы установить сервак под этой операционкой нужно перед тем, как выполнять все выше описаные действия,
    установить на ней linux-compatible с портов. Кстати нормальная эмуляция реализована только в версиях выше 4.0
    Для этой операционки запускать надо точно так, как указано выше — через скриптец cs_run , иначе работать не будет
    (или придеться играться с прописыванием библиотек халфлайфа c помощью ldconfig). И еще один момент — не ставьте сервак халфлайф с портов — порт кривой и установит вам его непонятно куда!

    Послесловие
    Эта статья была написана на скорую руку и не претендует на полноту изложения. Но если вы будете делать все по пунктам, то должно заработать :) .
    Если вы захотите изложить свои замечания
    пишите мне — cris@mail.univ.kiev.ua.
    Буду искренне признателен и постараюсь исправить допущенные огрехи.