A Kings Of The Hill Quake3 segédlete v1.3
A segédlethez eddig hozzájárultak:
ToM [WARR] Matuska [KOTH] Leonard.LFP [3].Herb1E Kroozo[UV] Spawn l4mer|E[TXC]
A KOTH honlapján igyekszem a segédlet frissített, aktuális változatát hozzáférhetővé tenni. Honlapunk címe: http://home.tvnet.hu/~mlz/koth. Az e-mail címem, ahol bárki el tud érni: mailto:miklac@matavnet.hu (ha ez megváltozna, úgy a honlapunkon mindig az aktuális email címekre találsz).
Javítással - bővítéssel kapcsoatban, bobj egy mail-t lecci!
bind szintaxis: bind <billentyű "<parancs" példa: /bind r "record x" magyarázat: a bind paranccsal tudsz billentyűkhöz bizonyos funkciókat hozzárendelni. A példa a demó felvételt mutatja be. A bind parancs után a kívánt billentyűt kell beírni, majd idézőjelek közé a parancsot (kívánt funkciót).
bindlist szintaxis: bindlist példa: /bindlist magyarázat: a bindlist parancs listázza, az összes bind parancsal a billentyűkhöz rendelt funkciókat.
callvote szintaxis: callvote <parancs vote <y/n példa: /callvote map q3dm17 vote y magyarázat: internetes játékban így lehet map-ra (pályára) szavazni. A vote y ("igen" szavazás) által a többiek vagy igennel, vagy nemmel szavaznak. Aki indít egy szavazást, annak a callvote parancsot kell használnia. Miután valaki elindított egy szavazást, már csak a vote parancsot lehet használni válaszként (igen/nem).
clear szintaxis: clear példa: /clear magyarázat: a konzól szöveges tartalmát törli (olyan, mint a képernyőtörlés DOS-ban a CLS paranccsal).
connect szintaxis: connect <IP cím példa: /connect koth.tvnet.hu vagy /connect 194.38.96.138 magyarázat: a Quake3-nak van beépített szerver keresője, de ha van egy kedvenc szervered, arra közvetlenül a konzolból is tudsz csatlakozni, nem kell a menüből kiválasztani és megvárni, míg a kívánt szerver megjelenik a listán.
demo szintaxis: demo <demo példa: /demo koth01.dm3 magyarázat: felvett demókat lehet lejátszani közvetlenül a konzolról. Ha ezt hosszadalmasnak találnád, akkor a menüből kiválasztva is le tudsz játszani demókat.
devmap szintaxis: devmap <pálya példa: /devmap q3dm17 magyarázat: a kívánt pályát developer (tervező, készítő) üzemmódban tölti be, ami magyarán azt jelenti, hogy a cheat (csalás) engedélyezve van.
disconnect szintaxis: disconnect példa: /disconnect magyarázat: lokális (LAN) vagy internetes szerverről leszakítja a klienst, azaz: ha játszol egy szerveren, de meguntad, akkor a parancs beírásával befejezed a játékot az adott szerveren. A Quake visszalép a menübe.
exec szintaxis: exec <cfg vagy script példa: /exec laca.cfg magyarázat: skriptet, vagy cfg (konfigurációs) fájlt lehet elindítani (végrehajtatni). Ha egy versenyre elmész, de nem a saját gépeden játszol, akkor előtte kimásolhatod a Quake3 q3config.cfg fájlodat, és floppyn elviheted magaddal, így az adott idegen gépen nem kell megint mindent beállítanod, hanem egyszerűen ezzel a paranccsal bekonfigurálod a játékot. Előtte ne felejtsd el bemásolni a cfg fájlt az x:\quake3\baseq3 könyvtárba (az idegen gépen)!
follow szintaxis: follow "<név" vagy follow1 (az első helyezettet) példa: /follow "Laca [KOTH]" vagy /follow1 magyarázat: spectator (megfigyelő) üzemben követheted a megnevezett játékost, illetve az elsőt, vagy az x-ediket.
freeze szintaxis: freeze <mp példa: /freeze 5 magyarázat: az adott animációt, vagy demót x másodpercre lefagyasztja. A szám, ami a parancs mögött áll másodperceket jelent.
give szintaxis: give <eszköz példa: /give railgun magyarázat: a devmap paranccsal betöltött pályán (tehát, ahol a csalás engedélyezett) így lehet kérni az adott itemeket (eszközöket).
god szintaxis: god példa: /god magyarázat: halhatatlanság (feltétel: lásd előzőt).
heartbeat szintaxis: heartbeat <1/0 példa: /set heartbeat 1 magyarázat: ha otthonról egy internetes szervert indítasz és biztos akarsz lenni abban, hogy a masterserver (a fő szerver az id-nél) tudomást vesz rólad, akkor használd ezt a parancsot.
kick szintaxis: kick "<játékosnév" példa: /kick "Laca [KOTH]" magyarázat: csak magán a szerveren használható parancs, amivel egy adott játékost tudsz kirúgni a szerverről (és egyben a játékból).
kill szintaxis: kill példa: /kill magyarázat: ha valahová beragadtál, és nem tudsz kijönni, akkor ezzel megölheted magad (vigyázz! Egy fraget (pontot) levon tőled!).
killserver szintaxis: killserver példa: /killserver magyarázat: magáról a játékszerverről indítható parancs, aminek eredménye, hogy a szerver nem küld több heartbeat-et a masterserver felé (nem jelenik meg a szerver a listán).
map szintaxis: map <pályanév példa: /map q3dm17 magyarázat: pályát tudsz betöltetni a Quake3-mal.
map_restart szintaxis: map_restart példa: /map_restart magyarázat: adott pályát (ha már betöltötte egyszer) újraindítja és az esetlegesen újonnan megadott parancsokat teljesíti, végrehajtja.
modelist szintaxis: modelist példa: /modelist magyarázat: az elérhető képernyőméreteket (felbontást) kiírja.
modellist szintaxis: modellist példa: /modellist magyarázat: az adott játékban szereplő összes modellt kilistázza. Informatív jellegű parancs, mint az előző.
noclip szintaxis: noclip példa: /noclip magyarázat: csalás, akár falakon is át tudsz menni, valamint repülni is tudsz. Feltétele a devmap-pal indított pálya.
notarget szintaxis: notarget példa: /notarget magyarázat: megint csak egy csalás, aminek eredményeként a botok nem fognak látni, így nem vagy nekik célpont (nem vesznek rólad tudomást).
ping szintaxis: ping <IP cím példa: /ping koth.tvnet.hu magyarázat: a csatlakozás sebességét méri. Elküld az adott IP címre egy jelet, amit visszakap. A küldés és fogadás közötti időt millisecundum-ban írja ki. Minél kisebb ez az érték, annál jobb a csatlakozás.
quit szintaxis: quit példa: /quit magyarázat: a játékból azonnal kilép és a Quake3-at is befejezi. Visszatérsz a munkaasztalra (desktop), azaz a Windows-ba.
rcon szintaxis: rcon <parancs példa: /rcon exec koth.cfg magyarázat: az rcon a remote control rövidítése, ami annyit jelent, mint távvezérlés. Ezzel a szervert tudod otthonról irányítani (természetesen, ha tudod a megfelelő hozzáférési kódot, amit a rconpassword <valami paranccsal tudsz megadni. Pontosabb magyarázat később).
record szintaxis: record <demónév példa: /record x magyarázat: demót tudsz felvenni. Az x helyére bármit beírhatsz; ez lesz a felvett demód neve (pl. koth_szerver_01.dm3). A demó neve után nem kell a kiterjesztést beírni (dm3).
say szintaxis: say "<valami" példa: /say "sziasztok arcok!" magyarázat: ezzel tudsz valamit kiíratni a képernyőre, amit mindenki el tud olvasni.
say_team szintaxis: say_team "<valami" példa: /say_team "ellenseg a quad-nal" (mivel ékezetes karakterek nincsenek) magyarázat: ugyanaz, mint az előbb, azzal a különbséggel, hogy ezt egy adott csapaton (team) belüliek olvashatják (láthatják) csak, mégpedig a TE csapattársaid. Tehát az ellenség nem látja az üzeneted.
set szintaxis: set <parancs <változó példa: /set sv_maxclients 18 magyarázat: beállít egy értéket az adott paranccsal. A konzolba írva ideiglenes érvényű.
seta szintaxis: seta <parancs <változó példa: /seta sv_maxclients 18 magyarázat: ugyan az, mint a set, de a parancssor bekerül az adott cfg fájlba, így tartós érvényű.
sets szintaxis: sets <string (szöveg) <string (szöveg) példa: /sets Admin "Laca [KOTH]" vagy /sets "Admin" "Laca [KOTH]" magyarázat: szöveget lehet vele beállítani, ami később a Gamespy-on belül megjelenik. A string gyakorlatilag karaktersorozatot jelent.
snd_restart szintaxis: snd_restart példa: /snd_restart magyarázat: a hangrendszert inicializálja és újraindítja az esetleges új beállításokat érvénybe helyezve.
stoprecord szintaxis: stoprecord példa: /stoprecord magyarázat: leállítja a demó felvételét.
team szintaxis: team <csapat példa: /team blue vagy /team red vagy /team spectator magyarázat: a kiválasztott csapatba indítja az adott játékost (magadat), illetve a /team spectator paranccsal a nézelődők közé társulsz.
toggle szintaxis toggle <parancs változó példa: /toggle cg_autoswitch magyarázat: bináris (tehát 1/0 vagy igen/nem) változókat lehet 1-re vagy 0-ra illetve fordítva váltogatni.
unbind szintaxis: unbind <billentyű vagy unbind <parancs példa: /unbind r magyarázat: óvatosan használd, mert ha beírod, hogy /unbindall akkor az összes billentyű hozzárendeléseket törli! Tehát ez a lényeg: billentyű hozzárendelést töröl.
unbindall szintaxis: unbindall példa: /unbindall magyarázat: lásd előző
vote szintaxis: vote <y/n (igen/nem) példa: /vote y magyarázat: a callvote meghívása után a kliensek (játék résztvevői) ezzel szavazhatnak. A szavazás eredménye lehet igen (y) vagy nem (n).
vstr szintaxis: bind x vstr <variáns példa: set nextmap vstr d2 magyarázat: megjelöli a hozzá rendelt parancsot, mint variánst.
wait szintaxis: wait példa: /wait magyarázat: várat 1 (game tick?)
A Quake3 konzoljának parancs sora nagyon hosszú. Az összes parancs funkcióját és beállításainak eredményeit talán csak maga az id programozói ismerik. A mai napig nem találtam olyan weblapot, ahol az összes parancs jelentését le tudták volna írni. Vannak ismert parancsok és olyanok, melyek jelentésére csak tippelni lehet (felhasználói részről). De térjünk vissza a parancsokra. A CMD (command) parancsok végül is az egyszerű illetve a fő parancsokat takarják. A közismertebbek rövid értelmezése: Figyelem! A Quake3 v1.09-óta a parancsokat a konzolban egy / jellel kell kezdeni! Ha nem írod be a / jelet, akkor mindent amit beírsz, a Quake3 sima beszélgetésnek fogja értelmezni és mindenki által olvasható szövegként fog a képernyőn megjelenni.
Nos, ezek voltak a fontosabb és általánosságban használt parancsok és a magyarázatok. A CVAR listát nehéz és hosszadalmas lenne így elmagyarázni, ezért az egyes CVAR beállításokat a segédlet következő részeiben próbálom szövegbe beillesztve elmagyarázni. Kontextus nélkül ennek sok értelme nem is lenne, hiszen a CVAR beállításait általában egy script vagy egy cfg fájl soraiban szokták összefüggően (mint egység) változtatni.
Ezen a képen 0 a pingem, mert én indítottam egy szervert, tehát a saját gépemhez képest nincs késleltetés (még csak az kellene!). LAG: szokták úgy is mondani: "Már megint lagzik a szerver!". Ha játék közben egy időre megállsz (persze anélkül, hogy akarnál) és a játék kiírja a képernyőre, hogy "connection interrupted", akkor lagzik a szerver, azaz nem fogad és nem is küld információt a gépednek (illetve akkora az adatcserében a fennakadás, hogy csak számottevő késéssel küld, illetve fogad adatot). Ilyenkor legjobb, ha elengedsz mindent (billentyűt, egeret), nehogy a LAG megszűnése után leessél egy pályáról (pl. Q3dm17) és pontlevonás legyen a vége. A lagzás oka lehet: túlterhelt vonalak, túlterhelt szerver, szűk sávszélesség. Tehát, ha egy szerver lagzik, annak nem feltétlenül maga a szerver az oka, hanem esetleg egyszerűen túl sokan "lógnak" az adott Internet szolgáltató vonalain. Packet: Jelentése csomag. A Quake csomagokat küld a szerver felé és csomagokat kap vissza. Ha valakinek jó a pinge, de mégis lagzik, annak a Packetloss (csomag vesztés) lehet az oka. Rate: ráta, azaz a sávszélesség a kliensek (játékosok) felé. 56.6-os modemnél célszerű a /set rate paranccsal a rátát kb. 4500-ra illetve 5000-re állítani (ettől magasabb értéket nem célszerű beállítani, mert packetloss lesz a vége). 33.6-os modem: /set rate 3500 (max. 4000), ISDN: 8000- 9000 (egycsatornás ISDN, csatornánként ennyi), kábel kapcsolat: 12000- 20000. Lehet kísérletezni, de a gyakorlat ezeket a beállításokat igazolja. Inkább egy picivel kisebb értéket állíts be, mint túl nagyot, így el tudod kerülni a packetloss-t. Na, az első lépésen túl vagyunk, jöhet a saját Internetes szerverünk beállítása. Alapnak a saját szerverünk cfg fájlját nézzük végig:
// Szerver Specifikus // set dedicated 2 g_gametype 0 g_allowvote 1 set sv_pure 0 set sv_allowdownload 1 set sv_timeout 120 set sv_fps 50 set sv_hostname "K.O.T.H. clan's DeathMatch" seta rconpassword "titkos01" set g_synchronousClients 1 seta sv_privatepassword "titkos02" set sv_maxclients 18 set sv_privateclients 4 set rate 5500 set sv_rate 5500 set sv_maxrate 5500 set sv_master1 "master3.idsoftware.com" set sv_master2 "master0.gamespy.com" set sv_master3 "" set sv_master4 "" set sv_master5 "" seta bot_enable 0 // Private // sets "Administrator:" "Laca [KOTH]" sets "E-mail:" "miklac@matavnet.hu" sets "URL:" "http://home.tvnet.hu/~mlz/koth" sets "Location:" "Budapest, Hungary" sets "CPU:" "400 MHz Celeron" sets "Clan:" "Kings Of The Hill" // Mapok // set d1 "fraglimit 25; capturelimit 10; g_gametype 0; map q3dm7; set nextmap vstr d2" set d2 "fraglimit 25; capturelimit 10; g_gametype 0; map q3dm13; set nextmap vstr d3" set d3 "fraglimit 25; capturelimit 10; g_gametype 0; map q3dm15; set nextmap vstr d4" set d4 "fraglimit 25; capturelimit 10; g_gametype 0; map q3dm16; set nextmap vstr d5" set d5 "fraglimit 25; capturelimit 10; g_gametype 0; map q3dm17; set nextmap vstr d6" set d6 "fraglimit 25; capturelimit 10; g_gametype 0; map q3tourney2; set nextmap vstr d7" set d7 "fraglimit 25; capturelimit 10; g_gametype 0; map q3tourney6; set nextmap vstr d1" vstr d1
A szerver specifikus adatok a szerver beállításait adják meg. Nézzük végig a sorok jelentését: set dedicated 2: megmondom a szervernek, hogy dedikált, azaz nincs grafikus felületet, csupán szerver (játszani nem lehet rajta). A szám a dedicated után következő jelentéssel bír: 1=LAN szerver, nem küld a masterserver felé heartbeat-et. 2=internetes szerver, azaz küld heartbeat-et a masterserver felé. g_gametype 0: megadom a játék típusát. 0=Free For All (FFA), 1=Tournament (F2F, azaz Face to Face), 2=üres, 3=Team Deathmatch (csapat - csapat ellen), 4=CTF (Capture the Flag, zászlólopás). g_allowvote 1: a pályaválasztás lehetősége szavazással. 1=engedélyezve, 0=nem engedélyezve. set sv_pure 0: "tiszta" szerver megadása. Ha ez az érték 1, akkor azok, akiknek a szerveren lévő pk3 fájlon kívül más pk3 is van az x:\quake3\baseq3 könyvtárukban, akkor minden pályaváltás után ledobja őket a szerver, illetve nem látszik a saját modelljük, célkeresztjük stb. set sv_allowdownload 1: a szerver engedélyezi a letöltést. Tehát, ha egy pálya a szerveren megvan, de neked nincs meg, akkor letölti a Quake3 automatikusan (feltétele, hogy ez a változó nálad is erre az értékre legyen állítva). set sv_timeout 120: ha valaki csatlakozik a szerverre, és utána lagzik illetve nem csinál semmit (áll, nem mozog, nem beszélget), akkor 120 másodperc múlva ledobja a szerver. Ezt az értéket beállíthatod bármennyire. set sv_fps 50: a szerver sebességét adod meg FPS (frames per second)-ben (képkocka per másodperc). Érdemes limitálni, hogy egyenlőek legyenek a különböző kliensek sebességei (tehát hiába rohan otthon a játék 120fps-sel, a szerveren ez 50-nek felel meg). set sv_hostname "K.O.T.H. clan's DeathMatch": megadod a szervered nevét. Ez fog megjelenni a Quake3 saját szerver listájában. seta rconpassword "titkos01": itt adod meg a kódot (password) a szervernek. Ha otthonról a szerveren valamit változtatni akarsz, akkor beírod, hogy /rconpassword titkos01 <ENTER /rcon <parancs és ezt a szerver végre is hajtja (távirányítás). set g_synchronousClients 1: szinkronizálja a klienseket (pontosabbat nem tudok róla). seta sv_privatepassword "titkos02": ha tele van a szerver, akkor is tudsz csatlakozni rá (ha megadtál privateclients-et): csatlakozás előtt /set password titkos02 <ENTER /connect <a szervered IP címe set sv_maxclients 18: megadod, hogy összesen (privateclients-szel együtt) mennyi játékosnak legyen hely a szerveren. set sv_privateclients 4: megadod, hogy mennyi kliens tudjon csatlakozni egy telített szerverre (a /set password-del, emlékszel?). set rate 5500: beállítod a szerver rátáját. set sv_maxrate 5500: beállítod a szerver maximum rátáját, amit a kliensek felé enged (hiába valakinek ISDN, ha a szerver csak ennyit enged- esélyegyenlőség modemesek és kábelesek között). set sv_master1 "master3.idsoftware.com" set sv_master2 "master0.gamespy.com" set sv_master3 "" Ezekkel a sorokkal megadod a szervernek a masterservereket (hova küldjön heartbeat-et). seta bot_enable 0: botok letiltása a szerveren. Linuxos szerveren ha ez be van kapcsolva, akkor sem kéri a Quake3 a CD-t, de Windows alapú szervereke igen. Érdemes 0-ra állítani. sets "Administrator:" "Laca [KOTH]" sets "E-mail:" "miklac@matavnet.hu" sets "URL:" "http://home.tvnet.hu/~mlz/koth" sets "Location:" "Budapest, Hungary" sets "CPU:" "400 MHz Celeron" sets "Clan:" "Kings Of The Hill" Ezekkel a sorokkal megadom a szöveget, ami a Gamespy-ban látható lesz, így a buta külföldiek is tudják, milyen szerverről van szó, és az hol van helyileg. set d1 "fraglimit 25; capturelimit 10; g_gametype 0; map q3dm7; set nextmap vstr d2" set d2 "fraglimit 25; capturelimit 10; g_gametype 0; map q3dm13; set nextmap vstr d3" set d3 "fraglimit 25; capturelimit 10; g_gametype 0; map q3dm15; set nextmap vstr d4" set d4 "fraglimit 25; capturelimit 10; g_gametype 0; map q3dm16; set nextmap vstr d5" set d5 "fraglimit 25; capturelimit 10; g_gametype 0; map q3dm17; set nextmap vstr d6" set d6 "fraglimit 25; capturelimit 10; g_gametype 0; map q3tourney2; set nextmap vstr d7" set d7 "fraglimit 25; capturelimit 10; g_gametype 0; map q3tourney6; set nextmap vstr d1" vstr d1 Ezek a sorok a pályaváltásokat végzik. Érdemes végig elemezni, hogy megértsd, hogyan is működik (a vstr funkcióját ez szépen mutatja).
Lassítás: bind F3 "timescale .3" Gyorsítás: bind F4" timescale 4" Normál: bind F5 "Timescale 1"
DEMÓ Felvétel [localhoston] otthon szaggatás nélkul: Biztos sokan észrevettétek, hogy ha "g_syncronousclients 0" veszitek fel a demót, bizony a szemet nagyon bánto, szaggatós demó lesz belőle. Ha be van kapcsolva a "g_syncronousclinets" [1], akkor meg olyan, mitha lassan reagálna a gép [ha nincs elég "eroforrás"]. De megoldható. Mindösze a konzolba kell beírni annyit , hogy "sv_fps 100", vagy vmi hasonló értéket [lehet kisérletezni]. A 100fps nem is olyan borzasztóan magas, és így 2 probléma oldódik meg: 1.ha "g_syncronousclients 0" -val szeded a demót nem fog szaggatni 2.ha "g_syncronousclients 1" -gyel szeded, akkor igaz , hogy néhány ugrás így sem fog sikerulni, de a sokkal konnyeb lesz igy játszani.
DM13 megaH ugrás: Ha elég erős a gép, akkor: com_maxfps 120-140 Ha kicsit lassabb a géped: com_maxfps 83. A lényeg, hogy abban a teremben az általad beállított maxfps legyen!
Bindelt Rocket jumping : Rocket jump. A kezdőknek és a profibbaknak is néha nehézséget okoz. De nyugodtan be lehet bindelni egy gombra az egészet! A lényeg, hogy a megnyomás pillanatában Rocket Launcher legyen nálad. Tehát kell a scriptnek: lenézni, lőni, ugrani, vissza rakni a célzot középre
seta cl_pitchspeed "99999" seta rjump "+lookdown;wait;wait;+attack;+moveup;wait;wait;-attack;-moveup;-lookdown;wait;centerview" bind gomb "vstr rjump"
pl.: "r" gombra akarsz rocket jumpot, akkor : bind r "vstr rjump"
Előnyei: gyorsabb, nem kell lenézned jumpolás kozben, a levegőben gyorsan körulnézhetsz, stb..
Ha va ötleted itt megoszthatod másokkal:
A TE ötleted: itt szerepel majd :)
Ŕíŕęîíäŕ ńęŕ÷ŕňü
ďîđíî