[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
  • Страница 1 из 1
  • 1
Модератор форума: mr47  
Создание Counter Strike servera с нуля 1.6
nickckc232Дата: Вторник, 12.10.2010, 16:12 | Сообщение # 1
Сержант
Группа: Администраторы
Сообщений: 22
Репутация: 10000
Статус: Offline
Установка и настройка сервера
Установка HLDS CS 1.6 с нуля!
Данную статью меня побудила написать малодоступность нормальных мануалов по установке HLDS. Непоявященному человеку совсем трудно разобраться в отрывках данного форума. Не понятно с чего начать и куда двигаться чтобы увидеть свет в конце туннеля (главное чтоб это не поезд был ;-))

I. Статья ориентированна на человека имеющего начальные навыки работы с юникс системами.
II. Я не претендую на то что это библия установки CS DS, хотя попытаюсь наставить на путь истинный.
III. Данная статья довольна сыра, вней могут встречаться ошибки и некоторые несоответствия. Уж простите. Старался как мог.
IV. Я не несу никакой ответственности за данную публикацию.
Если в результате ваших экспериментов вы свалите знакомому админу сервак и он вас будет долго бить фэйсом об кэйс
сервака - корпус можете не приносить, править не буду!!!

Ставим Контру 1.6 с нуля. С абсолютного нуля!!! Нулее не бывает.
На юникс машину (я юзаю FreeBSD 5.2.1).

STEP BY STEP ))

I Установка HDLS (cstrike mod).

Сразу оговорим один момент - будем ставит и запускать контру
из под любого юзера КРОМЕ рута!!!
Иначе создастся
/usr/compat/linux/usr/steam
В нее будут улетать логи и будут складываьбся какието файлы.

1. Актуально для FreeBSD. (если linux - пропускаем)

Ставим из портов библиотеки совместимости с linux

/usr/ports/emulators/linux_base-8
без них нифига работать не будет.

Провим /etc/rc.conf

Добавляем строку
linux_enable="YES"

2. Качаем HLDS файлик hlds_l_1120_full.bin (размер 440 мегов),
Half-Life Dedicated Server v1.1.2.0 for Linux.
Нашел в осле, думаю есть не только там если поискать.

А воопше

1) ftp://hlserver:hlserver@ftp.valvesoftware.com/linux....ull.bin
2) ftp://hlserver:hlserver@ftp.valvesoftware.com/linux/hldsupdatetool.bin
3) ftp://hlserver:hlserver@ftp.valvesoftware.com/linux....dme.txt
4) ftp://hlserver:hlserver@ftp.valvesoftware.com/linux/md5.txt

Да, обзательно чекаем md5 - у меня при передачи по фтп возникли траблы, когда качал
с виндовой машины на юниксовый сервак, т к что проверка очень помогла найте баг ))

3. Распаковываем

В консоле:
mkdir /usr/steam
chmod 700 hlds_l_1120_full.bin
./hlds_l_1120_full.bin
На вопрос естно онвечаем "yes".
cd /usr/steam
tar zxvf hlds_l_1120_full.tgz

4. Надо бы проапдейтится . . .

Читаем файл 3) из п. 2. если все итак понятно - переходим к следующему
пункту. Те кто в танке - читаем дальше. Правда я не воткнул одного - нафига
файл 2) из п. 2 нужен, когда файлик steam (который из него разворачивется)
имеется в файле 1) из п.2.

Создаем аккаунт

Идем туда где лежит steam (/usr/steam/hlds_l например)
Если он вдруг не выполняемый - chmod ему )) (см. п.3)

Запускае апдейттулзу с опцией "-create":

Как по учебнику:
./steam -create

Например:
./steam -create email@here.com comPlexPass "Your hint" "answer"
В качестве username использовать влидное мыло!!!

После запуска видим чето типа этого:
Checking bootstrapper version ...
Getting version 9 of Steam HLDS Update Tool
Downloading. . . . . . . . . . .
Steam Linux Client updated, please retry the command

----
ВНИМАНИЕ ГРАБЛИ: если попробовать запустить тоже самое еще раз - steam
будет глючить и выдавать следующие:

Checking bootstrapper version ...
Creating Account
AuthenticationServerRSAPublicKey failed signature verifcation

Чтобы такого небыло - ижем в домашний каталог юзера из под которого
работаем и дропаем папку .steam.
----

Опа, апдейт тул проапдейтился ))) Мде маленькое НО!!!
Пробуем как просят retry - хрен вам - параметры командной строки другие )))

Делаем
./steam

Видим хелпу. Делаем как надо:

./steam -command greate -username -email -password
-question -answer

Видим:
Checking bootstrapper version ...
Creating Account
Account Created successfully

