Pushing my Buttons - Multiplayer Madness in Flash - Part I
Flash your Friends
So one issue that has always chapped my hide with Flash is multiplayer, and I think the main reason is Flash Media Server. It's like that girl at the middle-school dance that you want to talk to but you know it's not worth it because she's just too good for you. Don't get me wrong, Flash Media Server is choice. If you have the means, I highly recommend using it on a project. But it's just too expensive to ever make it practical for anyone but big pharma and porn video distribution. And there are some really awesome non or low-profit ideas out there that could seriously benefit from it, like more representative e-government and micro-financing projects for commercial meetings, that you could say you would love to do one day at cocktail parties. But what's a progressive flasher to do?
Actually, I'm not going to say much about Red 5, because I never really got it to work. I think that's just because it didn't seem intuitive enough to implement easily, and when you're learning a couple new codebases every project it's tough to find time if you get disuaded right from the start. That said, it's theoretically an open-source Flash server written in Java that supports video streaming and, most intriguingly, server-side shared objects. William Sanders, author of every Flash Media Server book I've seen, describes these shared objects like this:
"The first time I encountered the remote shared object I thought it had to be the most important contribution to the Internet since the invention of the browser. That opinion has changed little over the years..."
Basically, they're variables that aren't confined to one user's machine, and they make multiplayer functionality possible by letting everyone that subscribes to them push data to each other. Hella useful. But if you can't set up the server, you can't use the functionality, and with Red 5, finding documentation is like finding No Fear shirts at the GAP. Case in point: Everything under the "Red 5 Help and Information" section is a broken link. So what else?
What is that push button thing I've heard about?
So even though multiplayer is too tricky a wicket to practically use on most projects, it would also be a welcomed addition to them. That's where PushButton Engine comes in. I think. Actually, I don't know yet, because it's really late, and I spent all night writing this blog post and putting my kid back to sleep instead of actually trying it out. This is yet another reason why I need open-source projects to be well-documented and work right out of the box. From the description on their site though, it does everything Red 5 does, uses the best C++ networking practices to make server-side communication smaller and snappier, and they put a bunch-load of work on documentation and ease of deployment. And on their "Buy Now" page they have a variety of very impressive bridges as well. But, it's worth trying to overcome my cynicism if it can deliver on even some of that bouquet of promises. Tune in next time to find out what my dreams of super-cheap multiplayer flash apps look like when they shatter into a million pieces. To be continued...
duh duh DUH!!!1!