Es gibt viele Möglichkeiten, je nachdem, wie Sie es möchten. Hier ist eine grobe Darstellung eines Weges, von dem ich denke, dass er zu Ihrer Beschreibung passt:
Generieren Sie zuerst die Kanäle. Beginnen Sie dann damit, Häuser nach dem Zufallsprinzip zu platzieren. Platzieren Sie für jedes Haus, das Sie platzieren, die Straße davor und zeichnen Sie eine Straße von diesem Stück zum vorhandenen Straßennetz, falls dies nicht möglich ist oder wenn Sie die Straße davor platzieren, entsteht ein hässlicher 2x2-Block von Straße neu positionieren das Haus. Erkennen Sie einige Straßenpunkte, die nahe beieinander liegen, aber weit voneinander entfernt sind, und versuchen Sie, einige Verknüpfungen für diese zu erstellen.
Diese Art von Sachen erfordert vor allem Experimentieren und Erfahrung. Oft erhalten Sie gute Ergebnisse, wenn Sie Details auf zufällige Weise erstellen, feststellen, ob sie bestimmte Kriterien erfüllen, und rückgängig machen und erneut versuchen, wenn dies nicht der Fall ist.
Für genau diese Aufgabe benötigen Sie sicherlich auch ein gutes Verständnis der grundlegenden Pfadfindung. Wenn Sie noch kein Experte sind, lesen Sie das Thema. Und denken Sie daran, dass die Pfadfindung nicht nur der kürzeste Weg sein muss. Im letzten Teil meiner Beschreibung möchten Sie möglicherweise der Wiederverwendung bereits vorhandener Pfade etwas Gewicht beimessen.
Dies ist überhaupt keine leichte Aufgabe. Wenn Sie nicht weiterkommen, kommen Sie zurück und zeigen Sie uns Ihren Code und einige Beispielausgaben. Erklären Sie ausführlich, wie es anders sein soll.