понедельник, 1 ноября 2010 г.

Counter-Strike Dedicated Server with Dproto in details

Я уже раз рассказывал про установку игрового сервера Counter-Strike под линуксом. Сегодня я расскажу про установку игрового сервера с одновременной поддержкой 47 и 48 протоколов + metamod + amxmodx. Так же выложу список плагинов, которые использую на своем сервере.

1. Скачиваем hldsupdatetool.bin
# wget http://storefront.steampowered.com/download/hldsupdatetool.bin
# chmod a+x hldsupdatetool.bin
Выполняем, получаем файл steam.

2. Скачиваем сервер
# ./steam -command update -game cstrike -dir /home/cstrike_server
3. Настройка сервера

Разберем для начала конфигурационный файл сервера.
# cat /home/cstrike_server/cstrike/server.cfg
sv_aim 0
sv_cheats 0
sv_downloadurl "http://mydomain.com/cs/" // Ссылка для быстрого скачивания файлов
sv_allowupload 1  // Разрешаем загрузку на сервер спрайтов и т.п.
sv_allowdownload 1 // Разрешаем клиенту скачивать файлы с сервера
// logging
log on
sv_logbans 1
sv_logecho 1
sv_logfile 1
sv_log_onefile 0
sv_contact my_contact // Тут можно указать свое мыло или сайт
sv_region 3 // Европа
mp_logdetail 3
mp_logmessages 1
// Качество звука
sv_voicecodec voice_speex
sv_voicequality 5

pausable 0
hostname "Имя_сервера" // Будет отображаться в клиенте
sv_maxspeed 320
mp_timelimit 20
mp_roundtime 2
mp_c4timer 35
mp_freezetime 2
mp_buytime 0.15
mp_limitteams 0 // Настройки для PTB
mp_autoteambalance 0 // PTB
// настройки камеры
mp_forcecamera 2
mp_forcechasecam 2

mp_tkpunish 0
mp_autokick 0
mp_friendlyfire 1
mp_hostagepenalty 0

exec listip.cfg
exec banned.cfg

sv_voiceenable 1
sv_alltalk 1

rcon_password "ваш_ркон_пароль" // Никому ему не давайте
 Не забудьте отредактировать файлы cstrike/motd.txt и cstrike/mapcycle.txt. Первый - это приветствие, которое пользователь увидит при входе на ваш сервер, а второй - список карт, которые будут поочередно меняться на вашем сервере.

4. Скачиваем metamod-p
# tar -xf metamod-p-1.19p32-linux_i586.tar.gz
# mkdir /home/cstrike_server/cstrike/addons
# mkdir /home/cstrike_server/cstrike/addons/metamod
# mkdir /home/cstrike_server/cstrike/addons/metamod/dlls
# mv  metamod_i386.so /home/cstrike_server/cstrike/addons/metamod/dlls
# touch  /home/cstrike_server/cstrike/addons/metamod/plugins.ini
Редактируем cstrike/liblist.gam и заменяем
gamedll_linux "dlls/cs_i386.so"
на
gamedll_linux "addons/metamod/dlls/metamod_i386.so"
5. Установка Dproto.
 
Что такое dproto и где его скачать можно узнать тут http://cs.rin.ru/forum/viewtopic.php?f=29&t=55986
1. Go to /addons/ and make new directory named dproto
- its a game directory; cstrike for Counter-Strike, valve for Half-Life, etc
2. Copy dproto.dll or dproto_i386.so to /addons/dproto/
3. Go to metamod installation directory (usually its /addons/metamod/) and edit plugins.ini:
add this line for windows
win32 addons\dproto\dproto.dll
or this for linux
linux addons/dproto/dproto_i386.so
at the beginning of the file
4. Copy dproto.cfg to server root or gamedir.
5. Start the server. You should use this command on linux:
./hlds_run -binary ./hlds_i686

when server loads, type "meta list" in console. You'll see something like this:
Currently loaded plugins:
description stat pend file vers src load unlod
[ 1] dproto RUN - dproto_i386.so v0.4.3 ini Start Never
[ 2] AMX Mod X RUN - amxmodx_mm_i386. v1.8.1.3 ini Start ANY
2 plugins, 2 running
6. Enjoy :)
6. Установка http://www.amxmodx.org/
 
