Moddare kapar laddtider i GTA Online med två tredjedelar

Permalänk
Melding Plague

Moddare kapar laddtider i GTA Online med två tredjedelar

Litauisk GTA-spelare går från laddtider om sex minuter till knappt två – genom att hoppa över inläsning av onödig fil.

Läs hela artikeln här

Visa signatur

Observera att samma trivselregler gäller i kommentarstrådarna som i övriga forumet och att brott mot dessa kan leda till avstängning. Kontakta redaktionen om du vill uppmärksamma fel i artikeln eller framföra andra synpunkter.

Permalänk
Medlem

Tycker att GTA är ovärt att spela just på grund av laddtiderna så det vore ju jättekul om Rockstar ordnade dem.

Visa signatur

I5 9600K | 16GB CORSAIR | AORUS MASTER-CF | 1TB SAMSUNG 970 NVME | CORSAIR 850W | PHANTEKS ENTHOO | msi g241, xtrfy k4, xtrfy m4, xtrfy musmatta, logitech g533.

Permalänk

De borde ge honom en påse pengar och ett stort tack för detta.

Permalänk
Medlem
Skrivet av traetaona:

De borde ge honom en påse pengar och ett stort tack för detta.

Vore fint och få en pengapåse för all tid som man suttit fast i deras långa laddskärm också. 👼

Permalänk
Medlem
Skrivet av traetaona:

De borde ge honom en påse pengar och ett stort tack för detta.

Mer sannolikt att han blir bannad, det är ju trots allt Rockstar.

Visa signatur

7800X3D//4090
MINT XFCE // W11 🤮

Permalänk
Medlem

På tiden

Jag tycks mig minnas att Rockstar lika gärna kunde byta namn på eländet till The Waiting Game när jag började spela 😬

Visa signatur

Been leveling up since 1983

Permalänk
Medlem

Uppdatering efter uppdatering men ändå inte fixat denna relativt enkla grej som en privatperson verkar knåpat ihop lite snabbt. Aj aj aj

Permalänk
Medlem

Vi vet sedan tidigare att många speltillverkare är slarviga eller rent av skiter i det.

Visa signatur

Lightsaber - Black armour - and balls!

Permalänk
Hedersmedlem

Texten i nyheten är väldigt felaktig. Felet var inte att filen läses in om och om igen, och fixen var inte heller att låta bli att läsa in den.

Det var två problem: parsingen beräknar strängens längd (>10 MB) för varje värde den läser in. Därmed anropas strlen() extremt många gånger, och varje gång måste den gå igenom hela strängen och kolla hur lång den är. Längden är ju densamma varje gång, så han gjorde en funktion som cachar längden och bara mäter den en gång istället.

Nästa problem var att de lagrar dessa värden i en hash map, men använder den som en array.
En hash map har konstant lookup-tid, så att läsa in värden i random ordning går (ungefär*) lika snabbt som att läsa igenom hela listan i ordning.
De läser dock igenom HELA listan varje gång de ska hitta ett värde, vilket i runda slängar kräver att man läser halva listans längd varje gång istället, så i detta fall över 30 000 gånger långsammare per lookup.

Hans fix som löser detta problemet var att inte söka igenom listan överhuvudtaget eftersom alla saker i den kommer vara unika, så han lägger bara till dem och är nöjd.

* Optimeringar som att läsa in mer än en sak i taget i CPU:ns cache gör att detta inte är sant i praktiken.

Visa signatur

Asus ROG STRIX B550-F / Ryzen 5800X3D / 48 GB 3200 MHz CL14 / Asus TUF 3080 OC / WD SN850 1 TB, Kingston NV1 2 TB + NAS / Corsair RM650x V3 / Acer XB271HU (1440p165) / LG C1 55"
Mobil: Moto G200

Permalänk
Skrivet av Thomas:

Texten i nyheten är väldigt felaktig. Felet var inte att filen läses in om och om igen, och fixen var inte heller att låta bli att läsa in den.

Det var två problem: parsingen beräknar strängens längd (>10 MB) för varje värde den läser in. Därmed anropas strlen() extremt många gånger, och varje gång måste den gå igenom hela strängen och kolla hur lång den är. Längden är ju densamma varje gång, så han gjorde en funktion som cachar längden och bara mäter den en gång istället.

Nästa problem var att de lagrar dessa värden i en hash map, men använder den som en array.
En hash map har konstant lookup-tid, så att läsa in värden i random ordning går (ungefär*) lika snabbt som att läsa igenom hela listan i ordning.
De läser dock igenom HELA listan varje gång de ska hitta ett värde, vilket i runda slängar kräver att man läser halva listans längd varje gång istället, så i detta fall över 30 000 gånger långsammare per lookup.

Hans fix som löser detta problemet var att inte söka igenom listan överhuvudtaget eftersom alla saker i den kommer vara unika, så han lägger bara till dem och är nöjd.

* Optimeringar som att läsa in mer än en sak i taget i CPU:ns cache gör att detta inte är sant i praktiken.

