Génération d'un donjons aléatoire - Version imprimable +- JeuWeb - Crée ton jeu par navigateur (https://jeuweb.org) +-- Forum : Discussions, Aide, Ressources... (https://jeuweb.org/forumdisplay.php?fid=38) +--- Forum : Programmation, infrastructure (https://jeuweb.org/forumdisplay.php?fid=51) +--- Sujet : Génération d'un donjons aléatoire (/showthread.php?tid=4162) |
RE: Génération d'un donjons aléatoire - JauneLaCouleur - 12-07-2009 J'ignore si c'est un bug, mais en bas et à droite, le manoir presque toujours ouvert. La première solution qui me vient à l'esprit, c'est d'identifier les pièces, et de crée une/des portes. C'est post-génération. En gros tu parcours ta carte, en passant de case adjacente ouverte. Je sais pas si c'est très clair... Sinon, il faut revoir le façon de générer le labyrinthe, et/ou rajouter des contraintes. RE: Génération d'un donjons aléatoire - kilhom - 12-07-2009 Oui c'est normal que en bas et à droite ce soit ouvert Et oui justement je cherche ces contraintes... et je vois difficilement d'autres façons de faire ce que je veux autrement. =/ Merci de ta réponse ! RE: Génération d'un donjons aléatoire - JauneLaCouleur - 12-07-2009 C'est un problème amusant, je vais m'y essayer... RE: Génération d'un donjons aléatoire - kilhom - 12-07-2009 En effet JauneLaCouleur, j'y prend aussi un certain plaisir dans ce challenge ^^ Pour le moment j'ai une piste : on identifie les différentes "sales" qu'il peux y avoir dans le donjon par des chiffres (1,2,3,etc...) Puis on relis ces salles. Mais bon c'est plus facile à dire qu'à faire RE: Génération d'un donjons aléatoire - Sakura - 12-07-2009 Problème intéressant en effet La première chose qui me vient a l'esprit est de faire de la récursivité terminal la dessus. Je partirais d'un repère avec le centre en haut a gauche diriger vers la droite et le bas. La première case est choisi aléatoirement avec au moins deux entré, une sur le bord (entré du donjon) et une autre qui s'ouvre au reste du tableau a remplir (porte vers une autre salle). A partir de la tu lance une fonction, récursive. Il faut un tableau Tab a deux dimension au dimension du tableau avec 0 si la case est vide ou l'ID de la case choisi le cas échéant. X et Y etant les coordonne de la case initialisé a 0/0 au début. Porte prend deux valeur, droit ou haut pour savoir ou est la jointure de la case précédente. Mon algo parcour le tableau avec un sens gauche/droite puis haut/bas. La fonction aurait un prototype du genre: function NewDonjon(X,Y,Porte) SI X=0 et Y=0 ---remplir Tab[0][0] avec une case ayant une porte en haut ou a droite et une porte a droite et/ou en bas//initialisation SI Tab[X][Y]=0 ---SI Porte=droite remplir Tab[X][Y] avec case ayant une porte a droite ---Si porte=haut remplir Tab[X][Y] avec une case ayant une porte en haut SI num_case a une porte a gauche ---appelle de NewDonjon(X+1,Y,droit) SI num_case a une porte en bas ---appelle de NewDonjon(X,Y+1,haut) Fin fonction Le probleme de cet algo est que toute les cases du tableaux ne seront pas forcement completer si les case choisi aléatoirement forme des cul de sac avant la fin. L'avantage c'est qu'en théorie tu est sur que toute tes salles seront relié entre elle. RE: Génération d'un donjons aléatoire - Sloop - 13-07-2009 Cela t'intéressera peut-être : http://www.siteduzero.com/news-62-30695-nouveau-concours-les-generateurs-de-labyrinthes.html http://www.siteduzero.com/concours-654-52-generateurs-de-labyrinthes.html Fais une recherche pour avoir le résultat du concours RE: Génération d'un donjons aléatoire - NicoMSEvent - 21-07-2009 Si tu es toujours intéressé, j'ai retrouvé (et adapté les adresses) de cet ancien post, parlant de génération de labyrinthe au hazard : http://www.jeuweb.org/board/labyrinthe-t-1366.html RE: Génération d'un donjons aléatoire - Delkaes - 21-07-2009 plop, pour moi le meilleur générateur de donjon est celui là : http://www.myth-weavers.com/dungeon.php tu peux dl la version offline : http://www.suckyweb.com/darcphaze/Pangea/dungeon_win.zip Ca peut te donner des idées, au moins pour ceux qui veulent avoir une map donjon rapide y a qu'a ^^ RE: Génération d'un donjons aléatoire - NicoMSEvent - 21-07-2009 excellent!!!! je garde les url sous le coude ^^ RE: Génération d'un donjons aléatoire - Argorate - 21-07-2009 Idem, bien que je n'en ai pas besoin pour mon MMO, c'est excellent pour les JDR sur table, ça permet de se faire une map en deux deux^^ Merci. |