PMap is a framework for creating procedural map layouts for Unity3D. Roguelikes and generally procedurally generated content have gained so much traction in the last few years. Since I like playing games that feature procedural content very much and I decided I want to create a game featuring that type of content, I decided to go look for something that would allow me to do this. The asset store however, is pretty empty when it comes to that kind of solution. So I took the deep dive and stated developing a framework on my own. PMap was born.

Different setups with the same map size

The framework features has some really useful features, bot for rapid prototyping and game development

With the features above PMap has become a powerful generic solution that allows you to quickly build and visualize  a custom procedural map generator for your game or application.

PMap is...


PMap works with a Generator that controls the whole build process. This generator utilizes a set of agents, called Walkers. Walkers can do pretty much anything. PMap already comes with a set of walkers that will do most thing you will need. Game of Life style cave creation? Check! Perfect mazes, with or without loops? Check! Create complete connectivity? Check? Mirror your map? Check! And many more. You decide which order the walkers process your map and which layer. Save the setup as prefab and use it in your game, or just copy the values and have complete control in your code!


PMap features a variety of independent classes that are used to store data or do stuff. You can use those in another way or integrate them into your project without using map generation. Or extend them to do whatever you might need.


PMaps data classes are fully serializable by Unity. So your Prefab is sound and alive from one session to the next. But you can just generate and keep a PMapData object around to read from. Or just work with code only instancing. No problem. It's your choice!

 Where can I get this?

PMap will come to the asset store more sooner than later. I am currently developing the last set of features. After that it will take some time to get the Class documentation up to speed and look for bugs and write a manual. As soon as this is done... Release time! So stay tuned and follow the PMap devblog for updates. Oh, and if you have questions please ask! And feedback would be much appreciated!