Mumble Nézet News Hasábok Régi Játék oldalak Szolgáltatás oldalak Partner oldalak
Bezárás

CSHU - Hungarian Counter-Strike Portal

ZokNy- 

Who am I? ZokNy-

Név:
Életkor:
Nem:
Város:
ZokNy
-
férfi
Csapat:
Blog:
Fórumrang:
Albumok:
Weblap:
E-mail cím: nem publikus
MSN:

CSConStatsCounter v0.1 2010. július 11. ZokNy- 19 hozzászólás 7333 olvasás

Statisztika készítése egyszerűen.

Üdv megint!

Nemis oly rég, egyik képnél írtam egy saját programomról, ami statisztikát számol HLTV demó segítségével.
Többen is érdeklődtek iránta, ám eddig nem osztottam meg, mert finoman szólva kicsit se volt felhasználóbarát :)
De ezen változattam és immáron sokkal könnyebben lehet vele egy ilyen statisztikát összehozni, mint régebben. A régi verzióval kb. 10-15 percembe telt összehozni a statisztikát, mostmár ezzel az újabb verzióval 5-7 perc. Mivel egyszer se álltam neki demót nézni, és kézzel összeírni, hogy ki mennyit ölt, vagy halt meg, így összehasonlítani se tudom, de feltételezem ennél jóval több időbe telik :)
Mivel a program kezelése nem teljesen magától értetődő, így egy példán keresztül szemléltetem, hogyan is kell használni:

Az ICL6-os Teamwork vs BUSZ.xzn meccs HLTV-jét vettem alapnak, melyet innen le is tölthettek.
Összessen 3 fő részre bontanám a tennivalót:
1 - HLTV segítségével a szükséges adatok exportálása a játékból
2 - Adatok szerkesztése szövegszerkesztővel
3 - Az adatok betöltése a programmal és mentése, statisztika mentése

Lépések:
- 1. rész -
a, Nyissuk meg a HLTV demót játékban:
"playdemo teamwork_vs_BUSZ-de_dust2.dem"

Egy kis kitérő: Hogy miért playdemo és miért nem viewdemo?
A playdemonak két nagy előnye is van viewdemoval szembe. Egyrészt nem kell megvárni míg betölti a teljes demót, másrészt ha pályaváltás van a demóban, azt is érzékeli és nemáll meg a lejátszás, hanem betölti a pályát és folytatja a lejátszást.
Viszont van egy nagy hátránya: nemlehet visszafele tekerni.
Sokan nemtudják, de létezik egy parancs, amivel sokszoros sebességre is fel lehet gyorsítani a lejátszást. Ha átcsúszunk pl. a meccs indulásán, akkor nincs más dolgunk, mint újra elindítani a lejátszást és gyorsan előretekerni a kívánt részhez.
Gyorsítani a "host_framerate x" parancsal tudunk.
Javaslom az alábbi bindeket:
"bind F6 host_framerate 0"
"bind F7 host_framerate 0.000000001"
"bind F8 host_framerate 0.1"
A host_framerate alapértelmezésben a 0 értéket veszi fel, ez jelöli azt, hogy kivan kapcsolva a gyorsítás.
Az F7-es bind sokszorosára lelassítja a lejátszást, így gyakorlatilag olyan a hatása, mint viewdemo esetén a pause-nak.
Az F8-as bind pedig 1/10-re lassítja, ami annyit tesz, hogy tízszeresére gyorsítja a lejátszást.
Ezekkel a bindekkel könnyen odatekerhetünk akár meccs kezdetére, akár a végére.

