RSS

Tag Archives: iphone

Pilabs gets global recognition for Feed Garfield

Im very proud to announce that pilabs has been globally recognized for its work on Feed Garfield. Feed Garfield was created on Cocos2DX and has been launched for iPhone/iPad and Android. Indeed, a great achievement for Munir Usman, CEO Pilabs Inc. and Amir Ali, CTO Pilabs Inc. for putting together a great team and assisting them to the completion of the project.
73202_494870120553502_691292280_n 270109_494869783886869_444748297_n 306043_494869840553530_754371414_n 483643_494870837220097_1816651796_n 484352_494869450553569_452305111_n

 
Leave a comment

Posted by on December 7, 2012 in Box2d, C++, Cocos2DX, Objective C, Xcode

 

Tags: , , , , , , , ,

Feed Garfield launched!!

Feed garfield has been launched on itunes. Its soon to be launched on Android as well. Stay tuned for the download link. The game is built on cocos2d-x and uses Box2D.

Team members: Munir Usman, Amir Ali Jiwani, Rumaisa Mughal, Aqib Zafar, Arqum Gadit and Muhammed Ali Khan (myself). A special thanks to Amir Ali Jiwani for the help, support and training he extended to the rest of the team to make this project successful. Thanks everyone who was directly and indirectly involved in the making of this game.

Here is a link to the game: https://itunes.apple.com/us/app/feed-garfield/id528205899?ls=1&mt=8

 
5 Comments

Posted by on November 23, 2012 in Box2d, C++, Cocos2DX, Objective C, Xcode

 

Tags: , , , , , , , , , , , , , , , ,

Viking is now featured on PASHAs website

Viking is now featured on PASHAs website

Indeed a great achievement for myself and the rest of the gaming team at Folio3, Viking is now featured on PASHAs website for getting 4311 downloads in only 10 days. Do visit the download page at LINK and the actual article at LINK

 
Leave a comment

Posted by on September 27, 2012 in Box2d, cocos2d, Objective C, Xcode

 

Tags: , , , , , , ,

Pokerabble

Pokerabble

Great News to share , “with Friends” !!!!!!!! We have successfully INVENTED a new game called POKERABBLE, a combination of the two best games ever invented by mankind, POKER -the best card game ever made and “ you know what “ – the best word game ever made .
This game is a special delight for poker fans because it features a great combination of strategy and luck! The gameplay is simple if you know how the play your favorite word game and poker.
We all know how to make 5 card sets in poker but here we bring you something extra -the 2 card and 3 card sets .The BONUS TILES on the board will bring another level of excitement to the game.
This game is so easy to learn that in minutes you will master it ,will you ??? Well we are not so sure about that but can surely say that it will be the MOST ADDICTIVE GAME YOU HAVE EVER PLAYED !!!

3 WAYS TO PLAY in this FREE version :

vs your room mate
vs MS POKERABBLE (your online computer competitor)-EASY
vs MR POKERABBLE -HARD

SPECIAL AND ADDICTIVE FEATURES

– Simple yet innovative gameplay where you can make any three types of poker sets – 2 card sets,3 card sets and normal 5 cards sets
– Special BONUS TILES on the board to use all the strategies.
– Use special suit bonus tiles and the 2x or 3x tiles space on the board to gain extra points
– Step by step help to learn the game in seconds
– Share your results on facebook and twitter

To play against your facebook friends and any random opponents download the paid version for only 1.99$. Primarily developed by Shoaib Abdul Ghaffar at SocialCubix Inc., my involvement in the project was to the extent of memory fixes and design guidelines. My heartiest wishes for Shoaib who poured in immense amounts of efforts in making it go through. Do pray for his mothers health who has been hospitalized for quite a while now. May she recover soon, Amen!

 
2 Comments

Posted by on September 18, 2012 in cocos2d, Objective C, Xcode

 

Tags: , , , , , , , , ,

The Titans

Coming soon to appstore is our game based on Roman Gods where Zeus, Poseidon and Haydes have come down to earth to take over temples. Initial release planned at 20 cleverly designed levels and extra features including wallpapers, intro movies, and promotional offers and updates with more levels later on.

Stay tuned 😉

 
Leave a comment

Posted by on September 18, 2012 in Uncategorized

 

Tags: , , , , , , ,

Artwork: Redefining creativity

Very few artists and illustrators are out there in the market who have actually catalogued their work and make it  apparent that they are second to none. One of my friends, Shakeel Awan, is from the elites of the Pakistani Gaming industry and has made significant contributions. Here are some of his characters, illustrations and scenes.

Shakeel has been collaborating with international teams and can be contacted for freelance work. You can check his complete profile at this link and on his deviant art page. He can be contacted through skype id: naqsh_gar

 
Leave a comment

Posted by on May 7, 2012 in Uncategorized

 

Tags: , , , , , , , , , , ,

Rope made from Box2D bodies

Here is a video of how a rope looks like made from box2d bodies. Earlier i has given a tutorial of how to make a rope using Verlets. This one, on the contrary, has bodies attached to it. Verlets can be used where only a visual simulation is required and the rope is not to interact with other bodies. That ways you can save up on performance. This will however take up more resources.

This slideshow requires JavaScript.

Some word on how it works

So here is how it goes. The objective of the demonstration was to create a rope out of box2d bodies. The rope would respond to collisions with other bodies and the walls of the world. Alongside, just for demonstration sakes, i also added a mouse joint so that you can drag the rope and see how it works.

