Dobrodošli, Gost. Molim vas prijavite se ili se registrujte. Da niste izgubili svoj aktivacioni mejl?

Autor Tema: Lag, ping, gutanje...  (Pročitano 19170 puta)

zaludan

  • Čiter
  • *****
  • Poruke: 1,221
Lag, ping, gutanje...
« poslato: Decembar 13, 2014, 06:52:41 posle podne »
Veoma je česta pojava da se igrači na serveru žale na lag, rejtove, gutanje i sl, a da u stvari ni ne znaju o čemu tačno pričaju.
Ja ću pokušati da objasnim kako šta funkcioniše, i na šta možemo da utičemo, a na šta ne.
Tekst koji sledi nije nikakva “moja pamet”, već je dobrim delom copy/paste sa interneta – nešto bezobrazno direktno kopirao, nešto malo izmenio, a nešto preveo sa engleskog. Sve što ovde možete pročitati, možete naći i na million drugih mesta na internetu, a ja sam samo pokušao da što razumljivije složim sve na jednom mestu.
Pa da krenemo...
Let it be.

zaludan

  • Čiter
  • *****
  • Poruke: 1,221
Odg: Lag, ping, gutanje...
« Odgovor #1 poslato: Decembar 13, 2014, 06:53:09 posle podne »
Server side vs client side

Kod svih on-line igara, pa tako i u Counter strike-u postoji nešto što se zove Server side i client side, odnosno, nije isto ono što igrač vidi na ekranu, i ono što server registruje kao “konačan ishod”.
Server side je “glavna strana” jer samo informacije koje server prihvati kao konačne se u igri uzimaju u obzir. Ono što igrač vidi na ekranu, ne mora biti i ono što je server prihvatio kao informaciju – svima vam se desilo da pucate nekom u glavu i promašite, ili da vam nišan nije ni blizu nečije glave, a pogodite.
Sve je to potpuno normalno prilikom igranja preko interneta, i mnogo faktora utiče na to – ping, lag, ex_interp podešavanje...
Let it be.

zaludan

  • Čiter
  • *****
  • Poruke: 1,221
Odg: Lag, ping, gutanje...
« Odgovor #2 poslato: Decembar 13, 2014, 06:54:42 posle podne »
Nekoliko izraza koji će se javljati dalje u tekstu:

Paket - informacije od i ka serveru putuju u paketima, npr. pozicije igrača, tekstualne poruke, zvukovi itd. i više tih informacija može da uđe u jedan paket
FPS - frames per second – broj slika u sekundi koji vaš računar prikazuje
Latency - u milisekundama, zbir pinga i vremena potrebnog da server obradi paket, vrednost sa scoreboard-a (kad u igri stisnete tab)
Command rate - brzina (učestalost) slanja paketa ka serveru
Update rate - brzina (učestalost) primanja paketa od servera
Interpolation - interpolacija, procenjivanje pozicije i položaja igrača u vremenu izmedju dva paketa pristigla od servera
Extrapolation - ekstrapolacija, predvidjanje pozicije i položaja igrača na osnovu prethodnih paketa
Lag - ukoliko je prevelika vremenska razlika u slanju uzastopnih paketa na server ili primanju uzastopnih paketa sa servera javlja se lag
Loss - gubitak paketa na putu
Choke - zagušenje pri prenosu paketa od servera ka klijentu, paket zastareva
Let it be.

zaludan

  • Čiter
  • *****
  • Poruke: 1,221
Odg: Lag, ping, gutanje...
« Odgovor #3 poslato: Decembar 13, 2014, 06:56:04 posle podne »
Lag

Lag je zastoj u komunikaciji između servera i igrača, odnosno, javlja se veliki vremenski razmak između dva poslata ili primljena paketa. To se igračima manifestuje tako što se slika na ekranu ne prikazuje "tečno" već secka – što je veći lag, više secka.
Lag može da nastane iz više razloga – veliki ping, loša podešavanja igrača, loša podešavanja servera.
Igrači često ne prave razliku, i kad im slika ne ekranu secka, odmah kažu "lag", a po mom iskustvu, u barem jednakom broju slučajeva je krivac loš fps.
Vrlo ilustrativan primer – na našem serveru ima dosta mapa koje se ne igraju na drugim serverima, a koje su dosta zahtevne za računare, pa često igračima koji nemaju baš jake računare počne da pada fps, javi se seckanje, i oni kažu "laguje mi ova mapa". Mapa ne može da laguje, ama baš nikako. Može da bude zahtevna, pa vaš računar ne može da se izbori sa njom kao sa dd2, pa vam pada fps, ali to nema nikakve veze sa "lagom".
Let it be.

