Also ich finds ehrlich gesagt prima wie sich meine fragen so weit auswirken. An dieser stelle schon mal danke =D.
@dispy nein ich denke das gehört noch zum thema weil es sich ja um Netzwerke und Datenbanken geht sowie um die lastverteilung .. eventuell passe ich die Überschrift noch an.
@Chromaoid Ich stimme dir da zu. Wie weiter vorn schon beschrieben habe ich einfach das mit den überlappenden Zonen (so interpretiere ich mal deine Neutrale Zone) ausgelassen. Natürlich braucht man später solche Zonen, da sonst der übergang recht ruppig wäre für den Spieler.
Zu dem Proxy: Ja das hatte ich auch schon so geplant bzw als idee deswegen war vom Spiele>r<-Server die rede und nicht dem Spiele-Server. Grob dargestellt ist die Kommunikationskette in etwa:
Client-> Spielerserver (kann mehrere Clients verwalten) -> Zonen -> Datenbanken
@3: Ich glaube mir is noch nicht ganz klar, welche Aufgabe du den Zonen
genau überträgst. Bisher hatte ich die Vorstellung, die würden _alles_
in ihrem Bereich verwalten? (alle Objekte und deren Handlungen bzw.
Veränderungen)
Je länger ich nun über das Problem nachdenke desto klarer wird mir dass es unsinnig wäre eine Zone alles in sich zu Verwalten. Es werden einfach zu viele Objekte. Ursprünglich hatte ich mir das so gedacht dass eine Zone alles in sich Verwaltet. Je näher ich mir alles überlege desto unsinniger wird es die Objekte (wo viele Statisch sein werden) immer zwischen den Zonen herumzuschieben.
Höchstwahrscheinlich müssen dann einzelne spezialisierte Zonen bestehen (ähnlich wie bei eve-online) die für ihre Zwecke taugen. Ich habe mal ausgerechnet was im Worst-Case fall an Objekte entstehen würden (ohne Spieler).. die zahl beläuft sich auf etwa 1,6 Milliarden Objekte, wobei der Löwenanteil (etwa 1,3 Milliarden) vom Spieler her kommen kann, ch glaube aber dass der großteil dieser objete anders gelöst werden kann.. also werden "nur noch" mindestens 300 Millionen Objekte Verwaltet werden müssen.(wenn ihr meine Mindmap mit meinen derzeit gesammelten ideen sehen wollt schickt mir bitte ne pn)
Also müsste man theoretisch mehrere Zonen-Ebenen erstellen die für diverse aufgaben Spezialisiert sind z.b. Zone 1 kümmert sich um den Markt (wie schon mal erwähnt) Zone 2 dass Mobs gespawnt werden und rumlaufen Zone 3 um Planeten usw. Aber selbst wenn die Zonen sich so weit in den Aufgaben aufeilen kann es dennoch passieren dass Zonen überlasten ... Also ich denke dass diese idee mir den sich ändernden zonen doch wohl keine gute idee ist sondern dass man das objektgebunden machen müsste. Also quasi dass die "Map" allen bekannt ist und nur noch die Objekte mitgeteilt werden müssten. So käme es dann das die Lastverteilung einfacher geht und man nicht groß überlegen muss was wohin und wie weit usw. muss. Also wäre die Konkrete aufgabe der server nur die jeweiligen positionen der Objekte mitzuteilen und deren Verhalten zu Steuern. Die Karte selber muss ja nicht simuliert o.ä. werden. Nun ich mir ein (meiner ansicht nach) genialer einfall gekommen der die last optimal verteilen sollte.
Also alle Objekte sind auf eigenen Servern und werden da verwaltet.
Von jedem Objekt gibt es einen Punkt den der Server kennt.
Nun gibt man jedem Server eine Minnimal-Größe ein also quasi einen Minnimum-bereich wie klein er maximal sein darf und jeder server hat in einer Matix die unverrückbar ist seinen platz.
Jetzt muss der Server nur noch die objekte makieren die signifikant außerhalb seines bereiches liegt.
Jetzt sucht der Server zu jedem dieser Objekte einen passenden Server indem er in der Umgebung des Objektes Fragt "wer hat denn noch Kapazität frei?" Wenn sich in der nähe (muss nicht direkt ein Server sein der wirklich diese Position hat) ein server findet dann wird das objekt transferiert wenn keine Kapazitäten frei sind dann behält er sie und verwaltet sie weiter.
Konkret an einem Beispiel:
1. Spieler meldet sich an
2. Spieler wird einem beliebigen freien Server zugewiesen
3. Server optimiert daraufhin seine position in der map wenn möglich.
Der Vorteil meiner ansicht nach ist dass dann bei abfragen des Spielers "wer ist in meiner nähe?" nicht alle server befragt werden müssen sonder nur die Server deren Bereich der entferntesten objekte auch in den bereich des suchbereiches des spielers treten. Auch hat dass dann den weiteren vorteil dass keine übermäßigen zonenwechsel stattfinden müssen da jeder server ja nur seine schäfchen verwalten muss. Im fall von großen ansammlungen in einem Bereich sind auch alle server gleich belastet.
Ich denke das wäre so die beste möglichkeit um viele Spieler und objekte zu verwalten, da es nun nicht direkt auf die position des Spielers ankommt und Zonenwechsel nur durchgeführt werden wenn es optimal erscheint.
Was denkt ihr so darüber? Wo könnten da schwachstellen entstehen bzw wo seht ihr schwachstellen?
Mfg
Pecadis
(ich hab den text jetzt glaub ich in 5 stunden geschrieben
)