PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Warum sind Zocker eigentlich so gnädig mit Spiele-Entwicklern?


Zossel
2021-03-01, 22:30:30
https://blog.fefe.de/?ts=9ec23e6e

Es gibt da fähige Leute und trickreiche Lösungen, klar, aber der meiste Code ist Mist, genau wie überall sonst auch. Gerade kam dieser tolle Artikel über GTA Online an mir vorbei. Das Game ist jetzt 6 Jahre alt und lädt auf der Hardware des Autoren 6 Minuten lang. 6 Minuten!! Man stelle sich das mal vor, Firefox würde so lange brauchen! Ich krieg ja schon bei 5 Sekunden Ladezeit Wutpickel!

Dieser Typ hat sich aber nicht nur aufgeregt sondern mal ein paar Reversing-Tools angeworfen. Stellt sich raus: Die Wartezeit kommt davon, dass das Spiel 10 MB JSON parsed. Und zwar mit strlen, scanf und einer "accidentally quadratic" Datenstruktur. Falls euch accidentally quadratic nichts sagt: Googelt das mal. Das heißt, dass bei einem Algorithmus die Rechenzeit quadratisch mit der Anzahl der Elemente steigt.

Das ist leider nicht ungewöhnlich, dass solcher Code ausgeliefert wird, weil das bei kleinen Datenmengen kein Problem ist und man dann später erstmal die Crashes mit Priorität bearbeitet und Performancekram liegen lässt. Im Falle von GTA Online sechs Jahre lang.

Was hat der Typ also gemacht? Einen kleinen Hack, der diese Funktionen ersetzt. Damit war seine Ladezeit dann runter auf knapp 2 Minuten. Der Fix hätte Rockstar (haha, die heißen auch noch Rockstar!! Wie geil ist DAS denn! Und verkacken dann sowas triviales!) vielleicht ne Stunde gekostet. Stattdessen scheißen sie drauf und verplempern Jahrzehnte an Lebenszeit ihrer Kunden.

Warum geht es bei Zockern also immer um die HW und nicht um die SW?

Nightspider
2021-03-01, 22:56:17
Weil die meisten Gamer nicht programmieren können und 99,99% der Spieler nicht in den Code eines Spiels schauen wollen/können?

Die Ladezeiten in GTA5 waren scheiße, ja. Aber das Spiel hat trotzdem Spaß gemacht und ist an vielen Ecken runder als viele anderen Spiele.

Hab RDR2 nicht gespielt. Sind da die Ladezeiten immer noch so?

Da hat EA früher viel größere Verbrechen begangen und Spiele noch kaputt gepatcht bevor der Support eingestellt wurde.

Marscel
2021-03-02, 00:07:21
Glaub mir mal, der Durchschnittsentwickler, der nicht an Software sitzt, an der Leben und Gesundheit korrelierbar hängen, hat schon mit deutlich kleineren Sachen als einem Videospiel so seine Hänger, zumindest ist mir in meiner Karriere kein Projekt bekannt, das nicht auch so eine Ecke hatte. Accidentially quadratic ist vielen leider gar nicht im ersten Moment bewusst. Wie im Post guckt dann vielleicht mal jemand über Code oder schaut sich an, warum Sachen irgendwie verdächtig Zeit schlucken.

Bei Security würde ich die Lage nicht anders einschätzen.

Insofern: Spiele machen in meinen Augen einen vergleichsweise guten Job.

Lyka
2021-03-02, 00:16:16
Wenn ich ein Buch lese, fallen mir immer sporadisch nervige Dinge auf, die ich nicht erkennen würde, wenn ich nicht schreibe. Oder ständig lese. Der normale Leser - also ich auch - überspringt viele Lücken, um eine Geschichte zu erleben, die in sich passend ist. Filme und Videospiele tun das gleiche. Wieso werden Gegenstände aus dem realen Leben in Filmen vergessen - und wirklich keiner, kein Editor, kein Regisseur, niemand ... sieht sie?
Und Videospiele sind deutlich komplexer. Und mit der Komplexität kommt eine gewisse Notwendigkeit herum, schnell Code schreiben zu müssen, der auch oft weder elegant noch schnell sein muss - er muss nur da sein. Und wenn man 2h spart, weil man ein Modul einfügen kann, das jemand anderes vor Jahren programmiert hat: Ja. Da freut sich der Programmierer und seine Chefs.
Und dem Spieler fällts nicht auf.