zaludan

  • Čiter
  • *****
  • Poruke: 1,221
Odg: Lag, ping, gutanje...
« Odgovor #4 poslato: Decembar 13, 2014, 06:57:53 posle podne »
Ping

Jedna od najvažnijih stvari u on-line igranju je dobar ping.
Ping je brzina kojom informacija putuje od igrača do servera, i nazad. Što je manji ping, to je manja razlika između server side i client side situacije, odnosno, što je manji ping, to je igraču tačnija slika na ekranu, pa samim tim, za ping važi "što manje to bolje".

Ping nije vezan samo za online igranje – to je uopšteno naziv za brzinu komunikacije na internetu. Takođe, ping nije vezan za brzinu interneta koju provajderi uzimaju kao osnov cene, gde je "što više, to skuplje". U suštini, već početni paket bilo kog provajdera od 1.5 Mb/sec je sasvim dovoljan za igranje CS-a, i povećanje te brzine ne znači bolji ping.

Da probam slikovito da objasnim, uporediću ping sa vodovodom.
Što je prečnik cevi veći, to više vode može da prođe, i što ima manje "zglobova" (razvoda, krivina...), to voda brže ide.
Ako uzmete u obzir jednu kap vode, ona ima neku brzinu između dve tačke, i što je protok vode bolji - manje krivina, zglobova – to jedna kap brže ide.
Ako povećete prečnik cevi, jedna kap će i dalje ići istom brzinom između dve tačke, ali će ukupna količina vode u istom vremenu biti mnogo veća.

Tako je i sa pingom i brzinom interneta – što je put između igrača i servera bolji (prolazi kroz manje čvorišta), to je ping manji, a ako povećate ukupnu brzinu (oni megabajti što plaćate provajderu) ping će i dalje ostaje isti – možete skinuti veću količinu podataka za kraće vreme zbog većeg protoka (prečnika cevi), ali "jedan paket" i dalje putuje istom brzinom.

Dalje, to što imate dobar ping na www.pingtest.net ne znači da ćete i na nekom serveru imati dobar ping. Test se radi prema najbližem serveru koji ga podržava, a ping do servera na kojem igrate u najvećoj meri zavisi kojim putem provajder rutira signal između vas i servera, i tu ne možete ništa da uradite.

Naravno, na ping utiče ako tokom igranja i za druge stvari koristite internet - youtube, fb i sl. Sve što koristi internet, ometa vaš ping prema serveru. Veći protok znači da možete pored igranja za ponešto da koristite internet istovremeno sa igranjem, ali retko ko ima dovoljno brz internet da može nešto da downloaduje ili gleda video na yt dok igra.
« Poslednja izmena: Decembar 13, 2014, 07:00:22 posle podne zaludan »
Let it be.

zaludan

  • Čiter
  • *****
  • Poruke: 1,221
Odg: Lag, ping, gutanje...
« Odgovor #5 poslato: Decembar 13, 2014, 07:01:51 posle podne »
FPS

