This screenshot doesn't show that each text box can hold up to 3 separate lines(in Mystic Square, at least)... In addition, the dialogue will sometimes appear letter by letter(usually the first messages appear in this fashion, though the original "both characters say something at the same time before the fight starts" line was also presented this way).
The text boxes varied by game in the PC-98 series, so here are videos of each:
Story of Eastern Wonderland (Touhou 2)
Lotus Land Story (Touhou 4)
Mystic Square (Touhou 5)
There is even some variation among the windows games, most notably in the appearance of the text box, and how the portraits are handled. While I think it would be a good idea to have some presets(SoEW, LLS/MS, EoSD/PCB, IN, MoF/SA/UFO), I think it would be best to allow for the customization of how the dialogue happens, so you could create an entirely new cutscene appearance...and to be able to switch to an image of the textbox instead of the textbox itself for any given line, sorta like what was done in SA Phantasm.
Oh fun. Sounds like we have some work to do.
Speaking of dialogue, one thing I noticed with Danmakufu is that there are no dialogue cut-ins for the regular characters, and that in order to have a player cut-in for the dialogue, you have to have ones included in the script.
I think that's stupid. I figure that each character should be able to have a standard set of portraits... for the standard emotes, and a small set of SoEW box portraits. In a given script that has dialogue, the script would first check which character you are using(by looking for a character ID within that character's script file, so you could have a custom Marisa that uses Marisa's dialogue, or a script that has dialogue for an entirely different character), and then would grab the appropriate portrait for each line of dialogue from that character.
And of course, you could insert portraits the old way, too.
I approve of this idea. There should definitely be some sort of communal area and naming conventions for dialog portraits. We could even have some default function(s) for "Get me X portrait of Y character", where if X port doesn't exist, it goes to the default port for that character, and if Y char has no ports, it goes to a generic silhouette portrait.
However, I don't think we should spend any great effort creating or maintaining a comprehensive library for distribution with the main package. If certain individuals would like to do so as a separate package, as with the Expanded Shot Data add-ons for DMF, that's their business, but I feel that it would be outside the scope of this project.
Having default cut-ins for the provided characters is definitely a good idea. I like Blue Wolf's idea of having a function that can get said cut-in graphics automatically, although we should still allow a function to set it to whatever specific graphic you want.
I'd like to put forward that, like in Danmakufu, you should be able to replace all of the default sounds and graphics if it is your inclination to do so. Though, for the default players, I think there should be some more frames of animation there to replace, lol.
I agree about things being replacable like you describe.
As far as the "frames of animation" comment ... is that something with Danmakufu's default players?
One last thing for now: I want a way to organize my scripts beyond the single-plural-stage designation. I currently have a separate scripts folder for the stuff from the Halloween contest because that stuff would horribly clutter all my other scripts. I currently switch between them by renaming the folders, but if there was an in-game way to switch between them, that would be sweet.
That is one of the things I don't like with Danmakufu, having to many scripts so you can barely find anything. I suggest to only have two menu options for running scripts, Games and Develop. Games would only contain complete projects from others with only one option in the menu instead of one for each difficulty and spellcard. Game-scripts would then be used for showing name, picture and comments in the menu as well as other things. Develop would be used to test scripts. Debug options like invincibility would only be available here. This plus a way to sort your scripts would be awesome.
... are you guys using the "Directory" option in Danmakufu's menu? This lets you browse the scripts folder by directory, and I've found it quite easy to deal with organizing scripts using this otpion. You just need to set up your organization once, and then browse it as you see fit. For instance, you could organize things like this:
- script
- wip
- omg secret project
- ntsd next version
- completed
- pyro reimu
- ntsd current version
- other people - single scripts
- Suikama (stolen scripts)
- Naut
- other people - full games
... and when you select "Directory", you get a simple list of wip, completed, other people - single scripts, and other people - full games. Select one and you get the next level of stuff. Really simple, if you ask me.
I was going to use this as the default browsing method for Musuu, but if anyone has any better suggestions I'm open to ideas.
I found another bug that if you run if (1==1 && 0==1 && 2==2) the statement will return true and if you run if (0==1 || 1==1 || 0==2) the statement will return false. The same applies to if (1==1 && 0==1 && 0==2 && 2==2) and so on. A workaround at this moment is to write if (a==1 && (b==1 && c==1)) instead.
Lovely. :V
I'll have to look into this as well.
EDIT: Could you please post the script you used to observe this? I just did a quick test, and it looks like it's translating to the correct
mdBase commands, at least ...
EDIT2: fixed.
Oh, and did you implement the infinite loop protection? Cause it didn't work when I tested it.
How did you test it?
Keep in mind it may take a while to come into effect - right now it take 100,000,000
mdBase commands for it to take effect (keep in mind that, depending on complexity, each
mdScript command will be broken down into anywhere from 1 to several
mdBase commands).
Also keep in mind that this is for each individual script. You'll still break things by spawning an object in
initialize, which in turn does the same, etc., because it'll keep running
initialize scripts.
In summary, it's in place, but it isn't complete yet.
After making a script I found that one thing I really miss is arguments for object shots. Other than that Musuu is really good even if it's far from complete. Keep up the good work.
I'll make a note to add the option to pass an argument when creating a new object - that should cover this issue.
Another thing is that I think it's best to have character selection within the games' own menu, preferred being able to make your own or at least have your own background.
I think we were considering allowing this with game scripts.