Скачиваем AMX Mod X Base и Counter-Strike Addon. Разархивируем все в /home/cstrike_server/cstrike/
О настройке amxmodx можно почитать на его офф. вике: http://wiki.amxmodx.org/Category:Documentation_%28AMX_Mod_X%29
Я лишь расскажу о некоторых моментах и расскажу про плагины, которые сам использую. Чтобы сервер мог понимать русский язык нужно в файле /home/cstrike_server/cstrike/addons/amxmodx/data/vault.ini и поменять server_language no на server_language ru. Если вы хотите, чтобы люди с пропатченой контрой могли писать русскими символами, или чтобы сервер корректно логировал сообщения на русском, то установите Server Unicode Patch
Основные конфигурационные файлы amxmodx находятся в директории /home/cstrike_server/cstrike/addons/amxmodx/configs. Из них следует выделить amxx.cfg, modules.ini, plugins.ini.
amxx.cfg - выполняется при каждой смене карты. Содержит перечень важных cvars, в том числе и всякие hud сообщения, которые будут показываться игрокам.
modules.ini - в этом файле прописываются модули amxmodx, которые будут подгружены при старте сервера/смене карты.
plugins.ini - содержит список плагинов, которые будут загружены при старте сервера/смене карты.
Так же чтобы не путаться с картами, советую сделать симлинк с cstrike/addons/amxmodx/confings/maps.ini на cstrike/mapcycle.txt

Список плагинов, которые используются на моем сервере http://l2pla.net/cs, выложу в конце поста.

7. Античит

Сейчас я остановился на античите CSFile Info. Пока для меня это самый оптимальный античит. Все античиты, которые требуют клиентскую часть(sXeI, UCP, и т.п.) сказываются на уменьшении онлайна, потому они мне не подходят. Из античитов без клиентской части (CSF, M1C, RHLG, и т.п.) мой выбор пал именно на CSFile info, ибо и настроек хватает, и сервер кажется с ним не лагает, да и пока нареканий небыло :)
С нетерпением жду выхода новой версии RHLG, обещает быть очень интересной :)

8. Вкусности

Могу посоветовать в связке с CSFile Info использовать amxbans. Но качать посоветую отсюда. Там же можно почитать о настройке. Настраивается просто и быстро.
Если же кому-то нужна статистика, то статистику можно взять тут: http://www.psychostats.com. На ихнем форуме есть отдельная русская ветка, там можно почитать об установке и настройке. :)

9. Список плагинов, как и обещал:
amxbans_core.amxx
amxbans_main.amxx
admincmd.amxx        ; basic admin console commands
adminhelp.amxx        ; help command for admin console commands
adminslots.amxx        ; slot reservation
multilingual.amxx    ; Multi-Lingual management
menufront.amxx        ; front-end for admin menus
cmdmenu.amxx        ; command menu (speech, settings)
plmenu.amxx        ; players menu (kick, ban, client cmds.)
mapsmenu.amxx        ; maps menu (vote, changelevel)
pluginmenu.amxx        ; Menus for commands/cvars organized by plugin
adminchat.amxx        ; console chat commands
antiflood.amxx        ; prevent clients from chat-flooding the server
scrollmsg.amxx        ; displays a scrolling message
imessage.amxx        ; displays information messages
adminvote.amxx        ; vote commands
nextmap.amxx        ; displays next map in mapcycle
super_mapchooser.amxx
timeleft.amxx        ; displays time left on map
pausecfg.amxx        ; allows to pause and unpause some plugins
statscfg.amxx        ; allows to manage stats plugins via menu and commands
statsx_gui.amxx
miscstats.amxx        ; bunch of events announcement for Counter-Strike
stats_logging.amxx    ; weapons stats logging (CSX Module required!)
; Custom - Add 3rd party plugins here

;anticheat
csf_opengl32.amxx
csf_anticheat.amxx
csf_fix_back.amxx
; admin stuff
admin_spec_esp.amxx
antisilentrun.amxx
admin_free_look.amxx
amx_screen2.amxx
amx_gag.amxx

; VIP
admin_vgk.amxx

; Game Menu
gamemenu.amxx
; Death Beams (луч от убитого к убившему)
all_death_beams.amxx
; Rock The Vote
rockthevote_custom.amxx
; ping kicker
high_ping_kicker.amxx
; информация о смене рейтинга
info_rank.amxx
; проверка админов в онлайне
admin_check.amxx
; Управление голосом
Voices_Management.amxx
; Перезарядка в начале раунда
autoreload_on_newround.amxx
; Блок hud сообщений
hudTextArgsBlock.amxx
; Enemy down
enemy_down.amxx
; Афк кикер
afk_manager.amxx
; Афк бомб трансфер
afkbombtransfer.amxx
; Антимат
swear_replacement.amxx
; Смена ника только мертвым
dead_name_change.amxx
; c4timer
c4timer.amxx
; Дроп гранат после смерти
realnadedrops.amxx
; no reconnect
reconnect_features.amxx
;no_retry.amxx
; Weapon Icon
weapon_icon.amxx
; fire in the hole
fire1.amxx
; Team Balancer
ptb.amxx
; Сообщения в чате
GHW_Message_Disp.amxx
; Unice Support
unicode_patch_support.amxx
 P.S. Пока тестовая версия, еще будут вносится правки.

