Flixel Power Tools Flixel Power Tools

Latest Version: 1.9 (github)
Released: October 11th 2011
Total Examples: 84

Quite frankly flixel is awesome. It allows for very rapid game development. And while it does a lot for you, it is lacking in a few  areas. After all it’s just a framework, and frameworks are meant to be built-upon.

That is where the Flixel Power Tools come in. They are a set of classes, all neatly arranged in a single package that use the new plugin architecture of Flixel 2.5. They push flixel just that bit further and cover a lot of fundamental ground for you. The Flixel Power Tools are for Flixel 2.5+ only, they will not work with earlier versions.


The following classes are available in the latest version:

APIs available include:

The FlxSpecialFX class supports its own plugins for creating special effects. Currently this includes:

  • BlurFX
  • CenterSlideFX
  • FloodFillFX
  • GlitchFX
  • PlasmaFX
  • RainbowLineFX
  • RevealFX
  • SineWaveFX
  • StarfieldFX


There’s also a Demo Test Suite which include loads of easy-to-follow examples of the tools in action, with a funky menu system and a visual way to actually see what they do. I always find it easier to learn by looking and then dissecting code! The full source code is on github, including all of the demos (84 of them in v1.9) – it’s also embedded below:

Be sure to try the Credits button :)

Getting Started Guide

There is now a comprehensive 6-page Getting Started Guide in the Docs folder. Download the zip or checkout from github and get reading! It should help beginners get started a lot faster.


The Flixel Power Tools can be found on github: https://github.com/photonstorm/Flixel-Power-Tools

You can download a zip file containing everything or checkout the repo. There are two branches: master and dev. Master is the most stable version. Dev is where I’m constantly working, and will always be bleeding-edge (i.e. may not always compile!). Be sure to watch the project on github to get status updates.

Any questions about any of the tools? Ask me in the comments or on the flixel forums.

Version History

Version 1.9 – October 11th 2011

This release was never about adding big sweeping new features, but always about maintenance. Lots of the classes have been expanded and piles of bugs and edge-case oddities have been stomped. Stuff that was bugging me for a while, like the pixel perfect collision not 100% working when both sprites were rotating, has now been resolved. There are new features as well of course: FlxKongregate provides a solid hook into the Kongregate API with all of their advanced features. FlxWeapon gained the ability for pre-fire and post-fire events, sound support, random factors, parent direction firing support, bullet elasticity, bullet counters and bullet lifespans. FlxColor gained RGBtoWebString, the control handler had some gravity issues squashed and new isPressedUp/Down/Left/Right methods. FlxBar had a complete overhaul and is even more flexible now with 2 new RPG style examples (a Zelda like life counter and an RPG Experience bar). Plus there are new tests in the test suite.

This is the final release before 2.0, which will be a significant overhaul to both the structure and classes available. Code will not be forward compatible and will require extensive refactoring. So if you are mid-game now and use FPT then please remain at version 1.9 until you start a new project.

Version 1.8 – July 29th 2011

There’s only really one major new class this time, but it’s a big one. FlxExtendedSprite together with FlxMouseControl provide you with the ability to create FlxSprites that you can click with the mouse, drag around the game world, snap to a grid, throw or even hook to the mouse with a spring! It handles overlapping sprites with ease, has custom sort controls (to determine which mouse gets the click) and clicks can be bounding box or pixel perfect as needed. Dragging can be locked to a single axis or a FlxRect area too. The Extended Sprites also now have built-in gravity, which works wonders combined with the ability to throw them. There are no less than 14 examples in the Demo Suite to boot.

Also new in this release is FlxFlectrum, a powerful addition to FlxFlod, that allows you to create your own vu-meter / spectrum analyser style display for soundtracker music. Use the built-in meter or provide your own PNG, with direction support, column/row spacing, background beat and peak or meter display modes.

Several classes have had new methods: FlxMath gained wrapAngle, angleLimit and mouseInFlxRect. FlxCollision received the new pixelPerfectPointCheck and the very handy createCameraWall, which builds an invisible collision wall out of Tile Blocks around the camera – you control the width. And last but not least a new FX: RevealFX.

Version 1.7 – June 16th 2011

