This is replaced by swfobjct.

Dictionary

The following KeyValueMap class is a functional replacement for ActionScript 3.0’s built in dictionary. KeyValueMap provides you with some additional functionality that is not available in the built-in class.

The first is that KeyValueMap has default support. The primary benefit of this is to simplify the code needed when using a traditional dictionary. You can safely “get” a value, whether or not it exists.

The second major benefit is that it is type safe. There is no chance of accidentally casting a Boolean to a String.

The third benefit is the integration functionality. You can combine two KeyValueMaps by using the “integrate” and “getDictionary” functionality exposed by KeyValueMap.

Here’s the class. Have fun.

1s & 0s This isn’t The Most Common Stupid Programmer Mistake, but it’s annoying enough to have it specifically mentioned. Continue Reading »

I’ve got a deadline this week so its a short one. I did have one nugget to leave you with, in regards to level design, as that is what has absorbed my entire week. The only levels that are easy to make in a game are the ones in the middle. The early ones take forever because you only get one opportunity to make a good impression so you will tune, tune, and tune. The later ones take forever because the harder the level is supposed to be, the more time you need to play test it. Don’t underestimate how much time it takes to make harder levels fair and easy levels compelling.

Jericho Screenshot

I recently finished playing through Jericho for the Xbox 360. The game certainly isn’t any good, but it had enough fresh ideas to motivate me to play through the game despite some pretty serious flaws with the level design and enemy AI. That being said, the greatest mistake I think this game made was in regards to the story telling. At some point in the game, I was walking through a river of blood, and I didn’t stop to even think about how that should make me feel. I had been numbed to the events that were occurring in the game around me. At that point, a crucifixion had become about as provoking as a spawning pokemon ball in Super Smash Brothers. Continue Reading »

Sound Effect Generator

Sound Effects and Music are two things that are easy to forget about when you’re marching like mad to complete a game on time. SFXR is an awesome little program you can play with to generate a lot of really great sounding sound effects, and its FREE. It won’t replace a good sound library, or a qualified sound contractor, but for a certain type of game, it could easily give you the majority of the sound effects you need to get started. Basically, by tweaking a bunch of sliders you can generate a wide variety of synthesized sounds. It is definitely worth spending some time with it to see if it can help you out in your development efforts. Visit the developer’s homepage to grab it.

Need some money for your game? Here’s a massive list of people who will pay you for it.

Thanks to the awesome Squize from Gaming Your Way for the heads up.

What exactly is the difference between a library, a framework and an engine? These terms get tossed around, sometimes interchangeably, which can obfuscate some of the fundamental technology we use when developing a game. Today’s brief article strives to clarify the relationship between these three important terms. Continue Reading »

Flash Icon

It’s called the bleeding edge for a reason. In our hurry to target the latest and greatest features in the most up to date Flash Player version, we can find ourselves in a sticky situation where buggy, but “valid” Flash Players can create a less than enjoyable game playing experience. At best our games will not work, at worst, they will work only well enough to give someone an experience so craptistcally bad that they decide that not only does our game suck, but so does our development company, the website hosting our game, and anything ever that was related to Flash in any sort of way. Yikes. There are a few ways to make sure that the user is using a Flash Player version that jives with our game, and we’ll explore the most fool proof in today’s article.

Continue Reading »

Buddha

There are situations where it makes sense to code like a banshee. Perhaps you have a deadline in six hours, or you are prototyping some code that you’re going to throw away before starting on the final implementation. In these types of situations, you generally will hurt your progress by over engineering the task before you. Generally speaking, though, these are the exceptions not the norm. As you work on larger and larger projects that interface with more and more people, you will find that adapting certain fundamental approaches to software engineering will reinforce your project’s viability over the long term. In really massive projects, you’ll often find yourself going back to code you wrote over a year ago. With the right development habits in place, doing that should be as easy as if you’d written the code last week. Like consistent coding conventions, using the single responsibility principle is another step along the path to improving your development habit and writing maintainable code. Continue Reading »

Fractal Pattern

“Design patterns” is probably the most used software engineering buzz word out there. This article will give a basic introduction into the concept of software design patterns, describe some of the design patterns that are most useful in game development, and point out some of the challenges when using design patterns. Continue Reading »