Hmm, some good ideas I see.
For variable names, I was able to more rapidly write the variable support into the engine by going with a specific length, so that the engine can parse the scripts based on character position. I Could rewrite it to handle names for variables, but it might be more work than it's worth. I'll have to look at the code next time I get a chance, and see what that would involve.
Comments are indeed a good idea, and I just need to figure out a good way to do it. Actually you can already sort of do comments as long as they are on their own line. This isn't an official comment system (since there isn't one yet), but if you just type out a message to yourself on it's own line, the game engine will just ignore it since it doesn't make any sense. You may have noticed there aren't any errors or anything that pop up when you mess up, and that's because it is designed to ignore errors and move on, rather than crash and announce them to you (or the player). You know what, I'm wrong... you can do comments at the end of even your script lines as long as they aren't within brackets. It should be ignored as just garbage at the end of the script, which the engine should ignore completely. I haven't tested any of these methods for doing comments, haha, but if I'm correctly picturing how the code would run, they should work.
As for an auto downloader, I think I'll have to give that some thought. It would seem to be pretty wasteful having it download actual compiled Exes for games if it was some sort of official system. Perhaps it could download just the scripts (all the stuff we type into cards.txt) and feed it directly into the engine since that would be incredibly small and fast. I'll brainstorm this a bit.
Sadly there's always a chance that this could be built to host games, auto download them, and have 50 more features added... and then only like 3 people will ever make anything with it. Haha, so there is at least that risk I have to consider before dumping too much time into it. That isn't necessarily a reason Not to expand it though, so I will mull this around in the back of my mind while I'm out of the house for the day.
At work last night it was bugging me a bit that I still have the old "When" command, even though the new "RunIf" one can do the same thing plus a whole lot more. It's really a lot like when I had the old "good" and "bad" variables that were later replaced with a better system. I guess it's okay to have 2 ways of accomplishing the same thing, but it's just a little nagging feeling in my brain, Haha!
Please try out my games and programs:Aprone's software