|
Главная » 2010 » Май » 29 » Установка HLDS CS 1.6 с нуля!
15:43 Установка 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/hlds_l_1120_full.bin 2) ftp://hlserver:hlserver@ftp.valvesoftware.com/linux/hldsupdatetool.bin 3) ftp://hlserver:hlserver@ftp.valvesoftware.com/linux/hldsupdatetool_readme.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 (c) Victor Romanoff 2:5054/2.256
Patching file ENGINE.SO Signature found at 947992d, 000E7718h
done. ---- значит патч успешно отработал.
Если ручки кривые или просто чето пошло не так увидим: ---- SIMPLE PATCHER 0.99beta (c) 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 (c) 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 как нам нравится. По всем тегам есть комменты.
Думаю на этом все.
Прикрепления: |
Категория: |
Просмотров: 682 |
Добавил: HakypkaSPB
| Теги:
| Рейтинг: 0.0/0 |
|
|
Форма входа |
Здарова, Гость!
10:40
|
|
Статистика |
Онлайн всего: 1 Гостей: 1 Пользователей: 0 |
|
|