Hirdetés

Valaki végre megoldást talált a GTA Online őrjítően hosszú töltési idejére

|

Úgy tűnik, egy fejlesztő rájött arra, mi áll a problémás jelenség hátterében, így komoly mértékben sikerült lerövidítenie a betöltéseket.

Hirdetés

Az SSD-k elterjedésének köszönhetően manapság már gyakran pillanatok alatt betöltenek a játékok PC-n és a jelenlegi generációs konzolokon is, ami kifejezetten jó dolog, hiszen nem éppen a legizgalmasabb elfoglaltság hosszú percekig a képernyő előtt ülve nézni egy lassan vánszorgó vonalat. Azonban a továbbra is nagy népszerűségnek örvendő Grand Theft Auto Online még mindig kiakaszthatja a játékosokat a furcsán hosszú töltési idejeivel, de most úgy tűnik, többé-kevésbé lehet orvosolni ezt a problémát.

Egy t0st néven tevékenykedő fejlesztő ugyanis nemrég visszatért a GTA Online-hoz, és meglepve tapasztalta, hogy a töltési idők továbbra is őrjítően lassúak, emiatt pedig úgy döntött, jobban beleássa magát a témába. Ennek eredményeképp kiderült, hogy a játék elindításakor valami alapos terhelés alatt tartja a CPU-t, ráadásul csak egy szálat használ, miközben a tárhelyet és a hálózatot alig használja. A fejlesztő ezt követően még jobban elmerült a dologban, és rábukkant két súlyos hibára. Kalandjairól készített is egy hosszú beszámolót, amit érdemes lehet átböngészni, ha konyítotok valamelyest a programozáshoz.

Hirdetés

Az egyik az, hogy a játék egy, a megvásárolható tárgyakat tartalmazó fájl beolvasása közben minden egyes cucc után újra megszámolja a 10 MB-os fájl összes karakterét. Ez alapvetően nem lenne túl problémás, ám tekintve, hogy több mint 60 ezer tárgyról van szó, bizony feleslegesen rak komoly terhet a processzorra. A másik problémát pedig az okozza, hogy a beolvasás után a játék feljegyzi az adott cucc tulajdonságait és hash-ét is, és akárhányszor elraktároz valamit a listából, ellenőrzi a hash-t, összevetve azt a már beraktározott cuccok hash értékével. Ha t0st jól számolt, akkor összesen közel 2 milliárd ilyen ellenőrzést hajt végre a játék, amikre elvileg azért van szükség, hogy ne legyenek duplikált elemei a fájlnak, de valójában tök felesleges ez az egész művelet, mivel az üres listára kerülő dolgok között alapvetően nincsenek is duplikátumok.

Szerencsére t0st nem csak feltárta a problémát, hanem javarészt orvosolta is azt. Megalkotott ugyanis egy kódot, ami felülírja a játék bizonyos funkcióit, így egy cache-sel sikerült elérnie azt, hogy csak egyszer kelljen kiszámolni a lista hosszúságát, ami sok felesleges munkától kíméli meg a CPU-t. Emellett a megoldása egész egyszerűen csak beilleszti az új cuccokat, így nem szükséges elvégezni a hash értékek ellenőrzését, ami szintén felturbózhatja a töltési időt.

Az eredmény pedig egészen lenyűgöző lett, ugyanis t0st PC-jén, a két fenti megoldással együtt 69,4%-kal kevesebb időt vett igénybe a betöltés, ami egészen elképesztő változás. Remélhetőleg a későbbiekben a Rockstar is észreveszi ezt az egészet, és hivatalosan is lerövidíti a várakozási időket. Ám addig is innen beszerezhetitek a szükséges forráskódot, ha esetleg titeket is kiakasztanak a GTA Online betöltési idejei.

Hirdetés
Hirdetés
0 mp. múlva automatikusan bezár Tovább az oldalra »

Úgy tűnik, AdBlockert használsz, amivel megakadályozod a reklámok megjelenítését. Amennyiben szeretnéd támogatni a munkánkat, kérjük add hozzá az oldalt a kivételek listájához, vagy támogass minket közvetlenül! További információért kattints!

Ne maradj le a legfontosabb hírekről! Engedélyezd az értesítéseket, cserébe elsőként tudod meg, ha bejelentik a Half-Life 3-at! (Nem spamelünk, becsszó!)