Fps je broj slika koje vaš računar prikazuje u sekundi.
Ranije ograničenje fps-a je bilo 100, ali od februara 2013 Valve je ukinuo to ograničenje, i na jakim računarima je sada moguće dobiti i 400 fps.
Realno, ako vam je fps konstantno preko 60-70, razliku ćete teško primetiti, ali ako pada ispod ovih vrednosti (makar samo u deliću sekunde), primetićete seckanje.
Što više, to bolje – dešavanja na ekranu su tečnija, i generalno je neuporedivo lakše igrati kad ništa ne secka.
Fps prvo i osnovno zavisi od vašeg računara, odnosno od hardverske konfiguracije, pri čemu je najvažnije da postoji „sklad“, a ne pojedinačno jake komponente.
CS 1.6 je stara igrica, i većina današnjih novih računara može da ga „potera“ bez problema, ali postoje i tu neke cake.
Najveća je u integrisanoj grafičkoj kartici. Ako računar ima integrisanu grafičku karticu, ne postoji način da iz njega „izvučete“ performanse kao sa „eksternom“ grafičkom.
Posebno su „zloglasne“ Intelove integrisane grafičke – sa nekim modelima nije moguće ama baš nikako dobiti dobar fps (maksimalno bude 50-tak, a realno, tokom igre 20-30), a nije mi poznato da postoji ijedan model koji omogućava konstantno visok fps (u dimu, sa upaljenom lampom itd).
Npr. na dva računara imam integrisane grafike. Jedan ima Intelov Core2Duo procesor, drugi AMD-ov V140. Intelov procesor je bukvalno za klasu bolji, međutim, na tom računaru je Intelova integrisana grafička kartica X3100 (jedna od najlošijih za igre), i fps 100 je nemoguće dobiti, a u igri je uglavnom ispod 30, često i ispod 20. Na računaru sa AMD procesorom je, takođe integrisana) Ati HD 4250, i fps je uglavnom oko 50-60, a ispod 40 izuzetno retko pada.

I, da napomenem – kada vam zbog lošeg računara pada fps, on često povlači za sobom i skok pinga, pa time povećava problem.
Let it be.

zaludan

  • Čiter
  • *****
  • Poruke: 1,221
Odg: Lag, ping, gutanje...
« Odgovor #6 poslato: Decembar 13, 2014, 07:02:50 posle podne »
Net_graph

Ako nešto ne radi kako treba, vidi se na net_graphu.
Postoje tri verzije net_grapha, i uključuju se kucanjem komande u konzolu net_graph 1, 2 ili 3
Takođe, postoji i komanda kojom birate gde će vam se nalaziti graph – net_graphpos 1, 2 ili 3

net_graph 3 - najjednostavniji i najmanje se vidi na njemu:



jedino što se razlikuje u odnosu na sledeća 2 je tekstualno ispisivanje broja izgubljenih (1 - loss) i zastarelih (2 - choke) paketa tokom nekog kraćeg vremena

net_graph 1 - po meni najbolji grafik, sve što treba da se vidi, vidi se:



1 - trenutno namešten command rate vašeg CS-a (komanda cl_cmdrate), menjajte vrednost ovom komandom da vidite kako se menja i na net_graph-u
2 - trenutno namešten update rate vašeg CS-a (komanda cl_updaterate), menjajte vrednost ovom komandom da vidite kako se menja i na net_graph-u
3 - trenutni FPS na vašem računaru (maksimalna vrednost je ograničena komandom fps_max na vašem računaru)
4 - nasuprot onome što većina misli, ovo nije ping, a uprošćeno gledano je = latency + 1/trenutni command rate - 1/cl_updaterate
5 - veličina poslednjeg pristiglog paketa u bajtovima
6 - veličina poslednjeg poslatog paketa u bajtovima
7 - trenutni protok sa servera (download) u kilobajtima (ne kilobitima) po sekundi (8 KBps = 64 Kbps)
8 - trenutni protok ka serveru (upload) u kilobajtima po sekundi
9 - linija čije zelene tačke predstavljaju uspešno pristigle pakete... Talasanje ove linije, tj. izmeštanje tačaka gore-dole predstavlja manji lag. Što veće pomeranje veći je lag iako lag ne mora uvek da se vidi na ovoj liniji... Probajte da skidate nešto s neta maksimalnom brzinom i pratite ovu liniju.

...i drugi bitni deo grafika:



1 - razdvajaju gornji region sa paketima i donji region sa frejmovima
2 - predstavlja zapravo ex_interp (detaljnije o ovome, kasnije u tekstu)
3 - predstavlja neki period kada su svi paketi stizali na vreme - plave i ljubičaste tacke predstavljaju interpolirane frejmove
4 - predstavlja neki period kada neki paketi prilično kasne - žute, narandžaste i crvene tačke predstavljaju ekstrapolirane frejmove (u smeru crvene strelice je ekstrapolacija), a plave i ljubičaste i dalje predstavljaju interpolirane frejmove (u smeru žute strelice je interpolacija)

