Was ist eigentlich wenn von dem Excalibur Schwert (als Beispiel) 1000 unterschiedliche Varianten existieren, weil diese alle von den Spielern manuell modifiziert wurden. Wie sortiert man das?
Jeder Spieler hat eine Zeile in der Datenbank mit seinem Besitz. Dort steht eine Zelle mit dem Excalibur-Schwert und über welche Attribute es verfügt. Diese Datenbank sollte BTW auch Sicher sein, damit keine Daten gecheatet werden können.
Statt 1000 verschiedene Schwerter zu machen, könntest du ein modulares System verwenden. Zum Beispiel könntest du den Griff ausblenden oder einen anderen Griff einblenden. Ein Schwert hätte bei 1000 Möglichkeiten vielleicht 10 Dinge, die geändert werden können. Bei 100 Dingen, die ausgewechselt werden können, ergeben sich 1000 Möglichkeiten. Aber du brauchst in der Datenbank nur 10 Spalten dafür, wo geschrieben steht, welcher Griff verwendet wird, welche Verzierung die Klinge hat, welche Verzierung der Griff hat usw.
Für die Welt draußen hättest du für jede Kiste eine Zeile, wo steht, was drin ist und über welche Attribute dieser Gegenstand verfügt.
Die einen Daten speicherst du in einer Weltdatenbank: Wenn in einer Kiste ein bestimmtes Schwert Spawnt müssen alle Spieler das selbe Schwert in der Kiste finden.
Die andren Daten zb das Inventar, speicherst du in den Player Informationen des jeweiligen spielers.
Das Thema Sicherheit geht manchmal komplett unter: Ich vor über 10 Jahren mal Facebookspiele Manipuliert in dem ich über eine Software die Datensätze analysiert hab. Dafür gibts Software.
Du startest eine Software die ein Spiel überwacht. Du kaufst in diesem Spiel etwas, und das Programm schaut was im Spiel passiert.
Wenn das Online passiert. Kannst du diesen Datenaustausch simulieren. Du zb dem Server sagen: Hey hier hab ich einer Kiste 1000000 Millionen Münzen gefunden.
Da muss man Sicherheitsmechanismen einbauen dass man sich so nicht einfach dinge ercheaten kann.
Ich will damit sagen: Du musst die Datenbank so aufbauen das du solche dinge verhindern kannst. Sonst merkst du am Schluss das du die Datenbank so wie du sie gebaut hast in die Tonne treten kannst.
Ich kann dir da aber leider auch nicht viel dazu sagen.