Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.

Topics - initials

Pages: [1] 2 3
Hi everyone,

I haven't used Flixel for ActionScript in forever. I thought I'd pump out a quick game to see what it's like these days.

For those who don't know me, I used Flixel to make Super Lemonade Factory [PC/Steam/Mac/OUYA], Flixel-iOS for Super Lemonade Factory & Super Lemonade Factory Part Two & Mode [iOS], and have been turning FlixelXNA into a very awesome engine for Monogame and XNA, and used it to release Super Lemonade Factory Part Two [PC/OUYA] and Revvolvver and Four Chambers of the Human Heart.

Anyway, on to my new game. It's called Please To Not Burn The Toast.

releases / Super Lemonade Factory for OSX relaunch
« on: Thu, Jul 11, 2013 »
Hey everyone,

When I launched SLF the Mac version was broken.

I've re-compiled, and here it is in all its glory. I've taken out gamepad support. Sorry.

help / Export to OUYA?
« on: Thu, Apr 11, 2013 »
Has anyone successfully exported a Flixel/FlashDevelop/AIR project to OUYA?

I have no idea if it's possible.

games / Above The Clouds
« on: Sat, Sep 15, 2012 »

Above The Clouds was supposed to be a relaxing flight across the Pacific. Instead it turned into a endless runner in the air. Low on fuel, high on air hostess babes.

The point of making Above The Clouds was to make a custom high score database, which is fed by php commands. It was fun making it, but it seems people want to put offensive names in, which I'll have to cut out in the next version.

games / Super Lemonade Factory for PC/Mac
« on: Sat, Jun 30, 2012 »
You might remember Super Lemonade Factory from the iOS version which came out earlier this year.

The PC/Mac version is coming out on July 9th and the demo version is available to play.

Just head over to and sign up to play the demo.

Super Lemonade Factory was re-written from the iOS version using Flixel for Actionscript. It's packaged with AIR so that I could include support for joysticks. It's available for PC and Mac.


I've been playing Limbo and I wonder if there is a way to create effects like film grain over the entire game.

I've looked at having an "effect" on every single sprite, but the performance hit is just too much.

I want to be able to grab the entire FlxGame and apply something like Photostorms effects on it. I've tried to do it from FlxG._game and in the FlxGame class itself, without much luck.

Has anybody already done this?

Of course, the other option is just to create a sprite on top of everything and have it play a film grain pattern. The reason I don't want to do that is because it would be awesome to be able to manipulate colors of the FlxGame, potentially applying film stock algorythms and hue/saturation effects.

games / Super Lemonade Factory
« on: Wed, Mar 14, 2012 »
Hi everyone,

Super Lemonade Factory is finally out for iOS. For this version it uses the iOS native version of Flixel.

Buy it on the app store

Also, there is a Flash version where you can make your own levels with the help from the Ogmo Editor, or play three different standard levels.

See it here:

Comments and critiques welcome.

help / Help with the code for the Ogmo Editor
« on: Mon, Sep 26, 2011 »
Hi everyone

This post is in regard to the code for the Ogmo editor, not actually using the editor, but the open source code that uses AS3 and Air.

I realize this isn't the right place but the Ogmo forum is cluttered with spam, and it is Actionscript 3.0 and I know we've got some AS3 ninjas here, so I thought it would be worth a shot posting here.

I've written a few python programs to export a randomly generated level as an XML file.
But I want to take it a bit further and do this from inside the Ogmo Editor.

So I've downloaded the source, got it compiling and added a new menu item. And now I'm stuck.

I'd like to add elements using code. For example I'd like to add some tiles to my grid layer.

Would someone be able to give me a hint how to do this using Actionscript?


iOS / Example for using a .png for a tilemap in iOS.
« on: Sun, Sep 18, 2011 »
Adds some png for level map functionality.

iOS / FlxTilemap for iOS
« on: Mon, Aug 22, 2011 »
Ok, so this isn't exactly a port of FlxTilemap but here's what I do instead.

Firstly, FlxTilemap creates a single block for each pixel or "1" in your map or CSV. My way looks at a pixel of a png and then uses the RED channel to determine width, GREEN channel to determine height, and BLUE is an arbitrary ID. You can use it give certain blocks an ID of "5" and then query that ID to determine if it's a collapsable block or similar property. Just as an example. Anyway, the code:


Code: [Select]
#import <Flixel/FlxObject.h>

@interface FlxImageInfo : NSObject


+ (NSData *) readImage:(NSString *)imageToRead;



Code: [Select]
#import "FlxImageInfo.h"

@implementation FlxImageInfo

+ (NSData *) readImage:(NSString *)imageToRead
    UIImage* image = [UIImage imageNamed:imageToRead]; // An image
    NSData* pixelData = (NSData*) CGDataProviderCopyData(CGImageGetDataProvider(image.CGImage));
    return pixelData;


