Entwickler

Entwickler-Tracker: Warum hat es so viele Fehler gegeben?

Nach dem Patch am Dienstag gab es ungewöhnlich viele Fehler an seltsam unterschiedlichen Stellen des Spiels. Im Forum wurde das ganze erklärt.

Warum hat es so viele Fehler gegeben?

Es gab nach dem regulären Patch am Dienstag zahlreiche Fehler, in verschiedensten Bereichen des Spiels. Selbst falls ihr also auch nur kurz online wart, habt ihr bestimmt den ein oder anderen miterlebt. Das alles obendrein noch, obwohl das Update gar nichts Weltbewegendes mit sich gebracht hat. Nach aufgeregter Fehlersuche gab es dann gestern eine Meldung im englischen Forum, die die Ursachen genauer erklärt

Auch wenn die wilde Mischung an Problemen zunächst keinen Zusammenhang vermuten lässt, haben sie dennoch alle etwas gemeinsam. An irgendeiner Stelle sind die fehlerhaften Systeme alle von der Realzeit abhängig. Manche offensichtlich, wie zeitgesteuerte Meta-Event, andere eher subtil, wie die Pakt-Agenten, die nach einer festgelegten Zeit Position und Angebot ändern. Genaueres erfahrt ihr in der Foren-Meldung, die wir für euch übersetzt haben.

Foren-Meldung (übersetzt)

Hallo zusammen, ich möchte euch einen Blick hinter die Kulissen der ungewöhnlichen Anzahl von Problemen nach dem gestrigen Spiel-Update geben. Ich habe mit einem unserer Senior Software Engineers gesprochen, der mir dabei geholfen hat, die Geschehnisse zu umreißen, also los geht’s!

Im Studio-Update vom Montag sprachen wir über „Projekte, die das Spiel auf lange Sicht gesund erhalten, wie die Überarbeitung großer Teile des alten Codes“. Die Entwicklung eines Spiels, das seit einem Jahrzehnt in Betrieb ist, kann ein Minenfeld sein: Bei solchen Korrekturen besteht die Gefahr, dass Inhalte zerstört werden, die versehentlich von einem Fehler abhängig waren, um zu „funktionieren“. Genau das ist hier passiert, als wir eines dieser alten Codestücke behoben haben.

Wir haben das Problem zwar erkannt und behoben, aber Murphy’s Law wurde nun aufmerksam. Die Auslieferung eines großen Live-Spiels wie GW2 erfordert ein komplexes System für die Verwaltung des Codes und der Inhalte, die veröffentlicht werden. Hinter den Kulissen gibt es mehrere „Kopien“ von vielem, mit dem wir arbeiten: Kopien, an denen herumgebastelt wird, Kopien, die getestet werden, und Kopien, die kurz vor der Veröffentlichung stehen. Das bedeutet, dass eine Korrektur, selbst wenn sie fertig ist, immer noch auf verschiedenen Fließbändern weitergereicht werden muss, um sicherzustellen, dass sie bei Ihnen ankommt. In diesem Fall ist die Korrektur bei einem dieser Förderbänder durch gerutscht.

Was bedeutete das für Sie? In diesem Fall bezog sich der fehlerhafte Teil des Codes auf Inhalte, die von der Echtzeit abhängen, was wir „time spans“ (Zeitspannen) nennen. Als der Fehler auftrat, hatte er schnell Auswirkungen auf viele Inhalte, die auf den ersten Blick nichts miteinander zu tun hatten – Metas und Weltbosse, Gildenmissionen, Raid Buffs, Karmische Konverter und Portalgeräte und vieles mehr -, aber sie alle waren auf die eine oder andere Weise von diesem Code abhängig.

