ET QW

З'явилася в мене таке бажання підняти сервер ENEMY TERRITORY: QUAKE WARS. Пошукав погуглив, нічого розумного не знайшов довелося все самому робити. І ось вирішив поділитися досвідом. Починаємо.

Підготовка системиСервер лінуксовий, тому необхідний лінукс емулятор - linux_base-fc. Якщо у вас не встановлено linux_base-fc, тоді встановимо його зараз.

Додаємо запуск при старті.

Ребутимось і перевіряємо чи підвантажився у нас linux

# kldstat Id Refs Address Size Name 1 12 0xc0400000 31ba68 kernel 2 1 0xc0723000 206c4 linux.ko 3 1 0xc0744000 5dee4 acpi.

Все гаразд, модулі коректно підвантажилися. Для гри створимо користувача з-під якого будемо запускати гру наприклад "game".

ДистрибутивиНеобхідно завантажити дистрибутив сервера з сайту AusGamers Pty 1.)Дистрибутив сервера ETQW-server-1.5-full.x86.run 2.)Диск із самою грою для клієнтів (WinXP). 2.1)Патч для клієнта ETQW-client-1.0-1.5-update.exe

ІнсталяціяСтворюємо в домашньому каталозі директорію

Копіюємо в неї наш сервер

У нашому випадку ETQW-server-1.5-full.x86.run і даємо права на запуск

З'являється стандартна угода з ліцензією: погоджуємося yes Далі буде запропоновано ввести шлях куди ми поставимо сервер у мене

Після цього нам буде запропоновано встановити

Тиснемо галочку і погоджуємося встановити PunkBuster і чекаємо на завершення установки.

КонфігиВсе сервер встановлений переходимо до конфігурування. Хочу сказати в цьому є нюанс, файл конфігурації сервера в інсталяторі немає. Є два варіанти створення конфігураційного файлу Перший варіант створюємо конфіг самі.

Ось приклад мого конфігу

// Public and contact options set si_adminname "Games Sity" // Назва проекту set si_website "http://games-sity.net" // Сайт сервера set si_email "aira@games-sity .net" // mail адміністратора сервера set si_irc "#ETQW" // канал у mirc

// General options set si_name "ET: QW Games Sity" // Назва Сервера (відображається в грі) set net_serverPunkbusterEnabled "0" // Анти-чит 0\1 викл\вкл set net_LANServer " 0" // LAN або Internet Server 1\0 set si_maxPlayers "32" // max гравців у грі set si_privateClients "5" // приватні гравці

// Passwords set si_needpass "" set g_password "" set g_privatePassword "" set net_serverRemoteConsolePassword "###" // password від консолі адміністратора

// Game options set si_minPlayers "4" // min гравців у грі set si_readyPercent "80" // відсоток готовності гравців перед стартом set g_warmup "0.5" // час для розминки set g_allowLateJoin "1" // конект під час гри дозволити так\ні 1\0 set g_warmupDamage "1" // стрілянина по своїх так\ні 1\0

// Voting options set si_disableVoting "0" // голосування так\ні 0\1 set g_votePassPercentage "51%" // відсоток голосів для рестарту set g_voteWait "2.5" // час між голосуванням

// Message of the Day (motd) // повідомлення клієнту при заході на сервер max 4 рядки set si_motd_1 "" set si_motd_2 "" set si_motd_3 "" set si_motd_4 ""

// Bot settings // налаштування ботів (не використовую не розбирався) set bot_enable "0" set bot_minClients "-1" set bot_uiNumGDF "-1" set bot_uiNumStrogg "-1" set bot_balanceCriticalClass "1" set bot_sleepWhenServerEmpty "1" set bot_skill "3" set bot_aimSkill "1" set bot_uiSkill "2" set bot_doObjectives "1" set bot_fakePing "0" set bot_sillyWarmup "0" set bot_useShotguns "0" set bot_useSniperWeapons "1" set bot_useVehicles "1" set bot_knifeOnly "0" set bot_useStrafeJump "0" set bot_useSpawnHosts "1" set bot_useSuicideWhenStuck "1" set bot_useTKRevive "1" set bot_useDeployables "1"

// Other options set si_spectators "0" // дозволити глядачів так\ні 0\1 set g_muteSpecs "0" // дозволити чат у грі так\ні 0\1 set g_maxSpectateTime "0" // час перебування в глядачах (0-нескінченно) set g_kickBanLength "2" // час кік\бан set g_teamSwitchDelay "5" // set si_teamForceBalance "0" // балансування немає\да 0 \1 set si_teamDamage "1" // set si_xpSave "0" // set g_gameReviewPause "0.5" // set g_gameReviewReadyWait "0" // set g_execMapConfigs "0" // set si_adminStart "0" // set si_rules "sdGameRulesCampaign" // тип ярми

set m1 "set g_nextMap $m2; spawnServer campaign_africa" ​​ set m2 "set g_nextMap $m3; spawnServer campaign_northamerica" ​​ set m3 "set g_nextMap $m4; spawnServer campaign_northeurope" spawnServer campaign_pacific" vstr m1 spawnServer campaign_northamerica

Другий варіант скористаємося конструктором конфігів із сайту Infinity-Gamehosting Ідемо на сайт Infinity-Gamehosting У config обов'язково повинні бути рядки

set m1 "set g_nextMap $m2; spawnServer campaign_africa" ​​ set m2 "set g_nextMap $m3; spawnServer campaign_northamerica" ​​ set m3 "set g_nextMap $m4; spawnServer campaign_northeurope" spawnServer campaign_pacific" vstr m1 spawnServer campaign_northamerica

Інакше сервер падає чи не стартують взагалі.

ЗапускНу ось сервер стоїтьконфіг написано, залишилося запустити. Редагуємо стартовий скрипт під себе.

Доводимо до такого виду.

#!/bin/sh cd `dirname $0` export LD_LIBRARY_PATH="$LD_LIBRARY_PATH:." LOGFILE=/home/game/etqw-server/server.log exec ./etqwded.x86 +set net_serverDedicated 0 +set net_ip 10.0.4.106 +set net_port 27733 +exec server.cfg 2> &1 &

Чекаємо кінця завантаження

----------- Loading Map Bot Actions ------------ thread priority set to 2 ------------ -------------------------- ----- idRenderModelManagerLocal::EndLevelLoad ----- 32 purged from previous 1405 kept від попередньої 90 новий loaded all models loaded in 0.0 seconds ------------------------- -------------------------- --------------------- -------------- 15540 msec до load maps/valley.entities Loaded map в 16 seconds Розроблений сервер signed in and is authenticated. hitch (100 msec) hitch (100 msec) hitch (100 msec)

Перевіряємо, що сервер нормально стартував.

Усі норми сервер стартував. Ну ось ніби всі.

Для адміністрування сервера керуємо файл

а саме такі рядки

group Admin password ваш пароль

Пере запускаємо сервер і можна логінуватися в адмінці управління сервером через клієнт.

Сильно не штовхати пишу вперше.

Perec, 2009-01-04 о 10:45:07

А хтось знає, як статистику прикрутити і де її взяти.

Виправити потрібно у стартовому скрипті:наприкінці передостаннього рядка екран поставити! #!/bin/sh cd `dirname $0` export LD_LIBRARY_PATH="$LD_LIBRARY_PATH:." LOGFILE=/home/game/etqw-server/server.log exec ./etqwded.x86 +set net_serverDedicated 0 +setnet_ip 10.0.4.106 \ +set net_port 27733 +exec server.cfg 2>&1 &