Щастье есть - оно не может не есть ))

Обновляем сервак.

./steam -command update -game cstrike -dir /usr/steam/hlds_l
-username -password

Наблюдаем лог апдейта - если никаких слов типа error нет - значит все,
сервак проапдейтился.

...
HLDS installation up to date

5. Тестим

./hlds_run -game cstrike +sv_lan 1 -insecure +map de_dust -nomaster +maxplayers 20

-game cstrike - запускаемый мод.
+sv_lan 1 - работа в режиме локальной сети, ОБЯЗАТЕЛЬНО, и вроде как жедательно первым
(сразу за cstrike)!!!
-nomaster - сервер не пробует авторизовать себя в WON.
+map de_dust - стартовая мапа, очень желательно.
-insecure - по моему связано с VAC, точно не помню.

ВНИМАНИЕ!!! Не путать плюсики и минусики. Это не глюк, так надо.

Пробуем коннектится с сетки класса "C" (думаю понятно почему, если нет смотрим ниже).
Если выше глюков не наблудалось, то в принцапе перед нами готовый "голый" LAN сервак.

Да, один баг с ходу: при попытки сменить автоматом карту на cs_havana, сервак
рухнул и рестартанулся с фразой "не могу найти cs_havana.wad". Все просто - делаем
ренейм cs_havana.WAD на cs_havana.wad (все лежит в hlds_l/cstrike). Для тех кто в
танке или БТР: в UNIX регист учитывается при именовании файлов.

6. Патчим WON.

Для тех кто не в курсе . . .
HLDS может работать в двух режимах WAN и LAN.
В режиме LAN сервер вполне функционален, но позволяет коннектится только с
сети класса "C". В режиме WON требуется наличие оригинального CD-KEY на клиенте
(обшероссийский не катит ) ;-)

Тянем nowon patch (например nowon.zip). Распаковывем на виндовой машинке,
подтягиваем сюда же engine_i686.so (или какой там у вас ;-)). Данный файл перед
патчингом рекомендуется переименовать т к патчер может не понять длинные имена
(8.3 only судя по инструкции), хотя у меня все и так сканало. Переименоваваем
напр. в engine.so.

Запускаем
c:hldsnowon>sp.exe nowon.s *.so

Если видим что то типа:
----
SIMPLE PATCHER 0.99beta © Victor Romanoff 2:5054/2.256

Patching file ENGINE.SO
Signature found at 947992d, 000E7718h

done.
----
значит патч успешно отработал.

Если ручки кривые или просто чето пошло не так увидим:
----
SIMPLE PATCHER 0.99beta © Victor Romanoff 2:5054/2.256

Error: No files found for patch
Total 1 error(s), patch process aborted
----

Сдесь хочется сказать огромное спасибо людям которые ваяют такие весчи как
nowon patch - СПАСИБА ВАМ БАЛЬШАЯ И НИЖАЙШИЙ ПАКЛОН, такие люди как вы помагают
сэканомит кровный рубль в наше нелегкое для жизни время!!!
Ладно, хватит трепаться, продолжим.

И так, что мы имеем? А имеем мы пропатченный двиган для контры!!!
Что сделать с пропатченным файлом догадайтесь сами. Догадались?
Правильно! Переименовываем и кладем обратно. Сдорово.
Стартим сервак и тестим.

Небольшое лирическое отступление. Думаю эта фраза вам знакома:
LAN servers are restricted to local clients (class C).

Что бы не наводить неопытного читателя на ложный след поясню: сеть класса
"C" это сеть вида /24 (т е маска 255.255.255.0, сама сеть выглядит как 123.123.123.xxx).
А сервак по сетью класса "C" подразумевает сеть вида /16 (т е маска 255.255.0.0, сама сеть
выглядит как 123.123.xxx.xxx), хотя вообшето это сеть класса "B" ("бэээ").
Почему так - хз :))
БУДТЕ ВНИМАТЕЛЬНЫ ПРИ ТЕСТИРОВАНИИ - у тестируеммых хостов (клиент и сервер) должны
отличаться как минимум один из двух первых октетов IP адресов (числа до второй точки).

Если при тестированиие с разных сетей класса "C" (которые на самом деле "B") не пишет
вышепреведенной надписи - значить все гут.

Перед нами рабочий интернет сервер, но пока он все равно "голый" - ща будем
прикручивать навороты.

II Навороты (они же моды, они же аддоны).

Я нехочу в данном раздели далать полные описание использования плагинов,
постараюсь описать лишь необходимое, в меру надобности. Тому есть одна причина -
по каждому моду есть собственная документация.
Читайте, там все понятно описано. Приведу ссылки на доки.