Net_graph 2 smatram previše komplikovanim i za objašnjavanje, a kamoli za korišćenje :)
« Poslednja izmena: Decembar 22, 2014, 12:03:56 pre podne zaludan »
Let it be.

zaludan

  • Čiter
  • *****
  • Poruke: 1,221
Odg: Lag, ping, gutanje...
« Odgovor #7 poslato: Decembar 13, 2014, 07:03:17 posle podne »
Loss

Postoji gubitak paketa od servera (koji se vidi na net graph-u), a postoji i gubitak paketa ka serveru koji net_graph ne prikazuje. Sa današnjim internetom ako iole normalno radi loss se retko dešava, u bilo kom pravcu.  U principu, čak i da se desi, CS ima obezbeđenje u slučaju pravca ka serveru. Bitni paketi se šalju preko tzv. pouzdanog kanala (reliable channel) što znači da se za svaki slučaj šalju više puta (komanda cl_cmdbackup  oređuje koliko) tako da čak i da se neki zagubi, vrlo je mala verovatnoća da njegov backup ne stigne. Ako ni tad ne stigne, tek tad ima logike pričati o stvarnom GUTANJU METAKA.

Probajte da se igrate sa komandom cl_cmdbackup, koja kontroliše broj backup-a bitnih paketa koji se šalju serveru, npr. povećajte je na 10 da vidite kako će blago porasti protok prema serveru na net graph-u, pa vratite na default vrednost, jer nema potrebe da šaljete bespotrebne podatke serveru...


Choke

Choke je zagušenje negde na putanji od servera ka vama. Trebalo bi da dovodi do (nepoželjne) ekstrapolacije.
« Poslednja izmena: Decembar 13, 2014, 07:15:28 posle podne zaludan »
Let it be.

zaludan

  • Čiter
  • *****
  • Poruke: 1,221
Odg: Lag, ping, gutanje...
« Odgovor #8 poslato: Decembar 13, 2014, 07:04:43 posle podne »
Komande za podešavanja:

Fps_max – ograničavanje maksimalnog fps
rate - maksimalna brzina u Bps koja je dozvoljena sa servera ka vašem CS-u
cl_cmdrate - maksimalni command rate, odnosno maksimalno poslatih paketa serveru po sekundi, minimum 10, maksimum 100
cl_updaterate - maksimalni update rate, odnosno maksimalno primljenih paketa po sekundi, minimum 10, maksimum 100
ex_interp - koliko maksimalno (u milisekundama) da klijent CS čeka na sledeći paket od servera pre nego što krene da ekstrapolira

Ove komande su veoma čest izvor neslaganja, rasprava, pa čak i svađa među igračima.
Mnoge informacije kruže kao “apsolutne činjenice”, a neke su zastarele, ili jednostavno nisu tačne.
Let it be.

zaludan

  • Čiter
  • *****
  • Poruke: 1,221
Odg: Lag, ping, gutanje...
« Odgovor #9 poslato: Decembar 13, 2014, 07:05:29 posle podne »
FPS

Nema preterane svrhe pratiti rad neta ako fps previše pada tokom igre, zato što fps obara brzinu pristizanja i slanja paketa... To važi ako FPS nije zakucan na neku vrednost, ako je zakucan na vrednost koju ste zadali sa fps_max može da se prati rad neta preko net_graph-a, uostalom, možete da probate.
Probajte da smanjite fps_max i pratite kako region sa frejmovima usporava svoje kretanje zdesna ulevo.

Pored toga, ukoliko vam, je računar slabije konfiguracije, i nije u stanju da izgura visok fps, probajte da ga ograničite na vrednost ispod koje ne pada. Npr. Ako vam fps varira između 60 i 100, probajte da stavite fps_max 60 – verovatno će vam se dešavanja na ekranu tečnije odvijati.
Let it be.

zaludan

  • Čiter
  • *****
  • Poruke: 1,221
Odg: Lag, ping, gutanje...
« Odgovor #10 poslato: Decembar 13, 2014, 07:06:20 posle podne »
Rate – najčešći izvor sporova kog igrača