b, Ha megvan a meccs eleje (késkör utáni rész, 3 restart), akkor a "clear" paranccsal töröljünk mindent a konzolból, majd tekerjünk a félidő végére.
Ha vége a félidőnek a "condump" paranccsal mentsük ki a konzol tartalmát egy txt-be.
Itt jegyezném meg, hogy nem kötelező külön felvenni a kettőt, különösen akkor, ha nem lövöldöznek a két félidő között. Én a biztonság kedvéért mindig külön kezelem a kettőt.
Ismét tekerjünk, ezúttal a 2. félidő elejére (3 restart), "clear". Ahogy az előbb, most is tekerjünk a végére, majd "condump" segítségével mentsünk.
Ha ezzel megvagyunk, akkor van kettődarab condump fileunk mindkét félidőről, benne a szükséges adatokkal. Aki akarja át is nevezheti, hogy később is tudja melyik file melyik meccset tartalmazza.
Nálam ez így néz ki: "rész_csapat1_csapat2_versenyneve_félidő.txt"
Példafileok: 1_teamwork_BUSZ_ICL6_1.txt, 1_teamwork_BUSZ_ICL6_2.txt

- 2. rész -
a, Az exportált adatokat (condumpXXX.txt) nyissuk meg szövegszerkesztőben (pl. Notepad++). Azokat a sorokat melyek chat szöveget (*DEAD* sorok), szerver üzenetet (LIVE üzenet, stb), konzol parancsot ("]"-el kezdődő sorok) tartalmaznak töröljük. Végül a változatásokat mentsük el.
Példafileok: 2_teamwork_BUSZ_ICL6_1.txt, 2_teamwork_BUSZ_ICL6_2.txt

b, Ha külön statisztikát akarunk készíteni a két félidőről, akkor ki is hagyhatjuk ezt a részt.
Füzzük össze a két félidőt. Szövegszerkesztőben nyissuk meg a 2. félidőt, másoljuk ki a tartalmát, majd nyissuk meg az 1. félidőt, menjünk a végére és illesszük be a kimásolt részt. Végül mentsük el, jelezve, hogy egybe van a két félidő.
Példafile: 2_teamwork_BUSZ_ICL6.txt

- 3. rész -
a, Indítsuk el végül a CSConStatsCounter-t, majd nyissuk meg az előzőleg elmentett munkánkat. Megnyitás után, egy ilyen ablak fogadhat minket:

