Wednesday, 24 June 2009

Open-source ActionScript libraries for creating Flash games

For some reason the incredible power of Open Source is on my mind today. In light of that, here are some open source(ish*) ActionScript libraries I've come across that can help you make games. I haven't tried them all, but maybe you will? *check the licenses before using.

To get code from google code you may have to use a subversion client. On PC use the free TortoiseSVN.
  1. Glaze - super-fast, easy to use rigid body physics engine based on Chipmunk. Prettier syntax than box2D. Demo.
  2. Box2D - uglier (sorry) syntax than Glaze, but has more features (e.g. types of joint), and is better documented.
  3. PushButtonEngine - framework to build games on - doesn't do too much out of the box, but is an admirable attempt to standardise Flash game code structure. Demo.
  4. Collision Detection Kit - Pixel perfect collisions in Flash!
  5. Game Poetry (blog) and CheezeWorld (blog)- these excellent blogs post the source for many of their examples and tutorials on google code.
  6. PixelBlitz - engine for retro -stylee games. Blurb from Photon Storm.
  7. Flixel - another retro-engine. Cool Demo!
  8. PaperVision3D -if you want to go into the third dimension, this is the daddy. Also check out Away3D - it has some features that haven't yet made it to PaperVision3D. Hey, different strokes for different folks!
  9. Jiglib Flash - Physics in 3D!!!
  10. TweenMax - since fusekit was was sadly never ported to AS3, this tweening powerhouse has taken over the whole show. Not only is it great for animating your user-interface, menus etc, I have actually built whole minigames using only this library for all movement and animation. Also gives you quick ways to adjust brightness/contrast etc of images. Only downside is that it is time-based only so won't play nicely with your game if it has a frame-based tick - but this option has been added to the beta, and as you read this is probably now in the live version. If you need frame-based tweening, you can also check out GTween, although Grant is discontinuing the project.
What have I missed? Leave comments!

14 comments:

Mike said...

Tweenlite is a must have!

David said...

A different extreme, but http://mygamebuilder.com

Hannes Moser said...

In my opinion Motor2 is one of the best out there, 2D Physics, some things are inspired by Eric Catto's Box2D, but the engine is well written(written for AS3, not just a port) and fast.

http://lab.polygonal.de/motor_physics/
http://groups.google.com/group/motor2?pli=1

Last year i worked on a game and i evaluated some of the engines and Motor2, at this time still in early beta, was a good decision.

will said...

Nice round up!

I created an open source project a while ago you may be interested in.

http://code.google.com/p/flash-ad-manager/

Jack said...

Great round up. I just wanted to point out that as of v11 (almost out of Beta now), TweenMax does indeed have a "useFrames" feature (your post warned that it didn't). v11 is faster than ever and there are 2 new virtual timeline classes (TimelineLite and TimelineMax) that make building and managing sequences/groups of tweens very easy and intuitive. http://blog.greensock.com/v11beta/. Oh, and GTween probably won't be actively developed any longer - Grant Skinner announced that he intended to throw is support behind the GreenSock platform (TweenLite/Max).

Joel said...

I just have to point out fuseKit did not fail to make the as3 transition so much as take a quantum leap forward in the form of GoAsap. It allows you to roll your own tween engine and customize it for your needs. Possibly a bit ahead of its time.

Iain said...

@joel - never really got the point of GoAsap, but I'm the sort of developer who uses libraries, not writes them. Moses is awesome, but if GoAsap and fusekit really have little in common.

Iain said...

@Jack - great to see you here on my blog! All your points are noted and I will update the post with this info.

deja_vu said...

Edward! - http://edward.sophiehoulden.com/index.php?title=Main_Page ^_^

ilike2flash said...

Great list, i will be bookmarking this page.

Blue said...

What a Fantastic and useful list for me!! btw may I quote this to my blog?

geridonusumcu said...

http://freeeglence.freevar.com/aqua.html
To improve your mental game, question resolution!
zeka gelistirmek için oyun oynayin, soru cözün!

griffinsdesigns said...

Thanks for posting all those open source projects. You have a lot of good stuff on this blog.

Jeremy said...

Dude you've practically missed every big one out there ... see these lists ... there are about +100 libraries in existence

http://nuigroup.com/forums/viewthread/582/

http://www.adrianparr.com/?p=83