ID:120715
 
Not Feasible
Applies to:Dream Maker
Status: Not Feasible

Implementing this feature is not possible now or in the foreseeable future
I understand that the Dream Maker language is very easy to learn compared to others, however I believe that the "Build Your Own Net Dream" concept could be taken further, so that it works for users right out of the box. I would like to suggest adding a whole new, optional, flowchart based interface that could be easily toggled on or off. Essentially this would be like creating a whole new program, but I think the long term benefits would be well worth it down the road.

This feature would allow users to focus less on coding and more on the actual designing of their games. New users would potentially be able to start working on their games right away, instead of having to read all kinds of tutorials on it. Also, libraries of code made by other users would be much easier to understand, as you could just simply toggle it into a comprehensive flowchart with the click of a button. I am quite new to the language, so from where I stand the learning curve is quite steep. I plan on climbing this mountain like you all have, but a lot of potential users might not want to. That is why I am suggesting this interface as an option to allow users to "see" the code rather than have to "read" it.

Here is a screenshot of a program that uses flowchart based programming to show you what I mean:

Imagine if those different colored boxes represented procs, mobs, turfs, etc. I think it would make the flow of programming go faster, but of course if you don't like it, you could just toggle back to the more direct code writing system. Switching to a flowchart based interface would be as dramatic a change as going from DOS to GUI!

I could go on and on about the benefits this would have, but I will get right to the point and try to summarize what this suggestion would amount to.

1. A system that analyzes Dream Maker code and shows it to the user as an interactive flowchart(s) complete with built in descriptions for each proc.
2. A system for creating and editing flowcharts representing the underlying code in a very interactive way.
3. A system of drop-down lists to handle each type or piece of code, so you don't have to remember or type it in, and possibly some form of autocomplete when typing built in as well.
4. A system for automatically detecting newly created icon and sound files, and creating blank flowchart boxes for them.

This would be a complete overhaul of the traditional way we are used to using Dream Maker, but I think this change would be for the better. It would be easier to use, result in the creation of more complete and complex games, greatly reduce the learning curve, be easier to understand code and hunt for bugs, and overall just really increase the popularity of BYOND.

With such an interface, I believe you could "Build Your Own Net Dream" at a whole new level!
Thanks for taking the time to read this. I would appreciate any feedback on this idea.
Something like this could be created with DM code itself, if somebody was so inclined. However, that example looks generally more confusing and less informative than actual code. So, I'm not sure how this would simplify the process for anyone?

You would still need to learn how to insert a start point, message boxes, choices, changes to variables, etc. You would just be learning how to insert them as cluttered graphical images, instead of their text/code counterparts?

From the looks of it, you would have to interact with every one of those graphical boxes to know what the program is doing. Whereas, if that same program above was written as code, you could probably see the entire thing at once, in just a few lines, and read through it like a book, for a complete understanding.
To be honest I'm pretty down on flowcharts. As a rule, they're not a good way of visualizing existing code or developing new code. At best they're a tool for high-level outlining.

The above is really an example of why flowcharts don't work at the detail level. Notice the complexity of the display, filling a whole screen, to show how a simple quiz game would work. The same would be at least as easy to show in pseudocode. A proper flowchart would take this to an even higher level so as to reduce its overall size.

Also, if this became the primary method of editing then no games would ever get finished. It's just too complicated to edit code in this fashion.