How to use it in your playstate:

Code: [Select]
    NSData* pixelData = [FlxImageInfo readImage:@"level1_map.png"];
    unsigned char* pixelBytes = (unsigned char *)[pixelData bytes];
    int j = 0;
    for(int i = 0; i < [pixelData length]; i += 4) {
        //if pixel is black
        if (pixelBytes[i]==0 && pixelBytes[i+1]==0 && pixelBytes[i+2]==0 && pixelBytes[i+3]==255) {
            //NSLog(@"Found a black Pixel");
            bl = [FlxTileblock tileblockWithX:( (j)%48)*10 y:((j) / 48) * 10 width:10 height:10]; 
            [bl loadGraphic:ImgGrapeTiles empties:0 autoTile:YES];
            [playerPlatforms add:bl];
            [enemyPlatforms add:bl];
        //if pixel is red, use red value to make a HORIZONTAL block of that length
        else if (pixelBytes[i]>0 && pixelBytes[i+2]>0 && pixelBytes[i+3]==255) {
            //NSLog(@"Found a red+blue Pixel");
            int w = pixelBytes[i]*10;
            int h = pixelBytes[i+2]*10;
            bl = [FlxTileblock tileblockWithX:( (j)%48)*10 y:((j) / 48) * 10 width:w height:h]; 
            [bl loadGraphic:ImgGrapeTiles empties:0 autoTile:YES];
            [playerPlatforms add:bl];
            [enemyPlatforms add:bl];
        //NSLog(@"PIXEL DATA %d %hhu %hhu %hhu %hhu %d %d", i, pixelBytes[i], pixelBytes[i+1], pixelBytes[i+2], pixelBytes[i+3], (j%48)*10, (j / 48) * 10 );

You'll also need to edit FlxTileblock to get a similar result to FlxTimemap.AUTO which I have done but I'll need to post that later.

iOS / Custom Flixel iOS now on Github
« on: Fri, Jul 29, 2011 »

I've made some tweaks. Sorry there's no demo for the tweaks I've made yet, which makes this most probably useless, although the Virtual Control Pad, multi touch input, swipes recognizer may come in handy for someone.

chat / Self-deprecation on the website
« on: Thu, Jul 14, 2011 »
I don't think it's doing Flixel any favors by being so self-deprecating at various places on the website.


FlxInvaders: A shabby space invaders clone.
FlxTeroids: A shabby asteroids clone.
Mode: Silly demo game created for the first public release of flixel.


iOS / GameKit for Flixel iOS HELP!
« on: Tue, Jun 28, 2011 »
Hi everyone,

I am trying to get Game Kit (achievements and leaderboards) working with Flixel iOS.

I can't get the leaderboard and achievements to display. Anyone had any luck doing this?

This doesn't work calling it from a playstate:

[self presentModalViewController: leaderboardController animated: YES];

iOS / [FlxObject overlap] fix for working with offsets
« on: Sat, Jun 18, 2011 »
If you are manually setting an offset on a FlxSprite using [FlxObject overlap:withObject] doesn't respect your offsets.

To fix add this to FlxSprite.m

Code: [Select]
- (BOOL) overlapsWithOffset:(FlxSprite *)Object;
    CGPoint _point = [self getScreenXY];
    float tx = _point.x + self.offset.x;
    float ty = _point.y + self.offset.y;
    _point = [Object getScreenXY];
    if ((_point.x + Object.offset.x <= tx - Object.width  ) || (_point.x + Object.offset.x >= tx + width) || (_point.y + Object.offset.y <= ty - Object.height) || (_point.y + Object.offset.y >= ty + height))
        return NO;
    return YES;

and this to FlxSprite.h

Code: [Select]
- (BOOL) overlapsWithOffset:(FlxObject *)Object;

iOS / Source for Mode iOS now available.
« on: Wed, Jun 15, 2011 »
Source available here!


Here's a video of me playing Mode on my iPhone.

I ported the code to run on iOS natively. This isn't like that guy exporting from Adobe Air to his iPad ( as cool as that was.

This is a complete Objective-C port of Mode to iPhone.

Hopefully it will make it's way to the app store, but I need to sort that out with the creator of the game and engine.

What do you guys think? Would you like to see Mode on the app store?

Do you think these controls are good? Swipe up and down to shoot in that direction rather than have an on screen d-pad.

help / Overlapping Groups with Groups in iOS
« on: Tue, Jun 7, 2011 »
Hi, I'm trying to do a simple overlap.

In the flash version the overlap and collide functions can take a FlxGroup, but iOS seems to have no such capability.

This is the only way I've found, which is incredibly slow.

Code: [Select]
for (FlxObject * s in _enemies.members) {
for (FlxObject * q in _bullets.members) {
                if ([s overlaps:q] ) {

Anyone got any better ideas to overlap groups with groups?

games / FlxShmup for iOS
« on: Sun, May 22, 2011 »
FlxShmup is a new game for iOS that uses the Flixel iOS frame (as released with Canabalt), as the engine.

* Open source. All code is completely available for anyone to use (provided you buy the game).

* In fact you won't be able to finish the game properly without downloading the source code and digging through it to find the secrets. Unless some douche posts the secrets in a forum. Which will probably happen within 24 hours of release.

* Enemies move in nice curved movements. I am doing this using a Catmull-Rom equation.

* Accelerometer based movement.

* Three separate power ups (transform + gun level up, rapid fire, extra life)   * Four levels, four bad ass bosses.

* Music by the band Initials &amp; more!   * Sound effects made using BFXR

* Old school cheats. Konami code style cheats for longer power ups, smaller hit box on your character, l33t mode to set the enemies hit box smaller and therefor harder.    Why does this game matter?
Canabalt has proven that Flixel iOS can be used to create an auto runner game, I haven't seen any other games come out for iOS using the Flixel platform (apart from my port of FlxInvaders, which I am not releasing on the app store). This game attempts to prove that any type of game is possible using Flixel for iOS. The Flixel for Flash framework has generated quite possibly thousands of games, yet the iOS port seems to not be generating any.

The name FlxShmup.

I built this game from the base of FlxiOSInvaders. So it inherited the name FlxShmup. I am thinking of changing it because it implies it is endorsed by the Flixel team. At the same time I really want to fly the flag for Flixel, and raise awareness of the engine and the fantastic team behind it. So I'm definitely including the logo on the splash screen, and a mention in the help/about section. What do the Flixelers think? Change the name, or keep it?

When will it be released?
I'm hoping for a July 1 submission to Apple.

I'm doing the whole "infinite world" type game. I want to check for collisions only in the area of the screen. So I've got this code:

I have this in my create()
Code: [Select], FlxCamera.STYLE_PLATFORMER);

And this in my update()

Code: [Select] (_player.x - FlxG.width, _player.y - FlxG.height, _player.x + FlxG.width, _player.y + FlxG.height, true  )  ;
When the player goes less than 0 in the Y, so actualy going up since y=0 is the top corner, the camera goes past the player. Even with STYLE_LOCKON the camera still goes past the player.

Is there something else I should be doing if I want to make an infinite world that goes to the right and upwards infinitely?



I've copy/pasted the article here but head over to the site to get pictures and links.

Flixelation: It's All About Timing

For the uninitiated, Flixel is a framework for making 2D games in Flash and iOS. It was released by Adam Atomic who's company Semi Secret Software is responsible for indie hits Canabalt and Gravity Hook as well as others.

Releasing the source code to Canabalt is risky business. Just ask Wolfire Games, who released the code for Lugaru into the wild only to have a counterfeit version uploaded to the app store. With Apple being the behemoth that it is, having the offending app taken down was not swift.

Leading up to the new year of 2011, Canabalt was one of six games that went on sale to raise money for charity. The move raised $25000 in funds and culminated with Canabalt being open sourced. When I say open source, it needs clarification. Canabalt for iOS uses a port of the Flash version of Flixel as it's engine, handling animation, collisions, particle effects and tilemaps. This engine is open source and available for anybody to use for their own game. If you're using Xcode 3 a template has been made so that you can start with a fresh Flixel game with some simple Hello World text. Xcode 4 users will have to wait for a template to become available.Althought the Canabalt code ships with all the graphics and code in place, anything specific to Canabalt still remains property of Semi Secret Software, and the only thing you can do with it is learn. And that's fair enough! They still have to deal with hacks like me, taking the code and adding a BMX dude who does some tricks.

Picking Up Chicks Is Hard When Your Car Is A BMX was my first game using Flixel. I made it using the Flixel frame work and the mountains of tutorials out there. It did pretty well for me. I sold a licensed and branded copy to and the one of my website racked up around 10,000 ad impressions (according to Mochi) and it was pirated to hundreds of Flash game portals. At first I was bothered by the vast number of sketchy portals taking my game, but then I wisened up and realized that the advertising was still up front, so I was still generating generating revenue (3-5 cents a day!). I released the source code to the community and the graphics under a Creative Commons license, so if these portals were serious about stealing my game, they could just build it themselves.

With this release under my belt, I ported the game over to iPhone. I added heaps more tricks, added a new control scheme and jumped through the app store hoops to get it on the app store. The release of Picking Up Chicks Is Hard When Your Car Is A BMX iOS was extremely lacklustre. Despite the many tutorials on the web about how to launch your game, I went in without tactics or patience, and threw my game to the wolves. The wolves sniffed around, but ultimately ignored it as the game is sitting at around 20 downloads. Not even my friends who I threw a promo code at downloaded my game.

The feedback I've received has been completely negative, apart from my friends who are too nice to say anything bad. 4chan with their patented brand of humor had their say on the game:

I've been attempting to build a fan base for myself by giving away my secrets. The code for all my games is open source. The music I've used in my games is licensed with Creative Commons, so you can steal, remix and trade it. There are stems available to make remixing these songs easy. A stem is where the music is split into different instruments and vocals. Available for download are drums, vocals, guitar tracks and synth lines. Remix and share them. Go for it.

Following the release of Flixel and Canabalt for iOS, there hasn't exactly been a storm of activity in the Flixel community for Flixel iOS. There are probably a few reasons for this. Flixel has a great community based around itís Flash framework. Itís free. Itís open source, many people are adding custom add-ons and classes, including a great cave generator. These are all free to use, including the Flash SDK, and FlashDevelop which is one of the best IDEs Iíve ever used. Conversely, developing for iOS is expensive and closed. A mac, an iDevice, a developer membership, is just not an option if you are a hobbyist (unless you are as crazy as me).

One of the projects I undertook was to port FlxInvaders to iOS. FlxInvaders is the second simplest project next to Hello World. It was written by Flixel author Adam Atomic and is a well commented piece of code that shows how Flixel can be used to make a simple game, in case a homage to Space Invaders. I took the code and chunk by chunk moved it over to iOS until I had a working version I called FlxiOSInvaders. All told it was about 5 hours work. I had to cheat a little, because Flixel iOS isn't as fully fleshed out as Flixel for Flash. One example is that FlxInvaders is a bastion effeciancy, loading a single alien graphic, and using a color property to tint the different rows of invaders. This feature doesn't exist on Flixel iOS and I'm not an Objective C ninja yet, so instead I have five different sprites that are different colors.

FlxiOSInvaders isn't available on the app store for a few reasons, mainly, it's not mine to release. It's a tech demo that says to the world "You can use Flixel to make a shooter or a shmup!"

And that leads me right into FlxShmup. This is my latest project that aims to show how you can use Flixel iOS to create a shoot 'em up using Flixel for collision detection, animation, and many more things. One thing that is amazing is FlxGroup. Throw some enemies in a FlxGroup, and then it will tell you how many enemies are dead, how many are alive, on the screen, on top of many other things. Using this you can create waves of enemies, the health parameter to stack bosses with huge amounts of hit points.


A couple of animated sprites that will appear in FlxShmup. Pixels by Carl "surt" Olsson. Animation by Initials.

Where This Is All Heading

Currently there are no plans for Semi Secret Software to keep Flixel in sync with it's Flash counterpart. Flixel iOS is missing some key features that makes the Flash version a dream to work with, such as fast collisions on FlxGroups and tilemap support for using .png files as a map. These are standing in the way of me porting Mode, a fantastic platformer to iOS. With Semi Secret planning no further updates, it's going to be up to the community to implement these features, and the community is not large. There are many more Action Script coders out there than Objective C. Objective C is notoriously hard to master, so it makes sense. There are a small number of members making great contributions so I'd like to see that continue.

Mode: Platform Encouragement

Mode is a platformer built by Adam Atomic using his Flixel frame work. It is possibly the cheekiest, most inventive game that makes you want to download and build the game, because you can't finish it without modifying the code.

I could be completely wrong and just plain suck at video games, but it seems to me that you can't destroy the alien spawn points at the top of the level, without either modifying the code, or getting incredibly lucky with the random level generation.
Ways to get to the top of the level would be to implement a player jet pack (there is a tutorial out there for this). Or adding gravity switches (I did that, and you can probably find my Mode: Gravity Remix out there if you tried). This will allow you to get to the top of the level and destroy the alien spawn points.

Summing Up

With Flixel for Flash undergoing major changes and nearing release of version 2.5, we are going to see a framework perfect for rapid prototyping 2D games. It is a very exciting time to be into pixel art, Flash and iOS development.

Note, currently, FlashGameDojo and have been hacked by someone claiming to be Thehacker.

Article by Shane Brouwer

This article is licensed under a Creative Commons Attribution-ShareAlike 3.0 Unported License.

To use any of this information, just credit the author.

Bonus, Picking Up Chicks Is Hard When Your Car Is A BMX instructions Gifs

Tailwhip. Swipe Right then Down

Back Flip. Swipe Right then Left

Front Flip. Swipe Left then Right. Huge points!

Layback, Swipe Up

No Hands. Swipe Left

Superman, swipe Down

Decade. Swipe Left then Down.
I'll keep the others a secret. There's a no hands back flip and front flip in there somewhere.

This game is free until the end of the month.

Or, forget the app store and compile the game yourself.

Pages: [1] 2 3