Eu acho que você está fazendo isso da maneira errada. O caminho máximo em um gráfico com ciclos é tecnicamente indefinido porque é infinito se o ciclo estiver entre o início e o fim. Provavelmente existem maneiras inteligentes de estender / restringir a definição de caminho máximo, mas não acho que seja a melhor abordagem aqui.
Você não está tentando modelar um caminho longo real (por exemplo, um robô tentando explorar o máximo de área possível em um mapa). Você está apenas tentando convencer o jogador a explorar muitas salas.
Portanto, aproveite a chance do jogador encontrar a saída proporcional à porcentagem do mapa explorado até agora . Digamos que há X salas em um nível, e o personagem do jogador explorou Y. Da próxima vez que o personagem entrar em uma sala, coloque a saída lá com probabilidade f (Y, X). Um exemplo trivial de f pode ser (Y * Y) / (X * X) - por exemplo, para 10 quartos, há 100% de chance de sair na última sala, 81% de chance de estar na próxima e última sala - e apenas um 1% de chance de estar no primeiro quarto.
Você pode ajustar a equação da maneira que quiser, fazendo com que o jogo pareça certo, e talvez até dar ao jogador algumas habilidades para aumentar a probabilidade de gerar. A parte principal é, não gere a saída até que o personagem realmente entre na sala. Este método também é imune ao conhecimento do jogador sobre o algoritmo de geração de masmorras; mesmo se o jogador tiver padrões de movimento estranhos, como o salto do cavaleiro no NetHack ou no teletransporte, eles terão que explorar mais salas para encontrar a saída.
Se você precisar gerar estaticamente a saída, poderá usar a mesma ideia com um caractere virtual. Imagine um preenchimento de inundação começando na posição do personagem, movendo-se uma vez na célula a cada iteração. A última sala a ser preenchida é a onde a saída pertence (na verdade, a última célula a ser preenchida é a célula em que está mais distante do jogador). No entanto, neste caso, o jogador tem mais informações sobre a saída - se estiver à esquerda, provavelmente à direita - e se puderem se teletransportar, poderão realmente chegar mais rápido do que uma caminhada aleatória normal.
Finalmente, acabei de terminar um roguelike, onde a saída surgiu do outro lado do mapa a partir do personagem do jogador e depois vaguei aleatoriamente. Alguns itens da masmorra tornaram visível no mapa, à custa de ficar com fome mais rápido. Não fiz nenhuma análise, mas definitivamente parecia que eu tinha que explorar mais o mapa para encontrá-lo, e isso dava aos níveis uma sensação única.