Gebrechlichkeit
2021-03-02, 02:36:29
Vor 15 Jahren schauten alle noch eine Staffel (ihrer lieblings Serie) wie im TV ueblich einmal pro Woche. Heute muss die ganze Staffel zur Verfuegung bereit stehen, Tag 1! Ready for BingeWatching, wie will man denn sonst den Quark was man vorgeschoben bekommt (fast food), so schnell wie moeglich konsumieren und noch am eigenen Charakter weiter hochleveln?, Familie, Lesen, Filme gucken, Socializing ...

FOMO
Binge Watching :wuerg:
Faulheit, nennt es "Gewohnheit", frueher musste man sich anziehen, in die Videothek fahren ...alles per Fernbedienung heute!
Materialistisch veranlagt "Geiz ist Geil!", alles so billig wie moeglich * Virus = alle verdienen mehr, ergo VIRUS = GUT fuer das "Bizniz". Man will einfach alles haben, fuer umme!
Stockholm Syndrome?


Zum Glueck war Google´s Brille ein kommerzieller Flop. Aber Version 2.0 oder 3.0 wird das schon aendern. Dann laufen ab 2025 jeder zweite mit einer rum ... WEIL FASHION!! LEUTE, geht mit der Zeit! Macht Selfies von eurem kack dasein, egal was, ob neue Toilette oder neue Sportsocken, ladet alles hoch auf Instagram oder Twitter und gebt auf meinem Youtube Kanal einen Like ab!

Vergisst nicht zu kommentieren, wie dufte mein geklauter Content ist, egal ob positiv oder negativ, ist dem algorithmus scheiss egal!! KAUFT MEINE MERCH ALDA!! Schwarzes Hoodie ohne Logo fuer €50! GEBT MIR EUER GELD!! VERDAMMTE SCHEISSE!! HAENDE HOCH!! :freak:

BD5ofrSNDFA

Al Bundy hatte es echt leicht, bis auf Peggie keine "schwerstarbeit" zu vollrichten. :P

Sweepi
2021-03-02, 09:41:22
In dem Fall habe ich allerdings wenig Verständnis.
Seit 6 Jahren ist die Ladezeit katstrophal und kein Dev checkt mal die Loading Zeit? Durch die jeder durch muss, auch die Devs, die selber spielen? Kein Producer / Product manager, der fragt, können wir an der loading Zeit noch was drehen, oder sind wir da am Limit? IN 6 JAHREN KEINER??!
Für alle non-Devs: Diese Problem ist sowohl trivial zu finden als auch trivial drastisch zu verbessern.

Marscel
2021-03-02, 11:59:02
In dem Fall habe ich allerdings wenig Verständnis.
Seit 6 Jahren ist die Ladezeit katstrophal und kein Dev checkt mal die Loading Zeit? Durch die jeder durch muss, auch die Devs, die selber spielen? Kein Producer / Product manager, der fragt, können wir an der loading Zeit noch was drehen, oder sind wir da am Limit? IN 6 JAHREN KEINER??!

Keine Umsatzrelevanz? Ökobilanz aka heillos verschwendete CPU-Zyklen interessieren auch die wenigsten Verantwortlichen in dem Bereich? Aber stell dir vor, das Spiel hätte nicht die richtige Ethno- und Minderheitenquote repräsentiert, das sind die wahren Problem in 2021, die zur Cancel Culture führen, die man fürchten muss.

Und Devs, die selber spielen ... Nehmen wir an, dass dieser Modus wirklich die Heilung wäre: Die Devs haben dann vermutlich den Online-Shop beim Entwickeln abgestellt und arbeiten mit vergleichsweise kleinen Fixture-Daten oder lokalen Setups, da fällt das dann ganz lange in der Pipeline nicht auf.

Matrix316
2021-03-02, 13:53:20
Wie sagte schon Peter Lustig: Einfach mal einen Haltepunkt setzen. Oder so. ;)

Ich mach selbst Webanwendungen, aber ich wüsste auch nicht wie man ein Spiel debuggen sollte, ohne Quellcode. Man kann vielleicht über den Process Monitor von Microsoft sehen, dass zufällig irgendwelche Dateien geparst werden. Aber sonst? Ist ja kein Open Source oder so.

x-force
2021-03-02, 13:55:24
Warum geht es bei Zockern also immer um die HW und nicht um die SW?

die hardware bietet ja alternativen und ist halbwegs transparent.

daher ist es wahrscheinlich wie mit dem junkie und seinem dealer.
man ist abhängig und nimmt was man bekommt.

was dann wirklich drin ist, ist sekundär, hautsache es lenkt vom alltag ab.

