|Subject:||Support for u/d/l/r|
As it is now, the current form supports NEWS directions. However, not all games work in a typical top-down view. For example, with Terraria, the view is a 2D side-scroller with up, down, left, and right. Currently, I am just using the n/s directions for up/down, but that implies that the cardinal directions have no differences between each other. Left/right could safely be mapped to w/e, but u/d is a lot different. U/d means fall damage, gravity effects, etc. A maze with a long corridor going l/r is one thing, while one going u/d is actually a pit. The user should be able to override the default directions with whatever combination of "n/e/w/s/l/r/u/d" is appropriate for the map needing developing. I could see the following combinations: NEWS - Default and currently implemented LRUD - LR mapped to WE, and UD as a new set of directions NEWSUD - A new 3D-compatible mode. The maps could create both NEWS corridor and pits, as well as rooms with depth. This may be as simple as just adding a third dimension to the map and letting it loose, but I would recommend adding this last. (Minecraft could benefit from this, as well as any FPS.) With LR being mapped to WE, it should be treated as such except for the different letters. (In fact, after it's mapped, the Generator tools and such can completely ignore LR.) UD should NOT be mapped to NS, but instead have the following characteristics: * The sparseness, same_way_percent, same_node_percent, and remove_deadend_percent options should have their own ud_* versions with the defaults turned down low (IOW, to create less long pits). That way, the user can control whether s/he wants mazes that generally kill people or mazes without any pits. * There would need to be an option with the doors to control whether trapdoors or platforms are possible, and whether they have an open/close state. If not, it needs to not add UD doors. * Objects may or may not be affected by gravity. If they are, it should be considered an illegal point (or maybe just a "corrected" one) to place an object in the middle of a pit. I think most of the other MQ functions are compatible, as long as they can recognize the UD $dir. Again, once the LRUD mode is complete, adding the NEWSUD one would likely be as simple as adding an optional third dimension everywhere. The Generators should be able to automatically create 3D Perfect mazes. The PNG exporter would require a "perspective" option, but if it was able to draw LRUD maps, that would be a simple matter of either drawing something in NEWS mode or LRUD mode. Stairs could also be another options for NEWSUD maps, in which no pits are created (or maybe they still can be), and would work for "roguelike" games.