Tuesday, May 17, 2005
 
Flash Sucks
I'm sorry. I really want to like Flash. When I decided to put The Limit online, I chose Flash as my platform because I wanted system independence. I assumed it would be really easy, because they handle rendering movies seamlessly. Turns out, there's a big difference between building a movie, and programming a game in Flash.

Ever notice how all Flash games are pretty simple? I mean, I've seen the Trogdor Burnination game, and websites devoted to dozens of small Flash games , but I haven't seen any advanced games in Flash. I think I know why. I think Flash was made solely for movies, and any programmatic capabilities are happy mistakes.

First off, it has no typed variables. Okay, I'm used to that with many of the latest generation languages. I mean, it's not as safe for programmers, but so be it. But add to that the fact that you don't have to define a variable to use it. I mean, if you misspell a variable name, you've just created a new variable (even if you're inside a test condition).

But not to worry, right? I mean, if you create an error like that, the program will just crash out gracefully and tell you where the error is, right? Wrong. A Flash program will do the worst possible thing when faced with an error. It will ignore that line. A Flash program will just skip over a line it doesn't understand.

But surely, these errors can be caught when you compile the instructions, right? I mean, that's just basic checking, been around for ages. Nope. The closest Flash will get to error checking is making sure that you have the right number of braces, and that the basic syntax of a line is correct.

Also, if you start using a variable without explicitly defining it in a function, it will become part of the "root" object, and will exist beyond the function, gaining global scope. I mean, Holy Crap!! This system was made for errors!!

Okay, sorry about that. I know a lot of you readers are not actually code monkeys like me, so you probably don't know or care what I'm talking about. Long story short, I've created a Flash version of "The Limit" which is available here.

It's not finished, but entirely playable, and I'm still working on it. Currently, it doesn't show a score, or end appropriately when the game is over. So, it's got a ways to go, but if you want to play the game for free online, without any downloads, this is the place to do it.

And, um, Flash still sucks. Next time, I'm gonna use Java. =)

Comments:
You know, Alien Hominid was originally done in Flash.
 
Sure, and I applaud them for the effort. I imagine those guys have been writing ActionScript for a good while longer than I have, but I see that more as a testament to their hard work than an example of how good Flash is.

Tanner, you're a coder. Have you tried Flash yet? Is it all just in my head, or is this a real pain in the ass system to work in?
 
I've never done anything in Flash. In fact, I don't think I've ever even seen Flash code. However, from what you've said, I think you have a valid argument, particularly when it comes to implicit variable declaration.

I've always been strongly opposed to implicit variables. The irony is that the logic used to justify them is that they make the language simpler to use for non-programmers; however, the potential errors they can produce are far more difficult to track down (for both novice and expert programmers) than a simple error message. Remember, the sooner an error is revealed (compile-time vs. link-time vs. run-time), the easier it is to fix.
 
I agree, the inventors of actionscript are real amateurs. I am starting with flash and really disappointed by it. My last disappointment was while looking for a movieclip status property that would tell you if the movie clip is playing or not... did not find anything like that.
I am used to PHP where you have thousands of functions and always find one that does what you want.

I guess flash was created for graphic designers.
Most of them do not understand a thing about how a computer works, let alone how to program it, even after years or decades of graphic design studies and work.
 
Post a Comment

<< Home

Powered by Blogger
Visitors since October 7th, 2004

Creative Commons License
This work is licensed under a Creative Commons License.