Podešavanje rejtova igračima NEMA NIKAKVOG SMISLA, pod uslovom da su sv_minrate i sv_maxrate na server na defaultu, tj. 70000 i 80000.
Podešavanje na serveru je "starije", i šta god igrač postavio, rejtovi će mu biti između serverskih min i max rate.
To što neko stavi kod sebe rate 3, 5 ili 10000 ima uticaja isto koliko ima uticaja kao kad kod sebe promeni gravity, stavi veći speed od serverskog i sl.
Ta priča o rejtovima na serveru je zastarela - dok adsl nije bio rasprostranjen, i dok je isdn bio "keva", na servere su stavljane male vrednosti za minrate, jer igrači sa lošim konekcijama nisu mogli da igraju ni na 10000, a kamoli više, i tada su podešavanja igrača stvarno pravila razliku.
Međutim, već godinama je default (makar na KGB serverima) sv_minrate 70000, i igrač može da stavi šta hoće, i neće imati nikakvog uticaja na igru.
Let it be.

zaludan

  • Čiter
  • *****
  • Poruke: 1,221
Odg: Lag, ping, gutanje...
« Odgovor #11 poslato: Decembar 13, 2014, 07:07:21 posle podne »
Command rate

Cilj je najviši mogući cl_cmdrate. Zašto?
FPS, command rate i update rate su vrlo usko povezani!
Stavite na primer cl_cmdrate 20, to znači da se svakih 1/cl_cmdrate = 50 milisekundi formira jedan vaš paket. To znači da vi trčkarate, puckate, šaljete poruke, a CS taloži vaše podatke dok prodje 50 ms, i tek tad ih upotrebljava za sebe (i to ih upotrebljava sledećih 50 milisekundi) i ujedno pošalje na server.
Ti podaci se koriste na vašem ekranu.
Zapravo CS za svaki frame, tj. sliku na ekranu proceni vašu poziciju i šta radite u tom trenutku, međutim kada je cl_cmdrate 20, a fps zakucan na 100 (svakih 10 milisekundi naidje frejm) to znači da će 5 uzastopnih frejmova koristiti jednu te istu informaciju, tj. vaš CS ce ekstrapolirati vašu sopstvenu poziciju...

U prevodu, džaba ste krecili..
Let it be.

zaludan

  • Čiter
  • *****
  • Poruke: 1,221
Odg: Lag, ping, gutanje...
« Odgovor #12 poslato: Decembar 13, 2014, 07:08:17 posle podne »
Update rate

Update rate treba da bude najveći mogući.
Ne baš. Update rate treba da bude što veći, ali nema potrebe da prelazi koliki update rate podržava i izdržava server, jer server u zavisnosti od jačine, opterećenosti, kvaliteta linka, a i podešavanja postiže da pošalje broj paketa koje svaki igrač traži, a takođe, ispunjavanje update rate-a zavisi i od vaše veze sa serverom, odnosno vašeg interneta.
Ukoliko CS ne dobije paket kad ga očekuje ekstrapoliraće poziciju drugih igrača.
Šta se dešava ako je vama niži update rate nego što server želi da vam pošalje?
Ništa, vaš CS ignoriše taj “višak” paketa kako stižu i koristi samo one koji stižu u njemu odgovarajucim trenucima (što zbog spominjanog server-klijent side odndosa i nije baš dobro).
Smanjujte cl_updaterate i uočite kad prestaje da opada protok od servera ka vama i naći ćete koji je minimalni update rate servera.
Let it be.

zaludan

  • Čiter
  • *****
  • Poruke: 1,221
Odg: Lag, ping, gutanje...
« Odgovor #13 poslato: Decembar 13, 2014, 07:12:18 posle podne »
Ex_interp

Neko “magično” podešavanje za koje mnogi imaju stav kako treba podesiti, ali skoro niko nema objašnjenje.
Pa evo i objašnjenja…

ex_interp komanda određuje koliko će vaš cs da “interpolira”, odnosno, kad će da krene da “ekstrapolira”.