среда, 13 октября 2010 г.

Упавший сервер

Сегодня реанимировал упавший сервер, который потух после перебоев в электропитании. Ничто вроде бы беды не предвещало, по идее он должен был спокойно запуститься утром, но почему-то не запустился. Вместо этого он при загрузке писал, что не может примонтировать root-раздел и упорно не хотел находить винчестер. Верней он его находил как sda, но перед этим матерился ide-generic и в /dev небыло никаких устройств, которые были похожи на винчестеры.
При чем dmesg показывал следующее:
ide_generic: please use "probe_mask=0x3f" module parameter for probing all legacy ISA IDE ports
ide_generic: I/O resource 0x1F0-0x1F7 not free.
ide_generic: I/O resource 0x170-0x177 not free. 
 Проблема решилась сборкой нового ядра 2.6.35. Отключил устарелый ATA и включил SATA. Загрузка с нового ядра прошла успешно.


P.S. Проблема походу была в биосе и в ядре собранным с поддержкой ATA.

вторник, 12 октября 2010 г.

Samsung SCX-4200

Теперь настройка печати на samsung scx-4200 в gentoo linux стала еще проще. Чтобы это осуществить достаточно установить splix:
# echo "net-print/splix" >> /etc/portage/package.keywords
# emerge splix
Потом в браузере вводим http://localhost:631 и добавляем принтер.
Настройка закончена, можем печатать тестовую страницу и наслаждаться шумом, который создает ваш МФУ.

воскресенье, 10 октября 2010 г.

urxvt и кликабельные линки #2

Если у кого-то остался старый файл /usr/lib/urxvt/perl/mark-urls, то вам нужно читать предыдущую мою заметку urxvt и кликабельные линки. Если же у вас этого файла нет и вы не можете его найти, то я расскажу как сделать ссылки в urxvt кликабельными.

Качаем с git-репозитория скрипты:
git clone git://git.jukie.net/urxvt
Берем оттуда  mark-yank-urls и копируем в $HOME/.urxvt
В .Xdefaults пишем: 
URxvt.keysym.M-u: perl:mark-yank-urls:activate_mark_mode
URxvt.underlineURLs: true
URxvt.perl-lib: /home/serg_sk/.urxvt <--- Ваш путь
URxvt.perl-ext: selection,mark-yank-urls
URxvt.urlLauncher: firefox
Теперь либо просто запускаем urxvt, либо если у вас какие-то проблемы с .Xdefaults:
urxvt --perl-lib ${HOME}/.urxvt/ -pe mark-yank-urls
Оригинал тут: http://www.jukie.net/bart/blog/20070503013555

среда, 29 сентября 2010 г.

Gentoo Linux on Dell Vostro 3700

Недавно обзавелся ноутбуком Dell Vostro 3700. Конечно было решено поставить на него Linux. Скажу сразу, что работает все, что проверял. Не проверял еще только Bluetooth и сканер пальчиков(у меня его нет).