This one has been a month in the making, but there are loads of new features. First of all we have a brand new Demo Suite test SWF. New interface, quicker to get what you want, more expandable for me. Plus we’ve got no less than 61 different demos to look at! That’s a lot of source for you to learn from :) The biggest changes this time include: FlxHealthBar is gone, replaced with the much more versatile FlxBar. This new bar can be used for anything, from progress meters to sprite health. It can fill in one of 8 different directions, can be hooked to a parent sprite or not, and be hooked to any value of that sprite – in short it doesn’t have to be just a health bar any longer.

The biggest new addition is FlxWeapon. A comprehensive weapon manager for games. Handles creation, pooling and re-use of bullets and a heck of a lot more. Angled bullets, sounds, callbacks, fire at the mouse, fire from the mouse, fire from a parent sprite, fire from a fixed position, bullet speeds, firing rates. Phew! Combined with FlxControl this is a powerful combo.

FlxVelocity has been updated with lots of new functions: moveTowardsPoint, distanceToPoint, angleBetweenPoint, velocityFromAngle, accelerateTowardsObject, accelerateTowardsMouse and accelerateTowardsPoint!

FlxControl has been updated to fully support rotation, thrusting and reversing. So you can now make an asteroids style ship movement in a couple lines of code. There are also new special FX (blur is especially nice), lots of new methods spread across various classes and stacks of new demos. Enjoy!

Version 1.6 – May 18th 2011

Here we see the first release of an important new class: FlxControl. This makes it painfully easy to set-up control systems for sprites, so they can be under keyboard control for running, jumping and the like. Gravity, acceleration, deceleration, firing, jumping is all catered for. 5 Test Suite examples are included. Also a couple of new Special FX plugins added.

Version 1.5 – May 11th 2011

A huge update! First of all we’ve moved to github. I will still push major release zips to Google Code, but all of the updates will happen on github first (well in advance of svn). Second there is now a comprehensive 6 page Getting Started Guide. The Test Suite has been totally revamped. The tests are now in a far more logical location, and the whole repository has been tidied up massively. It’s easier to navigate, has no class path dependencies and is just all round smoother for everyone. Finally we have updates across lots of the classes, fixing small bugs and adding more documentation – and the introduction of a new one: SpecialFX which is an FX plugin manager. There are only 2 FX at the moment, but lots more coming! It was a nice way to split up the game orientated tools from the purely effects based ones. So, go snag it all from github :)

Version 1.4 – April 29th 2011

Two new classes: FlxScreenGrab and FlxScrollZone. 7 new Test Suite demos created for them. Test Suite updated so it now pans across 2 pages via keyboard or mouse control. Lots of bug fixes (too numerous to mention). This release is now using the brand new Flixel 2.5 Plugin system.

Version 1.3 – April 12th 2011

The entire library is now flixel v2.5 compatible, and the test suite has also been updated for it. Also fixed Colors Test 2 so it shows a proper hsv colour chart, and added lots more method documentation. New FlxButtonPlus test added.

Version 1.2 – April 5th 2011

Added the new FlxStarField class & tests. Patched FlxGradient and FlxMath.

Version 1.1 – April 4th 2011

Added the new FlxHealthBar class & tests. Patched a few small bugs in the other classes.

Recent Flixel Power Tool Posts

  1. Flixel Power Tools v1.9 Released
  2. Flixel Power Tools v1.8 Released - Let's get clicky
  3. Flixel Power Tools v1.7 - Kaboom!
  4. Flixel Power Tools v1.6 released including FlxControl
  5. Flixel Power Tools v1.5 - A monster of an update!
  6. FlxScreenGrab and FlxScrollZone added to Flixel Power Tools
  7. Flixel Power Tools v1.3 - Now Flixel 2.5 compatible!
  8. FlxHealthBar added to Flixel Power Tools

42 Responses