1. Прикручиваем MetaMod (http://metamod.org/)

MetaMod - мод который позваляет прикрутить к серверу все другие (вернее все поддерживаемые)
плагины.

Установка.
Тянем дистрибу metamod-1.17.2-linux.tar.gz - нам нужны тока бинарники, на линки со словами
"source" внимания не обращаем.

Распаковываем. Внутри cstrike (/usr/steam/hlds_l/cstrike) создаем:
mkdir addons
cd addons
mkdir metamod
cd metamod
mkdir dlls
cd dlls

----
Отступление: мы создали каталок addons - сюда мы быдем ставить и все остальные плагины.
Если речь не будет идти о каком то конкретном пути - значит говорится именно про него.
----

Копируем полученною сошку в metamod/dlls.

----
ПРЕДУПРЕЖДЕНИЕ: устанавливая сервер, вам придется постоянно редактировать фалы конфигов
как самого сервера, так и его плагинов. Что бы облегчить себе жизнь в дальнейшем крайне
рекомендую создать где-нибудь структуру каталог аналогичную серверно и сохранять в ней
дефолтные и текущие конфиги сервака, чтобы в любой момент времение мона было сделать
откат на предыдущий конфиг или на дефолт.
----

Ищем в hlds_l/cstrike файлик liblist.gam.
Меняем в нем
gamedll_linux "dlls/cs_i386.so"
на
gamedll_linux "addons/metamod/dlls/metamod_i386.so"

Создаем в папке metamod файл plugins.ini:
touch plugins.ini
Этот файл мы в дальнейшем будет юзать для запуска плагинов.
Формат файла:
[]
Пример смотрим ниже:
----
ЭТО ПРИМЕР!!! НЕ ИСПОЛЬЗОВАТЬ!!!
----
// linux dlls/mybot.so
# win32 dlls/mybot-old.dll Mybot old
win32 dlls/mybot.dll Mybot current
linux /tmp/stub_mm_i386.so
win32 /tmp/stub_mm_i386.dll
linux ../dlls/trace_mm_i386.so
win32 ../dlls/trace_mm_i386.dll
linux dlls/admin_MM_i386.so
win32 dlls/admin_MM_i386.dll
----

Стартуем сервер - если все гут видим в консоле что типа:

Metamod version 1.17.2 Copyright © 2001-2004 Will Day
Metamod comes with ABSOLUTELY NO WARRANTY; for details type `meta gpl'.
This is free software, and you are welcome to redistribute it
under certain conditions; type `meta gpl' for details.

Мета мод установлен и функционирует.

Теперь на сервак мона вешать другие моды. Что касается выбора конкретных
модов - дело вкуса и цвета ;-). Также хочется отметить что настройка каждого
конкретного плагина - тема отдельной статьи. Потому далее приведу краткий пример
установки AMX MODа.

2. AMX Mod (http://amxmod.net/).

Качаем amx-0.9.9-won.tar.tar.

Распаковываем в addons/amx

Чиатем доки. Внимательно читаем.

В файл metamod/plugims.ini добавляем:
linux addons/amx/dlls/amx_mm_i586.so

Запускаем сервер.

Хочется оговорится что с версией metamod 1.17.2 в консоле стала проскакивать ошибка
[META] ERROR: Couldn't find game entity 'item_generic' in game DLL
'cstrike': ./cstrike/addons/metamod/dlls/metamod_i386.so: undefined symbol: item_generic
Поставил ту версию matamod что шла вместе с AMX (1.17.1) - ошибка пофиксилась.

Еше одна ошибка всплыла с ходу:
[FUN] Module is not attached to MetaMod
[AMX] Make sure that modules are compatible with AMX 0.9.9
[AMX] Please fix the problem then start the server again
Пофиксил коментированием в amx/config/modules.ini данного плагина.

Все. Теперь у нас есть сервак с прибамбасом типа AMX.
Настраиваем его в amx/config/*.ini как нам нравится. По всем тегам есть комменты.

 
  • Страница 1 из 1
  • 1
Поиск:

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nam viverra in dui sit amet consequat.

- John Doe, creative director

Praesent vestibulum commodo mi eget congue. Ut pretium vel lectus vel consectetur.

- John Doe, creative director

Etiam quis aliquam turpis. Etiam in mauris elementum, gravida tortor eget, porttitor turpis.

- John Doe, creative director

Lorem ipsum
Neque id cursus faucibus, tortor neque egestas augue, eu vulputate magna eros eu erat
Neque id cursus faucibus, tortor neque egestas augue, eu vulputate magna eros eu erat. Curabitur pharetra dictum lorem, id mattis ipsum sodales et. Cras id dui ut leo scelerisque tempus. Sed id dolor dapibus est lacinia lobortis.
Learn more