Warum also haben wir die fehlende Korrektur nicht einfach gleich mitgeliefert? Sie war doch genau dort! Nun, das Problem aufzuspüren und eine Lösung zu finden, war ein bisschen wie eine Schnitzeljagd. Wenn ihr alle ein Problem im Live-Spiel meldet, versuchen wir als Erstes, das Problem anhand der uns vorliegenden Informationen zu finden oder nachzustellen, damit wir es uns aus erster Hand ansehen können. Die gestrigen Probleme begannen damit, dass ein Spieler meldete, dass das Meta des Nachtbosses von Grasgrüne Schwelle nicht ausgelöst wurde, also haben wir uns auf die Suche gemacht, um herauszufinden, was mit Grasgrüne Schwelle nicht stimmt. Kurz darauf trafen zwei weitere Berichte über Metas an anderen Orten ein, sodass wir unsere Suche umstellten, um herauszufinden, was mit den Meta-Events nicht stimmt.

In der Zwischenzeit meldeten andere Spieler, dass bestimmte Gizmos kaputt waren, also begannen wir, auch dieses scheinbar nicht damit zusammenhängende Problem zu untersuchen. Dann erfuhren wir, dass alle Pakt-Vorratsnetz-Agenten verschwunden waren. An diesem Punkt begannen wir nach einem Zusammenhang zu suchen, denn es war klar, dass hier etwas Größeres vor sich ging. Wir wussten, dass es wahrscheinlich eine Verbindung gab, aber es gab eine Reihe von Möglichkeiten, die wir untersuchten – einschließlich der time spans. Anhand einer Liste möglicher Verbindungen konnten wir Mitarbeiter aus bestimmten Teams zur Hilfe heranziehen, darunter einen Software-Ingenieur, der in der Lage war, die verschiedenen Probleme bis zu diesem Codestück zurückzuverfolgen, die Verbindung zu bestätigen, den verlorenen Fix zu finden, ihn wieder auf das Fließband zu legen und ihn an unser Release-Management-Team weiterzuleiten, damit ein Hotfix erstellt werden konnte.

Wie konnte es also dazu kommen, dass wir solche schwerwiegenden Probleme vor der Auslieferung des Updates nicht erkannt haben? Wenn es einen Fehler gibt und etwas kaputtgeht, wird nicht proaktiv ein „Hilfe, ich bin kaputt!“-Ruf gesendet, sondern wir finden es, wenn wir diesen spezifischen Inhalt oder dieses Element testen. Wir können natürlich nicht das gesamte Spiel vor jedem Update testen, da es Millionen von Dingen zu testen gibt (jeder Gegenstand, jede Fertigkeit, jeder Gegner, jedes Ereignis, jeder NSC und so weiter), also müssen wir unsere Zeit weise nutzen und gleichzeitig das größtmögliche Netz für Probleme auswerfen. Unsere QA-Teams testen eine breite Palette von Kategorien, einschließlich der neuen Dinge im Build, der Dinge, die in der Vergangenheit nicht funktioniert haben, und der Dinge, die mit den letzten größeren Änderungen an grundlegenden Systemen zusammenhängen, um sicherzustellen, dass sie immer noch richtig funktionieren. In diesem Fall war keines der betroffenen Systeme zuvor auf diese Weise fehlerhaft, und sie gehörten auch nicht zu den Kategorien, die zu überprüfen sind. Das heißt, wenn wir größere Fehler wie diesen ausliefern, ist das eine Gelegenheit, unsere Prozesse auf Löcher zu untersuchen und Wege zur Verbesserung zu finden!

Dies ist natürlich eine vereinfachte Erklärung, aber ich hoffe, dass dieser Einblick in den Arbeitsablauf und die manchmal sehr überraschenden Launen der Spieleentwicklung einen gewissen Einblick gewährt. In der Zwischenzeit arbeiten unsere Teams weiter an den Problemen, die auftauchen, also nochmals vielen Dank, dass ihr uns wissen lasst, wenn etwas nicht richtig funktioniert!

DarxMaster

Darx (since 1989), ist ein Zocker, seit er weiß wie ein Einschaltknopf funktioniert und mit Nightfall rückte das Guild Wars-Franchise in das Zentrum seines digitalen Daseins. Seit 2015 als Redakteur bei GuildNews übernahm er offenbar Anfang 2020 die Leitung der Seite. Verrückte Welt! (in game: DarxMaster.3819)

Ein Kommentar

Schreibe einen Kommentar

Schaltfläche "Zurück zum Anfang"