Il existe de nombreuses façons de procéder selon la façon dont vous le souhaitez. Voici un aperçu d'une manière qui, je pense, correspondra à votre description:
Générez d'abord les canaux. Ensuite, commencez à placer des maisons au hasard, pour chaque maison que vous placez, placez la route devant elle et tracez une route de cette pièce au réseau routier existant, si ce n'est pas possible ou si vous placez la route devant, vous obtiendrez un vilain bloc 2x2 de route repositionner la maison. Détectez certains points de route proches les uns des autres mais éloignés les uns des autres en suivant les routes existantes et essayez de créer des raccourcis pour ceux-ci.
Ce genre de choses demande surtout de l'expérimentation et de l'expérience. Souvent, vous obtiendrez de bons résultats en faisant des détails de manière aléatoire, déterminez si cela répond à certains critères et annulez et réessayez si ce n'est pas le cas.
Pour cette tâche exacte, vous aurez certainement également besoin d'une bonne compréhension de la recherche de cheminement de base, sauf si vous êtes déjà un expert, allez lire sur le sujet. Et rappelez-vous que la recherche de chemin ne doit pas être à peu près le chemin le plus court, pour la dernière partie de ma description, vous voudrez peut-être donner un certain poids à la réutilisation des chemins qui sont déjà là.
Ce n'est pas du tout une tâche facile, si vous êtes bloqué, revenez nous montrer votre code et des exemples de sortie et expliquez en détail comment vous souhaitez qu'il soit différent.