Da se vratimo na server side i client side – ono što vi vidite na ekranu, nije isto kao ono što server “vidi”.
S obzirom na tu razliku, vaš CS radi predviđanja gde se ko nalazi.
Odnosno, na osnovu poslednjeg primljenog paketa i onog pre njega, CS predviđa trenutnu poziciju, jer “zna” da postoji kašnjenje u odnosu na server.
Kad ne bi bilo toga, sve na ekranu bi vam se dešavalo “iseckano”, odnosno, sve bi se pomeralo u skladu sa primljenim paketima. Ovako, vama je slika tečna, ali postoji nesklad između onoga što vi vidite na ekranu, i onog što se u istom trenutku dešava na serveru.

Da probamo slikovito:



Grubo nacrtano i rečeno, neka se igrač kretao po crnom krugu, a ćoškovi crvenog mnogougla nek predstavljaju pristigle pakete. CS na osnovu svaka dva pristigla paketa (uzastopni uglovi) pretpostavlja gde se igrač nalazi izmedju njih (kružna linija). Ako predviđa pravom linijom, to znaci da će u CS-u sem u trenucima kad je paket primljen uvek prikazivati samo gde se igrač otprilike nalazi i prikazivaće vam njegovu kretnju kao crveni mnogougao umesto kruga – “seckavo” a ne “tečno”.

Da bi CS pretpostavljao gde se nalazi igrač potrebno je da ima dva paketa, trenutni i prethodni i između ta dva paketa CS interpolira kretanje. Što je veće vreme interpolacije (ex_interp), CS će pokazivati starije pozicije igrača. CS će na pakete čekati maksimum toliko vremena pre nego što krene da ekstrapolira... Za razliku od interpolacije koja ne pretpostavlja toliko loše gde se igrač nalazi, ekstrapolacija se vrši na osnovu prethodnog paketa (u smislu ako se igrač kretao u nekom pravcu, pa valjda se i dalje kreće). Na kraju kad istekne vreme i za ekstrapolaciju igrač laguje, tj. vidi se na jednoj poziciji, a onda skoči na neku sledeću.

Drastičan primer ekstrapolacije ste najbolje mogli da osetite kad server “zabode” na sekund – vi se krećete u nekom pravcu, onda nešto zabode, i buvalno vas vrati unazad.
Šta se tu u stvari desilo:

Vi se krećete
Prestaju da stižu paketi
Interpolacija radi onoliko koliko vam je podešen ex_interp
Po isteku, kreće ekstrapolacija vašeg CS-a po kojoj vi i dalje idete u istom pravcu
Konačno stigne novi paket (sa informacijom koja je zastarela u odnosu na ekstrapoliranu sliku, ali je informacija sa servera “starija” od one na vašem računaru)
CS vas vraća na poziciju koju server ima zabeleženu kao poslednju.


Da probam ponovo, samo malo manje tehički - u igri se računa samo ono što server zabeleži. Tj. ono što igrač vidi na ekranu nije uvek isto ono što se desilo na serveru - igranje na internetu je po prirodi takvo jer postoji kašnjenje u obradi podataka na serveru u odnosu na ono što igrač vidi kod sebe na ekranu.
Drastičan primer ovoga ste najbolje mogli da osetite kad server “zabode” na sekund – vi se krećete u nekom pravcu, onda nešto zabode, i buvalno vas vrati unazad. Ono što se desilo je da je nakratko bila prekinuta komunikacija između vašeg kompa i servera. Komp je "predviđao" šta će se desiti, a kad je ponovo uspostavljena komunikacija sa serverom, server vas je vratio tamo gde ste na serveru bili prema poslednim primljenim informacijama.
U suštini, to se stalno dešava - stalno postoji malo kašnjenje koje u milisekundama možete da vidite na "scoreboardu" kad stisnete tab.
Ta brojka koja se pokazuje na scoreboardu (pod uslovom da nije instaliran pingfaker) je podatak koliko vremena je potrebno da paket stigne od vašeg kompa do servera, i da bude "obrađen" (nije isto što i ping - ping je samo brzina potrebna da paket stigne do i od servera, bez obrade)
Kad ne bi bilo ex_interp komande, sve kretnje na vašem računaru bi bile iseckane u skladu sa paketima koji pristižu, ali ova komanda dozvoljava da vaš računar na osnovu ranije primljenih paketa predviđa šta će se desiti, i na taj način pravi tečnu sliku koju će pri dobijanju svežih paketa korigovati prema potrebi.
Ex_interp komanda upravlja "predviđanjem" između pristiglih paketa - vaš računar za predviđanje dešavanja uzima sve starije pakete što je veći ex_interp.
U praksi, to znači da, što je veći ex_interp, to je slika na vašem računaru manje precizna od onog što se stvarno na serveru dešava.
Ovde ping (samim tim i latency) igra veliku ulogu - što je manji ping (brže pristižu paketi) to je manji uticaj ex_interpa.

