Si tu sais lire le C, tu peux récupérer le code de Nethack, qui est l'ancêtre de Diablo.
Chaque partie génère un donjon de 50 niveaux avec pièces, couloirs, portes, pièges, passages secrets, monstres, trésors, et surtout un escalier qui monte et un escalier qui descend forcément connecté.
http://nethack.wikia.com/wiki/Source_code
C'est probablement long de tout comprendre sans connaître le jeu, mais en faisant quelques parties et en étudiant le code source, ça peut être une piste. C'est pas forcément la meilleure solution mais c'est ce que je ferais, connaissant bien le jeu. Par contre la carte ressemble plus à quelque chose du style dungeon keeper.
Par contre si tu veux vraiment étudier le code, il vaut mieux le télécharger et le lire dans un bon éditeur plutôt que d'utiliser le lien que j'ai fourni.
J'ai trouvé grossièrement l'algo sur un site anglophone :
1. Créer un niveau vide.
2. Créer 4-10 pièces rectangulaires aléatoirement sur la carte (de taille et de forme différentes).
3. Choisir une pièce pour l'escalier montant et pour l'escalier descendant.
3. Relier toutes les pièces entre elle en "creusant" des couloirs.
Chaque partie génère un donjon de 50 niveaux avec pièces, couloirs, portes, pièges, passages secrets, monstres, trésors, et surtout un escalier qui monte et un escalier qui descend forcément connecté.
http://nethack.wikia.com/wiki/Source_code
C'est probablement long de tout comprendre sans connaître le jeu, mais en faisant quelques parties et en étudiant le code source, ça peut être une piste. C'est pas forcément la meilleure solution mais c'est ce que je ferais, connaissant bien le jeu. Par contre la carte ressemble plus à quelque chose du style dungeon keeper.
Par contre si tu veux vraiment étudier le code, il vaut mieux le télécharger et le lire dans un bon éditeur plutôt que d'utiliser le lien que j'ai fourni.
J'ai trouvé grossièrement l'algo sur un site anglophone :
1. Créer un niveau vide.
2. Créer 4-10 pièces rectangulaires aléatoirement sur la carte (de taille et de forme différentes).
3. Choisir une pièce pour l'escalier montant et pour l'escalier descendant.
3. Relier toutes les pièces entre elle en "creusant" des couloirs.