Info

Year

2018 - To be released: 2020

Languages

C++, Python, Cocos2d-x Framework

Platform

iOS, Android

Back to Projects

Overview

Go Penguin! Go! combines puzzle solving with cute Antarctic animals where the end goal is to help get an emperor penguin chick back to its mother. The primary aim is to be a fun game but through the use of real scientific data the game also subtly teaches the player about the Antarctic.

Helping that penguin get home!

Helping that penguin get home!

The maps, locations, placenames and animal designs are all based on public datasets from the British Antarctic Survey and the UK Antarctic Heritage Trust.

Using a Weddell seal to get an Emperor penguin chick back to it's mother. Just like real life, mostly.

Using a Weddell seal to get an Emperor penguin chick back to it’s mother. Just like real life, mostly.

Gameplay

The simple premise is that on every level you need to get one or more penguin chicks to a mother. This can be solved using numerous items including a variety of Antarctic animals, weather and objects that act as bouncing platforms, flying transport, and elevators. By placing these throughout the level you can guide the chick through the level by sliding along ice, bouncing off skuas, or catching a ride with an albatross.

Using Wandering Albatross, Brown Skua, Weddell Seals, Wind, Ice, Rocks, Exploding Ice Fissures, Crevasses and a little ingenuity will allow players to solve upwards of 100 levels of penguin action.

Players follow the chick across the continent visiting all of the key science and research locations in the British Antarctic Territory. They also venture out to many of the Antarctic Treaty partner locations while finally finishing up at the South Pole.

Players are rewarded with achievements, leader boards, and loads of Antarctic information. The game will be released initially for Apple iPhones and iPads with Android following shortly afterwards.

Game starting screen. A friendly introduction to the penguins!

Game starting screen. A friendly introduction to the penguins!

Look at the little guy go!

Look at the little guy go!

A fairly accurate rendering of the Antarcitc coastline

A fairly accurate rendering of the Antarcitc coastline

Real locations and descriptions

Real locations and descriptions

Scenic vistas based on real geography and features

Scenic vistas based on real geography and features

Cute but realistic animal drawings

Cute but realistic animal drawings

Maybe not so real actions!

Maybe not so real actions!

Did I say cute?

Did I say cute?

Skuas do really target penguin chicks.

Skuas do really target penguin chicks.

That's a real tent in the background.

That’s a real tent in the background.

The game tries to capture the colours of the real antarctic atmosphere

The game tries to capture the colours of the real antarctic atmosphere

Technical Details & Python Tooling

The game is built in C++ using the cocos2d-x framework. This provides convenient bindings into the most relevant platforms such as iOS, Android and desktop clients.

Level Design

The level designs are made using custom python applications that let you place land shapes and game characters.

The unique flowing landscapes are built using Google Sketch-Up and are exported to a json format for use in the level editor and in the game.

Level Designer - allows placement of objects, shapes and setting win conditions

Shape Editor - correct final vertex placement after building in SketchUp

Each of the levels and shapes can be built and tweaked using a custom GUI made in Python with wxPython.

Map Images and Data

With the game’s emphasis on combining fun and accuracy, the locations in the game are all taken from real world data.

There are going to be approximately 150 levels in the game that take the player on a journey around the coast of Antarctica before making the journey to the south pole.

The Antarctic map background is generated from data from the Antarctic Digital Database. This is a vector data source that provides coastline and hill shading digital elevation map. This data is processed using QGis and some custom python to produce a nicely coloured map.

The level markers and dotted track are generated on-the-fly from level data. The game uses the SCAR Composite Gazetteer of Antarctic to get names, descriptions and GPS locations. The actual place marks on the map are converted from either polar stereographic projection or mercator projection into a game coordinate system for drawing the level map using some custom python scripting.

The level data is configured with a yaml specification file which links the level design json file with a real world location.

Alarm

Alarm

  - id: 4
    name: Adelaide Island
    events:
      - *m0009 # Skua
      - <<: *level
        id: "04e01"
        scar_id: 9936
        level_id: 10401
        version: 100
      - <<: *level
        id: "04e02"
        scar_id: 3184
        level_id: 10402
        version: 100

Using all these data sources, the game can generate nice maps, provides historical and educational information and provide a nice overview of all the nations that cooperate in scientfici research.

Data

Antarctic Digital Database

Antarctic Digital Database

This data provides highly accurate GIS data including detailed contours. Using QGis this data was prepared and styled from the source data.

SCAR Antarctic Gazetteer

SCAR Composite Gazetteer of Antarctic

This is the official placenames database of the Antarctic. Each geographic feature, station and placename are availabe for importing into GIS tools. The placename and summary of the location that the player visits are plotted using the data from the SCAR Gazetteer.

The locations selected were picked based on including stations from all nations that do research in antarctica and a selection of the most popular places visited by tourists.

Alarm

Alarm

HSM - Historic Sites and Monuments

Historic Sites and Monuments

The most popular places in Antarctica usually have special protection enforced by the Antarctic Treaty. The game gives information about these historic sites.

Alarm

Alarm

Animal Proportions

Antarctic Wildlife

While the characters are cartoonish, their proportions and general style are kept in line with the real average measurements of the animals.

Name Min Max Avg Min Max Avg Ratio Additional Dimension Name
Emperor Chick           0.59 1.00 For game 1/2 adult Aptenodytes forsteri
Emperor Female 22 45 33.50 1.15 1.22 1.19 2.00   Aptenodytes forsteri
Weddell Seal 400 600 500.00 2.5 2.9 2.70 4.56   Leptonychotes weddellii
Skua 1.63 1.78 1.71 0.56 0.65 0.61 1.02 1.21 wing span Stercorarius antarcticus
Albatross 6.35 11.91 9.13 1.07 1.35 1.21 2.04 2.51-3.5 wing span Diomedea exulans

Video Preview