Pa, da probam i malo drugačije - to što vi na ekranu vidite da je neko otišao iza zida, a vi ga ipak pogodili u glavu, ne znači da ste vi zbog ex_interpa pogodili nekog iza ćoška, već da taj neko nije ni bio iza ćoška, ali je vama zbog VAŠEG ex_interpa VAŠ komp to prikazao, a realno, na serveru, on je bio ispred ćoška, i server je to normalno registrovao kao pogodak, jer na serveru ne postoji ex_interp već samo "suva obrada" pristiglih podataka.

Ili drugačije - ne može MOJ hitbox da kasni na serveru zbog MOG ex_interpa, već nečiji drugi hitbox kod mene na ekranu može da bude prikazan na pogrešnom mestu zbog mog ex_interpa.

A na serveru (jedino merodavno mesto) je sve isto bez obzira na pojedinačna podešavanja ex_interpa.

Naravno, to je drastičan, i relativno redak slučaj, ali se manji primeri toga dešavaju stalno.

U svakom slučaju, interpolaciju, a pogotovo ekstrapolaciju treba svesti na minimum.
« Poslednja izmena: Avgust 17, 2016, 09:26:16 posle podne zaludan »
Let it be.

zaludan

  • Čiter
  • *****
  • Poruke: 1,221
Odg: Lag, ping, gutanje...
« Odgovor #14 poslato: Decembar 13, 2014, 07:14:28 posle podne »
Gutanje metaka

Najčešći razlog nervoze igrača za koji većina “optužuje” rejtove igrača (a već sam objasnio da rejtovi nemaju nikakvog uticaja), a neki koji su načuli ponešto o ex_interpu “optužuju” isti, ali ne kod sebe, već kod onog “ko guta”.

Postoje samo dva načina da u potpunosti isključite gutanje.
Prvi je prilično jednostavan – igrajte u LAN-u
Drugi, komplikovaniji, i “malo” skuplji – obezbedite sebi optičku vezu direktno do servera.

Dok god igrate preko interneta sa standardnim konekcijama, gutanja će se uvek pojavljivati. U zavisnosti od podešenosti servera, kvaliteta (jačine) mašine na kojoj je server, vaših podešavanja i kvaliteta vaše veze sa serverom, biće ga manje ili više, ali ne postoji način da se ono potpuno eliminiše.

Kad vam neko “proguta” metak, pre nego krenete da optužujete bilo koga ili bilo šta, uzmite u obzir sledeće situaciju:

Vaš ping 25
Protivnikov ping 25
Krećete se i vi i on
Server je jedini merodavan
Vi kliknete, ta informacija kreće od vašeg miša, i u idealnim uslovima stiže do servera za 25 milisekundi.
Protivnik klikne, i njegov klik u idealnim uslovima stiže do servera za 25 milisekundi
Server prima i obradi tu informaciju, i u idealnim uslovima i vi i protivnik dobijate “povratnu” informaciju.
To je već dovoljno da, ako se baš poklopi, informacija o jednom metku će zakasni, i vi vidite da je protivnik “progutao” metak.

Na to dodajte interpolaciju i ekstrpolaciju koje sliku na vašem računaru prikazuju realno malo drugačiju od stvarne, i imate gutanje.

Jedan lep primer na youtube:

https://www.youtube.com/watch?v=3avJ6ylbflU

Ono što je jako važno je da imate na umu da je u oba slučaja, na serveru (server side) slika ISTA, odnosno, da bi pucanje na isto mesto donelo isti rezultat bez obzira koji ex_interp bi bio – u jednom slučaju, vama bi izgledalo da ste pucali na pravo mesto i pogodili, a u drugom da ste promašili, a server zabeležio kao pogodak. Naravno, isto važi i za promašaje, odnosno “gutanje”.
Let it be.