Střílečka od Blizzardu už je pár měsíců venku. Zatím jsme se dočkali několika updatů, nového hrdiny, eventu na motivy letošních olympijských her a letošní Gamescom by mohl přinést řadu informací o dalších aktualizacích. Už nyní víme, že se 18. srpna v 18:00 našeho času dočkáme nového animovaného filmečku, který se tentokrát zaměří na Bastiona.
V cestě za „dokonalostí” Overwatche ale stojí několik věcí a jednou takovou je i tick rate serverů. Ten byl (a zatím ve většině případech pořád je) na oficiálních serverech nastavený na 21Hz, během včerejšího dne ale začal Blizzard povolovat třikrát vyšší tick rate, tudíž 63Hz.
Samotná aktualizace serverů chvíli potrvá a počkáme si pár dní, možná týdnů, než se větší tick rate objeví na všech serverech ve všech regionech. Pokud si ale lámete hlavu nad tím, co vůbec tick rate je, tak je to ve zkratce obnovovací frekvence serveru.
To ve zkratce znamená, že pokud je tick rate nízký, může se u vás na obrazovce něco stát (jako například to, že se schováte za zeď), ale server to vlastně ještě nezaznamenal. Tudíž tuhle informaci nerozeslal dalším hráčům, takže ostatní vás mohou pořád ovlivnit střelbou a případně vás třeba i zabít, a to i přesto, že vy už tam z vašeho pohledu „dávno” nejste.
V tak rychlé hře, jakou je Overwatch, to může představovat zásadní problém. Pro porovnání minimální tick rate okolo 60Hz mají i hry jako Battlefield 4 nebo Counter-Strike: Global Offensive.
Zvýšení tick ratu každopádně zatím platí pouze pro PC verze hry. Blizzard zjišťuje, jak to všechno správně přenést na konzole, ale v blízké době to raději neočekávejte. A pokud se bojíte, že vaše internetové připojení nedokáže zvýšený tick rate ustát, tak se nebojte, protože Blizzard zajistil, že pokud na to váš internet prostě nemá, nebude vyšší tickrate využívat. V dalších aktualizacích půjde nastavit i manuální omezení.
@Mr. Lolendo: jen přidám postřeh k času ve hrách obecně, ne jen pro MP, pro ostatní.
Pro GPU se používá obecně známý FPS. Počet snímků který se za sekundu odešle do grafické karty. Pro CPU se používá tzv. UPS (updates per second) , to by mělo být co nejvyšší, aby se zbytečně neodesílali stejné snímky do GPU. Když totiž UPS bude nastavené fixne na 30 a FPS bude nastavené fixně na 60, FRAPS, nebo jinej FPS counter bude sice ukazovat těch 60FPS, ale vám se to tak zdát nebude, protože procesor nebude aktualizovat např. umístění hráče 60 krát za sekundu, ale jen 30 krát. Je to takhle rozdělené proto, aby když vám klesne FPS ze 60 na 20 kvůli nějakým zvláštním efektům, nebo by to počítač moc nezvládal, běžela by vám hra zpomaleně ve slomo. Naopak, když by počítač zvládal víc, bylo by vše zrychlené. Tohle se i v dnešních hrách občas stává (hlavně u špatných portů z konzole) . Mám takovej pocit, že se to stávalo u NFS: RUN (EA tak ospravedlňovala FPS lock na PC) a u Falloutu 4, kde se to stávalo v borderless módu okna. (fallout4 jsem nehrál, jen jsem slyšel, že se to dělo)
Doufám, že jsem to moc nezamotal a jde tomu rozumět
Mr. Lolendo: Děkuji za fundované informace na úrovni .
PS: Na PS4 jsem nezaznamenal tento problém .
Odpověď na komentář uživatele @Mr.Lolendo
Děkuji za poskytnuté informace+objasnění už jsem zase o něco moudřejší . S těmi penězi a časem máte naprostou pravdu v dnešní době vývojáři spěchají a spěchají, aby hra byla co nejrychleji dodělaná až je nedodělaná a taky chcou na tom co nejvíce vydělat samozřejmě. Pamatuji si, když jsem byl ještě menší ( bavíme se o roku tak 2002-2006 přibližně) , tak hry byly dodělané a neměl jsem skoro nikdy s ničím problém, ale v dnešní době jsou většina her zabugované, zaglitchované a někdy i nedodělané. Dobrým příkladem je hra No Man’s Sky, kterou teď hraji. Hra má hrozný PC port a to jsem si myslel, že na PC pojede v pohodě, když na PS4 trpí FPS dropy, protože jsem si myslel, že PS4 port trochu odflákli a nakonec se ukázalo, že odflákli i PC port. Options menu je lež, protože vše potřebné jsem si musel nastavovat v konfiguračním souboru, aby mi hra běžela jakžtakž normálně. Pro standardní uživatele to není moc příjemné se hrabat v souborech hry, aby mu hra běžela normálně. O cenách her se ani bavit nebudu, protože v dnešní době většina vývojářů naslibuje hory doly a ve výsledku je hra většinou průměr až lehký podprůměr.
Peníze a čas.
Odpověď na komentář uživatele
Nedávno jsem se mrknul kolik žere SW: Battlefront
Bylo to jak jsem očekával do 200Kbit/s download/upload
Nevím kde lidi berou představu o tom že potřebují na hry rychlí internet. Je to jen zase další reklamní zblbnutí. Reálné využití v MP her je od 5-45KBajt/s. Co je důležité tedy nadevše je odezva.
Tickrate na serverech funguje obecně následovně. (obecně je myšleno normálně jak by mělo správně)
Server má fixně nastavený tickrate třeba 66Hz (což je běžná hodnota všech source engin her. Ano HL2 má 66Hz. Ano hra z roku 2004 má větší tickrate než většína AAA her)
1) Pokud klient není schopen dodržet tickrate daným serverem tak se ani klient nepřipojí na server.
2) Pokud se připojíš tedy jako klient splníš podmínku tickratu serveru tak tě server pořád může vykopnout.
Je zde totiž nastavený rozsah. Tolerance. Server tak i klient nemusí vždy být schopen dodržet daný tickrate díky zátěží síti apod. Takže dejme tomu 54-66Hz. Pokud server nedodrží tickrate tak se většinou nic neděje pokud server nedělal nějaký osel. Pokud klient nedodrží minimální tickrate tak jej server vykopne.
3) Někdy se dělá v lepších případech s dynamickou toleranci pokud se jedná o MMO. Tedy nejenom je stanoveno 54-66-72 ale server upravuje tickrate podle aktuální zátěži. Jsou zde i tolerované přesahy klienta do určité míry. Tedy dejme tomu klient muže nesplnit rozsah tickratu po určitou dobu. Třeba 500ms.
Napsal jsem to opět hodně zjednodušeně.
Tedy není možné aby na jednom serveru hrály hráči s jiným tickratem.
Proč je v dnešních hrách problém nízkých tickratů když daleko starší hry (dejme tomu od roku 2000) měly daleko vyšší?
Odpověď je jednoduchá a stále se opakující.
Prachy, čas a konzole.
Konzole když má hry dělané na 30FPS s navíc gamepadem který má sám velkou odezvu tak je zbytečné ba i kontraproduktivní dělat vyšší tickrate.
Teď to nejsložitější tedy peníze a čas. Zase zjednodušuji hodně protože to je na několik článků.
A) Devkit. Je nástroj na pc pro tvorbu hry. Jsou to nástroje s enginem. Jinými slovy SDK.
B) Samotný engin. Tedy na jakém princip funguje.
C) Čas hry. Hodiny. Time… Je prakticky základní kámen celé výpočetní techniky. Tedy HW jako CPU, GPU… Tedy Bios a Operační systém… V poslední řadě samotný engin tedy hra.
Vše musí nebo mělo by dodržovat synchronní čas. I zde je samozřejmě tolerance jak u tickratu. Hráči se často potýkají s problémem časování samotných Windows protože Winy nepracují realtime ale s typickou odezvou 15ms. Ta muže být aplikací vynucena až na 0, 5ms. Další věc u GPU je TDR problém. Tedy komunikace mezi GPU a CPU. Pokud není splněn požadavek do určité odezvy tak aplikace zamrzne, spadne apod. Též i nemusí se nic stát pokud je aplikace dobře napsané ale jsou zde limity ovladačů grafiky samozřejmě.
Pointa tohohle mého drmolení má nastínil jeden zásadní vývojářský problém, překážku, rozhodnutí…
Jak bude plynout ve hře čas. Jak jsem nastínil čas je velice důležitý pro to aby vše správně fungovalo a tedy všechny komponenty musí splňovat určitý standart.
1) Čas hry je spjat s FPS. Což je neprimitivnější forma která se nedá dnes moc používat. Hlavně v MP to tak nelze. Či lze ale potom se musí používá tzv. skip-in – přeskakování. Tahle možnost nás ale v tomto případě nezajímá.
2) Čas je nezávislí na FPS.
Což je dnes běžné na PC ale na konzolích díky jednotné platformě a fixních FPS tak se všude muže používat první možnost a taky na PS3 a X360 se hojně používala.
Z čehož potom plyne to jak je nesmírně náročné udělat PC port z takové konzolové verze pro vyšší FPS. Jinak by vám při 60FPS hra jela 2x zrychleně. Tohle je zásadní problém a drtič výkonu všech PC portů z konzol. Prostě je jednoduší udělat hru s fixním časem závislím na FPS.
Která hra jak jede vám neřeknu ale teď si vemte případ druhý že i na konzoly je to tak dělané. Díky tomu že konzole jsou vlastně x86 architektura jak PC tak by konverze na PC měla jen obsahovat úpravu ovládání a práci z paměti RAM a VRAM (na tu se ale z vysoka kašle) . Bohužel zde nastává problém pokud je hra dělaná vyloženě na 30FPS. Hra muže jet při více FPS na PC bez úpravy ale úskalí je tom že každý element ve hře má nastaveno určité FPS. Pokud vše je dělané na 30 FPS a pustíte to na 60 tak máte zaděláno na průseru. Rychle shrnu. Časuje se počasí, stíny, světla, efekty… a hlavně animace a fyziky.
Poslední dvě věci jsou obrovský problém který se musí předělat. Pamatujete si jak zabagovaný byl Battlefield 3? Animace blbly stylem že voják měl čtyřmetrový krk nebo tanky levitovaly. To je přesných důsledek toho.
Proč se to tedy rovnou nedělá na 60Hz nebo prostě s dynamickou frekven
Trochu jsem nepobral ty poslední věty, že pokud můj internet nebude moc zvládat 63Hz, tak ho nebude využívat. V dnešní době už tak pomalý internet skoro ani nikdo nemá, že by nezvládl 63 Hz. Pokud jsem to pochopil dobře, tak pokud někdo na těch 63Hz nemá, tak pojede na těch 21Hz jak je to do teď a ten co na to má, tak pojede na 63Hz ? Já si to nemůžu představit ve hře jak může někdo jet na 21Hz a druhý na 63Hz ? To je trochu nefér se mi zdá, ale možná jsem to jen špatně pochopil. Pokud někdo má nějaké vysvětlení týkající se tohohle, tak budu za něj rád .
Odpověď na komentář uživatele Filip Burík
Myslim, že tomu bylo (/je) naopak. Klient i server měly od začátku tu kapacitu 63Hz, ale na serverech to bylo locknutý na 21Hz (s možností to povolit na 60-63 v Custom Games, což bylo v betě a dělalo to problémy) , zatímco klient to pořád posílal na 63Hz, nehledě na chování serveru. Teď to jen využívá ten potenciál.
Jn hotovej skill base gaming dneska kdy X Ray vision ala Wallhack je ve hrách jako fičura.
Odpověď na komentář uživatele flexo369
Ano, mylis se… Public servery jedou na 64 a profi zapasy se hrajou pouze na 128 tickrateovejch serverech.
Odpověď na komentář uživatele flexo369
60 je kompetetiv na serverech od Valve, 128 je u third party matchmaking služeb a na offline esport lankách.
Odpověď na komentář uživatele Jan Kalný
V overwatch poznám len pár hrdinov ale Junkarta a jeho gule zatial nie
No pokial viem tak CS GO sa hrá len na nejakých +/- 30 Hz a iba profi scéna sa hrá na 60+, ale možno sa mýlim.
Tickrate na ofiko serverech je 60Hz jenom klient ma tickrate nastaveny na 20Hz. .
Odpověď na komentář uživatele Jan Kalný
Nejlepší je stejně Winston, s tím nemusím umět mířit.
Odpověď na komentář uživatele Maestrodk
Jo, Soldierova ultina je aimbot, ultina Widowmaker je wallhack. Play the game they said, it’s about skill they said