MoH Server Tutorial
Ahhoz, hogy felállíts egy MOHAA szervert, elõször is
tisztában kell lenned néhány alapfogalommal. Nem árt tudni a dedikált és nem
dedikált szerver közti hangyányi különbséget, tisztában lenni a konzolparancsok
pontos jelentésével és használatával.
Dedikált szerver az, amelyiken a játék szerveroldali -
konzolos - verziója fut, linux, vagy windows környezetben. Nem dedikált szervert
legkönnyebben a játékban indíthatsz, és ekkor te is - mint szerver - egy
játékosként vehetsz részt az irtásban.
Mindenképpen szükséged lesz a játék 1.11-es verziójára,
valamint a SpearHead megfelelõ kiadására, bár ez amúgy is elengedhetetlen az
Internetes játékhoz. Nem árt bekapcsolni az Options -> Advanced Options menüben
a console opciót, mivel csak így használhatod a játékba épített konzolt, amit
általában a '0'-ás billentyûvel hozhatsz elõ.
Fontosnak tartom tisztázni az 'RCON' fogalmát, mivel úgy
látom, kicsit még ködös a téma. (A szó egy rövidítés: Remote CONtrol, azaz
távirányítás - Tyll) Ha nem használsz külön szerver-manager programot - remélem
ezután nem is lesz rá szükséged - akkor nem elég, hogy ismered a fõbb
parancsokat, a játékkal valahogy tudatni kell, hogy ezt nem a saját gépeden
akarod végrehajtatni, hanem a szerveren magán. Erre használják az 'RCON'
parancsot, amit mindig az aktuális parancs elé kell beírni, tehát pl. restart helyett rcon
restart a megfelelõ utasítás. Természetesen akárki nem irányíthatja a
szervert, ezért meg kell adni a szerver rcon jelszavát, amit konzolban lehet
érvényesíteni: rconpassword jelszó. Az rcon parancsok listáját
egyébként megtalálod a lap alján.
Rcon parancsokat a játék konzoljában, valamint az All-Seeing
Eye-ban lehet érvényesíteni. ASE-ben jobb gomb a szerver nevén, majd a lenyíló
menüben 'Server Properties', itt megadod az rcon jelszót, majd újabb jobb click
után 'remote console'. Itt irányíthatod a szervert, az egyetlen változás, hogy
itt nem kell beírni az 'rcon' szócskát minden egyes parancs elõtt -
automatikusan rcon parancsnak veszi.
Ha dedikált szervert akarunk felépíteni, két dologra lesz
szükségünk: egy parancsikonra, valamint egy config file-ra. Készítsünk egy
parancsikont a mohaa_server.exe-rõl. Az ikon Target sorába írjuk be a következõ
sort:
C:\Program Files\EA
GAMES\MOHAA\MOHAA_server.exe" +set g_gametype 4 +set sv_maxclients 12
+map obj/obj_team1 +exec serverXX.cfg
Jelen esetben egy objektív szerverrõl van szó, ezt a g_gametype 4
mutatja meg. Legfeljebb 12-en csatlakozhatnak, és az elsõ objektív pályával,
azaz a Hunt-tal kezdünk. A szerver konfigja a serverXXX.cfg fájlban
lesz beállítva, amelyet a játék main könyvtárába kell elhelyeznünk. Ez
a cfg file nem más, mint egy egyszerû szövegfile, amely beállítja a szerver
opcióit. Mellékelem a saját konfigomat, amelyet használni szoktam. A //-val
kezdõdõ sorok megjegyzések, ezt nem veszi figyelembe a játék.
sv_hostname "OBJ server [CKR]"
//itt írhatjuk be szerverünk becses nevét
rconPassword blabla
//ebben a sorban adjuk meg a szerver rcon jelszavát, amivel késõbb admin
jogokat érvényesíthetsz
set password ""
set sv_privatePassword ""
//a szerver jelszava, ha nem szeretnénk, hogy bárki bejöhessen. A privát
felhasználóknak saját jelszavuk van, //valamint garantált helyük a szerveren.
fraglimit 0
//maximális fragek száma, aminek elérésével véget ér a pálya
//( 0 = nincs határ)
timelimit 20
//az egy pályára érvényes idõhatár percekben mérve
//(0 = nincs idõkorlát)
set g_teamdamage 0
//az amerikaiaknál oly divatos baráti tûz ki/ bekapcsolása
g_forcerespawn 0
//bekapcsolásával automatikusan újra spawnolsz a pályán (tehát nem kell
várnod, míg véget ér a kör) itt //másodpercekben kell beállítani
seta g_allowjointime 5
//jelen esetben a kör indulása után 5 másodpercen belül csatlakozhatsz
egyik-másik oldal küzdelmébe, //amennyiben lassú voltál, meg kell várnod a
következõ kört.
set ui_console 1
//ez a kapcsoló is a console-t érvényesíti, mint azt a játék beállításainál
láthattuk
deathmatch 1
seta g_allowVote 0
//szavazás kikapcsolása (ez ugyebár játékban a 'callvote map'-vel történik
set g_gametype 4
//játék típusa: 1- Free for All, 2-DeathMatch, 3-Roundbased, 4-Objective
map obj/obj_team1
//az 1-es OBJ pályával indítunk, ami a The Hunt
sv_maplist "obj/obj_team1 obj/obj_team2 obj/obj_team4"
//ezen pályák szerepelnek a körforgásban, jelen esetben az 1-es, 2-es, és 4-es
OBJ pálya
sv_allowDownload 0
//elméleti lehetõség a szerverrõl való letöltésre (pl custom mapok), nem
tudom, mûködik-e
sv_maxRate 15000
//adatátviteli sebesség a kliens és a szerver között (*)
sv_maxPing 900
//ennél nagyobb pinggel nem enged csatlakozni a szerverre
sv_fps 20
//a szerver fps értéke, alapból 20, növelése elméletileg növeli a sebességet
is
sv_floodProtect 1
//mircbõl ismerõs üzenetáradat elleni védelem
set flood_waitdelay 10
//a szószátyár emberke üzenetei közötti idõkorlát, jelen esetben 10 másodperc
set flood_persecond 4
//az az idõmennyiség, amelyen belül floodnak számít az egy sorral lejjebb
megadott üzenetszám, tehát 4 mp-n //belül elküldött 4 üzenet számít floodnak
(többfajta magyarázatot is találtam erre, és az sem biztos, hogy //mûködik)
set flood_msgs 4
// egymás utáni 4 üzenet számít floodnak az egyel feljebb levõ sorban megadott
idõn belül
sv_pure 0
//beépített PAK3 ellenõrzõ, de nem mûködik
sv_gamespy 1
//itt engedélyezhetjük, hogy szerverünk látható legyen-e GameSpy/ASE-ban,
valamint a beépített keresõben
set g_inactiveKick 0
//másodpercekben megadott idõkorlát, ami után az inaktív klienst kirúgja a
szerver
set g_inactiveSpectate 300
//ugyanaz, csak itt spectator módba rak ki, nem rúg ki egybõl
net_noipx 1
//IPX hálózat letiltása, csak TCP/IP engedélyezett
net_port 12203
//a szerverport értéke, ez kell a csatlakozáshoz, nem elég az IP cím. Default
a 12203
sets !admin "...:::HES:::...Pedro"
sets !Clan ...:::HES:::...
sets !Connection 100Mbit
sets !CPU "AthlonXp 1600+"
sets !Email pedrohsi@freemail.hu
sets !IRC #hes.hu
sets !Memory 512MB
sets !Webpage "http://www.freeweb.hu/hes/index.php"
//ezek nem beállítások, csupán információk, amelyek megjelennek az ASE-ben.
Azért kezdõdnek !-vel, hogy elöl //legyenek:)
//végül pedig egy üres sor kell a cfg file végén
Ez a konfigurációs fájl tökéletesen elegendõ egy jó szerver
elindításához, ennél többre nincs is szükség. Természetesen attól függõen kell
beállítani, hogy milyen típusú játékot indítunk el, melyik pályákkal, mennyi
idõre, hány emberrel.
Néhány apróság a végére:
A különbözõ pályák típusuktól függõen eltérõ könyvtárakban
helyezkednek el. Tehát hiába vannak becsomagolva egy pk3 fájlba, meg kell adnunk
a helyes elérési útvonalat, amikor hivatkozunk rájuk.
A teljes pálya lista:
OBJ:
obj/obj_team1 The Hunt
obj/obj_team2 V2 Rocket Facility
obj/obj_team3 Omaha Beach
obj/obj_team4 The Bridge
TeamDeathmatch/Roundbased:
dm/mohdm1 Southern France
dm/mohdm2 Destroyed Village
dm/mohdm3 Remagen
dm/mohdm4 The Crossroads
dm/mohdm5 Snowy Park
dm/mohdm6 Stalingrad
dm/mohdm7 Algiers
*Az sv_maxrate értelmezése:
Ez az érték határozza meg, hogy a szerver mekkora
sávszélességet használ egy-egy klienshez. Ez a következõ egyenlettel határozható
meg:
# kliens * sv_maxrate * 8(8bit) = feltöltési sebesség, vagy
feltöltési sebesség / ( # kliens * 8 ) = sv_maxrate
Tehát ha egy 512/128 kbps/sec kábelnetes eléréssel akarok egy
12 fõs szervert elindítani, akkor az sv_maxrate 1332 kell hogy legyen (ami
egyébként irtózatosan kevés):
12 * 1332 * 8 = 127872 = 128 kbit - ugyebár a feltöltési
sebességet használjuk, nem az 512kbites letöltési sebességet.
Ugyanakkor, ha egy 100Mbites T3 hálózaton mûködtetünk egy 18
fõs szervert 15000-es maxrate értékkel(ami egészen jó), akkor 2Mbitet használunk
fel a hálózat sávszélességébõl.
Amennyiben realism modos szervert indítanánk el, ehhez
szükségünk lesz a pk3 fájlra, ami netrõl letölthetõ, és ckr111-nek hívják. A
Quake engine rendelkezik azzal a tulajdonsággal, hogy könnyen módosítható
különbözõ pk3 fájlok használatával. Így indíthatunk el realismos, vagy egyéb
úton-módon módosított szervert. A legelterjedtebb realism mod a ckr111.pk3, ezen
kívül még létezik néhány kevésbé ismert/kedvelt mod. Letölthetõ ugyanakkor
lángszóró, molotov-koktél, és rengeteg egyéb finom módosítás a játékhoz.
Nagyjából ennyi tudásra van szükségünk egy MOHAA szerver
felállításához. A teljes RCON utasítás-listát is mellékelem, sosem árt tudni az
egyéb elrejtett parancsok mûködését, értelmét.
rcon parancslista:
rconpassword XXXX
(rcon-os jelszó, amivel ezentúl hozzáférsz a szerverhez)
rconaddress ipcim
(ha nem vagy a szerveren, ezzel tudod megadni a célszerver címét)
rcon status
(a játék és játékosok pillanatnyi állapotát jeleníti meg)
rcon kick "akárki"
(kirúgás)
rcon map pálya neve
(a pályaváltás parancsa, pályák nevét lsd. fentebb)
rcon g_gametype X
(játéktípus beállítása. 1-FreeForAll 2-TeamDeathMatch 3-RoundBasedMatch
4-OBJectiv)
rcon set g_teamdamageX
(Friendly Fire, azaz csapatsebzés beállítása. X=0 nincs, X=1 van.)
rcon say
(ez az, amikor a játék ilyesmit ír ki: console: Mi van pupakok? :) )
rcon timelimit X
(az adott pálya idõlimitjét állítja be)
rcon roundlimit X
(az adott (OBJ) pálya körlimitjét állítja be)
rcon restart
(a pálya újraindítása, (nem újratöltés!), jó pl. játékidõ lenullázására)
rcon password "jelszó"
(a szervert jelszavas védelemmel látja el)
rcon sv_privatePassword "jelszó"
(másik fajta jelszó, privát klienseknek)
rcon sv_privateclients X
(X= 0-32 a privát kliensek számát állítja be)
|