Original Post
I need to ask for some opinions for a level editor I'm writing.
My game project is the C# Megaman Engine (YouTube), and right now I'm writing the editor. There main form that shows the stage lays out all of the screens based on how they're joined, so that you can see how they connect and the overall layout of your stage.

So the issue I'm having is that people can make levels that don't layout in a logical way. This is fine, but it causes problems when displaying it. For example, someone could make a trick room where when you leave one way, and come back the same way, you end up in a different room than where you started. Or one room could loop back on itself. In any case, it may easily be impossible to lay out all the rooms properly.
What would be an intuitive interface for showing rooms in this case? I'm thinking that a room that doesn't fit should be moved away some distance until it does fit, and draw a path with arrows between the two joined rooms. But then how would you expect to manipulate these joins? By dragging the screens / join lines around?
When you add a new room, would you expect it to be placed on this form, or would you have to drag it onto there and hook it to the other rooms yourself?
My game project is the C# Megaman Engine (YouTube), and right now I'm writing the editor. There main form that shows the stage lays out all of the screens based on how they're joined, so that you can see how they connect and the overall layout of your stage.

So the issue I'm having is that people can make levels that don't layout in a logical way. This is fine, but it causes problems when displaying it. For example, someone could make a trick room where when you leave one way, and come back the same way, you end up in a different room than where you started. Or one room could loop back on itself. In any case, it may easily be impossible to lay out all the rooms properly.
What would be an intuitive interface for showing rooms in this case? I'm thinking that a room that doesn't fit should be moved away some distance until it does fit, and draw a path with arrows between the two joined rooms. But then how would you expect to manipulate these joins? By dragging the screens / join lines around?
When you add a new room, would you expect it to be placed on this form, or would you have to drag it onto there and hook it to the other rooms yourself?