# lspci
00:00.0 Host bridge: Intel Corporation Core Processor DRAM Controller (rev 12)
00:01.0 PCI bridge: Intel Corporation Core Processor PCI Express x16 Root Port (rev 12)
00:16.0 Communication controller: Intel Corporation 5 Series/3400 Series Chipset HECI Controller (rev 06)
00:1a.0 USB Controller: Intel Corporation 5 Series/3400 Series Chipset USB2 Enhanced Host Controller (rev 06)
00:1b.0 Audio device: Intel Corporation 5 Series/3400 Series Chipset High Definition Audio (rev 06)
00:1c.0 PCI bridge: Intel Corporation 5 Series/3400 Series Chipset PCI Express Root Port 1 (rev 06)
00:1c.1 PCI bridge: Intel Corporation 5 Series/3400 Series Chipset PCI Express Root Port 2 (rev 06)
00:1c.2 PCI bridge: Intel Corporation 5 Series/3400 Series Chipset PCI Express Root Port 3 (rev 06)
00:1c.3 PCI bridge: Intel Corporation 5 Series/3400 Series Chipset PCI Express Root Port 4 (rev 06)
00:1c.4 PCI bridge: Intel Corporation 5 Series/3400 Series Chipset PCI Express Root Port 5 (rev 06)
00:1d.0 USB Controller: Intel Corporation 5 Series/3400 Series Chipset USB2 Enhanced Host Controller (rev 06)
00:1e.0 PCI bridge: Intel Corporation 82801 Mobile PCI Bridge (rev a6)
00:1f.0 ISA bridge: Intel Corporation Mobile 5 Series Chipset LPC Interface Controller (rev 06)
00:1f.2 IDE interface: Intel Corporation 5 Series/3400 Series Chipset 4 port SATA IDE Controller (rev 06)
00:1f.3 SMBus: Intel Corporation 5 Series/3400 Series Chipset SMBus Controller (rev 06)
00:1f.5 IDE interface: Intel Corporation 5 Series/3400 Series Chipset 2 port SATA IDE Controller (rev 06)
00:1f.6 Signal processing controller: Intel Corporation 5 Series/3400 Series Chipset Thermal Subsystem (rev 06)
01:00.0 VGA compatible controller: nVidia Corporation GT216 [GeForce GT 330M] (rev a2)
01:00.1 Audio device: nVidia Corporation High Definition Audio Controller (rev a1)
12:00.0 Network controller: Broadcom Corporation BCM43224 802.11a/b/g/n (rev 01)
13:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168B PCI Express Gigabit Ethernet controller (rev 03)
14:00.0 SD Host controller: Ricoh Co Ltd Device e822 (rev 01)
14:00.1 System peripheral: Ricoh Co Ltd Device e230 (rev 01)
14:00.2 System peripheral: Ricoh Co Ltd Device e852 (rev 01)
14:00.3 FireWire (IEEE 1394): Ricoh Co Ltd Device e832 (rev 01)
# lsusb
Bus 002 Device 003: ID 09da:000e A4 Tech Co., Ltd
Bus 002 Device 004: ID 0c45:6450 Microdia
Bus 002 Device 002: ID 8087:0020 
Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 001 Device 006: ID 413c:8160 Dell Computer Corp.
Bus 001 Device 004: ID 413c:8161 Dell Computer Corp.
Bus 001 Device 005: ID 413c:8162 Dell Computer Corp.
Bus 001 Device 003: ID 0a5c:4500 Broadcom Corp. BCM2046B1 USB 2.0 Hub (part of BCM2046 Bluetooth)
Bus 001 Device 002: ID 8087:0020 
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
  • Настройка Broadcom BCM43224 802.11a/b/g/n
1. Ядро
CONFIG_LIB80211=Y
CONFIG_WIRELESS_EXT=Y (Ставим с помощью IPW2200=Y)
CONFIG_MAC80211=Y
2. broadcom_sta
elvenhome ~ # emerge broadcom-sta
3. Настройка wpa_supplicant
# emerge wpa_supplicant
# touch /etc/wpa_supplicant/wpa_supplicant.conf
# cat /etc/wpa_supplicant/wpa_supplicant.conf
ctrl_interface=/var/run/wpa_supplicant
ctrl_interface_group=0
ap_scan=1

network={
    ssid="MyESSID"
    scan_ssid=1
    psk="my_pass"
    priority=2
}
# cat /etc/conf.d/net
modules=( "wpa_supplicant" )
wpa_supplicant_eth1=( "-Dwext" )

  • Настройка звука
Device Drivers --->
   Sound Card Support --->
     <*> Advanced Linux Sound Architecture --->
       <*> PCI sound devices --->
         <*> Intel HD Audio --->
[*] SND_HDA_HWDEP
[*] SND_HDA_INPUT_JACK
[*] SND_HDA_CODEC_SIGMATEL
[*] SND_HDA_CODEC_NVHDMI
[*] SND_HDA_GENERIC
[*] SND_HDA_POWER_SAVE
Затем следует добавить в /etc/modprobe.d/alsa.conf строчку:
options snd-hda-intel model=dell
  •  Настройка web-камеры
Device Drivers --->
  <*> Multimedia support --->
    [*] Video For Linux
    [*] Enable Video For Linux API 1
    [*] Video capture devices --->
      [*] Autoselect perfin.... (VIDEO_HELPER_CHIPS_AUTO)
      [*] V4L USB Devices --->
        <*> USB Video Class (UVC)
        [*] UVC Input events device support
        <*> GSPCA based webcams --->


# usermod -a -G video user

Все остальное заводится с полпинка. А вот так сейчас выглядит мой рабочий стол на буке: