Gravitation; iPhone App

Description: Gravitation was my first iPhone app. It was initially developed as a prototype in C sharp before I made the jump to iPhone. The engine although simple was made from scratch, I also made all the graphics.

Technologies: iPhone, ObjectiveC, C Sharp, Physics, Graphics
Technologies: iPhone, ObjectiveC, C Sharp, Physics, Graphics
Project Size: 3/5
My Responsibly: Prototype C Sharp, Prototype Physics, Switch to iPhone, Objectve C, Physics, Graphics, Game State saving, High Score saving.


Description: Gravitation was my first iPhone app. It was initially developed as a prototype in C sharp before I made the jump to iPhone. The engine although simple was made from scratch, I also made all the graphics.

Prototype
I decided a while back to move into iPhone development. To keep things simple for my first iPhone project and to allow me to prepare while I was getting the mac, iPhone, developer account etc. I decided to write a quick little C# program that containing the core mechanics of the iPhone app I wanted to write.
The game is based on Newtonian gravity there are a number of bodies with gravity in the world, naturally attracted to each other and the player has the ability to move a gravity Field to manipulate the objects. The user also has nukes that can blow any of the bodies into tiny little pieces.


Concept
The Idea of the game is you control a gravity ship using it's gravity move the asteroids and comets in the area around and draw them together to make planets and use nukes to destroy them where necessary.
    Each object is made up of rock, ice and metal in varying quantities. Each level involves different tasks like solving sorting and assembling. Eventually creating a brand new planet.


Implementation


The main character had a specific problem to solve. The main way the player interacts with the game is by moving the main character around, essentially he is the curser

Gravitation Hero / Target curser
Objects like rocks are attracted to the ship by gravity but are not affected by the ships gravity inside the inner circle. The player can move the ship by moving there finger on the screen and draw objects behind them.


     





The player can also use nukes to blow objects into small rocks, metal pieces and ice and make gravity wells which can steer and suck in objects for a short period of time.
Gravitation iPhone icon
You can see some of the core mechanics, bodies of differing materials, gravity drawing them together. the players ship has gravity to allow you to steer the rocks. Nukes allow you to blow them apart again. Gravity wells allow you to place points of strong gravity and 'Zero' allows you to stop momentum to get a handle on the situation.


Here you can see how you can use the ships gravity to control how an object moves.


This is probably my favorite level, all you have to do is get the rocks into the box at the bottom in the smallest pieces you can, you loose points for large piece. Sounds simple but gets hectic pretty quickly. I particularly like when things go into orbit around each outer.


Here you have to use gravity wells to steer the objects into the planet. I like this because it demonstrates using gravity to slingshot an object.

The game is designed so it can be used for short period of time on devices that don't have multitasking, so upon leaving the game save the game state so it can be loaded seamlessly again. it also keep a high score table which is saved and loaded.

Conclusion
For my first iPhone app it think it's pretty good. I'm quite happy with the graphics, the gameplay however could be clearer, a lot of player had trouble understanding what to do with the game and to be honest the gameplay itself was a bit of an after tought, after the idea of the physics. It is quite fun to just play with the physics without playing any of the puzzels making asteroids go into orbits for example.