Amatörmässiga misstag

Visa signatur

Fractal Design Define R5 - SuperNOVA 750 G2 750w - KFA2 GeForce RTX 3080 SG - G.Skill Flare X Black DDR4 3400mhz CL14 - Ryzen 3600 - MSI B450 Tomahawk Max - Samsung 850 Series EVO 500gb - Samsung 970 Evo Plus 1TB - Acer 27" Predator XB271HU

Permalänk
Medlem
Skrivet av kotz:

Vi vet sedan tidigare att många speltillverkare är slarviga eller rent av skiter i det.

Ofta handlar det om pengar, tids och planeringsbrist men du har rätt. Ibland känns det som att utvecklarna fullständigt skiter i hur spelet upplevs från spelarens perspektiv.

Jag slutade spela GTA Online när jag blev less på hacksen. Droppen var en campfire som spawnade runt min gubbe och inte gick gå bort. Googlade problemet och det visade sig detta hack hade funnits i flera år.

Rockstar fokuserar hellre på DLC än att förhindra att spelare hackar sönder deras servrar. Tragist. Spelet är kul.

Visa signatur

Been leveling up since 1983

Permalänk
Medlem
Skrivet av FortuN:

Uppdatering efter uppdatering men ändå inte fixat denna relativt enkla grej som en privatperson verkar knåpat ihop lite snabbt. Aj aj aj

Som jag förstod det från en annan tråd så visas reklam för microtransantions prylar medan du laddar. Är det så så har de antagligen med flit gjort så att det laddar segt.

Visa signatur

Ryzen 5 7600
Rx 6650xt
32Gb

Permalänk
Medlem

Minns när jag fick över spelet på en SSD disk och tänkte nu jävlar ska det laddas!
Nope....

Visa signatur

Baaahh

Permalänk
Medlem
Skrivet av traetaona:

De borde ge honom en påse pengar och ett stort tack för detta.

Kanske killen som gjorde detta kan uppgradera från sin FX-8350

Permalänk
Medlem
Skrivet av jOnÄTÄn:

Som jag förstod det från en annan tråd så visas reklam för microtransantions prylar medan du laddar. Är det så så har de antagligen med flit gjort så att det laddar segt.

Nej, enligt personen som fixade det så har det inte med det att göra.

"What is it? It appears to be data for a “net shop catalog” according to some references. I assume it contains a list of all the possible items and upgrades you can buy in GTA Online.

Clearing up some confusion: I beleive these are in-game money purchasable items, not directly linked with microtransactions."

Edit: Eller du kanske menade att det är segt för att det ska visas under längre tid när jag tänker efter

Visa signatur

FD Torrent | 7800X3D | 32GB RAM | Nvidia 3080 FE | Corsair SF750 | Fostex TH-X00 + Sennheiser HD 650

Permalänk
Medlem

Helt ärligt tycket jag nog spelets alla fuskare är värre än laddtiderna. Men det är en stark andre plats iallafall 😀

Men kommer väl nån annan som hittar på ett bra knep för att lyckas stoppa fuskarna också.

Grynt jobbat! En pengasäck från rockstar tycker jag han är värd!

Visa signatur
Permalänk
Medlem

Detta är anmärkningsvärt, varje programmeringsteam oavsett område kör väl alltid någon slags profiling på sitt arbete för att direkt identifiera flaskhalsar, knappast rocket science och inte så komplicerat.

Permalänk
99:e percentilen

Underbart med stängd källkod, inte sant?

Rockstar borde ge alla som betalat för detta spel varenda krona tillbaka.

Visa signatur

Skrivet med hjälp av Better SweClockers

Permalänk
Medlem
Skrivet av NiQ:

Jag tycks mig minnas att Rockstar lika gärna kunde byta namn på eländet till The Waiting Game när jag började spela 😬

Vi kallar det forever-loading game på discord i vår kanal ^^

Permalänk
Medlem
Skrivet av aliassund:

Detta är anmärkningsvärt, varje programmeringsteam oavsett område kör väl alltid någon slags profiling på sitt arbete för att direkt identifiera flaskhalsar, knappast rocket science och inte så komplicerat.

Om du inte är programmerare själv skulle du nog förvånas hur relativt lite tester som skrivs. Unit och integration tests är vanligare än profilering av vad jag sett/hört.

Man optimerar sällan något eller ens börjar undersöka om det behövs om det inte märks att det behövs i programmrings världen.

Visa signatur

Been leveling up since 1983

Permalänk
Medlem

Låter som Vic-20 tiden med bandstation* , inget jag missar mao
*hade iof diskettstationen men ändå

Permalänk
Medlem
Skrivet av aliassund:

Detta är anmärkningsvärt, varje programmeringsteam oavsett område kör väl alltid någon slags profiling på sitt arbete för att direkt identifiera flaskhalsar, knappast rocket science och inte så komplicerat.

Nä, inne på mitt 6 konsult uppdrag, ingen har gjort det eller ens påtalat det i de projekt jag varit med. Har aldrig haft en dedikerad testare heller, för dyrt. Billigare att låta kunderna testa åt en. 🤑

