Grüße Bürger,
In den letzten zehn Wochen, habe ich die Performance-Capture Aufnahmen für Squadron 42 in London geleitet, die nächste Woche wird die letzte Woche der “Hauptteil”-Dreharbeiten sein. Die Squadron 42 Aufnahmen zu leiten war eines der unterhaltsamsten und kreativ belohnensten Dinge, die ich gemacht habe. Hier erwachen zum ersten Mal die Story-Charaktere, geschrieben von David Haddock und William Weisbaum, zum Leben und ich kann einfach fühlen, wie Squadron 42 sein wird. Die Besetzung, die wir für Squadron 42 zusammengestellt haben, wäre auch für einen bedeutenden Film nicht ungeeignet. Wir nutzen das nächste Level der Performance-Capture, welches sowohl Bewegungen, als auch das Gesicht erfasst, was uns erlaubt selbst die feinsten Looks oder Momente aufzunehmen. In jeder Szene, die wir drehen, haben wir zwischen 1 und 3 Kameras auf dem Gesicht eines jeden Schauspielers, sowie 50 Kameras, die ihre Bewegungen aufzeichnen. Diese Technologie kombiniert mit der nächsten Generation von Charakter- und Gesichts-Rigs, welche volle 3D-Scans der Schauspieler in der Welt von Star Citizen / Squadron 42 steuern, erlaubt es uns Emotionen, Nuancen und Feinheiten zu haben, die – wie ich glaube – niemals zuvor in völlig vom Spieler gesteuertem Gameplay gesehen wurden. Ich hoffe, dass das Aufnehmen dieses Grads der Genauigkeit, die Welt und die Geschichte viel intuitiver machen wird, als alles, was ich zuvor gemacht habe, und ich werde die interaktive Erzählkunst genauso voranbringen, wie das Wing Commander über seine Iterationen hinweg tat. Die Story von Squadron 42 wird – wie ich glaube – eine ganz besondere Erfahrung sein. Anstatt einen Film zu schauen, der sich vor dir abspielt, wird es sich anfühlen, als wärst du in einer lebendigen Welt, als würdest du eine Geschichte erleben, die du normalerweise nur auf einer großen Leinwand siehst, doch dies ist DEINE Geschichte, nicht die irgendeines Protagonisten mit dem du dich assoziieren musst! Wenn die Dreharbeiten vorbei sind, werden sie länger gedauert haben als bei Wing Commander 4 (42 Tage), oder sogar als bei dem letzten Spielfilm, den ich produziert habe, Outlander (51 Tage). Man braucht so viel Zeit um echte Leistungen aufzunehmen. Wir drehen etwas so nuanciertes und detailliertes wie einen Film, doch auf eine Art, dass es mit einer vollständig atmenden interaktiven Welt fusioniert, deren Tempo du steuerst. Für mich ist das eines der ersten, besten Resultate von Star Citizen’s Crowdfunding: Die Möglichkeit für das Entwicklerteam unsere Leidenschaften auszuleben, anstatt sich an den Zeitplan, oder die Stichpunkte eines Publishers halten zu müssen. Lasst mich also damit beginnen, mich bei jedem einzelnen Backer zu bedanken, dies zu ermöglichen. Ihr habt mir und dem Team ermöglicht Herausragendes zu schaffen. Ich bin begeistert hier zu sein.
Nun muss ich jedoch mit den Squadron 42 Dreharbeiten aufhören, um etwas anzusprechen, das in jedermanns Gedanken ist. Wir hatten ursprünglich geplant das FPS-Modul, welches wir Star Marine nennen, kurz nach der PAX East im April zu veröffentlichen. Wir demonstrierten ein Build des Moduls auf dem Backer-Event, das ziemlich gut lief. Ihm fehlte noch etwas Feinschliff (besonders bei den Animationen) und es hatte immer noch mehrere technische Hürden, die eine groß angelegte Veröffentlichung verhinderten … doch wir fühlten uns bei der Arbeit zuversichtlich genug um zu sagen, dass es bald für jeden erhältlich wäre. Unglücklicherweise kam es nicht dazu. Seit mehr als zwei Monaten befassen wir uns fortwährend mit technischen und zum Gameplay gehörigen Problemen. Ich weiß, dass es vor allem zwei Fragen gibt, auf die ihr eine Antwort wollt, und ich werde mein bestes geben, mich mit ihnen zu befassen.
Welchen Problemen steht das FPS-Team gegenüber?
Die tl;dr (Ausführliche Erklärung, zu lang um sie zu lesen) ist, dass wir finden, dass das aktuelle Build gefühlt nicht die Standards erreicht, die wir mit Star Citizen erzielen wollen. Es gibt mehrere Probleme, die zusätzliche Zeit erfordern um die erste Iteration des Gameplays zu liefern, das wir euch gerne bieten möchten. Die Herausforderungen beim FPS-Start sind eine Mischung aus technischen Hindernissen und Gameplay-Problemen. Die signifikanteste technische Hürde, der wir heute gegenüberstehen, ist das Netzwerk-Backend. Nach dem Versuch mit dem alten Code zu arbeiten, entschieden wir, dass wir einige veraltete Technologien fallen lassen müssen. Dies bedeutete zu entwickeln, was wir einen Generic Instance Manager (GIM) nennen und sowohl den Matchmaker, als auch (für das größere Projekt) den Spiel-Launcher von Grund auf neu zu schreiben. Diese Bemühungen laufen gut, doch sie alle haben unseren Technikern zusätzliche Zeit gekostet.
Um weiter ins Detail auf der technischen Seite dieser Systeme zu gehen: Eine unserer großen Hürden war – wie gesagt – die Kreation des GIM. Dieses neue System wird verantwortlich sein, für all die Spiel-Server, die Star Citizen formen, und wir erschufen es um weitaus mehr Kontrolle über die internen Zustände und Operationen eines jeden Spiel-Servers zu erlangen, als das vorher möglich war. Der GIM managt nicht nur den Arena Commander und Star Marine, sondern liefert auch ein solides Grundgerüst für instanziierte Mehrspieler-Hangars, genauso wie für instanziierte Universums-Spiel-Server, die das persistente Universum bilden werden. Der GIM belegt und recycelt Spiel-Server auf viel schnellere und zuverlässigere Art als zuvor, und hilft dabei die Spieler schneller in die Action zu bringen und sie mit weniger Zwischenfällen in ihren Spielen zu halten. Die Entwicklung dieses Systems, die nun schon seit einiger Zeit im Gange war, war eine Gruppenleistung von Technikern aus der ganzen Firma. Sobald es integriert ist, wird es nicht nur die Star-Marine-Erfahrung verbessern, sondern auch den ‘Hinter den Kulissen’-Kurs von Star Citizen’s Zukunft aufzeichnen. Wir freuen uns darauf, dies nächste Woche intern in Aktion zu testen!
Der neue GIM ist nicht das einzige System ‘aus eigenem Anbau’, das wir für Star Marine benötigen werden. Die zweite Herausforderung war die Notwendigkeit das Matchmaking-System des Spiels von Grund auf neu zu schreiben, eine völlig andere Herangehensweise an den Prozess zu wählen, die lange Wartezeiten während der Match-Suche eliminiert. Situationen, die üblicherweise in “Match not Found” resultieren, existieren nicht länger und jeder Spieler/jede Gruppe ist eine Zuteilung zu einem Match garantiert, in einer kürzeren Zeit, als sie es zuvor gesehen haben. Der Matchmaker behält nun Freunde zusammen, sodass Spieler in einer öffentlichen Gruppe immer in ein gemeinsames Team gesteckt werde, so wie erwartet. Ich bin glücklich zu melden, dass ab dieser Woche die neue Matchmaking-Software integriert wurde und nun Tests durchläuft.
Der dritte Prozess, der zur Zeit für die Verbesserung von Star Citizen’s Backend-Netzcode , in Entwicklung befindet ist, was wir das “Phönix” dynamische Umgebungs-System nennen. Jedes Mal, wenn das Team eine neue Version von Star Citizen anstößt werden alle Daten, welche die Server benötigen automatisch auf Festplatten bei Google kopiert; dies ist eine Momentaufnahme unserer Spiel-Daten. Diese Festplatten sind in zwei bis drei gedankliche Teile untergliedert: Base Image (das OS, sowie einige andere Dinge), Logs und Server-Daten (Code und Assets). Wenn wir eine Umgebung bauen, legen wir Kopien dieser Festplatten auf jede Virtual Machine (VM), die wir raus bringen. Duplikate dieser Momentaufnahme werden sehr schnell erstellt, etwa 45 Sekunden für 200 Gigabyte Daten. Wir haben einigen Automatisierungs-Code geschrieben, um automatisch Kommandos auf der VM auszuführen, um sie angemessen zu konfigurieren für die Art von Server, zu der sie werden soll (Spiel, Matchmaking, Gruppe, etc.) Während dieses Prozesses wird ein neuer DNS Eintrag an den Server zugewiesen, basierend auf der Version der hoch geladenen Daten. Wenn ein neues Build erstellt wird, und wir es in eine Umgebung verschieben müssen, aktivieren wir ein Kommando, welches automatisch alle VM’s herunterfährt, die duplizierten Festplatten des Base Image und der Server-Daten entfernt (Log-Festplatten werden für die Fehlersuche immer aufbewahrt), und dann die Server neu startet mit den neuen Kopien, basierend auf der neuen Momentaufnahme, und die Umgebung läuft und ist bereit für die neue Version.
Dieser gesamte Prozess braucht etwa 8 Minuten. Wenn wir eine QA-Umgebung möchten, die so erzeugt wurde, und sie erweitern möchten um zum PTU zu werden, senden wir ein Kommando an unsere Provisioning-Ebene und das geht raus zu Google, erbittet mehr VMs, erzeugt mehr Festplattenduplikate, bindet diese Momentaufnahmen ein, führt Chef-Kommandos aus, um es zu konfigurieren, fügt deren DNS-Einträge hinzu und verbindet sie mit existierender Infrastruktur, um genutzt zu werden. In diesem Augenblick haben wir eine PTU-Umgebung. Wir wiederholen diesen Prozess um Produktion zu erzeugen. Jedes Mal, wenn wir eine Umgebung erweitern braucht das etwa 8 bis 10 Minuten, abhängig vom Typ dieser Umgebung und den Konfigurationen, die wir brauchen.
Der Nutzen dieser dynamischen Kreation und der Umgebungs-Erweiterung ist dreifach. Erstens: Alle geänderten Configs, deplatzierte Settings, oder kaputte Prozesse werden vollständig entfernt wenn die VMs durch neue Festplatten-Kopien neu aufgesetzt werden. Alle Konfigurations-Änderungen, die erhalten bleiben müssen, sollten auf der Chef-Ebene gemacht werden. Zweitens: Wir können absolut sicher stellen, dass PTU und Produktion exakt das selbe Umfeld sind, auf dem die QA getestet hat, es wird es da also keine merkwürdigen Unterschiede geben, die wir nicht im QA abfangen konnten, wenn wir live gehen. Der Dritte Vorteil ist schlichtweg Geschwindigkeit. Es ist sehr viel schneller im Lauf Umgebungen dynamisch zu rekreieren, als Daten jedes mal neu zu kopieren. Diese letzten beiden Punkte sind eine ziemlich bedeutende Sache. Wenn uns unsere Erfahrung eines gelehrt hat, dann ist das, dass wir eine konsistente Testumgebung haben sollten, die schnell veröffentlicht werden kann, und dieses neue System ist wirklich schnell. Das ist ein gewaltiger Kraftverstärker für unsere Fähigkeit unsere Testversionen schnell zu iterieren, was bedeutet, dass QA und schließlich unsere Backer in der Lage sind, abwechslungsreichere Tests schneller durchzuführen. Je zielgenauer wir neue Versionen zu unserem QA und unseren Backern bringen können, desto besser können wir schließlich das Spiel machen.
Diese neuen Systeme und Prozesse wurden eingeführt um sehr ernsthafte Beschränkungen, in dem was zuvor kam, zu ersetzen. Wir nehmen uns zusätzliche Zeit, um sie ordentlich zu entwickeln, und um sie richtig hinzubekommen werden wir letztendlich noch mehr für die korrekte Integrierung brauchen (Tests, Bug-Selektierung und so weiter.) Doch wir sehen schon eine großartige Verbesserung: Das neue System ist weitaus verlässlicher und handhabt gleichzeitig mehr Spieler, dank verbessertem Netzwerk-Protokoll und einer optimierten Back-End-Service-Architektur. Kurz gesagt, dies selbst zu machen sorgt heute für ein besseres Spiel und bereitet die Bühne für noch größere Dinge, die da kommen!
Auf der Gameplay-Seite sind wir bestrebt sicherzustellen, dass das Spiel das repräsentiert, was wir uns für die First-Person-Action in der Welt von Star Citizen wünschen. Hier sind die Dinge ein Bisschen weniger technisch und befassen sich mehr mit dem ‘Gefühl’ dieser Erfahrung. Eines der größten Probleme an dieser Front ist, die Optik gut hinzubekommen. Wenn ihr unseren letzten Designpost zum FPS gelesen habt, werdet ihr euch erinnern, dass eine der Methoden, wie wir diese Erfahrung hervorstechen lassen wollen ist, dass wir Animationen nicht ‘vorgaukeln’: Alles was euer Charakter in First-Person macht muss auch korrekt aussehen, wenn es von einem anderen Spieler aus der Third-Person-Perspektive betrachtet wird, ohne ‘vorgetäuschte’ Animationen, die für jede Person unterschiedlich aussehen. Die richtig aussehen zu lassen ist Etwas, dass mehr F&E-Zeit benötigt, als wir erwartet hatten. Das ist eine Herausforderung, der wir uns stellen … doch dies wird sorgfältige Arbeit erfordern. Wir haben das neue Frankfurt-Studio erschlossen, welches mit Crytek-Veteranen besetzt ist, welche die Engine in- und auswendig kennen, und auch einige bedeutende ex-Crytek Leiter aus LA und Austin, um dem Team in Denver dabei zu helfen, dies zu realisieren.
Während wir damit fortfahren diese Herausforderungen zu bewältigen, setzt das FPS-Team, über die anfänglichen Bestimmungen hinaus, die Verbesserung anderer Bereichen fort. Neue Charaktere und Waffen und so weiter, die bereits geplant sind, werden entwickelt, während neu aufgenommene Mocap-Animationen auf einer regulären Basis einfließen … und wieder andere Ressourcen arbeiten an raffinierteren Map-Änderungen. Zum Beispiel haben Künstler zusätzliche Licht- und Detaildurchlässe auf der Map Gold Horizon eingebracht, mit dem schnellen lesen von Silhouetten im Blick, und um jeder Zeit einfacher zu verstehen, wo man sich im Level befindet. Diese Art von Passagen sind nicht so sexy wie ein neues Raumschiff zu bauen, oder eine neue Waffe abzufeuern … doch sie sind essenziell um die Art von Detail und Gameplay zu liefern, die wir von Star Marine erwarten.
Der Arena Commander zum Beispiel, wurde mit etwas “verschifft”, was wir für eine sehr frühe Version des Steuerungssystems hielten, und seitdem haben wir kein Ende in dieser Debatte vernommen! Ob es euch gefällt oder nicht, wir wissen, dass wir mit Star Marine ein Build veröffentlichen müssen, das den Leuten zumindest zeigt, wo wir hin möchten, und nicht einfach nur, was wir tun können bevor eine Frist abläuft.
Was bedeuten die FPS-Probleme für den Status des restlichen Projekts?
Star Citizen’s Entwicklung ist über mehrere verschiedene Module oder Unterprojekte verteilt, die alle gleichzeitig entwickelt werden. In Zahlen ausgedrückt arbeiteten nur 15% des Teams an Star Marine; es war nur darum der Hauptfokus, weil es das nächste öffentliche Release war. Dies bedeutet, dass die Entwicklung anderer Bereiche, wie etwa Squadron 42, Multicrew und das persistente Universum, fortgesetzt wurden, während Probleme mit dem FPS dort die Entwicklung abwürgten (jedoch wurden auch in diesem Fall, die Entwicklung in anderen Bereichen fortgeführt: während Netzwerktechniker sich mit dem Back-End-Code herumschlagen, haben Waffen-Künstler und Level-Designer weiterhin an zukünftigen FPS-Meilensteinen gearbeitet).
Ich möchte nicht sagen, dass es da keine Auswirkungen gibt: das FPS ordentlich zu integrieren wird helfen jeden Teil von Star Citizen voranzubringen, da die Technik helfen wird das Blut und die Sehnen des gesamten Spiels zu formen … doch ich kann nicht oft genug betonen, dass zwei zusätzliche, in Star Marine investierte Monate nicht das gleiche sind, wie zwei Monate Verzögerung von Star Citizen. Das Persistente-Universum-Team in Austin erbaut immer noch brillante Welten, das Schiff-Team in Santa Monica entwickelt großartige Konzepte und integriert existierende Schiffe, in Vorbereitung auf zukünftige Arena Commander Updates … und natürlich arbeitet das Squadron-42-Team in GB mit voller Fahrt voraus an dem Einzelspieler-Abenteuer. Das größte Problem, dem wir gegenüberstanden war, dass all die kürzliche Arena-Commander-Arbeit, inklusive neuer fliegbarer Schiffe, auf dem Star-Marine-Zweig des Spiel-Builds gemacht wurde. Wir erwarteten 1.2 veröffentlicht zu haben und wollten die großartige, neue Technik ausnutzen, die Star Marine’s Integration liefert.
Was als Nächstes?
Für diesen Fall werden wir Nachforschungen anstellen um ein Build zu veröffentlichen, das euch erlaubt einige der Änderungen und Updates zu erfahren, die wir über die letzten Monate an der Code-Basis vorgenommen haben, bei dem Star Marine deaktiviert ist. Dabei gibt es einige Technische Hürden, und das wird nicht über Nacht passieren … doch ich fühle, dass das unglaublich wichtig ist, da wir mit der Öffentlichkeit testen müssen, wir müssen euer Feedback sammeln und – offen gesagt – müssen wir weiterhin beweisen, dass wir daran arbeiten, worüber ihr euch sorgt.
Wann werden wir Star Marine sehen? Heute Abend habe ich keine endgültige Antwort für euch. Was ich euch sage ist, dass wir ganz genau wissen, was wir zu tun haben, und wir sind schon auf gutem Wege dies umzusetzen. Mit der Verteilung zusätzlicher Ressourcen und erhöhtem Cross-Studio-Fokus auf den FPS-Anteil des Spiels sind wir auf unserem Weg … wir sind einfach nur noch nicht ganz angekommen. Ich bin zuversichtlich, dass mit den signifikanten Updates und Änderungen an der Back-End-Architektur, wie oben beschrieben, dass wir ein Erlebnis haben werden, das den Namen Star Citizen verdient; das wird einfach nur ein paar zusätzliche Integrationen und Tests erfordern. Auf der öffentlichen Seite weiß ich, dass es Zeit ist unsere Kommunikation zum Veröffentlichungsprozess von Star Marine zu öffnen: angefangen mit dieser Nachricht sowie in jeder weiteren Woche, werden wir eine hochgradige Statusmeldung zu den Herausforderungen liefern, genau wie wir es für den Arena Commander machten.
Wir beendeten die 2012 Pledge-Kampagne mit ‘Dem Versprechen’, worin ich unsere neuen Unternehmensziele so skizzierte, dass wir offen über unseren Prozess informieren würden. Heute möchte ich uns selbst auf Folgendes umwidmen: Ich kann euch nicht versprechen, dass wir jede interne Deadline einhalten werden, oder dass ihr mit jeder unserer Entscheidungen einverstanden sein werdet. Es wird Herausforderungen geben, die wir mit Mühe überwinden, und wir werden niemals in der Lage sein, sie alle mit Sicherheit vorherzusehen … doch ich kann euch versprechen, dass wir euch auf dem Laufenden halten werden und dass wir nicht aufhören zu arbeiten, bis das Spiel ordentlich erledigt ist. Immerhin sind wir darum überhaupt erst hier. Eure Unterstützung lässt uns das Spiel erschaffen, das wir mehr als alles andere wollen. Dank euch haben wir die Freiheit Dinge so zu machen, wie wir sie möchten, auch wenn dies mehr Zeit und Mühen erfordert. Wir werden euch nicht hängen lassen!
-Chris Roberts
// END TRANSMISSION
QUELLE: RSI
Vielen vielen Dank an Dich CryZ.
Das war viel Arbeit diesmal, und trotzdem sehr schnell.
Aber das Thema dürfte viele Leute interessieren.
Macht weiter so….
Gruß…
Béla…
Vielen Dank XD
+1
für das Engagement, auch solche ‘Mega-Statmenst’ zeitnah zu übersetzen!
Die Verschiebung ist bedauerlich und wird sicherlich nicht die letzte (bezogen auf das Gesamtprojekt) sein.
Hoffe, es zieht sich nicht so lange, dass ernste Unruhe in der Community aufkommt …
Nix*
also ich sehe das ganze gelassen…
es ist halt noch net fertig und inner Alpha, aber für ne Alpha ist das, was wir haben verdammt lauffähig
(nicht so wie bei manch anderen wo es inner release Version schlimmer aussieh)