@sowieduwillst - auch dir empfehle ich den Thread "Die große Leere" und vor allem den Teil mit dem Kartenaufbau - Stichwort: Bonusgutlinien bzw. Provinzverteilung - es muss hier ein bestimmtes Schema eingehalten werden - du kannst die Karte nicht einfach um ein paar "nicht mal existierende" Hexagone erweitern bzw. die Karte duplizieren und überall anheften ...
Danke, den Beitrag habe ich bereits durchgelesen. Ich empfehle dir aber auch meinen Beitrag hier nochmals zu lesen. Es wird weder die Karte vervielfältigt noch wird diese um nicht existierende Hexagone zufällig erweitert (Erklärung dazu weiter unten in diesem Kommentar).
Ich weiss nicht, was daran unverständlich ist, wenn ich schreibe, dass die Karte nicht wirklich kopiert wird. Die Grafik verdeutlicht das Prinzip und ich weise mehrfach darauf hin, dass diese nur einmalig existiert.
Die Karte bleibt unverändert in der Art wie sie generiert wird; du kannst die bestehende Karte nehmen wie sie ist. Die Art wie der Algorithmus arbeitet, kann erhalten bleiben, das einzige was sich ändern müsste, ist dass es einen Gradienten braucht - also eine Art gauss'schen Rauschens, das addiert wird - und somit eine Übergangszone an den "Rändern" entsteht und das ist auch völlig legitim. Du hättest dann immernoch Goldminen, inaktive Spieler würden in diese Randzonen rücken und aktive immer noch in die Mitte. Der Vorteil dieser Methode ist, dass die Welt kleiner wird, kleiner im Sinne, dass weniger Goldminen benötigt werden um den Rand der Welt zu füllen.
Das ganze funktioniert übrigens auch dynamisch, es ist absolut kein Problem neue Ringe einzufügen und wieder zu löschen, dafür ist das Prinzip der Doubly Linked List da. Doubly, weil jedes Hexagon auf jedes seiner Nachbaren zeigt und somit immer zwei Hexagone auf einander zeigen. Wenn du am Rand Ringe einfügst - am besten gleich 2, damit die Balance erhalten bleibt, also je drei Güter und eine Siedlung, da diese als Ring angefügt werden, gilt N_Ringe = 4 / 2 = 2. - dann zeigen die alten Randhexagone weiterhin auf die Blöcke hinter / neben ihnen und die Zeiger, die über den Rand hinweg zu der anderen Seite zeigen, werden fortan auf die neuen Randteile zeigen. Somit weiss dein lokal installiertes Spiel, was es dir anzeigen soll, in dem es von deiner Sichtperspektive aus die Blöcke lädt, und zwar nur die, die du siehst plus einen kleinen Puffer, damit du lagfrei durch die Karte "laufen" kannst. Auf der Serverseite weiss das Spiel immer welche Hexagone benachbart sind, was übrigens auch kein Problem für die Performance ist, zumal du auch jetzt schon deinen freigeschalteten Bereich in grün sehen kannst. Der Server weiss also genau, welche Teile der Karte du freigeschaltet hast. In dem Falle einer NBH-Anfrage, wird der Server kurz Antworten und dir die richtigen Poliermöglichkeiten anzeigen / ausführen. Natürlich existiert noch die Ausnahme, dass man die Städte der Gildenmitglieder polieren kann, aber die existiert ja bereits. Du büsst also somit keine Performance ein.