Permalänk
Medlem

Json har ju redan unika nycklar precis som en hashmap, så hängde inte med på varför de behövde kolla alls om den redan innehöll nycklarna

Permalänk
Medlem

Varför ska Rockstar patcha in en sån fix när dom kan göra den unik till en nyutgåva till PS5 och Xbox Series X 😀

Visa signatur

hellre mer fps på skärmen än pengar på banken

Permalänk
99:e percentilen
Skrivet av NiQ:

Man optimerar sällan något eller ens börjar undersöka om det behövs om det inte märks att det behövs i programmrings världen.

I det här fallet har det ju uppenbarligen märkts tydligare än man någonsin kunde önska i många år. Vill knappt tänka på hur många månader världens GTA-spelare sammanlagt har fått sitta och vänta på att Rockstar bara bränner CPU-cykler för skojs skull.

Skrivet av Xenofonus:

Json har ju redan unika nycklar precis som en hashmap, så hängde inte med på varför de behövde kolla alls om den redan innehöll nycklarna

De behövde ju inte det heller. Men generellt kan ju JSON:en se ut typ så:

[ { "id": 4, "name": "Hammer" }, { "id": 7, "name": "Crowbar" }, … ]

Om man då därifrån ska få fram en hashmap med nycklarna 4, 7 osv är ju iallafall inte JSON-nycklars unikhet en anledning att inte för varje nyckel kolla om den redan finns i hashmapen man håller på att bygga upp.

Visa signatur

Skrivet med hjälp av Better SweClockers

Permalänk
Medlem

Intressant att Rockstar själva inte funnit detta iom att folk har anmärkt och klagat på laddtiderna sedan release. Känns som om en hastig debug nog borde funnit detta ganska fort. Underligt att dom inte märkte det under utvecklingen heller.

Visa signatur

Corsair Obsidian 250D | i5 7600K | Gigabyte Z270N WiFi | Samsung 960 EVO 250GB | Fractal Design Integra M 650W | Corsair Hydro H90 |Kingston 8GB 2133M DDR4 CL14 | Asus GeForce GTX 970 4GB STRIX DC2 OC MAX |

Permalänk
Medlem
Skrivet av hasseb64:

Låter som Vic-20 tiden med bandstation* , inget jag missar mao
*hade iof diskettstationen men ändå

Bandstation ja, hade det till 8-bit Atari. Kommer ihåg när jag skulle ladda in Zaxxon och när spelet nästan var inladdat så vart det error och man fick göra om allt igen. Undrar hur lång tid det skulle ta med ett modert spel 😁

Visa signatur

Coca Cola missbrukare Förbjuden dryck för mig pga diabetes
AMD älskare
Katt älskare

Permalänk
Medlem

Grymt jobbat! Men man ska veta att utvecklare i spelprojekt lever under extrem press, funktioner, prestanda, kompabilitet, buggar men framförallt ska det oftast utvecklas på halva tiden av vad som är rimligt. GTA är troligen någon av de störsa spelen vi har, jag vill inte ens tänka på hur mycket kod och testning som har gått in i projektet. Laddtider är såklart viktiga men det hamnar ganska långt ner på TODO listan när tiden pressas.

Jag är inte häller så säker på att jag skulle rikta min kritik mot utvecklarna, de får genrellt inte 7 år på sig att optimera sina kreationer. Och ska det optimeras så är VAD oftast bestämt av någon annan.

Förövrigt var jag djupt imponerad av deras release av Red Dead som troligen var minst lika stort projekt men som hade väldigt lite problem redan vid release på PS4an. Jag stötte iallafall inte själv på några avgörande problem. Vad jag förstod var det dock inte riktigt lika lyckad på PC releasen dock.

Däremot Cyberpunk 2077 som troligen ligger i liknande fack(storleksmässigt) var mindre bra och är fortfarande inte på top misstänker jag? Där kapade man speltiden REJÄLT!

Jag har spelat igenom GTA ett par gånger och även om laddtiden är lång i början så var det aldrig något problem när man väl kommit igång att spela. Men visst, i online läget kan det säkert bli drygt om man ska börja om ofta.

Visa signatur

CPU : AMD Ryzen 5 5600X Moderkort : ASUS ROG Strix B550-F GAMING Grafikkort :EVGA GeForce GTX 1080 Ti FTW3 iCX Gaming HDMI 3xDP 11GBMinne : Corsair 16GB Chassi :Fractal Design Define 7 Compact Nätdel : Corsair RM750x Skärm #1 : Asus VG349Q Ultrawide Skärm #2 : Acer X34 Ultrawide

Permalänk
Medlem

Jag slutade spela själv för några år sen pga långa laddtider och alla jäkla fuskare och hackers.

Permalänk
Inaktiv

Än idag har jag svårt att förstå hur moddare kan lösa denna typ av problem men företaget inte har en jävla aning vad som är fel.
Eller så har dem vetat men inte brytt sig?