Matrix316
2021-03-02, 13:57:13
Spiele sind halt so komplexe Dinger, dass kein Hobbyprogrammierer das in zwei Wochen machen kann wie in den 80ern wo man ein paar Pixel über einen schwarzen Bildschirm geschoben hat.

An der Hardware basteln geht schon eher, aber die CPU oder GPU intern ändern können wir auch nicht.

Exxtreme
2021-03-02, 16:21:11
Das Problem ist eher, würde man Spiele "richtig" machen dann wären sie doppelt so teuer. Oder man müsste das Marketingbudget arg kürzern aber das wollen die Publisher halt nicht. Also gibt es halt so einen Mist. Ich wette, diese langen Ladezeiten waren den Entwicklern bewusst und sie wussten wohl auch wie man das fixt. Aber wenn das Management meint anderes sei wichtiger dann fixt man das nicht.

Und ja, man müsste die Entwicklerstudios abstrafen für sowas. Aber dafür hat kaum ein Zocker die Eier. Also kommen sie mit sowas immer durch.

x-force
2021-03-02, 16:47:52
Das Problem ist eher, würde man Spiele "richtig" machen dann wären sie doppelt so teuer. Oder man müsste das Marketingbudget arg kürzern aber das wollen die Publisher halt nicht.

ein dermaßen optimiertes spiel würde sich wie von selbst vermarkten... entweder läuft es auf einmal auf deutlich älteren/schwächeren rechnern, oder man bietet eine grafik, die kein anderer hat.

Thomas Gräf
2021-03-02, 18:12:29
Kennt jemand noch die Zeit wo es von jedem Spiel ne Demo gab?

Heutzutage wär sowas ja fatal...das geht nich, dies geht nich, jenes wird einfach nicht unterstützt,
Performance wie Eierkuchen usw usw.

Da lob ich mir die Studios die ihr Baby erstmal als Testsoftware rausgeben.
Wenn dran weitergearbeitet wird ist das wenigstens halbwegs ehrlich.

Diese "fire and forget" Software darf man wirklich nicht mehr kaufen.

Meine letzte riesen Entäuschung war "Test Drive Unlimited".
Was für ein tolles Szenario, was für ein tolles Game,
was alles hätte man mit der Community zusammen da noch machen können.
Da war ein riesen Potenzial für ein Klassiker.

Aber nein, Bugs ohne Ende und natürlich kein professioneller Support mehr.
Typische Auftragsarbeit mit typischen Ergebnis.
In unserer Gesellschaft setzt sich halt nur Müll durch.
Sieht man ja auch anderswo...

Lehdro
2021-03-02, 18:55:03
Als ob Demos das Problem lösen würden. Da war selbst damals noch die Performance das geringste Übel, denn das nächste major Hardwareupgrade war ja nur ein paar Monate entfernt...

Schlechte Performance hat man damals mit "Zukunft" erschlagen, sollte einem eigentlich im Gedächtnis geblieben sein? Quasi jeder Shooter bis in die ganz frühen 2000er und dann noch Crysis hinterher haben nach diesem Prinzip operiert. Damals galten 30fps noch als "gut spielbar", heute würdest du direkt einen Rant in einem Hardwareforum absetzen, oh wait.

Marscel
2021-03-02, 19:25:06
Ich mach selbst Webanwendungen, aber ich wüsste auch nicht wie man ein Spiel debuggen sollte, ohne Quellcode. Man kann vielleicht über den Process Monitor von Microsoft sehen, dass zufällig irgendwelche Dateien geparst werden. Aber sonst? Ist ja kein Open Source oder so.

Man braucht geeignete Tools, z. B. x64dbg, cutter, ghidra, IDA, APIMon, dazu oft spezifische Plugins um die Sachen unten vereinfachen zu können. Schematisch dann etwa so:


Je nach dem ein massiver Pain: Kopierschutz und RE-Maßnahmen aushebeln: Kram, mit dem man die o. g. Tools crashen lassen kann, entfernen, Verschlüsselungen und Verifikationen finden und aushebeln. VMs oder Code, der sich sehr kurzfristig zurechtbaut und dann wieder verschwindet, runden den Spaß natürlich ab. Das können dann ein paar hochroutinierte Cracker mit viel Zeit vielleicht wuppen. GTA: O kenn ich jetzt nicht, was das da praktisch heißen würde.
Wenn die Executable gebrochen und entpackt und ist, findet man vielleicht verdächtige Strings (Dateinamen, Settings, ...), auf deren Zugriffe man einen Breakpoint setzt.
Genauso kannst du ABI-Calls auf Standardkomponenten vom OS oder den gängigen Laufzeiten Breakpoints setzen, da deren Adressen bzw. Offsets bekannt sind. So z. B. diese "scanf"s etc aus dem Beispiel, oder Lesepositionen in Dateien, und die Argumente kann man dann im Debugger auf dem Stack oder in den Registern finden.
Und natürlich: x86 Assembler lesen können. Bei kleinen Sachen noch händisch machbar, bei größeren Sachen lieber einen Decompiler nutzen. Da sieht man dann vielleicht keine Variablen mehr, aber den Prozessablauf.
Und wenn man da seine Sachen persistieren will, kann man z. B. eigene DLLs als Proxies dazwischen schieben, oder mit einem Launcher Speicherbereich im Prozess überschreiben, oder selbst die Executable mit Assemblerkenntnissen umschreiben.

