Actually, I haven't really worked on the sound editor for a while. I could never bring myself to sit down and try to figure out how to figure out where the notes are supposed to go, although I did recently think of something that I might try.
In the meantime, I've been working on creating a new version of the base logic generator. I do not, unfortunately, have the original source code, but that's probably for the best for two reasons. First, the original was written with MFC, which isn't a problem in and of itself but I think more people would be able to do something with the program if it were written in straight Windows API, so that's what I'm doing with this new version. The new version's source code will be released. Second thing is I really didn't know what I was doing when I wrote that program the first time (actually one of the blessings of MFC -- I couldn't have written that program in the API at the time that I wrote it; the only API calls in the original program were the calls that put the text on the clipboard).
The new BLG will feature:
- better-written, more organized code that will be released with the release build
- unlimited ego positioning commands (previously limited to 4 + an absolute)
- more logical handling of edge code commands (e.g., you can now have a message and go to a new room; you don't have to check a box to display a message, you just have to enter a message; if you enter a message or a room number for one of the edges, the corresponding "include empty code" checkbox will be disabled, etc.).
- ability to use a pic other than room_no
- ability to use user-defined define names, which is a feature that I really want now that I don't use the template game's names anymore.
- better source comments
- ability to choose varying comment styles (e.g., you can choose between using //, [, and /* */ for one line comments)
- ability to choose between the two common styles for curly braces after an if or else (at the end of the line as some prefer or, as I prefer, on the next line)
- ability to specify tabs or spaces for indenting and how many of them per level of indention
- very possibly will include the generation of compiled logics -- the only big issue I can think of is needing to know the group number when generating an if (said"look")) block, which I think I'm going to solve by having the user input the group number of the look command and giving that input a default of 20, which is the default group number for the template game; I'll also include something to remember the last entry, so that anybody whose "look" group is not 20 doesn't have to be hassled every time they use the generator
- most options will be persistent between runs of the program, especially things like comment-style, define names, etc. -- I'll probably also include a memory of the last place that a logic file was saved
- better handling of the situation when a user enters quotes in one of the message boxes; the user will be prompted to explain whether the quotes are intended to be printed in the game or not; of course there will be a Don't Ask Again option
There may be more features as I continue writing the program. The user-interface portion of these features is actually mostly implemented already (I have to implement the quotes message box, the First Room Controls dialog, clean up the ego positioning controls so that it doesn't allow more than one absolute entry, but everything else I've already implemented.
Because this new version will likely generate compiled logics, I will also include an option for whether or not to even generate a source file, though it will be checked by default.
The possibility of integrating an ego positioning dialog where you actually position ego sounds like it would be a cool feature to have. I may not do that in an initial version 2 release, but I'll definitely think about adding it in like a 2.1 release.