PlanetOne is now available to purchase on the App Store.

ONLY  $0.99.

Support this Blog by downloading PlanetOne today. Let me know what you think!

Download Link:

Click Here to Download Full Version

Click here to Download Demo Version

PlanetOne, the 2D Platform game that was inspired by the early great plumber and hedgehog games. You must take the little blue man through 22 unique levels, defeating 4 bosses while collecting keys in each area to open gates. Your goal is to take back the ‘Maya” (The life force of your planet), which was taken from your people. But its not just a walk in the park, there are a bunch of different baddies trying to stop you and you are under the clock. Don’t get the “Maya” fast enough and you must try again.

You can choose to play the level on an easy time limit or if your an expert gamer attempt it with the hard time limit. But which ever you choose your fastest time will be remembered so you can also try to beat your own best or your friends best time.

And to make all of your efforts meaningful, PlanetOne uses OpenFeint for its world Leaderboards, so you can see how you rank against all the players, both with your score and your times.

Now this sounds like a great game as is, but there is an added touch with a hidden Gem in each level. If you find these hidden gems you will get OpenFeint Achievement Points. Some gems are easy to find and some will puzzle you on where they could be.

You can be the one to save PlanetOne!


– 22 Unique Levels

– 4 Castles with Bosses

– OpenFeint Enabled

– Online highscores

– 45 Achievements to unlock

– Facebook and Twitter integrated

– Easy and Hard time limits

Download Link:

Click Here to Download Full Version

Click here to Download Demo Version

Let me know what you think!!!

