Warning: Declaration of thesis_comment::start_lvl(&$output, $depth, $args) should be compatible with Walker::start_lvl(&$output, $depth = 0, $args = Array) in /nfs/c03/h08/mnt/50298/domains/gamedev.michaeljameswilliams.com/html/wp-content/themes/thesis_18/lib/classes/comments.php on line 0

Warning: Declaration of thesis_comment::end_lvl(&$output, $depth, $args) should be compatible with Walker::end_lvl(&$output, $depth = 0, $args = Array) in /nfs/c03/h08/mnt/50298/domains/gamedev.michaeljameswilliams.com/html/wp-content/themes/thesis_18/lib/classes/comments.php on line 0

Warning: Declaration of thesis_comment::start_el(&$output, $comment, $depth, $args) should be compatible with Walker::start_el(&$output, $object, $depth = 0, $args = Array, $current_object_id = 0) in /nfs/c03/h08/mnt/50298/domains/gamedev.michaeljameswilliams.com/html/wp-content/themes/thesis_18/lib/classes/comments.php on line 0

Warning: Declaration of thesis_comment::end_el(&$output, $comment, $depth, $args) should be compatible with Walker::end_el(&$output, $object, $depth = 0, $args = Array) in /nfs/c03/h08/mnt/50298/domains/gamedev.michaeljameswilliams.com/html/wp-content/themes/thesis_18/lib/classes/comments.php on line 0
flash — Michael James Williams


The Making of Advanced Combat

by Kevin Neal on June 10, 2011 · 3 comments

in Guest Posts

[MJW: About two years ago, Kevin contacted me to ask a question about my Avoider Game tutorial. Since then we’ve been communicating frequently, and I’ve had the great pleasure of seeing his game develop, and of seeing Kevin himself develop as a game creator. The code, graphics, sound, and music in the game were all […]


Blit and Cache Movie Clips

by Michael James Williams on February 28, 2010 · 15 comments

in Tutorial

[flash http://gamedev.michaeljameswilliams.com/structure/BlittingMovieClips/SWFs/Blitting.swf w=550 h=400 preview={http://gamedev.michaeljameswilliams.com/structure/BlittingMovieClips/Images/BlittingPreview.png} mode=3] On the left: a regular movie clip. On the right: three blitted clones. “Blitting is a higher-performance alternative to using the built-in display list in Adobe Flash for drawing objects on the Stage. This technique involves copying the individual pixels of an existing image directly on to the screen—a […]


Move with the Keyboard, Aim with the Mouse

by Michael James Williams on June 25, 2009 · 34 comments

in Avoider Game Extras,Tutorial

Would you rather have more freedom of movement or shooting? [flash http://gamedev.michaeljameswilliams.com/structure/AgtShooting3/SWFs/demo9.swf w=400 h=300 preview={http://gamedev.michaeljameswilliams.com/structure/AgtShooting3/Images/Snapshot_O09.png} mode=3] Click to play. Arrows to move, mouse to aim/shoot. This is the complement to Move with the Mouse, Aim with the Keyboard, not surprisingly, which in turn is part of my mini-series on creating a shoot-’em-up. It’ll probably be […]


Beginner’s guide to animating your Flash game’s characters. Part two of a mini-series.


Separating a Level’s Layout from its Appearance

by Michael James Williams on June 8, 2009 · 9 comments

in Articles,Flash IDE

Now that our code can detect the layout of symbols we’ve positioned using the IDE, we can separate levels’ layout from their appearance.


Beginner’s guide to animating your Flash game’s characters. Part one of a mini-series.


How to Use the Flash IDE as a Level Editor

by Michael James Williams on June 1, 2009 · 38 comments

in Articles,Flash IDE

Learn to use the Flash CS3 or CS4 IDE as a level editor for your AS3 games.


Only being able to shoot in one direction is soooo 1978. Let’s add three more to choose from. (Based on my Avoider Game Tutorial)