Archive for the ‘Programming’ Category

IceCream – Open-Source XNA 2D Engine

Wednesday, April 1st, 2009


Well, now this really excites me. Not only is IceCream a nifty little 2D engine for XNA games, but it comes with a convenient authoring tool called Milkshake! To quote from the site, “This editor allows you to easilly design all the elements of your game, from the texture selection to game object’s components edition.” That’s pretty darn cool if you ask me! Looking at the videos they posted, it reminds me of the in-game editors I’m used to from games such as Warcraft 3 and Unreal Tournament 2004.

This puppy hasn’t launched yet, but I am eagerly awaiting it’s release. Anything that makes XNA development easier, especially by turning it into more of a drag-and-drop or selection-box kind of environment, earns major kudos in my book. Go check it out. I think this one will be well worth the time.


– George

Flash Tracer not working? Do a Flash Player Version Test!

Wednesday, January 7th, 2009

For those of you who don’t know what Flash Tracer is, it’s a Firefox plug-in created by Alessandro Crugnola that lets you see the output of any trace() statements hidden in the Flash code. Very useful! You can get the plug-in by visiting the following link:

I recently ran into some trouble with Flash Tracer, namely that it wasn’t working at all. I consulted the online help and went through the checklist:

  • Flash Debug Player? – Check! I’ve had that for a while.
  • Output file pointing to the right text file on my system? – Check! I reset it manually just in case. (And FYI, the path on a windows machine should be “C:\Documents and Settings\{User}\Application Data\Macromedia\Flash Player\Logs\flashlog.txt” – obviously replace {User} with your username)
  • Make sure Flash Tracer is not paused? – Check!

Why wasn’t it working? It drove me absolutely batty, until my friend Scottae pointed me to this web page to verify I had the right version of Flash Debug Player installed:

Looks like I was a little too hasty with my first check mark. The website revealed to me that I did NOT have Flash Debug Player installed for Firefox. Apparently, way back when I first installed it, I accidentally installed the IE ActiveX control, not the Netscape enabled one. Most Flash developers of any accomplishment will probably snicker at my mistake… However, for you newbies out there who aren’t able to get Flash Tracer to work, do yourself a favor and use that handy little link to make sure you actually do have Flash Debug Player for Firefox installed. Lesson learned!

Oh, and Alessandro has explicit instructions to get your plug-in to work here:

– George

Casa Lib Open Source Flash

Monday, January 5th, 2009

I was recently introduced to CASA Lib by my friend and fellow Flash developer, Scottae, and I have to say I’m quite amazed. This extensive library is jam-packed full of things that I’ll be using over and over to make my life a lot easier. It’s stuff like this that you’d think would be native to Flash anyway, but isn’t. In my years programming games, I’ve started to move towards coding like this anyway, but the guys who developed this library do it FAR more efficiently and elegantly than I ever would have. Go ahead and dig into the source code – it’s all there and it’s beautifully executed. The documentation is thorough and detailed as well. The only complaint I have is that I wish there were even more concrete examples buried in the documentation (like Adobe’s documentation). Here’s a few of the features I am particularly fond of:

  • Any object that can dispatch events can now be created extending RemovableEventDispatcher which tracks all those pesky event listeners automatically and gives you easy, convenient methods for cleaning them up in one line
  • The commonly used display objects are recreated (CasaSprite, CasaMovieclip, etc) with a destroy() method, giving you a neat and tidy way of doing everything to make them immediately available for garbage collection
  • An inactivity monitor to easily integrate code that needs to run when the user sits there idle (perfect for games)
  • A class that can register for and respond to key combinations being pressed at the same time or in a specific order (again, perfect for games)
  • A plethora of new utilities that address situations where we have all said at one point “man, I wish there were something built in to Flash that can [insert common process here]” – too many to list here

I’ve only been through about half of the classes so far, so I’m sure there are a ton of other really nifty things that I haven’t even discovered yet. Mega kudos to Aaron Clinger and Mike Creighton for spearheading and managing this library. I can’t say enough good things about it! This has been a godsend for my game programming and I’m looking forward to incorporating these new classes into my projects.



– George