I'm trying to come up with a maze generation algorithm that satisfies the following requirements, but I end up with fairly "boring" linear grids that take a long time to generate.
The requirements are:
- The result is a NxM grid. Each cell may be either a wall, represented by 0, or a number [1, P], which represent a floor "type".
- The input is the size of the maze (It is safe to assume N*M < 700), the number of floor types, and a list of entries and exits.
- Each entry-exit couple also includes a list of requirements:
- The set of allowed floor types in a path (i.e. There must be a path from A to B that only goes through specific floor types)
- The set of required floor types in a path (i.e. There must not be a path from A to B that does not go through specific floor types)
- The input may also a list of required position-value pairs, that must exist in the final result. (e.g. the value at 2, 6 must be 4)
Not sure how to adapt an existing "generic" algorithm to these requirements, any ideas or solutions?