Mivel HLTV-vel dolgozunk, nemárt tudni, hogy a HLTV néha egy-egy karaktert kihagyva ír üzenetet a konzolba. Ez egy bug, semmi mást nemtudunk vele csinálni, mint javítjuk. A program itt arra figyelmeztet, hogy nem képes értelmezni az adott sort (# után írja, hogy hányadik sorban található a hiba az aktuális fileban), és megkér minket, hogy az adott séma szerint javítsuk. Itt is két lehetőségünk van, vagy javítjuk a sort, vagy nem. Előbbinél ha jól csináltuk, akkor eltűnik ez az ablak, ha nem, akkor újra előjön.
Másik választás lehet a "Cancel", vagy az "ESC" megnyomása, amivel figyelmen kívül hagyhatjuk a sort. Fontos megjegyezni, hogy amelyik sort kihagyjuk, azt nemfogja beleszámolni a statisztikába.
Példánál maradva ezt a szöveget kell javítani: "teamwork ' kic$i kille g4nDzsaBUSZ.xzn quick with ak47". Itt a "kille" résznél maradt le egy "d" betű, javítottam hát.
Ami problémás lehet az a "killed", és a "with" szócska, vagy valamelyik szóköz marad le, esetleg fejlövés esetén a "with a headshot from" rész nem stimmel, a gyilkos az áldozat valamint a fegyver neve itt most nem lényeges.
Szerencsére ebben a demóban csak egy ilyen hibát talált.

b, Miután javítottuk az esetleges hibákat, megjelenik maga a program.

Ahogy mondottam a HLTV kissé bugos, így itt-ott kifelejt egy karaktert, ennek köszönhetően olyan játékosok jelentek meg a listában, akik nagy valószínűséggel nem szerepeltek a meccsen. Ezeket a program segítségével könnyen javíthatjuk.
Rögtön elsőnek "eamwork ' smilee". A programnak köszönhetően, könnyedén javítható az efféle hiba: Jobbklikk a hibás névre, "Change name", majd a megjelenő ablakban, kiválasztjuk, hogy mire, vagy kire szeretnénk lecserélni.

A hibás játékosnak az adatai hozzáadódnak ahhoz, akit kiválasztottunk a listából. Én most "teamwork ' smile"-ra cseréltem. Igen ám, de most eltűnt a "teamwork ' smilee" és lett helyette egy "tteamwork ' smile".

Ez azért fordult elő, mert a program az összes "t" nélküli smilee-t lecserélte, vagyis a "teamwork ' smilee"-ból fogta a "t" nélküli részt és lecserélte "t"-s részre, ezért szerepel immáron kétszer a "t" az elején. Ha most a "teamwork ' smile"-t cseréljük le "tteamwork ' smile"-ra, akkor a sima eltűnne és megjelenne egy "ttt"-s változat.
Ugyanezt eljátszhatjuk szintén smilee-val, csak visszafele, vagyis ha a "teamwork ' smile"-t cseréljük le "teamwork ' smilee"-ra, akkor eltűnik az "e"-re végződő, és megjelenik egy új, "eee"-re végződő. Ugyanaz a folyamat megy végbe, csak fordítva.
Ha egy csere után vagy az első, vagy az utolsó karakter többszöröződik, akkor egyszerűen fordítsd meg a cserét. Ha az fentebb lévőt cserélted az alsóval, akkor az alsót cseréld a fentivel, és fordítva.
A végén pedig, ha megvan a teljes csapat statisztikája, akkor arra nevezed egyesével őket, amire szeretnéd.
Ami még előfordulhat az a "self" játékos. Neki leginkább csak egy halála van. A teendő: a kimentett condump-ból kikeresni a self-et, megnézni hogy kinek a neve áll mellette, majd kicserélni rá. Jelen esetben ez áll a logban: "g4nDzsaBUSZ.xz hegedu killed self with worldspawn". Ergó jobbklikk "self"-re és kicseréljük hegedu-re.
Ha a "self"-nek 2, vagy több halála van, akkor szövegszerkesztőben keressük meg az összes előfordulási helyét, és nevezzük át sorban self1, self2, ..., majd megnézzük melyik self kihez tartozik és kicseréljük.
Ha mindennel megvagyunk, akkor így fest a dolog:


c, Elmenthetjük a condumpot, melyet ha újra betöltünk a programba, akkor már semmiféle javítandó hibával nemfogunk találkozni.
Valamint elmenthetjük magát a statisztikát is egy egyszerű txt-be, melyet később importálhatunk pl. Excelbe további feldolgozásra.
A txt-ben az oszlopok tabulátorral vannak elválsztva.
Példafile: 3_teamwork_BUSZ_ICL6.txt, 4_teamwork_BUSZ_ICL6_stats.txt

Ezzel végeztünk is. Az elkészült statisztikákat akár publikálhatjátok is klánhíreknél.

Letölteni INNEN tudjátok.

Esetleges hibák, ötletek privibe jöhetnek!


avatar #19
ZokNy- 2010. július 12. 444 hozzászólás 827.
Válasz saint1 #16. hozzászólására
ügyes progi, de a col demo player körönként frissítve írja neked, minden létező adattal együtt, consoleról csinál log-ot stb
És tényleg. Amikor elkezdtem a progit csinálni akkor még csak ineye demóval volt képes ilyesmire.

#18: Nem, élőbe hallgattam.
Hasznos cuccok blogomban és a klánhíreknél. weee
avatar #18
NIVJkEZqR 2010. július 12. 1831 hozzászólás 151.
Válasz ZokNy- #3. hozzászólására
Jah. Shoutcaston emlegették egy párszor a nevét :)
esetleg tudsz dobni DL linket a shoutcastről?
JA VÁGOMMMM
avatar #17
Skyress. 2010. július 12. 42 hozzászólás 4208.
újabb jó progi köszi
avatar #16
saint1 2010. július 12. 1151 hozzászólás 293.
ügyes progi, de a col demo player körönként frissítve írja neked, minden létező adattal együtt, consoleról csinál log-ot stb
avatar #15
tmk. 2010. július 11. 8217 hozzászólás 6.
nagyon jó , köszönöm
High vagyok , és szupersztár .
avatar #14
mortaL 2010. július 11. 2337 hozzászólás 106.
Válasz Dzsoo_ #11. hozzászólására
emlegették? gyarkorlatilag végig azon szakadtak és szurkoltak hogy meglegyen az első :D
:DDD
GRIBB :: lanpex: erekcióm van így nem tudok beszélni
avatar #13
Válasz DetoxinGabbana #8. hozzászólására
hát te egy vadállat vagy zokni:D
++++
kurvajóvagy:D:D:D köszönjuk!:D
nemhiszem el h van aki fárad csak azért h kényelmesebb legyen nekünk hát TY mindent:D
FUCK GOOGLE ASK ME!
avatar #12
ZokNy- 2010. július 11. 444 hozzászólás 827.
Válasz Siiiiix #10. hozzászólására
geci te nagyon ráértél :D De jó
A szöveg megírása kb tovább tartott, míg a program megírása. :)
Hasznos cuccok blogomban és a klánhíreknél. weee
avatar #11
Dzsoo_ 2010. július 11. 730 hozzászólás 490.
Válasz ZokNy- #3. hozzászólására
Jah. Shoutcaston emlegették egy párszor a nevét :)
emlegették? gyarkorlatilag végig azon szakadtak és szurkoltak hogy meglegyen az első :D
avatar #10
Siiiiix 2010. július 11. 624 hozzászólás 572.
geci te nagyon ráértél :D De jó
avatar #9
mortaL 2010. július 11. 2337 hozzászólás 106.
Válasz ZokNy- #7. hozzászólására
Ha elolvasnád rájönnél, amúgy igen :)
elolvastam ;>
GRIBB :: lanpex: erekcióm van így nem tudok beszélni
avatar #8
hát te egy vadállat vagy zokni:D
Yesterday is a history,  tomorrow is a mystery
avatar #7
ZokNy- 2010. július 11. 444 hozzászólás 827.
Válasz mortaL #6. hozzászólására
akkor ez a két oldal 1ütt?:D
Ha elolvasnád rájönnél, amúgy igen :)
Hasznos cuccok blogomban és a klánhíreknél. weee
avatar #6
mortaL 2010. július 11. 2337 hozzászólás 106.
Válasz ZokNy- #5. hozzászólására
Kétlem.
akkor ez a két oldal 1ütt?:D
GRIBB :: lanpex: erekcióm van így nem tudok beszélni
avatar #5
ZokNy- 2010. július 11. 444 hozzászólás 827.
Válasz mortaL #4. hozzászólására
death 19? beleszámolja a bombarobbanást is?
Kétlem.
Hasznos cuccok blogomban és a klánhíreknél. weee
avatar #4
mortaL 2010. július 11. 2337 hozzászólás 106.
death 19? beleszámolja a bombarobbanást is?
GRIBB :: lanpex: erekcióm van így nem tudok beszélni
avatar #3
ZokNy- 2010. július 11. 444 hozzászólás 827.
Válasz Dani. #2. hozzászólására
quick csak 1 embert lőtt? :/
Jah. Shoutcaston emlegették egy párszor a nevét :)
Hasznos cuccok blogomban és a klánhíreknél. weee
avatar #2
Dani. 2010. július 11. 175 hozzászólás 1759.
quick csak 1 embert lőtt? :/
"Ha az életed megváltozik egy eseménysortól,az időt is másként észleled."
avatar #1
olle 2010. július 11. 2131 hozzászólás 121.
köszi :)
Haver, ez az internet dolog egy nagy szar. Komolyan nem vágom. Kibaszott millió kölyök baszakszik itt össze-vissza a billentyűzetével, meg panaszkodnak mindenről. Rinyál, hogy mi megy a tévében, meg ilyen hülyeségek. Seggarcok.