пятница, 26 февраля 2010 г.

установка сервера cs 1.6 gentoo

установка стима
emerge games-server/halflife-steam
* Remember, in order to play games, you have to
* be in the 'games' group.* Just run 'gpasswd -a user games', then have user re-login.
* Steam Usage !  (note: please do this as root)
* 1. Run `steam` to update itself.
* 2. Run `steam` again to get help menu.
* 3. Update the halflife modules you want:
*      steam -command update -game 'Counter-Strike Source' -dir /opt/halflife
*      steam -command update -game cstrike -dir /opt/halflife
*      steam -command update -game tfc -dir /opt/halflife
*      steam -command update -game valve -dir /opt/halflife
*      *Note: tfc contains tfc, dmc, and ricochet mods
* 5. After your first update, you only have to run:
*      steam -update "Counter-Strike Source"
*      steam -update cstrike
*      steam -update tfc
*      steam -update valve
порядок в принципе описан довольно подробно ;)
chown games:games /opt/halflife/ -Rfv
su - games
cd /opt/halflife/
./steam

Checking bootstrapper version ...
Getting version 34 of Steam HLDS Update Tool
Downloading.
Steam Linux Client updated, please retry the command
./steam -command update -game cstrike -dir /opt/halflife
Checking bootstrapper version ...
Getting version 34 of Steam HLDS Update Tool
Downloading.
Steam Linux Client updated, please retry the command
пока обновляется качаем необходимые моды:

установка amx:
mkdir /opt/halflife/down cd /opt/halflife/down
wget http://downloads.sourceforge.net/project/amxmodx/AMX%20Mod%20X%20Base/1.8.1/amxmodx-1.8.1-base.tar.gz?use_mirror=sunet
wget http://downloads.sourceforge.net/project/amxmodx/Counter-Strike%20Addon/1.8.1/amxmodx-1.8.1-cstrike.tar.gz?use_mirror=sunet
wget http://downloads.sourceforge.net/project/metamod/Metamod%20Binaries/1.19/metamod-1.19-linux.tar.gz?use_mirror=sunet
mkdir /opt/halflife/cstrike/addons /opt/halflife/cstrike/addons/metamod /opt/halflife/cstrike/addons/metamod/dlls
tar xfzv /opt/halflife/down/metamod-1.19-linux.tar.gz -C /opt/halflife/cstrike/addons/metamod/dlls/


заменяем строчку
gamedll_linux "dlls/cs_i386.so"
на gamedll_linux "addons/metamod/dlls/metamod_i386.so"

nano /opt/halflife/cstrike/liblist.gam
tar xfzv /opt/halflife/down/amxmodx-1.8.1-base.tar.gz -C /opt/halflife/cstrike/
tar xfzv /opt/halflife/down/amxmodx-1.8.1-cstrike.tar.gz -C /opt/halflife/cstrike/
echo "linux addons/amxmodx/dlls/amxmodx_mm_i386.so" > /opt/halflife/cstrike/addons/metamod/plugins.ini
сразу настроим админку:
nano /opt/halflife/cstrike/addons/amxmodx/configs/users.ini
"ТВОЙ_НИК" "ТВОЙ_ПАРОЛЬ" "abcdefghijklmnopqrstu" "a"
после чего в консоли клиента вбиваешь (или конфиге клиента): setinfo "_pw" "ТВОЙ_ПАРОЛЬ"bind "j" "amxmodmenu"

когда закончится обновление стима
100.00% /opt/halflife\valve\xeno.wad

Connection Reset
Повторно вводим команду
games@Nova /opt/halflife $ ./steam -command update -game cstrike -dir /opt/halflife
Checking bootstrapper version ...
Updating Installation
Checking/Installing 'Counter-Strike Base Content' version 35
Checking/Installing 'Linux Server Engine' version 53
Checking/Installing 'Half-Life Base Content' version 12
HLDS installation up to date
Конфиг cs
nano /opt/halflife/cstrike/server.cfg
можно оставить по умолчанию доков по настройке сервера куча как и параметров запуска, единственно проверь
 cat /opt/halflife/cstrike/server.cfg | grep sv_lan
sv_lan 0
пробный запуск:
games@Nova /opt/halflife $ ./hlds_run -game cstrike +maxplayers 32 +port 27016
Auto detecting CPU
Using AMD Optimised binary.
Auto-restarting the server on crash