Rooter
2021-03-02, 19:38:37
Ich mach selbst Webanwendungen, aber ich wüsste auch nicht wie man ein Spiel debuggen sollte, ohne Quellcode. Man kann vielleicht über den Process Monitor von Microsoft sehen, dass zufällig irgendwelche Dateien geparst werden. Aber sonst? Ist ja kein Open Source oder so.Fefe hat doch auf die Quelle (https://nee.lv/2021/02/28/How-I-cut-GTA-Online-loading-times-by-70/) verlinkt, da ist doch erklärt, wie er es gamacht hat.

MfG
Rooter

Nightspider
2021-03-16, 14:24:18
Rockstar will jetzt ein Patch für GTA5 bringen der die Ladezeit massiv verbessert.

Der Typ der darauf gestoßen ist bekam 10.000 Dollar.

https://www.computerbase.de/2021-03/gta-online-patch-ladezeiten-spieler/

Ex3cut3r
2021-03-16, 15:19:48
@TE
Das solltest du vlt. mal Jay.Gee und die anderen Jubelperser fragen. :biggrin:

Jegliche Kritik in der Vergangenheit von mir bei Ubi Spielen, hat sofort Ihn und seine Lemminge auf dem Schirm gebracht, und ich wurde als nicht genießender Spiele Prolet abgestuft. KA, aber vieler Spieler sehen die Entwickler als eine Art unfehlbare Götter oder sowas an. Anders kann ich mir das auch nicht erklären.

MiamiNice
2021-03-16, 15:34:21
Von seinem Standpunkt aus betrachtet hat Jay auch nicht unbedingt unrecht.

x-force
2021-03-16, 15:36:37
Von seinem Standpunkt aus betrachtet hat Jay auch nicht unbedingt unrecht.

wäre auch ziemlich eigenartig, wenn er gegen sich selbst argumentiert, oder?:freak:

Marscel
2021-03-16, 19:25:04
Jegliche Kritik in der Vergangenheit von mir bei Ubi Spielen, hat sofort Ihn und seine Lemminge auf dem Schirm gebracht, und ich wurde als nicht genießender Spiele Prolet abgestuft.

Bin ich voll bei dir, Ubi-Spiele hatten nach South Park Stick of Truth auch keine Qualität mehr.


:upara:

Monger
2021-03-30, 14:36:22
ein dermaßen optimiertes spiel würde sich wie von selbst vermarkten... entweder läuft es auf einmal auf deutlich älteren/schwächeren rechnern, oder man bietet eine grafik, die kein anderer hat.
Glaube ich nicht. Gibt zahllose Beispiele für technisch grottige Spiele die sich blendend verkauft haben, und etlich technisch exzellente Spiele die Ladenhüter waren.

Spontan fällt mir da die Total War Serie ein. In jedem Teil nahezu nutzlose KI, dicke Performance Löcher, Clipping Probleme, mieses Balancing... Aber halt so konkurrenzlos, dass man vieles vergibt.

Ich denke es liegt
1) eben an mangelndem Konkurrenzdruck. Gab noch keinen AAA Titel der technisch wirklich brilliant war. Zumindest fällt mir keiner auf Anhieb ein.
2) die meisten Spieler nicht das nötige Wissen haben, um etwas als unnormal einschätzen zu können, und es entsprechend klaglos akzeptieren
3) die ganze Branche auf tönernen Füßen gebaut ist. Läuft ja alles auf relativ wenige Apis, Frameworks und Paradigmen hinaus, die im Einsatz sind

Ich hab nie ernsthaft Spiele programmiert, ich mach nur Industriesoftware. Aber wenn ich mal reingeguckt habe, kam mir das kalte Grausen. Hab meine Tooling Landschaft immer für mies gehalten, aber, boah ist das gruselig.

