The World is Ugly is our attempt to come up with an innovative exercise solution which combines exploration, photography and problem-solving in one neat package, with a healthy competitive edge added for good measure.

What it does

The game begins with the player recieving a message on the app (which at the moment unfortunately only supports iPhones). The message contains a geographical area and a riddle, and the player must travel their and take a photograph containing the answer to the riddle. This photograph is "judged" using Google Cloud's Vision image analysis platform. Successful players progress to the next level, whereas those who take the wrong photograph or stray outside the designated area face a forfeit. The forfeit is as simple as it is harsh - a random contact is selected from the player's phone, and this contact recieves a text (via Twilio) containing a link to a Google Cloud-hosted instance of one random photograph also taken from the player's phone.

How I built it

The platform is a simple combination of an iOS app developed in Swift with a Google Cloud service written in NodeJS. Most of the "heavy lifting" occurs server-side, with the client app being focussed largely on delivering the gameplay aspects.

Challenges I ran into

Due to time constraints and a lack of team knowledge, we have only been able to develop The World is Ugly for iPhones.

Accomplishments that I'm proud of

Learning how Promises work in Javascript - Charlie

What I learned

An awful lot about Google Cloud and the various services it offers, as well as iOS development for those in the team who did not have a background in this area.

What's next for The World is Ugly

In an ideal world, an Android app and support for more cities than Nottingham.

Share this project: