top of page

Princess Tower

Context

For my interactive media and design studio course, our final project for the course was a mock hackathon project. We were to come up

with ideas for an app that would also be a critical intervention in society and pitch them to the rest of the class. After pitching our ideas, we voted on the best eight projects, and then ranked our favorite projects (indicated which project we wanted to work on). I got my first choice, an app called "Princess Tower", an idea pitched from David Hudson.

Year: 2018

Role: Developer 

Tags: iOS App Prototype, Objective C, Research

Team:

  • Project Manager: David Hudson

  • Developers: Javad Goudarzi & Andrew Mcdonald

  • Designers: Angela Casidsid & Steven Prichard

Story

Screen Shot 2018-12-13 at 6.53.28 PM.png

The story of our app plays off the classical trope of a locked up Princess needing to be saved from the brave Prince. Except this time, the Princess' captor is her own father, the King, who locks up his daughter in a tall tower as a test for any potential Princes. Whichever Prince can rescue the Princess, will be given her hand in marriage. The Princess needs to save herself this time, and does this by dropping books on the Princes from above the tower. The aim of this story is to subvert this classic trope, and show how messed up the implications are, such as the consideration of the Princess as the reward in classic plots.

Development

My fellow developer and I divided up the coding work into two major portions, which were the enemy AI, and the books physics. We developed our app using the program called Xcode, and coded it in the Objective C language. In order to figure out the books physics, our instructor gave me another app he had developed with a student from a past quarter, which exhibited behavior similar to what I was going for with the books physics. I essentially had to hack this app, and take the useful portions that applied to the books physics and make adjustments to get it working. I did this by dividing the process into a few steps.

Step 1: Getting a Single Book to Fall

The first step was to get a single book to fall. This was not very difficult, and I took several methods from the app I hacked, called emojiToss, to get this working. The methods I took basically added the physics behavior, and all I had to do was an add an array of images for the books, and then have this array be the object the methods call.

Screen Shot 2018-12-13 at 12.22.59 PM.pn

Step 2: Getting the Books to Disappear 

The second step was to get the books to disappear upon making contact with the ground or an enemy. This was considerably more difficult, and required adding a new method, that would remove the images from the game, and adjusting the collision physics, so they would be removed after making contact with either the ground or an enemy. 

Step 3: Merging Code

After completing the desired behavior of the book's physics, the final step was to marge the project with my fellow developer to get a full app prototype going. At first, we planned to use Github and version control. However, doing this with Xcode was a struggle, and with our limited time frame, it didn't make sense to debug all our individual issues. Instead, I just sent a zip Xcode file of my completed work to my fellow developer, and we merged the code together.

Method that manages the collision behavior for the books after they hit the ground or an enemy

Working prototype with Book Physics. Note that the books do not disappear upon making contact with ground and are stacking.

Screen Shot 2018-12-13 at 6.23.35 PM.png
Screen Shot 2018-12-13 at 6.31.58 PM.png

Working prototype with disappearing 

books!

Final Prototype

Screen Shot 2018-12-13 at 6.53.28 PM.png

Opening screen of the app.

Screen Shot 2018-12-13 at 6.54.05 PM.png
Screen Shot 2018-12-13 at 6.54.09 PM.png

How to Play -1

How to Play - 2

Screen Shot 2018-12-13 at 6.54.26 PM.png

How to Play - 5

Screen Shot 2018-12-13 at 6.54.17 PM.png

How to Play - 4

Screen Shot 2018-12-13 at 6.54.13 PM.png

How to Play - 3

Screen Shot 2018-12-13 at 6.54.31 PM.png

How to Play - 6

Screen Shot 2018-12-13 at 6.50.00 PM.png

In Game screen

Screen Shot 2018-12-13 at 6.53.56 PM.png

Level Complete Screen

Screen Shot 2018-12-13 at 7.13.33 PM.png

Game Over Screen

bottom of page