ID:94896
 
Although it's been nearly 3 years since the last update, DMIDE isn't dead. Jp graciously purchased a membership so I can start blogging about development.

The aim of DMIDE is to be more modern and easy to use than DreamMaker, but a secondary effect is that it runs on many different platforms. You're not restricted to just Windows, which is great since many devs don't mainly run Windows. But don't be fooled, this has nothing to do with DreamSeeker or the likes - so you will still need some sort of virtualization solution to actually run the games outside supported platforms.

There's 5 big parts to DMIDE. The code editor, icon editor, skin editor, map editor, and the general window that glues them all into one and their supporting windows. Neither of these are finished, or even close to. A rewrite and restructure is imminent to support plugins and extensions and reduce the windows' dependencies on each other. There has been a collaboration with Jp, Jon88, and Stephen001 which has rapidly increased development recently. So much thanks to them, and anyone else who has helped. If you've got some knowledge in Python or wxPython/wxWidgets then feel free to lend a hand on the many tasks that need to be done.

DMIDE isn't ready for use yet, and it might contain timebombs so I'm going to refrain from posting a test build. But if you insist on playing with it, you may check it out from the google code svn repo (link in the file tree). Just don't submit any bug reports as it's likely that they come from unfinished parts of different sections. I will post more about the different editors later, for now you can show your support and check out the screenshots on the left.

Thanks to Jon88 for the awesome CSS again!
This was a triumph.
This is a pretty cool project and (last I checked) it seemed you had a nice UI going. If you can outline where you're at in the project-- whether you are doing generic UI design or actually integrating into DM at this point-- I can provide some assistance by exposing some useful parts of the byondcore.so/dll. For your purposes, I'd think you'd want access to the methods that:

* load/save icons (from bit data)
* load/save the map
* generate the object tree and correlate icons with ids you can put on the map
* update the object tree / map
* compile

This stuff is all in there, but it's not organized very well so I'd like to look into that and provide a cleaner API through a header. I can't make any promises to do this right away, but, depending on where you're at and how dedicated you are to this project, I could bump it up the priority list. I'm under the impression from your post that you're mostly at a design/reorg state so these internals aren't too critical, but they will save you a lot of headache to have down the line, I think.
I've actually got all that working already, using dm.exe for the object tree dump and to compile to DMBs. I know I requested a DLL for icon saving/loading, but I'm not sure if I want that anymore. It seems if I stick with dmi.py instead (which still can't save or load v3 icons) I could figure a way to do something like include layer data as it's one of the more requested features.

I'll have to get back to you on that one day as I weigh the pros and cons. But right now DMIDE should be able to read and write all formats, except older ones. You're also able to open and view all BYOND files, except DMFs but I'm not sure where the code for that went to be honest. I'll let Jp talk about the code editor first and then I'll post about the UI and the things like the file tree, object tree, class tree, etc.
Tom, one thing that would be handy would be some means of getting object tree data - dm.exe currently has a set of options to output the object tree in an XML format, but it only ever outputs mappable objects. Some means of getting the full thing would probably be helpful.

That said, that's a something-for-the-future feature, I think.