39 Responses to PlanetOne – NOW AVAILABLE ON APP STORE

  1. Stephen says:

    Congratulations on your game. Please could you do a tutorial on how to structure a game in Xcode.

  2. Steve says:

    Well done Jason, just donwloaded it, my son playing it now 🙂

    Did you use levelSVG? Is it good to buy this? I’ve used InkScape for my game and wrote an SVG parser, but it isn’t perfect, the parser only supports creation of rectangles for Box2D bodies.

    A tutorial on how you did the player movement would be good, i.e. does he have box2d body and if so, how do you update the body with the screen scroll, did you use SetTransform or was the player on a different layer?!

    Thanks again!

    • paulsondev says:

      Thank you very much Steve for supporting me and buying the game. I hope your son enjoys it.

      Yes I used LevelSVG and it is primarily what you had made…a Parser for Inkscape. It does have functionality for circle, box, and bazier curve.

      I really enjoyed using it as I was brand new to this and it helped my learning curve.

      I will try my best to get some of these tutorials going …. I have a long list of readers requests.

      • Steve says:

        Could I ask, did you use Box2D body for your player and if so, how did you update him when you was scrolling the map layer? I’m using SetTransform for this. Also, did you use the one sided platform technique?

        Many thanks,

      • paulsondev says:

        Yes I use Box2d for player. The code I use for move is:

        float xVel = moveForce *direction.x;

        b2Vec2 velocity = body_->GetLinearVelocity();

        velocity.x = xVel;
        body_->SetLinearVelocity( velocity );

        This is not the most realistic way but that is what I did for game as of right now.

        Then his position is used to adjust a camera, which is what scrolls the tiledmap.

        I did use a one-sided platform for the first area but it was giving me troubles so I didn’t use it anywhere else. I want to work on that feature for maybe another game as I really liked it.

  3. Steve says:

    Hi, I didn’t use any force on my player to move him, actually, he doesn’t move, the screen just moves and makes it appear as though he does – of course I have to position him to the centre of the screen all the time with his Box2D body:

    CGPoint screenPos = [self position];
    CGPoint temp = ccp(240 – screenPos.x, 160 – screenPos.y);
    sprite.position = ccp(temp.x,temp.y);
    b2Vec2 b2Position = b2Vec2(temp.x/PTM_RATIO, temp.y/PTM_RATIO);
    b->SetTransform(b2Position, 0);

    Seems to work well 🙂

    If doing what you say you did, how did you keep the player in the middle of the screen? Did you use the Cocos2D camera or just move the layer? I just move the layer like this:

    CGPoint screenposition = [self position];

    if(Dir == Up && _bStopMovingY == NO)
    if(_topJump <= _toJumpToLoc)
    _topJump += 4;
    screenposition.y -= 4;

    else { // jumped done
    Dir = Down;
    else {
    if(Dir == Down)
    if(!bOnGround && !_bOnPlatform)
    screenposition.y += 4;


    if(_bStopMovingX == NO) // only allow horiz scrolling if player has not collided into a platform
    CGPoint backLayerPos = [_backGroundLayer position];
    backLayerPos.x += xVel / 6;
    CGPoint newbackLayerPos = ccp(backLayerPos.x, backLayerPos.y);
    [_backGroundLayer setPosition:newbackLayerPos];
    screenposition.x += xVel;

    [self setPosition:screenposition];

    As for the one-sided platform, I had a few issues with that too but sticking with it. I have a few collision issues where the player can sometimes hang off a platform almost as though in mid-air…

    Just wondering how to put 'hills' in so the player can walk/run up them without having to jump, did you use a Box2D bezier or something for this?

    I'd get LevelSVG but my funds just won't push to it at the moment and this maybe the only platform game I do.
    I'm happy with my SVG parser, it is great for platforms that are rectangular, but want to do hills.

    Your GFX are great, I'm having to do all myself and not very artistic, I'm using GIMP for this, did you do all your GFX yourself and if so, what did you use?!

    Sorry for all the questions!

    Many thanks again,

    • paulsondev says:

      Well For the “camera” I just call it a camera but really i am just moving the layer. So in my tick I call a updateCamera method and assign the layer position to the player position. I can also give this an offset if I want. And I know what you mean with hanging in mid-air.

      The hills are done with bezier curve, but I would also like to work on cleaning that up as well. All I use right now are angles, did not use any curves for the hills, so I could have done that with an angled rectangle.

      And last, I did all of my own graphics and I am pretty happy with them, as I am in no way an artist. I just tweaked things as the game dev progressed, (as you can tell from this blog). I used Photoshop to do all of my graphics, including sprite sheets and tiles. There are many tools out there for that stuff but I just setup a grid and placed my images within the grid for the sprite sheet.

      Your comments are great…keep reading the blog. Thank you

  4. Steve says:

    All sounds good Jason.

    So you move the player and move the layer to where the player is, I guess I do it the other way around which means I have to use the SetTransform method for the Box2D body of the player.

    Any tips on doing hills box2d body defs without using LevelSVG? I’m thinking of using a SetAsBox and have it rotated to angle of the hill/slope…

    I’m hoping to put my game on my website within the next few weeks as an article on how to do this sort of stuff.

    I’ve just downloaded the latest cocos2d and was wondering how do you build your project to target this latest release, mine still uses the old version?


    • paulsondev says:

      I did the same technique for hills on a few parts of the game…rotate box.

      Would love to see the game….put a link to you website so others can find it.

      All you have to do is delete the folder containing the cocos2d files then just add the new folder into your project…that should work.

      Do a backup – or compress your current project, just in case. But I did it that way before, and I believe that is what it says on their website.

  5. Steve says:

    Ok, thanks Jason, will try the cocos2D delete approach.

    I’ve done most of the ‘engine’ stuff for the game, just need put some bad guys on some of the platforms and stuff you have to push about – instead of having to collect things am thinking of having you need to push them off platforms down to the ground, and when everything has been pushed to the ground you gain entry to the next level…kind of a search and push, lol.

    I started my website but not done a great deal on it as yet, it is having time! Would be nice to put some of your articles on there 🙂 I’m hoping to write some soon. My main background is C++ developer, have been for 12 years since leaving university, although I’m also a trained teacher 🙂

    Just wondering if the rotate box will work for me as what I do in my code is when I detect a collision on the left or right side of the player and it is of a certain type (if( [object isKindOfClass:[StaticPlatform class] ] == YES) ) I don’t allow the player to move through it so to speak, thus stop the horizontal scrolling.


  6. chue says:

    Good game, just got it. still trying to get use to it. it feels kind of buggy though. might be me only. but good job.

    • paulsondev says:

      Thank you for downloading the game chue. What sort of things are buggy? I am going to be working on cleaning some stuff up, just want to work in the right areas.

  7. lzantal says:

    just bought your game. I really like it. I have one issue though. I can’t seem to jump high enough to get the second key.:) Is there any trick to it?
    I am very rusty with side scrollers 🙂
    Thank you for the great tutorials!!!!


  8. lzantal says:

    I bive it’s a bug. I tryed it for an other 2minutes and I could not jump up to the second key on the training level. It needs maybe a few pixels more to be able jump up

    Thank you


    • paulsondev says:

      Hello. On that second key it is part of your training for jumping. The second orb you can get is for a supper jump. There is some text instructions that pop up to explain but I will tell you.

      Hold (up) on the d-pad and then hit the jump button. You will jump MUCH higher. “Jump Boos” is the one of the powers you can get. The next is your attack shield. To use this hold (down) on the d-pad and hit the attack button.

      I hope this helps you out!!

      Thank you for buying the game!

      • lzantal says:

        thank you for the reply.
        Yes I saw the text and tryed it just again. And no it is not jumping high enough at all. I have the 3G iPhone if that makes any difference.

        Thank you


      • Steve says:


        The jump works fine for me, I can reach the key on the training level with the power boost, I’m using an Ipod touch.

      • paulsondev says:

        Well that is something to look at about the 3G phones

      • lzantal says:

        Just downloaded the update and tryed again your game. It is still not jumping high enough to collect the key on 3G iPhone. Are you planning to fix this or should I just wait to play with it after I get my iPhone 4:?:):)

        Also I really like the graphics.What did you use to make them?

        Thank you

  9. Steve says:

    Hi Jason,

    Trying to implement being able to allow my player to go up a slope, he goes down fine, but how do you allow a player to go up? How did you solve this? I’m really struggling with it, do I need to check normals or something?

    Many thanks,

  10. Steve says:

    Cheers Jason,

    Thinking of giving the slopes a miss though as I’ve no parser that will do box2d body defs for them, like I have mentioned before, my SVG parser will only do rectangles. I’ve looked at the inkscape xml for rotated rectangles and can’t work out what is going on, does the LevelSVG do rotated/slope box2d Body definitions – if so, is it simple?

    Thanks again,

  11. Steve says:

    PS – left a review on iTunes of your game 😉

  12. Pingback: PlanetOne – A 2D platform LevelSVG game | Sapus Media

  13. creativefusion says:

    Hi Jason,

    I’m pretty much in the same spot as you are when it comes this, done some html, php and java but that’s about it. Have spent quite some time with photoshop though, need to work more on the code part…

    Did you use box2d for this game? and tilemaps for objects? did you add the bg images separately?
    I’m working on a similar game but I am stuck at the moment. How many hours do you estimate you put into this game?

    I have a cool idea for the gyro function that I wanna try in my next project, but it requires 3d modeling skills, that I don’t have.
    I also have a few “app-ish” type of games that I’m looking for someone to team up with cuz it’s a little too much for one person to manage.
    I’m located in sweden.


    • PaulsonApps says:

      I am glad to hear you are working on programming for the Iphone.

      I did use Box2D for this game and tiledmaps for the foreground images and BG .png files for the background.

      I spent 3 months working on this game about 35hours / week. so 12X35 = 420 hours (as just a guess)

      The new gyro function in the new Iphone looks like it will be cool. If you want to email me about some of your ideas feel free at paulsongames (at) gmail (dot) com.

      I hope you download the game!

  14. Tony says:

    I am unable to play this game because it does not jump high enough in the tutorial when pressing A+UP arrow! It is short by about 8 pixels on my iPhone 3G, and based on the comments in the game I am not the only one with this problem.

    Are you going to fix it? I’d like to buy the paid version but cannot do that if the tutorial doesn’t even work 😦

  15. levi says:

    Cool game… Reminds me of Nintendo’s Kirby ( ), a striking resemblance.

    The D-Pad could use a little touch up to help people with the up+A jump. it doesn’t really give you good feedback as to which directions you are pressing on the d-pad, making the up+jump more difficult. I also imagine many people that can’t get it aren’t holding A long enough, I naturally let go of it too early and it was just like a regular jump, then I realized I had to hold A. hope that helps.

    Oh, and thanks for the tutorials you made, I made good use of one of them.

  16. Bob says:

    Hi Jason,

    Thanks for the tutorials! They helped me a lot! I even bought the game to support the blog!

    Cheers, Anton

  17. Martin says:

    Is the game not available on the AppStore anymore? Your download links don’t seem to work..

  18. says:


    I just found this page. The game looks interesting but could not find it on apps store. Do you know why?

    Best Regards,

  19. looks good and I really want to try it but I can not find it in the App Store,

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

%d bloggers like this: