Der (leicht verspätete) Update-Stream im Juni war ein wahres Fest für Technik-Nerds. In einem fast 1,5 Stunden langen Video wurde die Server-Technologie vorgestellt, die eigens für ein riesiges und interaktives MMORPG wie Ashes of Creation entwickelt wurde. Hier gibt's die Zusammenfassung vom Stream!
Das Wichtigste in Kürze
- Im Shop gibt es bald wieder Alpha 2-Zugänge zu kaufen. Jedoch nicht in Form von Vorbestellerpaketen, sondern einzelne Keys.
- Die ersten Alpha 1-Tester werden bald zu NDA-Tests eingeladen.
- Es wurde "Intrepid Net" vorgestellt - die Server-Technologie für Ashes of Creation.
- Diese setzt auf Server Meshing, ein dynamisches Server-Netz und Multi-Threading.
- Im nächsten Stream gibt es eine Vorschau auf den Barden-Archetypen.
Inhaltsverzeichnis
- Neues zur Alpha 2
- Studio-Update
- Intrepid Net - Ashes of Creations Server-Technologie
- 3D-Modelle aus dem Stream
- Q&A - Fragen der Community
- Vollständigen Stream anschauen
Neues zur Alpha 2
Der Großteil des Streams war der Server-Technologie gewidmet, das heiße Thema in der Community ist aber natürlich die zweite Alpha.
- Diese soll weiterhin "mit großer Sicherheit" im 3. Quartal starten, so wie es bereits in Vergangenheit angekündigt wurde. Ein exaktes Datum soll im nächsten Stream, also Ende Juli, veröffentlicht werden. Spannend!
- Dank der Server-Technologie traut sich das Team größere Testgruppen für die A2 zu. Daher werden im Shop bald wieder frische Alpha 2-Zugänge angeboten.
- Zudem werden bald 1.000 ausgewählte Tester aus der Alpha 1 zur Teilnahme an NDA-Tests eingeladen - mehr dazu hier.
- Es ist immer noch geplant, den Character Creator vor dem Release der Alpha 2 zu veröffentlichen.
Studio-Update
- Kürzlich wurde der 9. Meilenstein (= Entwicklungsabschnitt) abgeschlossen, der aus 8.900 Story Points bestand.
- Inzwischen begann die Arbeit am 10. Meilenstein, der sich auf die Behebung von Bugs und Polishing von Effekten und dem UI für die Alpha 2 konzentriert.
- Während dem letzten Quartal ist das Team um 15 % gewachsen.
Intrepid Net - Ashes of Creations Server-Technologie
Ashes of Creation zeichnet sich durch eine riesige Welt mit dementsprechend hohen gleichzeitigen Spielerzahlen aus. Um dem gerecht zu werden, hat das Entwicklungsteam eine eigene Server-Technologie auf die Beine gestellt: Intrepid Net. Dieses besteht aus mehreren Systemen, die im Livestream beleuchtet wurden.
Die Herausforderungen
- Die Spielwelt von AoC ist 1.200 km² groß und soll 10.000 Spielende gleichzeitig beherbergen können.
- Auch große PvP-Schlachten mit mehreren hundert Teilnehmenden müssen flüssig laufen.
- Das ganz soll ohne "Layering" (= mehrere Instanzen des gleichen Gebiets) geschehen.
Server Meshing und Dynamic Gritting
Beim "Server Meshing" wird die Spielwelt in mehrere Server unterteilt, die miteinander kommunizieren können und sich so die Last teilen.
- Die Spielwelt besteht also aus mehreren Sektoren, wobei jeder Sektor ein einzelner Server ist.
- Das Besondere bei Intrepid Net: Es gibt keinen zentralen Server, mit dem sich alle anderen Server austauschen.
- Stattdessen kommunizieren benachbarte Server direkt miteinander.
- Der Vorteil: Sollte ein Server crashen, bleiben die restlichen online.
- Wenn sich viele Spielende in einem Gebiet befinden, kann dies jedoch einen einzelnen Server überlasten.
- Daher ist dieses Netz aus Servern dynamisch ("Server Gritting").
- Bei Bedarf kann ein Sektor in zwei oder mehrere Server unterteilt werden, wodurch die Last wieder reduziert wird - all dies passiert automatisch.
- Server Gritting wird aktuell noch entwickelt, soll aber zur Alpha 2 verfügbar sein.
All dies funktioniert im Hintergrund, im Besten Fall bekommen wir davon also nichts mit. Die Grenzen zwischen zwei Servern sind fließend. Wir können Charaktere auf anderen Servern sehen und mit diesen problemlos interagieren.
Microservices
Jedoch kommunizieren nur direkt benachbarte Server miteinander, was zu neuen Problemen führt: Wie erhält ein Server Infos vom andere Ende der Spielwelt? Durch Microservices!
- Microservices sind eigenständige Dienste, die jedem Server zur Verfügung stehen.
- Sie können sich mit jedem Server verbinden und somit auf die komplette Spielwelt zugreifen
- Es gibt mehrere Microservices, wie "Social Services", wodurch wir die Standorte aller Gruppenmitglieder sehen, oder "Mail Services" für die schriftliche Kommunikation.
Performance-Probleme und wie sie gelöst werden
Trotz Server-Meshing und Dynamic Gritting muss ein einzelner Server immer noch enorm viele Informationen verarbeiten.
Das kleine Server-Einmaleins
Wie funktioniert eigentlich so ein Server? Darum geht's jetzt kurz.
- Jedes physikalische Objekt (z. B. ein Charakter, Reittier oder Holzkiste) in der Spielwelt ist ein "Actor".
- Führt ein Actor eine Aktion aus (z. B. im Wasser schwimmen), wird dies zum Spielserver "repliziert".
- Der Server überprüft einerseits, ob die Aktion überhaupt erlaubt ist (man denke an Cheater) und andererseits, für wen die Aktion relevant ist ("Relevancy Checks").
- Anschließend sendet der Server die Information an alle relevanten Clients in der Nähe.
Beispiel: Spieler 1 geht ins Wasser. Diese Aktion wird an den Server repliziert, geprüft und dann an Spieler 2 und 3 weitergeleitet. Dadurch sehen sie bei Spieler 1 eine Schwimm-Animation.
- Das Problem: Jeder Server muss nicht nur extremst viele Actors gleichzeitig replizieren, sondern auch jedesmal Relevancy Checks durchführen. Das dauert und macht den Server langsam.
- Um dem entgegenzuwirken, hat sich das Entwicklungsteam mehere Lösungen einfallen lassen.
"Spatial Grid Bucket"
- Um die Relevancy Checks zu minimieren, wird auf die Spielwelt ein (unsichtbares) Gitter gelegt.
- Die Server-Systeme erkennen unsere Position und führen nur Relevancy Checks für Actors in unmittelbarer Nähe aus.
- Beispiel am Bild: Das Holzfass (grüner Kreis) erhält einen Relevancy Check, wird als wichtig empfunden und dargestellt. Der Bär (roter Kreis) erhält ebenfalls einen Check, ist jedoch zu weit entfernt und daher nicht relevant. Die grauen Zellen werden direkt als unrelevant betrachtet und erhalten dadurch keinen Relevancy check.
- Durch das Spatial Grid wurde der Server um 35 % schneller gemacht.
Multithreading
Jetzt ist der Server zwar schneller, aber immer noch nicht schnell genug.
- In der Unreal Engine werden solche Berechnungen normalerweise Single-Threaded, also auf einem einzigen CPU-Kern ausgeführt.
- Das Entwicklungsteam hat es jedoch geschafft, diesen Prozess Multi-Threaded zu machen, die Arbeit also auf mehrere Kerne zu verteilen.
- Hierdurch wurde der Replikations-Prozess massiv reduziert - insgesamt läuft der Server nun 2.4x schneller!
Kompletter Technik-Showcase im Video
Hier befindet sich ein externes Video von Youtube.
Ich bin damit einverstanden, dass mir externe Inhalte angezeigt werden. Personenbezogene Daten können an Drittplattformen übermittelt werden. Mehr dazu in unserer Datenschutzerklärung.
3D-Modelle aus dem Stream
Nach der ganzen Technik gibt's jetzt etwas Kunst, die im Stream gezeigt wurde.
Klapp mich aus!
Q&A - Fragen der Community
- Server-Warteschlangen | Gibt es Pläne, lange Server-Warteschlangen beim Launch zu reduzieren?
- Während dem Launch, der Server-Primetime oder anderen speziellen Events, können Warteschlangen bis in die Tausende gehen. So soll verhindert werden, dass sich der Server zu weniger aktiven Zeiten leer anfühlt.
- Grenzbereich zwischen zwei Servern | Gibt es mehr Bugs oder andere Probleme im Grenzgebiet zwischen zwei Servern, bzw. beim Wechsel zwischen Servern (innerhalb eines Realms)?
- Interne Tests sollen dies verhindern. Während der Alpha 2 wird das Team darauf ein Auge haben und dementsprechend reagieren.
- Server-Kosten | Sind so viele Server nicht sehr teuer?
- Nach aktuellen Berechnungen nicht. Das Ziel ist es, eigene Server bereitzustellen, mit Backup-Servern in der Cloud, falls ein unerwartet großer Ansturm kommt.
- Node-Commissions | Kann jeder Node-Commissions erfüllen oder sind diese exlusiv für Bürger einer Node?
- Das ist noch offen und wird durch Tests entschieden.
- Aggro-Generierung | Verspottung vs. Heilung vs. verursachter Schaden - generieren alle Aktionen gleich viel Aggro?
- Nein, Aggro wird durch eine Formel berechnet. Aktionen generieren somit unterschiedlich viel Aggro
- PvP-Flagging auf Hoher See | Gibt es auf Hoher See Unterwasser-Dungeons, in denen das PvP-Flagging aktiv ist?
- Solche Dungeons werden aktiviertes PvP-Flagging haben.
- UI-Hilfsmittel | Gibt es Hilfsmittel, um Personen oder Orte für die Gruppe zu markieren?
- Ja. Erste Funktionen werden bereits zum Start der A2 verfügbar sein.
- Respawn-Zeit | Spawnen Mobs schneller nach, wenn sich viele Charaktere in einem Gebiet befinden?
- Ja.
- Charakter-Erstellung | Können wir ein Bild hochladen, um daraus automatisch einen Charakter zu erstellen?
- Nicht zum A2-Release, aber es ist eine interessante Idee, die ausprobiert wird.
- Underrealm | Gibt es Unterwasser-Content im Underrealm?
- Ja.
- Berufe und Loot | Beeinflussen die gewählten Berufe (z. B. Schmied) die von Drops erhaltenen Rezepte?
- Nein. Drops sind für alle gleich. Unbrauchbare Rezepte können gehandelt werden.
Vollständigen Stream anschauen
Hier befindet sich ein externes Video von Youtube.
Ich bin damit einverstanden, dass mir externe Inhalte angezeigt werden. Personenbezogene Daten können an Drittplattformen übermittelt werden. Mehr dazu in unserer Datenschutzerklärung.
Kommentare (0)
Melde dich an, um zu kommentieren.
Neueste
Älteste
Beliebteste
Aktuelle Artikel
Vor 2 Tagen
31. Aug. 2024, 10:29
19. Aug. 2024, 21:47
Das steht an