Данное руководство справедливо и для CS- 1.6 и для CS-Sourse, есть нюансы но о них позже.
Подготавливаем сервер
Просто так ничего у вас работать не будет, тут надо нежно и с подходом)))
Итак, первым делом давайте подготовим нашу систему:
1. первым делом необходимо пересобрать ядро со следующей опцией (если что можно не делать но желательно)
options DEVICE_POLLING
options HZ=1000
Более подробно о полинге можете почитать вот тут:
http://www.lissyara.su/?id=1156
http://www.opennet.ru/base/dev/int_polling.txt.html
http://info.iet.unipi.it/~luigi/polling/
2. так как используемый нами сервер написан под линукс, то необходимо поставить линукс-эмулятор
# Теперь ставим самый последний емулятор. (позже допишу пару строк если эмулятор не встает ну или в комментарих черкните что не пошло)
cd /usr/ports/emulators/linux_base-f10/ && make install clean
3. далее поднастроим нашу систему и пропишем запуск линукс эмулятора при старте системы
# echo «linux_load=»yes»" >> /boot/loader.conf
# echo «linprocfs_load=»yes»" >> /boot/loader.conf
# echo «linux_enable=»YES»" >> /etc/rc.conf
# echo «kern.fallback_elf_brand=3″ >> /etc/sysctl.conf
# echo «kern.ipc.maxsockbuf=524288″ >> /etc/sysctl.conf
# echo «linprocfs /compat/linux/proc linprocfs rw 0 0″ >> /etc/fstab
4. Создадим пользователя из-под которого будет работать наш сервер (крайне не рекомендую запускать сервер из-под пользователя root)
# adduser css_server
и отвечаем на вопросы
Так, система готова и можно сказать, что половину дела мы сделали. (Дополнительно буду писать про CS-1.6) Теперь логинимся под пользователем, которого мы завели и выполняем следующее:
# cd ~ && mkdir.steam (вобщем создаем нужные папки для нужных игр)
# wget http://storefront.steampowered.com/download/hldsupdatetool.bin
# ./hldsupdatetool.bin
тут отвечаем, что да, мы согласны с условиями распространения данного по и т. д. и т. п. (есть нюанс для сорса очень важный!!! после того как все скачали, а запускать скачку по команде ниже придется не один раз учтите и как дошли до 100% …. обязательно!!! удалите ВСЕ в папке bin и запустите команду заного странно но с первого раза не скачивает как надо проверенно раз 20 на разных системах)
# ./steam
# ./steam -command update -game «Counter-Strike Source» -dir путь куда ставить например /usr/games/css
или для CS-1.6
# ./steam -command update -game cstrike -dir путь куда ставить например /usr/games/hlds_cs
можно идти пить чай, ибо будет скачиваться около гигабайта файлов. Как только все будет готово можно приступать к настройке нашего сервера. Для этого необходимо в директории ~css_server/cstrike/cfg создать собственно файл конфигурации нашего сервера.
// Server name
hostname «Имя_вашего_серва»
rcon_password «vash_rcon_parol»
// Setting’s
mp_dynamicpricing «1″
mp_allowspectators «1″
mp_autocrosshair «0″
mp_autokick «1″
mp_autoteambalance «1″
mp_buytime «25″
mp_c4timer «35″
mp_chattime «5″
mp_decals «200″
mp_fadetoblack «0″
mp_falldamage «1″
mp_flashlight «1″
mp_fraglimit «»
mp_freezetime «2″
mp_footsteps «1″
mp_friendlyfire «1″
mp_hostagepenalty «0″
mp_limitteams «0″
mp_maxrounds «0″
mp_playerid «1″
mp_spawnprotectiontime «0″
mp_roundtime «3″
mp_startmoney «800″
mp_teamplay «0″
mp_timelimit «20″
mp_tkpunish «1″
mp_weaponstay «0″
mp_winlimit «0″
sv_pure «2″
sv_lan «0″
sv_unlag «1″
sv_maxunlag «0.5″
sv_voiceenable «1″
sv_minrate «20000″
sv_maxrate «30000″
sv_mincmdrate «66″
sv_maxcmdrate «66″
sv_minupdaterate «66″
sv_maxupdaterate «66″
sv_client_predict «1″
sv_client_interpolate «1″
sv_client_min_interp_ratio «1″
sv_client_max_interp_ratio «1″
sv_client_cmdrate_difference «30″
sv_consistency «1″
sv_pausable «0″
sv_airaccelerate «10″
sv_accelerate «5″
sv_allowdownload «1″
sv_allowupload «1″
sv_downloadurl «»
sv_password
sv_alltalk «0″
sv_cheats «0″
sv_consistency «1″
sv_enableoldqueries «1″
sv_footsteps «1″
sv_friction «4″
sv_gravity «800″
sv_maxspeed «320″
sv_rcon_banpenalty «15″
sv_rcon_maxfailures «5″
sv_rcon_minfailures «5″
sv_rcon_minfailuretime «30″
sv_specaccelerate «3″
sv_specnoclip «1″
sv_specspeed «3″
sv_stats «0″
sv_stepsize «18″
sv_stopspeed «75″
sv_timeout «120″
sv_voiceenable «1″
cl_allowupload «1″
// End Setting’s
// Client cvar’s
cl_cmdrate «66″
cl_updaterate «66″
rate «25000″
// Other
breakable_multiplayer «1″
decalfrequency «10″
host_framerate «0″
// Logs
log «on»
mp_logdetail «1″
sv_logfile «1″
sv_logecho «1″
sv_logbans «1″
// Exec radnome cfg’s
exec mani_server.cfg
exec banned_ip.cfg
exec banned_user.cfg
exec mani_quake_sounds.cfg
// Write ip and id all players in your server
writeid
writeip
вот и все пожалуй теперь можно запустить его и играть:
# cd ~css_server
# ./srcds_run -game cstrike +ip «ип адрес сервера без кавычек» -port 27015 +map de_dust -tickrate 66 +log on +maxplayers 32 +sv_lan 0 +exec server.cfg -norestart -secure > css_server.log 2>&1 &
(запуск в фоне если не писать 2>&1 & то будет не в фоне но тогда в случае удаленного управления дисконект от вас отрубит серв)
После этого проверить его работу можно так —
# sockstat | grep 27015
css_serversrcds_amd 888 5 udp4 84.47.161.15:27015 *:*
css_serversrcds_amd 888 8 tcp4 84.47.161.15:27015 *:*
css_serversrcds_amd 887 5 udp4 84.47.161.15:27015 *:*
css_serversrcds_amd 887 8 tcp4 84.47.161.15:27015 *:*
css_serversrcds_amd 869 5 udp4 84.47.161.15:27015 *:*
css_serversrcds_amd 869 8 tcp4 84.47.161.15:27015 *:*
и
games1# ps -aux | grep srcds
Если в последнем выводе покажет 3–4 строки, то все шоколадно =)
Ну и прокомментирую строку запуска:
-game cstrike — запускаемый мод
+ip — тут все понятно — указываем серверу на каком ip адресе он у нас будет работать. Можно указать +ip 0.0.0.0 и тогда к серверу можно будет подключится по всем имеющимся
-port — указываем порт на котором будет работать сервер, причем если данный порт будет занят, то сервер будет работать на следующем свободном порту
+map — указываем какая карта будет загружаться при старте сервера
-tickrate — указываем с каким тикрэйтом будет работать сервер, доступные варианты — 33, 66 и 100. Чем больше тикрэйт сервера, тем больше нагрузка на процессор. сразу скажу, что под тикрей 100 надо очень не слабый сервер.
+log — включить или выключить запись логов на сервере. Доступные варианты on и off
+maxplayers — указываем сколько максимально может подключиться игроков. максимальное значение 32, хотя существуют патчи расширяющие данный параметр.
+sv_lan — указываем тип работы сервера. При значение 1 будет доступен только людям в локальной сети, при 0 ТОЛЬКО людям из интернета
+exec — команда позволяет подключать различные конфиг файлы
-norestart — запрещаем серверу перезапускаться при падении
-secure — указываем серверу использовать античит VAC (-insecure отключает)
Теперь про ностим для CS-Sourse
Для того чтобы на сервер пускало как лицензионных клиентов, так и пиратки aka nosteam версии необходимо проптчить 2 файла специальной программкой написанной тов. vityan666
Выполняем следующие действия из-под пользователя, из-под которого работает на сервер
для начала читаем и качаем то что надо тут
http://forum.csmania.ru/viewtopic.php?t=3794 проделав это
патчим файлы:
$ ./vup_i686 ~/bin/steamclient_i486.so
$ ./vup_i686 ~/bin/engine_i486.so
$ ./vup_i686 ~/bin/engine_i686.so
для патча платформы амд вывод делаем такой
$ ./vup_i686 ~/bin/engine_amd.so
ВНИМАНИЕ!!! При обновлениях сервера необходимо заного патчить данные сошки.
Теперь перезапускаем сервер и наслаждаемся
Делаем но стим для CS-1.6:
Описание:
DPROTO – плагин для Metamod решающий проблему мультипротокола и эмулирующий SteamID для NoSteam-клиентов. Имеет гибкую систему настроек и богатые функциональные возможности.
Требования:
– Metamod 1.19 (рекомендуется) или 1.19p32
– чистые или пропатченные VUP engine so/dll
– поддерживаемые билды Linux-серверов: 2738, 4383 (24 Oct 2008), 4383 (Released at 20 Apr 2009), 4383 (Released 19 May 2009)
– поддерживаемые билды Windows-серверов: 4382, 4554, 4554 (19 May 2009)
Установка:
- качаем сервер через hldsupdatetool и dproto
– устанавливаем Metamod в
– в папке addons создаем папку dproto и копируем в неё файл dproto.so или dproto.dll в зависимости от операционной системы Linux или Windows соответственно.
– открываем
Linux:
Код
linux addons/dproto/dproto_i386.so
- файл dproto.cfg кидаем в корень сервера. Корректируем конфиг, устанавливая необходимые Вам параметры (настройки по умолчанию достаточны для работы модуля).
качаем dproto тут: http://c-s.net.ua/forum/ipb.html?act=attach&type=post&id=9955
Чуть позже отпишу про установку админки.
Установлена freebsd 7.0
Установил Counter Strike Source по статье.
При запуске игры лезут ошибки:
linux_sys_futex: unknown op 128
linux_sys_futex: unknown op 129
Подскажите пожалуйста!