Console initialized.
scandir failed:/opt/halflife/./valve/SAVE
scandir failed:/opt/halflife/./platform/SAVE
Protocol version 48
Exe version 1.1.2.6/Stdio (cstrike)
Exe build: 15:57:57 Jun 15 2009 (4617)
STEAM Auth Server
couldn't exec language.cfg
Server IP address 127.0.0.1:27016
  Metamod version 1.19  Copyright (c) 2001-2006 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 X version 1.8.1.3746 Copyright (c) 2004-2006 AMX Mod X Development Team
  AMX Mod X comes with ABSOLUTELY NO WARRANTY; for details type `amxx gpl'.
  This is free software and you are welcome to redistribute it under
  certain conditions; type 'amxx gpl' for details.>

couldn't exec listip.cfg
couldn't exec banned.cfg
scandir failed:/opt/halflife/./valve/SAVE
scandir failed:/opt/halflife/./platform/SAVE
[AMXX] Loaded 1 admin from file
[S_API FAIL] SteamAPI_Init() failed; unable to update local steamclient. Continuing with current version anyway.

Executing AMX Mod X Configuration File
Scrolling message displaying frequency: 10:00 minutes
Adding master server 72.165.61.136:27010
Adding master server 72.165.61.189:27010
Menu item 17 added to Menus Front-End: "Plugin Cvars" from plugin "pluginmenu.amxx"
Menu item 18 added to Menus Front-End: "Plugin Commands" from plugin "pluginmenu.amxx"
Connection to Steam servers successful.  VAC secure mode is activated.
Проверяем какие плагины загружены:
meta list
Currently loaded plugins:
description stat pend file   vers  src  load  unlod
AMX Mod RUN amxmodx_mm_i386. v1.8.1.3 ini Star ANY
Fun     RUN fun_amxx_i386.so v1.8.1.3 pl1 ANY  ANY
CStrike RUN cstrike_amxx_i38 v1.8.1.3 pl1 ANY  ANY
CSX     RUN csx_amxx_i386.so v1.8.1.3 pl1 ANY  ANY
4 plugins, 4 running
если ты зайдешь клиентом на свой крутящийся сервер - то увидишь сообщение от том, что твой клиент устарел ^_^ и дело не в пиратстве - клиент стоит 250р, но он не работает под wine. Для совместного использования протоколов 47/48(steam|non steam)

ставим gproto тред тут после распаковки архива раскидываем файлы по папкам:
mkdir /opt/halflife/cstrike/addons/dproto
cp /opt/halflife/down/src/ ПУТЬ_ДО_АРХИВА dproto/bin/linux/dproto_i386.so /opt/halflife/cstrike/addons/dproto/

в корень
cp /opt/halflife/down/src/_ПУТЬ_ДО_АРХИВА_dproto/dproto.cfg /opt/halflife/
проба запуска:
games@Nova /opt/halflife $ ./hlds_run -game cstrike +maxplayers 32 +port 27016 -binary ./hlds_i686

""".....
[DPROTO]: Done
....
"""
Теперь можно не использовать параметр -nomaster ;)
Дополнительно о настройках DPROTO

дополнительные аддоны/моды

ATAC
установка/настройка подробно изложена в файле архива
documentation/atac3/atac.htm

в общих чертах:
после распаковки архива раскомментировать необходимое в
/opt/halflife/cstrike/addons/amxmodx/configs/plugins.ini

; ATAC Pluginsatac.amxx
; Punishment Plugins
atac_slap.amxx
atac_slap2one.amxx
atac_slay.amxx
atac_spawnslay.amxx
atac_jail.amxx
atac_chicken.amxx
atac_bury.amxx
atac_glow.amxx
atac_bomb.amxx
atac_blind.amxx
atac_rocket.amxx
atac_drop.amxx
atac_fire.amxx
atac_drug.amxx
atac_badaim.amxx

; Addon Plugins
atac_hudmsg.amxx
atac_cmds.amxx
atac_amxbans.amxx

можно запускать демоном /etc/ini.d/hlds
/etc/init.d/hlds start
* Starting Halflife Dedicated Server ...       [ ok ]
после правки:
Nova aweal # cat /etc/conf.d/hlds

# /etc/conf.d/hlds: config file for halflife steam server
# Path to gameHLDS_PATH="/opt/halflife/cs"
# Machine type: The binary you want to start
# For Source-based games use the following values:
#  srcds_amd   for Athlon and x64 systems
#  srcds_i486  for non-MMX capable machines
#  srcds_i686  on most x86 systems
#HLDS_MT="srcds_i686"
HLDS_MT="hlds_amd"
# Here you can set your start options like game a#HLDS_OPTS="-console -nomaster -port 27015 -game cstrike +map de_dust +maxplayers 6"
HLDS_OPTS="-game cstrike +ip 192.168.1.2 +port 27016 +maxplayers 10 -console +sv_lan 0 +map de_dust2"
модем

выход в нет через модем D-link DSL 2500u задача привести iptables модема к виду:
> iptables -L 
Chain INPUT (policy ACCEPT)
target     prot opt source               destination
=================================
Chain FORWARD (policy ACCEPT)
target prot opt source  destination
ACCEPT udp --  anywhere  192.168.1.2  udp dpt:27017 
ACCEPT udp --  anywhere  192.168.1.2  udp dpt:27016 
ACCEPT udp --  anywhere  192.168.1.2  udp dpt:27015 
ACCEPT udp --  anywhere  192.168.1.2  udp dpt:27015 
=================================
в строке браузера вбиваем 192.168.1.1 имя пользователя(по умолчанию) admin
пароль (если не меняли ;) admin
на вкладке NAT -- Virtual Servers Setup давим на "Add"
Приводим к виду как на картинке.


для удобства настраиваем Dynamic DNS
создаем фейкакк на http://www.dyndns.com/
-> Add New Hostname выбираем доменное имя 3 уровня в моем случае aweal.game-host.org
до 5 бесплатно
http://192.168.1.1/ddnsmngr.cmd
вводим имя пользователя и проль от акка на dyndns


Пару слов о клиенте

С последними дровами от ati (на момент написания псота 10.2 откатился на 10.1 - segfail во все поля)

мой клиент не запускается с параметром -gl без ошибок без каких либо причин тихо падает при попытке соединиться/коннекта/поиска сервера выкрутился использованием ускорение D3D и WINEDEBUG=-all (куча fixme: D3D тормозит жутко)


PROFIT??????

Запуск сервера (удобнее через csreen):
./hlds_run -game cstrike +ip 192.168.1.2 +port 27015 +maxplayers 16 -console +sv_lan 0 +map de_dust2 -binary ./hlds_i686
Запуск клиента:
WINEDEBUG=-all padsp wine bin/cs1.6/hl.exe -game cstrike ; xrandr -s 1920x1080
заходи
connect aweal.game-host.org:27015
links www.gentoo-wiki.info linux.wktnet.ru monitoring-cs.ru