Leave a comment
  • jfaulken
    April 30th 2011 at 7:18 am

    Hey! Found a small typo in FlxBitmapFont.as. Line 68 needs to have the real backslash escaped.

    “[\]” should be “[\\]”

    Thanks for the awesome library!

  • Aethernum
    May 11th 2011 at 1:00 am

    Thx for this. :)

  • May 11th 2011 at 3:30 pm

    Superb work, sir.

  • May 12th 2011 at 8:07 am

    awesome work this game is rocking

  • May 15th 2011 at 8:49 pm

    This comment section might not be the correct forum for my kind of big question, but here goes:

    Does anyone else see scrolling as very “jumpy”? As in not very smooth. For example, the screen that contains all the test examples. If I scroll that screen by moving my mouse, it jumps like crazy. Also very noticeable on all scrolling examples.

    This is not something I think has anything to do neither Flixel nor the examples in question here. But it is a case where it is VERY apparent. Rather, I think it has to do with how Flash talks to the computers graphic drivers (guessing here).

    Since the flash game dev community has a lot of smart people I thought I’d throw this out here. Anyone have a clue if this can be “solved”?

  • May 18th 2011 at 2:08 am

    Excellent stuff! Keep it up. *I’m not worthy bow*

  • Chelnok
    May 18th 2011 at 1:07 pm

    Very nice ..again :)

    Only one thing: SPACE and ARROW keys not working with Chrome ..Safari works fine.

    Mac OS 10.6.7 / Chrome 11.0.696.68 / Flash: 10,3,181,14

    Same problem with some other sites too.. anyone know solution for this?

  • May 18th 2011 at 1:22 pm

    Strange.. I test in Chrome exclusively! Could be a Mac thing – or is it that the SWF doesn’t have focus? Click it and then hit left/right to see if the menu scrolls to the right? Will get it checked on some Macs here.

  • Chelnok
    May 18th 2011 at 2:01 pm

    True.. somekind of Mac/Chrome problem. Focus is fine with mouse and other keys (WASD, etc), but space and arrows works like they normally does with html-page (space:pagedown, arrows: row down/up). Seems like Chrome overrides em somehow. And again, no problem with Mac/Safari ..or any browsers with PC. Well, i hope its just my mac :)

  • Chelnok
    May 18th 2011 at 2:20 pm

    Hmm.. i just noticed that when i keep shift down -> arrows works but space doesnt And space works when i hold down ctrl or alt :) ..but ctrl + arrow doesnt work (that combination is used to change workspaces at mac) And yes.. with alt key down, i can use arrows AND space. LoL.. I am preatty new with mac, but this is so weird that it must be somekind of keyboard thing (i’m using scandinavian kboard)

  • May 22nd 2011 at 10:27 am

    Here is a quick update to the FlxHealthBar that allows you to use a vertical health bar, as simple as the horizontal one : revolugame.com/blog/flxhealthbar-update.

  • May 22nd 2011 at 10:58 am

    Nice one Adrien – mind if I merge your changes with the source? I’m changing FlxHealthBar to be just “FlxBar” so it can be used for say progress bars, etc – but would still like your modification in there too :)

  • May 22nd 2011 at 12:07 pm

    of course 😉

  • Anonymous
    May 31st 2011 at 6:45 pm

    Scrolling Zone is awesome but it freezes after a few minutes… :-(

  • May 31st 2011 at 7:30 pm

    Send me some code that freezes for you please (file it as an Issue over on github if you can, or just email it to me). As I can’t replicate this.

  • Anon
    June 17th 2011 at 8:02 am

    This is awesome, but what’s the license ? can I use for commercial ? you should put it that (http://www.codinghorror.com/blog/2007/04/pick-a-license-any-license.html)

  • June 17th 2011 at 2:19 pm

    License added. And yes you can use the tools in commercially released games.

  • June 27th 2011 at 7:15 pm

    What a great work!!
    I don’t need this right now, but just wow this is good!

    PS: Important: WASD is WAY better than arrows in the examples where you shoot with SPACE, cause then you don’t have to leave your mouse with your right hand x)

  • July 15th 2011 at 8:18 am

    Hi, thanks for the libraries! Just tripped over a bit of a problem with FlxControl, though.

    The checks for deceleration don’t check the bounds for that entity. This means that an object will obey the bounds up until you let go of a key, at which point it’ll creep outside of them.
    I’ve hacked the functionality into my own version, but there may be a more elegant method of doing it (I just stuck bounds checks at the end of runJump() ).

    Keep up the great work!

  • July 15th 2011 at 10:52 am

    Nice find Murray – will get it sorted in the next release.

  • July 15th 2011 at 10:07 pm

    Excellent set of tools, thank you so much for what you’re providing to the community. I have a request for you: FlxExplosion. Some way to make awesome explosion variations with quaking and everything. That would be the best haha.

  • July 16th 2011 at 1:42 am

    Yeah I completely agree – FlxExplosion would be cool :) Maybe …

  • ExpertNovice
    July 30th 2011 at 8:35 am

    Yes! Mouse functions! The power of the Mouse is in the Palm of my Hand!!! Muahahahaha!

    (Hey, do I get 20 punts for that?)

    This literally might help me manifest my dreams. Ten years of planning…

    Thank you Rich D!

  • ExpertNovice
    July 30th 2011 at 8:35 am

    PS call it FlxPlosion

  • August 21st 2011 at 9:58 am

    Hi, I’ve noticed that you made comments in the function for a reference manual like the one in Flixel. How can I creat such a manual? It will be handy!

  • August 26th 2011 at 7:59 pm

    One day I do plan to create a proper ASDoc output from the Power Tools, I promise. But I’ve played with the automated doc tools quite a bit, and it never comes out right, so I’ve sort of given up for now. I’ll try it again at some point!

  • November 1st 2011 at 2:58 pm

    Hi, I’ve downloaded powertools via github but I cant unzip the file. I keep getting the message that its invalid. Is it ok for evryone else?

  • November 2nd 2011 at 12:29 pm

    Ignore my last comment. It works fine. Might be best to delete my comments for clarity!

  • hedfizzle
    December 16th 2011 at 9:44 pm

    this is amazing! I only started playing around with flixel last month but i’m ready to make my next game in it.

    any idea when 2.0 will be out? i would love to use it!

  • gandl
    January 17th 2012 at 12:16 pm

    im not good at english. but i had a puzzle with this tools. when i use this tool to make a game like “super marrio”, i can not let the FlxWeapon’s BulletDirection allways after the player’s FaceDirection. how shuld i do? you know what i mean? please help me ! thank u!

  • April 21st 2012 at 6:31 pm

    In “Flod 1” demo press play, then pause, then stop: it plays the sound.

    Please fix this. I don’t want to see any problem in the demo of this perfect plug-in!

  • May 14th 2012 at 9:55 pm

    is there a version of FlxScrollZone for Flixel 2.43?

  • May 14th 2012 at 10:16 pm

    No there isn’t, although it’d be quite trivial to port to 2.43. There is no plugin system in 2.43, but the core code would still really be the same.

  • lazerfuzz
    June 11th 2012 at 9:17 pm

    Love the Power Tools, it is becoming as important to me as one of my own limbs (!). However, I am experiencing issues with my keyboard inputs, only in Chrome (not sure if Chelnok’s issue was solved elsewhere). I have tested other browsers on my Windows machine, and they are fine, just the Chrome; only tested 2 browsers on a Mac OS, Firefox worked okay, but had the same issue in Chrome. (*sorry if my English is bad, I am an American of the U.S. ><).

  • June 11th 2012 at 10:31 pm

    Hmm it’s hard to tell, but it sounds like it might be a browser / Flash issue rather than anything going on in Flixel itself – as the browser stealing keyboard presses to scroll the page etc. sounds well outside the scope of Flixel, as once a SWF has focus I’m pretty sure you cannot (via code) get rid of focus again until the user actually clicks away. Does it do it on any other Flash game sites? May be a good way to test, could be html driven some how?

  • Kyle
    August 16th 2012 at 9:09 pm

    I’ve noticied the same thing with the freezing issue on the Scrolling Zone. To test this, I tried creating a few scroll zones, via createZone. If I set it to an extremely fast scroll speed, it speeds up the process. After so many iterations it simply stops scrolling the layer.

    I’ll see if I can try to find a reasoning behind this, but if you have any quick fixes please let me know.

  • Vincent
    September 5th 2012 at 4:27 pm

    Hello, I’m interested in these tools for a commercial development, I see you affirm we can use the flixel power tools without any problem, but you use flod classes, and the author ask for a contribution to use his classes in a commercial way?

    So people can use flod without paying the flod author this way?

  • September 5th 2012 at 4:40 pm

    Vincent – if you use flod (directly or via the power tools) then you have to pay the author – it’s only a few dollars. If you don’t use those commands in the power tools then you don’t have to pay a penny.

  • Vincent
    September 5th 2012 at 4:55 pm

    Thank you for the quick answer! :) I think I’m wasn’t alone asking myself about flod.

  • December 17th 2013 at 9:52 pm

    Great job!

  • Melon
    January 23rd 2015 at 4:47 am

    It’s very cool!I will use it on my game job.Thanks very much.

  • Flix
    January 19th 2016 at 7:08 am

    what is the version of flixel power that compatible with flixel 2.43 ?

Make yourself heard