Start off by defining some common properties for creating bodies:

//body and fixture defs are common to all chain links
b2BodyDef bodyDef;
bodyDef.type = b2_dynamicBody;
bodyDef.position = startPos;
b2FixtureDef fixtureDef;
fixtureDef.density = 0.1;
b2PolygonShape polygonShape;
polygonShape.SetAsBox(linkWidth,linkHeight);
fixtureDef.shape = &polygonShape;

and some others for a revolute joint

//set up the common properties of the joint before entering the loop
b2RevoluteJointDef revoluteJointDef;
revoluteJointDef.localAnchorA.Set( 0, linkHeight);
revoluteJointDef.localAnchorB.Set( 0, -linkHeight);

then we create the links in the chain

//use same definitions to create multiple bodies
for (int i = 0; i < 20; i++) { b2Body* newLink = world->CreateBody( &bodyDef );
newLink->CreateFixture( &fixtureDef );
PhysicsSprite* segmentSprite = [PhysicsSprite spriteWithFile:@"rope_seg_new2.png"];
[self addChild:segmentSprite];
[segmentSprite setPhysicsBody:link];


revoluteJointDef.bodyA = link;
revoluteJointDef.bodyB = newLink;
world->CreateJoint( &revoluteJointDef );


link = newLink;//prepare for next iteration
}

Then to create the circle that is attached to the rope. We do the following:

PhysicsSprite* circleBodySprite = [PhysicsSprite spriteWithFile:@"circle2x_bounce.png"];
[self addChild:circleBodySprite z:1];

//body with circle fixture
b2CircleShape circleShape;
circleShape.m_radius = circleBodySprite.contentSize.width/2 / PTM_RATIO;
fixtureDef.shape = &circleShape;
b2Body* chainBase =world->CreateBody( &bodyDef );
chainBase->CreateFixture( &fixtureDef );
[circleBodySprite setPhysicsBody:chainBase];

Then we define two revolute joints. One for the circle and the other one between the cirlce and the chain.

//a revolute joint to connect the circle to the ground
revoluteJointDef.bodyA = referenceBody;//provided by testbed
revoluteJointDef.bodyB = chainBase;
revoluteJointDef.localAnchorA = startPos;//world coords, because m_groundBody is at (0,0)
revoluteJointDef.localAnchorB.Set(0,0);//center of circle
world->CreateJoint( &revoluteJointDef );

//another revolute joint to connect the chain to the circle
revoluteJointDef.bodyA = link;//the last added link of the chain
revoluteJointDef.bodyB = chainBase;

//the regular position for chain link joints, as above
revoluteJointDef.localAnchorA.Set(0,linkWidth);

//a little in from the edge of the circle
revoluteJointDef.localAnchorB.Set(0,linkWidth);
world->CreateJoint( &revoluteJointDef );

Now that we have our chain ready. We will add mouse joints upon tap. For that i created this function that will fetch the body that was under the tap location:

-(b2Body *) getBodyAtLocation:(b2Vec2) aLocation {
for (b2Body* b = world->GetBodyList(); b; b = b->GetNext()) {
b2Fixture* bodyFixture = b->GetFixtureList();
if (bodyFixture->TestPoint(aLocation)){
return b;
}
}
return NULL;
}

and this is how the mouse joint is installed

if (mouseJoint != NULL) return;


UITouch *myTouch = [touches anyObject];
CGPoint location = [myTouch locationInView:[myTouch view]];
location = [[CCDirector sharedDirector] convertToGL:location];
b2Vec2 locationWorld = [self toMeters:location];
freeBody = [self getBodyAtLocation:locationWorld];

//hit test point in box2d
if (freeBody) {
b2MouseJointDef md;
md.bodyA = referenceBody;
md.bodyB = freeBody;
md.target = locationWorld;
md.collideConnected = true;
md.maxForce = 100.0f;

mouseJoint = (b2MouseJoint *)world->CreateJoint(&md);
freeBody->SetAwake(true);
}

Here is a link to the source code and here is a link to the video of how it works. Here is a link to another source code that doesn’t use mouse joint and rather translates swipe variables (angle and distance) to move the body.

 
30 Comments

Posted by on March 24, 2012 in Box2d, cocos2d, Objective C, Xcode

 

Tags: , , , , , , , , , , , , , , , , , , ,

Catch the Egg – Game build in 90 minutes

I saw a game on Gamegeckho and like it. It was small in scope and size but was fun to play. A good starting point for someone to learn to code. So a friend of mine asked me to make it for him so that he learns from it. Here it is then, the entire thing in 80 minutes including graphics and cropping and in under 250 LOC 🙂

This slideshow requires JavaScript.

Source code: Link

 
2 Comments

Posted by on February 14, 2012 in cocos2d, Objective C, Xcode

 

Tags: , , , , , , , , , , ,

Viking Adventures: Coming Soon

This slideshow requires JavaScript.

Well, finally, the viking is being unleashed. With 45 engaging levels and 45 rewarding princesses, the first pool of the game will be free where as the other 2 can be purchased for only 99 cents. Currently, there are 9 obstacles that make up a level. the objective of the game is to blast the viking through the levels and reach the top of the castle. We will also be coming out with new features and levels within 4 months of the first release.

Special thanks to Aamir Ibrahim, who guided the team through out and directed us to the very end and Adnan shaikh, who polished the graphics into what it looks now.

 
Leave a comment

Posted by on August 21, 2011 in Box2d, cocos2d

 

Tags: , , , , , , , , , , ,