Logo by @sgtmug
dungeon-mystery is a Typescript implementation of Pokémon Mystery Dungeon: Explorers of Sky's dungeon algorithm.
This package is the main code behind Pokémon Dungeoneer, a web tool for generating and visualizing PMD layouts.
It's built to replicate the original algorithm as closely as possible, while also being much more readable and useful as a reference.
This package features:
- Fully commented functions with address references for the NA version of Explorers of Sky
- Complete map generation, returning all relevant data associated with the map as used in the game.
npm install dungeon-mystery
Documentation is available here!
This project could not exist without the amazing work by members of the community who have researched and documented the map generation process extensively.
pmdsky-debug - Central resource for debugging information to reverse engineer Explorers of Sky
dungeon-eos - Python implementation of the dungeon algorithm used as part of SkyTemple
Map generation - Document by End45 detailing the map generation process
Dungeon data - Document by End45 detailing how dungeon-related data is organized and structured
These images use the built-in CreateMapString
function which builds a representation of the map into a simplified subset of characters.
An example layout using FloorLayout.LAYOUT_BEETLE
.
An example layout using FloorLayout.LAYOUT_LARGE
with secondary terrain and structures enabled.
If you like the things I make, consider supporting me on my ko-fi page: https://ko-fi.com/epicyoshimaster!