{"id":24368,"date":"2023-03-07T13:32:19","date_gmt":"2023-03-07T12:32:19","guid":{"rendered":"https:\/\/blog.mi.hdm-stuttgart.de\/?p=24368"},"modified":"2023-08-06T21:36:58","modified_gmt":"2023-08-06T19:36:58","slug":"how-classical-mmo-rpgs-work-starring-final-fantasy-xiv","status":"publish","type":"post","link":"https:\/\/blog.mi.hdm-stuttgart.de\/index.php\/2023\/03\/07\/how-classical-mmo-rpgs-work-starring-final-fantasy-xiv\/","title":{"rendered":"How classical MMO-RPGs work, starring Final Fantasy XIV"},"content":{"rendered":"\n<figure class=\"wp-block-image size-large\"><a href=\"https:\/\/blog.mi.hdm-stuttgart.de\/wp-content\/uploads\/2023\/03\/1-uBGMSA3-scaled.jpg\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"640\" data-attachment-id=\"24372\" data-permalink=\"https:\/\/blog.mi.hdm-stuttgart.de\/index.php\/2023\/03\/07\/how-classical-mmo-rpgs-work-starring-final-fantasy-xiv\/1-ubgmsa3\/\" data-orig-file=\"https:\/\/blog.mi.hdm-stuttgart.de\/wp-content\/uploads\/2023\/03\/1-uBGMSA3-scaled.jpg\" data-orig-size=\"2560,1600\" data-comments-opened=\"1\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}\" data-image-title=\"1 &amp;#8211; uBGMSA3\" data-image-description=\"\" data-image-caption=\"\" data-large-file=\"https:\/\/blog.mi.hdm-stuttgart.de\/wp-content\/uploads\/2023\/03\/1-uBGMSA3-1024x640.jpg\" src=\"https:\/\/blog.mi.hdm-stuttgart.de\/wp-content\/uploads\/2023\/03\/1-uBGMSA3-1024x640.jpg\" alt=\"\" class=\"wp-image-24372\" srcset=\"https:\/\/blog.mi.hdm-stuttgart.de\/wp-content\/uploads\/2023\/03\/1-uBGMSA3-1024x640.jpg 1024w, https:\/\/blog.mi.hdm-stuttgart.de\/wp-content\/uploads\/2023\/03\/1-uBGMSA3-300x187.jpg 300w, https:\/\/blog.mi.hdm-stuttgart.de\/wp-content\/uploads\/2023\/03\/1-uBGMSA3-768x480.jpg 768w, https:\/\/blog.mi.hdm-stuttgart.de\/wp-content\/uploads\/2023\/03\/1-uBGMSA3-1536x960.jpg 1536w, https:\/\/blog.mi.hdm-stuttgart.de\/wp-content\/uploads\/2023\/03\/1-uBGMSA3-2048x1280.jpg 2048w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/a><figcaption class=\"wp-element-caption\">Promotion Material Final Fantasy XIV [2]<\/figcaption><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>Einleitung<\/strong><\/h2>\n\n\n\n<p>MMO-RPGs oder Massiv-Multi-Player-Role-Playing-Games standen schon lange vor Facebook, Twitter und Co. vor der Herausforderung ein System f\u00fcr m\u00f6glicherweise Millionen von Usern zeitgleich zu designen, dass ein Concurrent Gameplay und eine Concurrent Gameworld erm\u00f6glicht.<\/p>\n\n\n\n<p>Doch wie konnten Spiele wie World of Warcraft, Everquest und Guild Wars diese Aufgabe ohne die Hilfe neuartiger Cloud- und Edge-Computing-M\u00f6glichkeiten l\u00f6sen? Und welche Schl\u00fcsse k\u00f6nnen wir daraus ziehen, wenn wir ein System designen m\u00fcssen, auf dem viele User zeitgleich agieren k\u00f6nnen? Muss es immer die Cloud sein? Oder k\u00f6nnen ma\u00dfgeschneiderte Architekturen genauso gut funktionieren?<\/p>\n\n\n\n<p>Hierf\u00fcr schauen wir uns den groben Aufbau klassischer MMO-RPGs an und werden sehen, wie diese funktionieren. Final Fantasy XIV wird uns hierf\u00fcr immer wieder als Beispiel dienen, um die Konzepte zu unterf\u00fcttern.<br>Unter klassischen MMO-RPGs verstehen wir f\u00fcr diesen Blogeintrag \u00fcbrigens Spiele wie:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Final Fantasy XIV<\/li>\n\n\n\n<li>Everquest II<\/li>\n\n\n\n<li>World of Warcraft<\/li>\n\n\n\n<li>Guild Wars 2<\/li>\n\n\n\n<li>Lost Ark<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>MMO-RPG Server-Architecture<\/strong><\/h2>\n\n\n\n<p>Stellen wir uns die Frage, was man f\u00fcr ein MMO-RPG ben\u00f6tigt, was muss es uns als Spieler bieten?<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Eine persistente Welt, in der \u00c4nderungen die wir durchf\u00fchren, beim Ausloggen nicht verloren gehen.<\/li>\n\n\n\n<li>Die M\u00f6glichkeit, zusammen mit anderen Spielern zeitgleich Aktionen in der Spielwelt auszuf\u00fchren und ihre Auswirkungen direkt zu bemerken. Zum Beispiel zusammen gegen den gleichen Feind k\u00e4mpfen und den Schaden der anderen Spieler direkt sehen.<\/li>\n\n\n\n<li>Interaktion mit anderen Spielern zum Beispiel PvP (Player versus Player)<\/li>\n<\/ol>\n\n\n\n<p>Um all dies \u00fcberhaupt kl\u00e4ren zu k\u00f6nnen, schauen wir uns erst mal an, wie eine klassische MMO-RPG Server Architektur aussieht und wie diese arbeitet.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>Components<\/strong><\/h3>\n\n\n\n<p>Ein klassisches MMO-RPG hat eine grobe Serverarchitektur wie folgt:<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><a href=\"https:\/\/blog.mi.hdm-stuttgart.de\/wp-content\/uploads\/2023\/03\/MMO-RPG-Server-Architecture.png\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"675\" data-attachment-id=\"24497\" data-permalink=\"https:\/\/blog.mi.hdm-stuttgart.de\/index.php\/2023\/03\/07\/how-classical-mmo-rpgs-work-starring-final-fantasy-xiv\/mmo-rpg-server-architecture\/\" data-orig-file=\"https:\/\/blog.mi.hdm-stuttgart.de\/wp-content\/uploads\/2023\/03\/MMO-RPG-Server-Architecture.png\" data-orig-size=\"1700,1120\" data-comments-opened=\"1\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}\" data-image-title=\"MMO-RPG-Server-Architecture\" data-image-description=\"\" data-image-caption=\"\" data-large-file=\"https:\/\/blog.mi.hdm-stuttgart.de\/wp-content\/uploads\/2023\/03\/MMO-RPG-Server-Architecture-1024x675.png\" src=\"https:\/\/blog.mi.hdm-stuttgart.de\/wp-content\/uploads\/2023\/03\/MMO-RPG-Server-Architecture-1024x675.png\" alt=\"\" class=\"wp-image-24497\" srcset=\"https:\/\/blog.mi.hdm-stuttgart.de\/wp-content\/uploads\/2023\/03\/MMO-RPG-Server-Architecture-1024x675.png 1024w, https:\/\/blog.mi.hdm-stuttgart.de\/wp-content\/uploads\/2023\/03\/MMO-RPG-Server-Architecture-300x198.png 300w, https:\/\/blog.mi.hdm-stuttgart.de\/wp-content\/uploads\/2023\/03\/MMO-RPG-Server-Architecture-768x506.png 768w, https:\/\/blog.mi.hdm-stuttgart.de\/wp-content\/uploads\/2023\/03\/MMO-RPG-Server-Architecture-1536x1012.png 1536w, https:\/\/blog.mi.hdm-stuttgart.de\/wp-content\/uploads\/2023\/03\/MMO-RPG-Server-Architecture.png 1700w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/a><figcaption class=\"wp-element-caption\"><br>Abbildung 1 MMO-RPG Architecture<\/figcaption><\/figure>\n\n\n\n<h4 class=\"wp-block-heading\"><strong>Login System<\/strong><\/h4>\n\n\n\n<p>Das Login System ist zumeist das erste System mit dem der Spieler in Verbindung tritt, dieses Authentifiziert den Spieler und gibt ihm meist die Auswahl, welchen Charakter er spielen und auf welchen Server er sich verbinden m\u00f6chte.<br>Zus\u00e4tzlich beinhaltet dieses System eine andere wichtige Aufgabe, es dient als Gatekeeper.<br>F\u00fcr den Fall, dass eine gro\u00dfe Menge Spieler zeitgleich auf den gleichen Server m\u00f6chte, kann das Login System erst \u00fcberpr\u00fcfen, ob der Server daf\u00fcr bereit ist. Falls dies nicht der Fall ist oder der Server tats\u00e4chlich vollst\u00e4ndig gef\u00fcllt ist, k\u00f6nnen die Spieler in eine Warteliste gesteckt werden oder ihnen die Verbindung nicht erlaubt werden. Somit kann ein gutartiger DDOS abgewehrt werden.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\"><strong>Gameserver<\/strong><\/h4>\n\n\n\n<p>Das Herzst\u00fcck einer jeden MMO-RPG Architektur ist der Gameserver. Dieser \u00fcbernimmt die Kommunikation mit den Spielern, verarbeitet die Aktionen der Spieler und deren Auswirkungen und h\u00e4lt den Stand der Welt.<\/p>\n\n\n\n<p>Hierbei treffen wir nun auch auf einen der Hauptunterschiede zwischen klassischen ULS\u2019s und einem MMO-RPG.<br>Ein klassisches ULS wie z.B. Twitter ist ein recht standardm\u00e4\u00dfiges Request-Response System auf extremer Gr\u00f6\u00dfe. Ein Tweet wird nur abgerufen, wenn ein User danach fragt. Tweets werden nur verschickt, wenn Users diese erzeugen.<\/p>\n\n\n\n<p>Dagegen ist ein MMO-RPG eine Welt, die dauerhaft simuliert wird. Auch ohne die Anfrage eines Users (Spielers) kann sich die Welt \u00e4ndern und sich weiter bewegen, zum Beispiel ein Monster greift einen Spieler an, auch wenn dieser keine Aktion ausf\u00fchrt.<br>Gleichzeitig muss jede Aktion, die ein Spieler durchf\u00fchrt, evaluiert werden und auf der Welt ausgef\u00fchrt werden. Jeder Spieler erf\u00e4hrt die \u00c4nderungen aller anderen und kann mit der Spielwelt interagieren.<\/p>\n\n\n\n<p>Um dies zu bewerkstelligen, wird der Zustand der Welt im Gameserver simuliert, dieser h\u00e4lt die absolute \u201eWahrheit\u201c \u00fcber die Welt und die mit ihm verbundenen Spieler. Dies wird dadurch realisiert, in dem die Welt auf dem Server im RAM simuliert wird, also \u201egespielt\u201c wird und alle Spieler nur Aktionen und Anfragen an den Server leiten. Regelm\u00e4\u00dfig werden diese Informationen dann an das Persistent-Data Storage System weiter geleitet, um die \u00c4nderungen festzuhalten.<br>Dennoch k\u00f6nnen bei einem Serverabsturz oder Serverfehler Informationen verloren gehen. Dieser Single-Point-of-Failure wird \u00fcber verschiedene Systeme minimiert, bleibt aber bei dieser klassischen Architektur eine st\u00e4ndige Gefahr.<\/p>\n\n\n\n<p>In nahezu jedem der gro\u00dfen MMO-RPGs wird der Zustand der Welt nicht auf einmal auf einer Instanz f\u00fcr alle Spieler gehalten, sondern in Shards aufgeteilt, die sich um eine begrenzte Menge an Spielern k\u00fcmmern. Um Sharding in MMO-RPGs und die Umsetzung in Final Fantasy XIV geht es etwas weiter unten genauer.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\"><strong>Persistent-Data Storage System<\/strong><\/h4>\n\n\n\n<p>Als letzten Teil der Architektur kommt der Persistent-Data Storage. Dieser k\u00fcmmert sich darum, dass die Daten der Server persistent gespeichert werden und auch bei Server-Neustart wieder verf\u00fcgbar sein. Dieses Storage System kann unterschiedlich aufgebaut sein und kann ebenfalls in Shards aufgeteilt sein.<\/p>\n\n\n\n<p>So wird zum Beispiel in Final Fantasy XIV das Charakter Storage System pro Gameserver aufgeteilt, w\u00e4hrend das Charakter-Inventar und andere Inventar-Systeme unabh\u00e4ngig von diesen gespeichert sind.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>Sharding<\/strong><\/h2>\n\n\n\n<p>Eine der wichtigsten Disziplinen in MMO-RPGs ist das Shrading.<\/p>\n\n\n\n<p>Sharding ist n\u00f6tig, um allen Spielern eine fl\u00fcssiges und performantes Erlebnis zu bieten und \u00fcberhaupt die Spielermenge zu verarbeiten.<br>Dieses Sharding wird in MMO-RPGs unterschiedlich gehandhabt. Um die Grundidee des Sharding zu erkl\u00e4ren, sehen wir uns die Umsetzung von Final Fantasy XIV an.<\/p>\n\n\n\n<p>Final Fantasy XIV hat zwei Hauptanteile an Sharding:<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>Hardware Sharding<\/strong><\/h3>\n\n\n\n<figure class=\"wp-block-image size-full\"><a href=\"https:\/\/blog.mi.hdm-stuttgart.de\/wp-content\/uploads\/2023\/03\/ffxiv-server-verteilung-1024x557-1.jpg\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"557\" data-attachment-id=\"24498\" data-permalink=\"https:\/\/blog.mi.hdm-stuttgart.de\/index.php\/2023\/03\/07\/how-classical-mmo-rpgs-work-starring-final-fantasy-xiv\/ffxiv-server-verteilung-1024x557-1\/\" data-orig-file=\"https:\/\/blog.mi.hdm-stuttgart.de\/wp-content\/uploads\/2023\/03\/ffxiv-server-verteilung-1024x557-1.jpg\" data-orig-size=\"1024,557\" data-comments-opened=\"1\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}\" data-image-title=\"ffxiv-server-verteilung-1024&amp;#215;557-1\" data-image-description=\"\" data-image-caption=\"\" data-large-file=\"https:\/\/blog.mi.hdm-stuttgart.de\/wp-content\/uploads\/2023\/03\/ffxiv-server-verteilung-1024x557-1.jpg\" src=\"https:\/\/blog.mi.hdm-stuttgart.de\/wp-content\/uploads\/2023\/03\/ffxiv-server-verteilung-1024x557-1.jpg\" alt=\"\" class=\"wp-image-24498\" srcset=\"https:\/\/blog.mi.hdm-stuttgart.de\/wp-content\/uploads\/2023\/03\/ffxiv-server-verteilung-1024x557-1.jpg 1024w, https:\/\/blog.mi.hdm-stuttgart.de\/wp-content\/uploads\/2023\/03\/ffxiv-server-verteilung-1024x557-1-300x163.jpg 300w, https:\/\/blog.mi.hdm-stuttgart.de\/wp-content\/uploads\/2023\/03\/ffxiv-server-verteilung-1024x557-1-768x418.jpg 768w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/a><figcaption class=\"wp-element-caption\">Abbildung 2 Final Fantasy XIV Hardware Sharding [3]<\/figcaption><\/figure>\n\n\n\n<p>Das Hardware Sharding ist in Abbildung 1 der Gameserver. Dieser ist nicht einfach ein Server f\u00fcr alle Spieler, sondern ist in verschiedene Layer aufgeteilt.<\/p>\n\n\n\n<p>Final Fantasy XIV ist im Hardware Sharding folgend aufgebaut<strong>:<\/strong><\/p>\n\n\n\n<h4 class=\"wp-block-heading\"><strong>Regional Sharding<\/strong><\/h4>\n\n\n\n<p>Final Fantasy XIV hat aktuell vier Data Center diese sind aufgeteilt nach Geografie:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>North America Data Center<\/li>\n\n\n\n<li>European Data Center<\/li>\n\n\n\n<li>Oceanien Data Center<\/li>\n\n\n\n<li>Japanese Data Center<\/li>\n<\/ul>\n\n\n\n<p>Diese Data Center liegen (mittlerweile) in den jeweiligen Gebieten und haben damit die schnellste Verbindung f\u00fcr die jeweilige Region.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>Logical Sharding<\/strong><\/h3>\n\n\n\n<p>Jedes dieser Data Center ist wiederum in mehrere logische Bereiche unterteilt. F\u00fcr das European Data Center sind das die beiden Logical Data Center:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Light<\/li>\n\n\n\n<li>Chaos<\/li>\n<\/ul>\n\n\n\n<p>Diese Logical Data Center besitzen die Aufgabe Spieler-Population aufzuteilen und Kontrolle \u00fcber diese zu erhalten. Ebenfalls kann man davon ausgehen, dass jedes dieser Data-Center eine eigene Strom- und Wasserzufuhr haben, um Ausfallsicherheit zu gew\u00e4hrleisten.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>Gameserver<\/strong><\/h3>\n\n\n\n<p>Diese beiden Logical Data Center sind wiederum in jeweils acht Gameserver unterteilt.<\/p>\n\n\n\n<p>Ein erstellter Charakter wird einem dieser Gameserver zugewiesen. Somit kann die Auslastung der einzelnen Server und deren Population kontrolliert werden. In Final Fantasy XIV kann zum Beispiel die Erstellung neuer Charaktere f\u00fcr einzelne Server gesperrt werden, wenn der Server mit Charakteren geflutet wird.<\/p>\n\n\n\n<p>Diese Server sind in Final Fantasy XIV designt um bis zu 5000 gleichzeitige Verbindungen zu erm\u00f6glichen. Dies wurde den Spielern vor Augen gef\u00fchrt, als im Dezember 2021 mit Endwalker eine neue Erweiterung ver\u00f6ffentlicht wurde. Bei dieser Ver\u00f6ffentlichung gab es einen gro\u00dfen Andrang auf die Server, was zu Loginqueues von bis zu 4400 Spielern pro Server f\u00fchrte und Wartezeiten von bis zu acht Stunden mit sich brachte. [5]<\/p>\n\n\n\n<p>Zus\u00e4tzlich gibt es in Final Fantasy XIV auch noch Instanzsysteme, die unabh\u00e4ngig der Gameserver existieren. Dungeons, die man mit anderen Spielern bestreiten kann, werden auf eigenen Servern geladen und k\u00f6nnen von Spielern aller Gameserver des gleichen Logical Data Centers betreten werden, sodass ein Zusammenspiel zwischen Gameservern m\u00f6glich ist.<\/p>\n\n\n\n<p>Leider gibt es keine exakten Daten \u00fcber die Hardware, die f\u00fcr Final Fantasy XIV verwendet wird, oder wie das Hardware Sharding f\u00fcr Final Fantasy XIV in Detail funktioniert.<br>Allerdings kann davon ausgegangen werden, dass ein Gameserver, entweder ein dedizierter Server Verbund ist, oder zumindest ein dedizierter Hardware Server, um die Spieler darauf zu verbinden.<\/p>\n\n\n\n<p>Um dennoch ein paar Hardware Zahlen zu nennen:<br>In 2009 ver\u00f6ffentlichte Blizzard grobe Zahlen zu der Hardware, auf der World of Warcraft zu dieser Zeit lief. [2]<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>13250 Server Blades<\/li>\n\n\n\n<li>75000 CPU Cores<\/li>\n\n\n\n<li>112.5 Terabyte Blade Ram<\/li>\n<\/ul>\n\n\n\n<p>Man kann davon ausgehen, dass diese Zahlen sich bei Blizzard mittlerweile vervielfacht haben. Allerdings ist es gut m\u00f6glich, dass wir bei Final Fantasy XIV von ungef\u00e4hr diesen, beziehungsweise leicht h\u00f6heren Spezifikationen ausgehen k\u00f6nnen, da Final Fantasy XIV dennoch eine geringere Spielerzahl als World of Warcraft besitzt.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>Software Sharding \/ Instances<\/strong><\/h3>\n\n\n\n<p>Nachdem wir nun auf einem Gameserver sind, wird das Spiel weiter aufgeteilt. Diese Shards ergeben sich meist aus dem Logischen Aufbau der Welt. Final Fantasy XIV, World of Warcraft und auch Guild Wars 2 teilen die Spielwelt in unterschiedliche Gebiete auf, jedes dieser Gebiete ist dann eine eigene Instanz die eine gewisse Menge an Spielern halten kann.<\/p>\n\n\n\n<p>Diese Gebiete sind sowohl logisch-geografisch, so wie spiel-mechanisch voneinander getrennt. Der Gebiets\u00fcbergang ist an festen Punkten vorgegeben und ist mit einem Shard\u00fcbergang gekoppelt. Der Spieler bekommt w\u00e4hrenddessen einen Ladebildschirm angezeigt.<\/p>\n\n\n\n<p>Diese Instanzen der Spielwelt k\u00f6nnen auch unterschiedlich priorisiert werden, so ist zum Beispiel der Bereich Limsa Lominsa in Final Fantasy XIV ein Treffpunkt f\u00fcr viele Spieler und immer stark bev\u00f6lkert. Diese Instanz hat mehr Ressourcen und kann mehr Spieler gleichzeitig halten als andere Shards des Spiels. Ebenso sind die Gebiete der jeweils neuen Erweiterung mit mehr Ressourcen ausgestattet, um die Spieler zu bedienen.<\/p>\n\n\n\n<p>Diese Priorisierung k\u00f6nnte theoretisch auch dynamisch vorgenommen werden, allerdings nutzt Final Fantasy XIV diese M\u00f6glichkeit nicht. <br>Guild Wars 2 wiederum teilt die Spielwelt auch in verschiedene Gebietsshards auf, allerdings gibt es dort von jedem Gebiet wiederum auch mehrere Instanzen, diese werden dynamisch auf- und ab-gebaut, je nach ben\u00f6tigter Verf\u00fcgbarkeit des Gebiets. Wenn sich eine der Instanzen langsam leert, werden die Spieler gebeten in eine belebtere Instanz des Gebietes zu wechseln, um den Abbau der Instanz zu beschleunigen und somit Ressourcen zu sparen.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>Final Fantasy XIV Server Anecdote<\/strong><\/h2>\n\n\n\n<p>Eines der Probleme, mit denen Final Fantasy XIV A Realm Reborn launchte, war der Standort des European Dat Centers. Das European Data Center befand sich nicht wie zu erwarten in Europa, sondern wurde in den USA gehostet. Dies f\u00fchrte dazu, dass europ\u00e4ische Spieler sehr hohen Latenzzeiten ausgesetzt waren. Dies gipfelte darin, dass einer der Boss-K\u00e4mpfe des Spiels \u201eTitan Extrem\u201c f\u00fcr europ\u00e4ische Spieler fast unm\u00f6glich abzuschlie\u00dfen war und nur mit viel Gl\u00fcck beendet werden konnte.<br>Erst im Oktober 2015 wurde das European Data Center auch tats\u00e4chlich nach Europa verlegt und verbesserte so das Spielerlebnis f\u00fcr die europ\u00e4ischen Spieler. [4]<\/p>\n\n\n\n<p>Daraus lernen wir: In MMO-RPGs mit zeitkritischem Gameplay sollten die Data Center und Server so nah wie m\u00f6glich an den Spielern liegen, um ein gutes Spielerlebnis zu bieten. Ebenfalls sollten Namen wie European Data Center auch tats\u00e4chlich eine Bedeutung f\u00fcr die geografische Lage des Data Centers haben.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>Fazit und Ausblick<\/strong><\/h2>\n\n\n\n<p>Auch wenn klassische MMO-RPGs schon \u00e4lter sind und Spiele wie New World auf Cloud-Systeme setzten, lohnt es sich weiterhin auf die alten Systeme zu blicken. Maximale Scalability ist zwar nicht die st\u00e4rke dieser Architekturen, dennoch l\u00f6sen sie ihr Problem mit einer Perfekt ma\u00dfgeschneiderten Architektur. MMO-RPGs haben die Probleme von ULS schon f\u00fcr sich gel\u00f6st, bevor es den Begriff des Ultra-Largescale-Systems \u00fcberhaupt gab.<\/p>\n\n\n\n<p>Dennoch glaube ich, dass die Zeit dieser Technologie langsam vorbei ist.<br>Segmentierte Spielwelten, die auf einzelnen Gameservern laufen, sind aus der Mode gekommen. Man sieht am Beispiel von New World zumindest, dass es m\u00f6glich ist gro\u00dfe Spielerzahlen auch auf Cloudsystem in einer vollst\u00e4ndig zusammen h\u00e4ngenden Welt darzustellen. Doch glaube ich, das klassische MMO-RPG-System auch zeigen, dass wenn man sich seiner Aufgabe genau bewusst ist, die Cloud nicht immer die L\u00f6sung ist, sondern auch die Umsetzung in einer eigenen Architektur effizient sein kann. \u00c4hnliche genaue L\u00f6sungen sieht man beispielsweise bei Stack-Overflow.<\/p>\n\n\n\n<p>W\u00e4hrend Cloudl\u00f6sungen in den meisten F\u00e4llen auf m\u00f6glichst variablen Systemen laufen und eine gro\u00dfe Palette an Funktonen bieten, maximale Scalability und Resizability bieten, fasziniert mich genau die Spezialisierung, mit der klassische MMO-RPGs die Probleme einer Concurrent Gameworld gel\u00f6st haben und bei der Serverarchitektur und Applikations- beziehungsweise Spiel-Design miteinander verzahnt wurden.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>Quellen<\/strong><\/h2>\n\n\n\n<p><strong>[<\/strong><strong>1<\/strong><strong>] <\/strong><strong><a href=\"https:\/\/www.datacenterknowledge.com\/archives\/2009\/11\/25\/wows-back-end-10-data-centers-75000-cores\/\">https:\/\/www.datacenterknowledge.com\/archives\/2009\/11\/25\/wows-back-end-10-data-centers-75000-cores\/<\/a><\/strong><\/p>\n\n\n\n<p><strong>[<\/strong><strong>2<\/strong><strong>] <\/strong><strong><a href=\"https:\/\/imgur.com\/a\/7EjuL\">https:\/\/imgur.com\/a\/7EjuL<\/a><\/strong><\/p>\n\n\n\n<p><strong>[<\/strong><strong>3<\/strong><strong>] <\/strong><strong><a href=\"https:\/\/images.mein-mmo.de\/medien\/2022\/09\/ffxiv-server-verteilung.jpg\">https:\/\/images.mein-mmo.de\/medien\/2022\/09\/ffxiv-server-verteilung.jpg<\/a><\/strong><\/p>\n\n\n\n<p><strong>[<\/strong><strong>4<\/strong><strong>] <\/strong><strong><a href=\"https:\/\/geekireland.com\/launch-date-announced-final-fantasy-xiv-european-data-centre\/\">https:\/\/geekireland.com\/launch-date-announced-final-fantasy-xiv-european-data-centre\/<\/a><\/strong><\/p>\n\n\n\n<p><strong>[5] <a href=\"https:\/\/forum.square-enix.com\/ffxiv\/threads\/73680-Further-Details-on-Access-Restrictions\">https:\/\/forum.square-enix.com\/ffxiv\/threads\/73680-Further-Details-on-Access-Restrictions<\/a><\/strong><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Einleitung MMO-RPGs oder Massiv-Multi-Player-Role-Playing-Games standen schon lange vor Facebook, Twitter und Co. vor der Herausforderung ein System f\u00fcr m\u00f6glicherweise Millionen von Usern zeitgleich zu designen, dass ein Concurrent Gameplay und eine Concurrent Gameworld erm\u00f6glicht. Doch wie konnten Spiele wie World of Warcraft, Everquest und Guild Wars diese Aufgabe ohne die Hilfe neuartiger Cloud- und Edge-Computing-M\u00f6glichkeiten [&hellip;]<\/p>\n","protected":false},"author":1129,"featured_media":24372,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_jetpack_memberships_contains_paid_content":false,"footnotes":""},"categories":[1,396,649,650,223],"tags":[],"ppma_author":[900],"class_list":["post-24368","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-allgemein","category-games","category-interactive-media","category-scalable-systems","category-ultra-large-scale-systems"],"aioseo_notices":[],"jetpack_featured_media_url":"https:\/\/blog.mi.hdm-stuttgart.de\/wp-content\/uploads\/2023\/03\/1-uBGMSA3-scaled.jpg","jetpack-related-posts":[{"id":24062,"url":"https:\/\/blog.mi.hdm-stuttgart.de\/index.php\/2023\/02\/28\/concurrent-game-play\/","url_meta":{"origin":24368,"position":0},"title":"Concurrent Game Play","author":"Philipp Rapp","date":"28. February 2023","format":false,"excerpt":"Concurrent Game Play mit AWS am Beispiel des Videospiels \"New World\" Amazon Games ver\u00f6ffentlichte 2021 mit dem Videospiel New World ein Massive Multiplayer Online Role Playing Game (MMORPG), das Amazon Web Services (AWS) f\u00fcr s\u00e4mtliche serverseitigen Dienste nutzt. Trotz eher mittelm\u00e4\u00dfiger Rezensionen des Spiels mit durchschnittlich 3,2 von 5 Sternen\u2026","rel":"","context":"In &quot;Allgemein&quot;","block_context":{"text":"Allgemein","link":"https:\/\/blog.mi.hdm-stuttgart.de\/index.php\/category\/allgemein\/"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/blog.mi.hdm-stuttgart.de\/wp-content\/uploads\/2023\/02\/image-11.png?resize=350%2C200&ssl=1","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/blog.mi.hdm-stuttgart.de\/wp-content\/uploads\/2023\/02\/image-11.png?resize=350%2C200&ssl=1 1x, https:\/\/i0.wp.com\/blog.mi.hdm-stuttgart.de\/wp-content\/uploads\/2023\/02\/image-11.png?resize=525%2C300&ssl=1 1.5x, https:\/\/i0.wp.com\/blog.mi.hdm-stuttgart.de\/wp-content\/uploads\/2023\/02\/image-11.png?resize=700%2C400&ssl=1 2x, https:\/\/i0.wp.com\/blog.mi.hdm-stuttgart.de\/wp-content\/uploads\/2023\/02\/image-11.png?resize=1050%2C600&ssl=1 3x"},"classes":[]},{"id":22923,"url":"https:\/\/blog.mi.hdm-stuttgart.de\/index.php\/2022\/03\/20\/games-aus-der-cloud-wo-sind-wir-und-wohin-geht-die-reise\/","url_meta":{"origin":24368,"position":1},"title":"Games aus der Cloud, wo sind wir und wohin geht die Reise?","author":"Sven Kirsch","date":"20. March 2022","format":false,"excerpt":"Cloud Gaming - fl\u00fcssiges Zocken auch mit schlechter Grafikkarte? (esports.com) Was genau ist Cloud Gaming? Cloud Gaming l\u00e4sst sich mit Remote Desktops, Cloud Computing und Video on Demand Diensten vergleichen. Im Grunde beinhaltet Cloud Gaming das Streamen von Videospielen aus der Cloud zum Endkunden. Dabei erfasst und \u00fcbertr\u00e4gt der Client\u2026","rel":"","context":"In &quot;Allgemein&quot;","block_context":{"text":"Allgemein","link":"https:\/\/blog.mi.hdm-stuttgart.de\/index.php\/category\/allgemein\/"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/blog.mi.hdm-stuttgart.de\/wp-content\/uploads\/2023\/08\/Cloud-Gaming.jpg?resize=350%2C200&ssl=1","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/blog.mi.hdm-stuttgart.de\/wp-content\/uploads\/2023\/08\/Cloud-Gaming.jpg?resize=350%2C200&ssl=1 1x, https:\/\/i0.wp.com\/blog.mi.hdm-stuttgart.de\/wp-content\/uploads\/2023\/08\/Cloud-Gaming.jpg?resize=525%2C300&ssl=1 1.5x, https:\/\/i0.wp.com\/blog.mi.hdm-stuttgart.de\/wp-content\/uploads\/2023\/08\/Cloud-Gaming.jpg?resize=700%2C400&ssl=1 2x, https:\/\/i0.wp.com\/blog.mi.hdm-stuttgart.de\/wp-content\/uploads\/2023\/08\/Cloud-Gaming.jpg?resize=1050%2C600&ssl=1 3x, https:\/\/i0.wp.com\/blog.mi.hdm-stuttgart.de\/wp-content\/uploads\/2023\/08\/Cloud-Gaming.jpg?resize=1400%2C800&ssl=1 4x"},"classes":[]},{"id":26850,"url":"https:\/\/blog.mi.hdm-stuttgart.de\/index.php\/2025\/02\/21\/schutz-vor-staatlichen-cyberangriffen\/","url_meta":{"origin":24368,"position":2},"title":"Schutz vor staatlichen Cyberangriffen","author":"Marcel Willie","date":"21. February 2025","format":false,"excerpt":"Cyberangriffe sind heute ein zentrales Instrument staatlicher Akteure. Stuxnet, SolarWinds, Vault7 oder XZ-Utils sind nur ein paar der popul\u00e4ren F\u00e4lle, bei denen kritische Infrastrukturen, Unternehmen und Regierungsbeh\u00f6rden im Visier standen. Doch wie kann man sich vor dieser Bedrohung sch\u00fctzen? Warum klassische Schutzma\u00dfnahmen nicht ausreichen Firewalls, Antivirus-Software und regelm\u00e4\u00dfige Updates sind\u2026","rel":"","context":"In &quot;Allgemein&quot;","block_context":{"text":"Allgemein","link":"https:\/\/blog.mi.hdm-stuttgart.de\/index.php\/category\/allgemein\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":12835,"url":"https:\/\/blog.mi.hdm-stuttgart.de\/index.php\/2021\/03\/07\/sensor-fusion\/","url_meta":{"origin":24368,"position":3},"title":"Sensor Fusion","author":"Konstantin Rosenberg","date":"7. March 2021","format":false,"excerpt":"Geschrieben von Konstantin Rosenberg Einleitung Stell dir vor du f\u00e4hrst in deinem autonom Fahrenden Auto die Stra\u00dfe entlang. Pl\u00f6tzlich erscheint, hinter einem parkenden Auto, ein Fu\u00dfg\u00e4nger und tritt direkt vor dir auf die Fahrbahn. Du erschrickst, doch das Auto kommt elegant vor dem unachtsamen Spazierg\u00e4nger zu stehen. W\u00e4hrend du dir\u2026","rel":"","context":"In &quot;Allgemein&quot;","block_context":{"text":"Allgemein","link":"https:\/\/blog.mi.hdm-stuttgart.de\/index.php\/category\/allgemein\/"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/blog.mi.hdm-stuttgart.de\/wp-content\/uploads\/2021\/03\/image-5.png?resize=350%2C200&ssl=1","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/blog.mi.hdm-stuttgart.de\/wp-content\/uploads\/2021\/03\/image-5.png?resize=350%2C200&ssl=1 1x, https:\/\/i0.wp.com\/blog.mi.hdm-stuttgart.de\/wp-content\/uploads\/2021\/03\/image-5.png?resize=525%2C300&ssl=1 1.5x"},"classes":[]},{"id":25006,"url":"https:\/\/blog.mi.hdm-stuttgart.de\/index.php\/2023\/07\/24\/sicherheitscheck-wie-sicher-sind-deep-learning-systeme\/","url_meta":{"origin":24368,"position":4},"title":"Sicherheitscheck \u2013 Wie sicher sind Deep Learning Systeme?","author":"Silas Blumenstock","date":"24. July 2023","format":false,"excerpt":"Was ist Deep Learning?Angriffe auf Deep Learning Systeme\u00dcbersicht von AngriffenVor\/W\u00e4hrend des TrainingsPoisoning AttacksModel Extraction AttacksModel Inversion AttacksNach dem Training (Inferenzphase)Adversarial AttacksGegenma\u00dfnahmenAusblickLiteratur In einer immer st\u00e4rker digitalisierten Welt haben Neuronale Netze und Deep Learning eine immer wichtigere Rolle eingenommen und viele Bereiche unseres Alltags in vielerlei Hinsicht bereichert. Von Sprachmodellen \u00fcber\u2026","rel":"","context":"In &quot;Allgemein&quot;","block_context":{"text":"Allgemein","link":"https:\/\/blog.mi.hdm-stuttgart.de\/index.php\/category\/allgemein\/"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/blog.mi.hdm-stuttgart.de\/wp-content\/uploads\/2023\/07\/ga_banner_EA15O715KD.jpg?resize=350%2C200&ssl=1","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/blog.mi.hdm-stuttgart.de\/wp-content\/uploads\/2023\/07\/ga_banner_EA15O715KD.jpg?resize=350%2C200&ssl=1 1x, https:\/\/i0.wp.com\/blog.mi.hdm-stuttgart.de\/wp-content\/uploads\/2023\/07\/ga_banner_EA15O715KD.jpg?resize=525%2C300&ssl=1 1.5x, https:\/\/i0.wp.com\/blog.mi.hdm-stuttgart.de\/wp-content\/uploads\/2023\/07\/ga_banner_EA15O715KD.jpg?resize=700%2C400&ssl=1 2x, https:\/\/i0.wp.com\/blog.mi.hdm-stuttgart.de\/wp-content\/uploads\/2023\/07\/ga_banner_EA15O715KD.jpg?resize=1050%2C600&ssl=1 3x"},"classes":[]},{"id":23979,"url":"https:\/\/blog.mi.hdm-stuttgart.de\/index.php\/2023\/02\/14\/ansatze-fur-nachhaltige-softwareentwicklung-in-large-scale-systems\/","url_meta":{"origin":24368,"position":5},"title":"Ans\u00e4tze f\u00fcr nachhaltige Softwareentwicklung in Large-Scale Systems","author":"Hai Vu","date":"14. February 2023","format":false,"excerpt":"EinleitungSoftwareentwicklung und ihre Auswirkungen auf die UmweltEffiziente SoftwaretechnikenCloud Computing und NachhaltigkeitGreen Computing f\u00fcr Large-Scale SystemsFazitQuellen Einleitung Der Klimawandel ist in den letzten Jahren weltweit zu einer gro\u00dfen Herausforderung geworden. Der Aussto\u00df von Treibhausgasen ist nach wie vor hoch. Nach Angaben des Umweltbundesamtes gehen die CO2-Emissionen in Deutschland zwar kontinuierlich zur\u00fcck,\u2026","rel":"","context":"In &quot;Allgemein&quot;","block_context":{"text":"Allgemein","link":"https:\/\/blog.mi.hdm-stuttgart.de\/index.php\/category\/allgemein\/"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/blog.mi.hdm-stuttgart.de\/wp-content\/uploads\/2023\/02\/Untitled.png?resize=350%2C200&ssl=1","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/blog.mi.hdm-stuttgart.de\/wp-content\/uploads\/2023\/02\/Untitled.png?resize=350%2C200&ssl=1 1x, https:\/\/i0.wp.com\/blog.mi.hdm-stuttgart.de\/wp-content\/uploads\/2023\/02\/Untitled.png?resize=525%2C300&ssl=1 1.5x, https:\/\/i0.wp.com\/blog.mi.hdm-stuttgart.de\/wp-content\/uploads\/2023\/02\/Untitled.png?resize=700%2C400&ssl=1 2x"},"classes":[]}],"jetpack_sharing_enabled":true,"authors":[{"term_id":900,"user_id":1129,"is_guest":0,"slug":"marc_schillke","display_name":"Marc Schillke","avatar_url":"https:\/\/secure.gravatar.com\/avatar\/0c371accbb02dc1c5e671659efe9780cfec855bbe90706545fa3ec97939af976?s=96&d=mm&r=g","0":null,"1":"","2":"","3":"","4":"","5":"","6":"","7":"","8":""}],"_links":{"self":[{"href":"https:\/\/blog.mi.hdm-stuttgart.de\/index.php\/wp-json\/wp\/v2\/posts\/24368","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/blog.mi.hdm-stuttgart.de\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blog.mi.hdm-stuttgart.de\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blog.mi.hdm-stuttgart.de\/index.php\/wp-json\/wp\/v2\/users\/1129"}],"replies":[{"embeddable":true,"href":"https:\/\/blog.mi.hdm-stuttgart.de\/index.php\/wp-json\/wp\/v2\/comments?post=24368"}],"version-history":[{"count":8,"href":"https:\/\/blog.mi.hdm-stuttgart.de\/index.php\/wp-json\/wp\/v2\/posts\/24368\/revisions"}],"predecessor-version":[{"id":24852,"href":"https:\/\/blog.mi.hdm-stuttgart.de\/index.php\/wp-json\/wp\/v2\/posts\/24368\/revisions\/24852"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/blog.mi.hdm-stuttgart.de\/index.php\/wp-json\/wp\/v2\/media\/24372"}],"wp:attachment":[{"href":"https:\/\/blog.mi.hdm-stuttgart.de\/index.php\/wp-json\/wp\/v2\/media?parent=24368"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blog.mi.hdm-stuttgart.de\/index.php\/wp-json\/wp\/v2\/categories?post=24368"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blog.mi.hdm-stuttgart.de\/index.php\/wp-json\/wp\/v2\/tags?post=24368"},{"taxonomy":"author","embeddable":true,"href":"https:\/\/blog.mi.hdm-stuttgart.de\/index.php\/wp-json\/wp\/v2\/ppma_author?post=24368"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}