MMn ist aber der Erfolg von Unity 3D eben auch darauf zurückzuführen, dass das Framework gut ist, und es viel leichter (also billiger) ist, damit ordentlichen, wartbaren Code zu schreiben. Gibt in dem Umfeld doch auffällig viele Spiele die einfach flutschen. Aber eben keine AAA Produktionen.

Simon Moon
2021-04-13, 16:12:33
1) eben an mangelndem Konkurrenzdruck. Gab noch keinen AAA Titel der technisch wirklich brilliant war. Zumindest fällt mir keiner auf Anhieb ein.


Wie meinst du das? Technisch kann für mich sowohl Spielmechanik, Grafik als auch Code-Basis heissen (und evtl. sogar noch mehr, das mir jetzt nicht einfällt).



Ich finde ja, die Spielmechanik wird in den letzten Jahren viel zu sehr vernachlässigt. Ich nehme mal die Civ oder Anno Reihe, die wurden beide vor 20 - 30 Jahren geschaffen und hatten damals ihr eigenes Spielprinzip. Es wirkte alles zusammenhängend und es ergab sich eine Spielmechanik die soweit funktionierte. Bis heute sind die Spiele im Prinzip aber immer noch das Gleiche, es wurden nur immer neue Features "angepfropft" um den Eindruck von etwas Neuem zu suggerieren. Dabei bleibt der Sinn für die Spielmechanik aber häufig fragwürdig und es ist einfach ein "Etwas" das man nun eben auch noch tun kann. Bei Civ ist dabei die KI immer noch so dumm wie eh und je und das eigentlich so interessante Feature der Diplomatie beschränkt sich auf ein paar Handelsoptionen.



Aber das liegt wohl auch daran, dass wie du schon sagst, die Frameworks und Paradigmen schon mit den Erstlingen festgelegt wurden und man seit damals eigentlich immer noch am gleichen Spiel rumbastelt und tweakt. :/

x-force
2021-04-13, 17:13:25
Glaube ich nicht. Gibt zahllose Beispiele für technisch grottige Spiele die sich blendend verkauft haben, und etlich technisch exzellente Spiele die Ladenhüter waren.

trotzdem gibt es kein einziges spiel was annähernd so optimiert ist, wie man es theoretisch könnte.

stell dir vor es würde alles in assembler von leuten wie carmack gemacht werden.
ps2 exclusives wie shadow of the colossus gehen z.b. in die richtung.

sehr guter artikel:
https://www.froyok.fr/blog/2012-10-breakdown-shadow-of-the-colossus-pal-ps2/

grob geschätzt könntest du dir damit ca zwei generationen an hardware schenken.
die games könnten in low quality auf intel onboard laufen. das führt dann plötzlich zu einer wesentlich größeren basis an potentiellen käufern.
alternativ zeigst du damit eine grafik auf aktueller hardware, die andere erst wesentlich später erreichen können.

crysis ist nicht ohne grund legendär

Blase
2021-04-13, 18:20:52
Um der Diskussion auch eine andere mögliche Richtung zu geben...

... selbst professionelle Software Produkte - ERP, CRM, DMS, CAD,... und wie sie alle heißen - haben Fehler über Fehler. Je nach Hersteller und Versionssprung mal mehr oder weniger, aber doch konstant und stetig vorhanden. Und wir reden hier von Produkten, die

1. oftmals locker vierstellig Kosten - pro Arbeitsplatz wohlgemerkt
2. schon seit vielen vielen Jahren (oder gar "Jahrzehnten") in der Entwicklung sind und "lediglich" erweitert / verbessert werden von Version zu Version.

Niemand "erwartet" ernsthaft in diesem Bereich ein fehlerfreies Produkt. Nach einem Versionssprung das erste Service Pack (oder zumindest die ersten Updates) auszulassen - weil "Kinderkrankheiten" - gehört zum guten Ton.

Wenn also im "Professionellen Umfeld" bei den Produkten solche Dinge zur Tagesordnung gehören, warum "müssen" dann einzelne Spiele "fehlerfrei" sein?

MfG Blase

ps. ist hier einigermaßen "plakativ", ja. Will wie geschrieben lediglich einen anderen Gedankenansatz einbringen...

x-force
2021-04-13, 18:24:46
Wenn also im "Professionellen Umfeld" bei den Produkten solche Dinge zur Tagesordnung gehören, warum "müssen" dann einzelne Spiele "fehlerfrei" sein?


vollkommen kaputte einstellung und zeugnis von missmanagement

nur weil heute jeder zweite krebs hat/bekommt ist es kein grund damit leben zu wollen :freak: