"The API supports the full range of multiplayer games, from simple turn based games to more complicated real-time games. To show these capabilities, we have released a new, and in our opinion, awesome game called Nonoba Racer. We have also ported some of our old creations to act as examples in the SDK, such as Fridge Magnets, Multiplayer Asteroids and DrawPad.
We want to make all the things that are currently hard for flash game developers dead easy. Our hosted Multiplayer API is the first big step in that direction. We've got more APIs in mind to fix the rest of the stuff that we think is currently too hard."
To sign up: http://nonoba.com/developers/multiplayerapi/signup
For more info: http://nonoba.com/developers/multiplayerapi/overview
]]>Here is her real link:
http://www.flickr.com/giadabianchi
-erik
]]>For the past two years I’ve been working on my own gig as a partner in a new startup. It’s been exciting to be apart of to say the least!
To start with just an idea and move into a real product, building a team, a company, doing some tech / trade shows, promoting the product, establishing brand partnerships, getting funding and now having an active user based (can’t disclose numbers but they are surprisingly higher then I expected since we launched: www.mego.com).
BTW: like my last post stated we are looking for REMOTE Senior Flash Developers!
erik (at) mego [dot] com minus the () and []
On a personal note I also became a dad:
http://www.flickr.com/giadabianchi
So on top of the biz and being a dad, I just become super unmotivated to post because of all the spam I was receiving both email and on this web site. It literally took my web host server down and despite running blacklist and various other filters I couldn’t stop the problem even after 2 weeks of effort.
However, I’m in the process of moving my blog so I can enabled comments once again and hopefully finish a couple of the OSFlash projects ive been working on in my spare time (which hasn’t been much the past 6 months).
-erik
]]>The work we do is very diverse and can be anything from RSS readers to 3d displays. Most projects are quick mini apps so don’t expect to work on any 1 project for too long.
Because we are all remote exceptional communication is paramount!
Unfortunately we are ONLY seeking Senior Flash Developers at this time. We are not interested in Flex Developers who have no Flash experience or php developers who use ming at this time.
Qualifications:
• Senior Flash Developer
• Can work with timelines
• Can communicate effectively with other designers, flash developers and server devs.
• Can take designs / concepts and turn them into logical structures.
• AS2 mandatory
• AS3 nice
• Familiar with frameworks MVC , MVP, ARP, Cairngorm, etc
• Can write requirements
• Detail oriented
• Application / game development experience +
• Strong OOP skills
• Excellent can-do attitude
• Able to deal with changing requirements
• Experience with design patterns
• Agency experience+ but not mandatory
• Creative thinker / problem solver
• Enjoys puzzles
• Star wars geek + but not reqired
Please send resumes to: [erik] at (mego) dot com minus [] or () of course
-erik
]]>“It is not the critic who counts; not the man who points out how the strong man stumbles, or where the doer of deeds could have done them better. The credit belongs to the man who is actually in the arena, whose face is marred by dust and sweat and blood, who strives valiantly; who errs and comes short again and again; because there is not effort without error and shortcomings; but who does actually strive to do the deed; who knows the great enthusiasm, the great devotion, who spends himself in a worthy cause, who at the best knows in the end the triumph of high achievement and who at the worst, if he fails, at least he fails while daring greatly. So that his place shall never be with those cold and timid souls who know neither victory nor defeat.”
But I digress . . .
So I’m working on a project where we used the V2 combo box and hit a funky issue where an opened combo box’s drop down would remain on stage if the combo box was opened and then the component was removed via removeMovieClip.
We also hit what we thought was another unrelated issue where we lost the ability to remove movieclips that had been laid out in the Flash IDE. For those who don’t know, Movieclips placed on the timeline are given negative depth values that can not be removed without first swaping depth to a positive depth value.
After some digging and mucking around it turns out the combo box attaches a dropdown list component to _root at the highest possible depth (thus breaking our stageMC.swapDepths.getNextHighestDepth()).removeMovieClip() method and because it isn’t apart of the component (encapsulation is good) it gets abandoned all by its lonesome.
The solution:
myComboBox._lookroot = true;
The End
PS: for those wondering of my lack of updates we can thank the spamers who have killed my comments, email and even hacked into my cgi bin.
With both the PS3 and Nintendo’s Wii in playable form this year (surprisingly I am more excited about Nintendo’s system) the anticipation is killing me. However, I’m starting to panic!!!!! My peeps that I normally get tickets from don’t have any extra this year so I'm not sure if I can go.
Anyhow, if anyone has a spare ticket or two let me know, I’d be willing to barter Flash services, first born, etc.
Min and Max swapDepth / Z depth positions:
-16384 to 1048575
-erik
More info:
http://www.axosoft.com/Products/ontime.aspx?cn=otm_stepromo
After digging through the error logs on my machine it turns out that QuickTime was causing the problem (hu?). So I uninstalled QuickTime and Flash Video Encoders (just to be safe) and everything was gravy.
I don't have a Mac to test, but I am willing to bet that the same thing is happening on Mac as well. Before you try reinstalling Flash or rebuilding your box (as most users did) go after QuickTime and the Flash Video Encoder to see if that does the trick.
-erik
I spent a good 30 minutes trying to figure out why my video wasn’t loading. At first I thought I had a naming conflict (nope), or that a class was silently not loading (negative) and then I quadrupled checked all my syntax and even went as far as copying and pasting the sample code (still didn’t work).
15 minutes later and I was still scratching my head so I start thinking that maybe the flv was corrupted. After trying 3 different "corrupted" flvs (I was in denial) I gave up and decided to take a break and get something to eat.
I was outside half way through with my Starkist Lunch To Go (http://www.starkist.com/products/lunchtogo.html) when it came to me; out of the blue, as clear as day, like a light from Heaven had shun down upon my very being:
I was declaring my NetConnection and NetStream Objects inside of a function:
// bad mojo
function loadFLV(source:String):Void
{
var connection = new NetConnection();
var connection.connect(null);
var stream = new NetStream(connection);
this.video_mc.attachVideo(stream);
stream.play(source);
}
// good times
function loadFLV(source:String):Void
{
this.connection = new NetConnection();
this.connection.connect(null);
this.stream = new NetStream(this.connection);
this.videoContainer.attachVideo(this.stream);
this.stream.play(source);
}
This is a simplified example, but illustrates my problem.
What through me off was that the code samples showed timeline code and declared both the NetConnection and NetStream objects in local variables so when I double checked my ActionScript that was in a method of a class everything seemed to match up.
To be honest this isn’t the first time I’ve done this so for future reference and to possibly help anyone else with a minor oversight I’m blogging it!
-erik
]]>This is a naming convention that I have been using for years and the only naming convention for static members that I really like. However, I came across a unique use case where check syntax (ctrl-t on windows) throws a "static members can only be accessed directly through classes." error in Flash 8:
class Foo
{
private static var bar = "bar";
public function getBar()
{
trace(Foo.bar) //error
}
}
After some digging, the problem was that I didn’t define a constructor function (which I shouldn’t have to):
class Foo
{
private static var bar = "bar";
public function Foo(){}
public function getBar()
{
trace(Foo.bar) //works
}
}
Because an error isn’t thrown at compile time and because this issue isn’t present in Flash 7 I am lead to believe that this wasn’t an intentional feature.
(Longest Title Ever)
-erik
comments are still dead, thanks spamers!
For those who don’t know, I am a HUGE gaming fanatic! I love video games and even have a collection of vintage consoles including less popular systems such as the Phillips Cd-I, Nintendo Virtual Boy and a 3D0 consoles.
So Zero Hour for me is THE event of the year (sorry MAX). For those who don’t know, Zero Hour is a 24+ hour event of non-stop Xbox 360 gaming goodness a full 2 days before the rest of the world can get their hands on an X360 console. The event is being held at an undisclosed location in the middle of the Mojave Desert and will feature live bands and keynotes from Peter Moore and other “special guest” yet to be disclosed. Pictures are aloud so expect updates from the show if I can find a connection. In the meantime I’m stocking up on red bulls and getting plenty of rest before the big event!!!
More on Zero Hour:
http://www.xbox.com/en-US/community/news/zerohour.htm
-erik
Sitting here hacking away at max is pretty scwheet! I’ve bumped into some of my old friends from blitz (Ivan and John), just talked to Mike Chambers & Chafic Kazoun, hung out with some yahoo and macromedia peps and even sat next to Kevin Lynch (didn’t want to geek out on him so I didn’t say anything).
If anyone wants to hang I’m one of the only guys (minus Chafic) walking around this conference with a red Flash MX 2004 Timbuk2 bag.
BTW: comments still dead.
-erik
I want to avoid requiring user logins or having to monitor post because I think this hinders commenters and active discussions. So, until I am able to figure out a solution, my comments are killed dead. Thanks Spammers!
-erik
While I personally disagree with the name “AJAX” (considering most of the notable AJAX applications don’t actually use XML) “language pragmatists will say that the right words are the ones people actually use and this word is catching on” (to quote Tim O’Rielly of O'Rielly Media). Granted, Mr. O’Rielly was referring to the Web 2.0 meme, however, his point still applies; but I digress.
With the recent popularity of AJAX many companies are viewing AJAX as a viable web application solution. Rather, then viewing this as a competing technology I see it as yet another platform Flash can be deployed to. However, as an RIA developer my goal shouldn't be to deploy the best Flash or AJAX RIA user experience possible; it should be to deploy the best RIA user experience period. Having a biased preference to just 1 technology (guilty) isn’t fair to your end users and puts you into a proverbial box. Being able to leverage the strengths and understanding the weaknesses of both technologies will in the end make your applications better and make you a better developer.
/soapbox
With that (and finally to the point of my post) I’m slightly shifting my blogs focus from Flash related news rants and ideas to AJAX, Flash and Flex RIA Development (news and rants still apply).
-erik
]]>