Hallo David, hallo "GoldwingStudios", hallo an alle anderen.
@David:
Wie in meinem Ausgangspost bereits beschrieben, handelt es sich bei den aktuell gezeigten Bildern lediglich um Testausgaben. Diese erstelle ich rein zurm Kontrolle und Verbesserung der Kartengenerierung. Die Ausgabe welche ich mir gestellt habe sollte klar sein, ein konkretes Problem zum lösen ist aktuell nicht vorhanden. Vielmehr stoße ich jeden Tag auf neue kleine Probleme welche ich versuche mit meinem Wissen zu lösen. Ist dies nicht möglich, versuche ich mir dieses Wissen anzueignen. In diesem Fall geht es auch weniger um programmiertechnisches Können, sondern eher um mein Mathematik-Verständnis.
Die konkrete Aufgabenstellung ist: eine möglichst zufällige (Höhlen-)Karte zu generieren, welche folgenden Ansprüchen genügt:
- Räume müssen in verschiedenen Größen zufällig auf der Karte verteilt werden
- Räume werden durch Gänge verbunden
- Die Räume und Gänge müssen durch Wände voneinander getrennt sein
- Jede Ebene enthält sowohl einen Start- als auch Endpunkt
- In den Räumen werden zufällige Dinge verteilt (Kisten, Pfützen, etc.)
Zu einer Erläuterung der Testausgaben komme ich weiter unten noch einmal.
@GoldwingStudios
Damit liegst du recht. Im Prinzip handelt es sich bei diesem Thread um ein Entwicklertagebuch, welches ich aus zweierlei Gründen betreiben möchte.
A) Information, "Werbung", Feedback und B) Ideenfindung, Weiterentwicklung meines Konzeptes, etc.
Es freut mich, dass deinerseits Interesse besteht. Gerne möchte ich diesen Thread noch interessanter und informativer gestalten, doch dafür benötige ich konstruktives und stätiges Feedback. Hierzu werde ich auf versuchen eine Umfrage in diesen Thread einzubinden, wie oft Updates gewünscht sind.
Das Projekt ist keinesfalls Top-Secret. Es handelt sich um ein Hobby-Projekt, welches ich nutze um zu lernen und mich diversen Problematiken auseinanderzusetzen. Gerne helfe ich dabei natürlich, sofern mir möglich, auch anderen.
Wie stellst du dir eine genauere Beschreibung meiner Vorgehensweise vor? Wie Umfangreich sollte diese Ausarbeitung sein? Natürlich könnte ich Schritt für Schritt erklären, warum ich welche Art von Schleife in welcher Weise durchlaufe und welche Variablen ich dabei auf welche Zustände prüfe oder ändere. Die Frage ist nur, ob sich das jemand durchlesen würde. Wenn ja, kann ich das gerne einmal machen.
"Statusbericht" 30.08.2016
Die Verbindung zweier direkt aneinander liegender Räume habe ich gestern implementiert. Ebenso die Generierung von Pfützen, sowie Belegung der Felder für "Loot"-Kisten.
Hier zu sehen ist die Testausgabe von einer Höhe mit vier Ebenen.
Bei den
weißen Feldern handelt es sich um noch nicht belegten bzw. generierten Platz. Die
schwarzen Felder sind schlichte Wände.
In
grün werden die Räume ausgegeben, in
gelb die Verbindungsstücke.
Bei den
roten und
magenta-farbenen Punkten handelt es sich um den Start- und Endpunkt, bzw. Einstieg und Ausstieg aus der Ebene. Die
hellblauen Flächen sind Pfützen welche sich in den Räumen befinden. Zu guter Letzt habe ich erneut die Farbe weiß gewählt um potenzielle Standorte für Kisten oder andere Items zu kennzeichnen.
Das ganze passiert im Hinergrund natürlich in Arrays mit IDs. Die farbliche Darstellung dient lediglich der Verdeutlichung und wird später durch Texturen ausgetauscht.
Ich hoffe, ich konnte nun erst einmal alle offenen Fragen klären. Bei weiteren Fragen, Kritik oder Anregungen gilt: immer her damit.
Mit lieben Grüßen
Henrik