A preview of Nanili level 75.

Nanili

Pinnguaq

Pinnguaq

About the author

Pinnguaq Association, a not-for-profit organization, incorporates STEAM (Science, Technology, Engineering, Arts, Math) into unique learning applications that promote storytelling, health, wellness and growth with rural and remote communities. At its core, Pinnguaq embraces diversity and creates opportunities in order to empower all people.

The web version of Nanili (above) is supported on Chrome, Firefox, Safari and Edge. If you are using Internet Explorer please use either Chrome, Firefox, Safari or Edge to play Nanili.


Introducing Nanili!

Nanili is a game developed by Pinnguaq that introduces you to the art of coding. It does this by encouraging you to find the most elegant solutions through creating procedural functions and loops. Are you ready to begin?

The aim of the game is to get the character to the campfire in the most efficient way possible (using as few blocks in the input bar as possible). Each level presents you with a maze showing the locations of the character and the campfire.

Direction Blocks

On each level you will also be given “direction blocks” which you’ll use to move your character around the maze.

Nanili direction blocks showing 6 forward arrows, 1 backwards arrow, 2 left arrows, and 1 right arrow.
Here you can see 6 forward arrows, 1 backwards, 2 lefts, and 1 right arrow.

Each arrow makes the character go one step in that direction. Above the direction arrows is the input bar.

The input bar.

Drag and drop the direction arrows into the input bar and click the green ‘play’ button. You’ll see the character move through the maze.

A preview of Nanili level 3.

Can you get him all the way to the campfire?

Functions and Loops

On some levels you will see ‘lettered blocks’.

Example of Nanili letter block.
Here is a function represented by ‘A’

These blocks (A, B, C, D, etc) allow you to create functions. You can move the direction blocks onto a letter to create the function.

Example of a Nanili function.
The forward direction key has been dragged into the ‘A’ function. Now ‘A’ means ‘go forward one step’.

Then drag the function letter up into the input bar. Once a function block is in the input bar, you can increase the number of times it “runs” by changing the number in the letter block. This creates a ‘loop’ of that function.

A preview of Nanili level 12.
The ‘A’ function has been dragged up into the input bar and set to loop 9 times. This will get the character to the ice ball.

Ultimately you can use functions and loops to ensure that there are as few blocks in your input bar as possible. Thus creating a more elegant and efficient solution.

Nanili level 12 solution.
There are 5 blocks in the input bar to solve this maze. The ‘A’ function, looping 9 times to go 9 steps, then turn right, then forward 1 step, then turn left, then forward 1 step. We’ve reached the input goal of 5!

At the top right of the screen you will see the ‘input goal’ and the number. This is the number of blocks you want in the input bar for that level. Can you complete the level with even fewer blocks?

Obstacles

There are a few obstacles that could stand in your way such as walls, movable ice balls, ice blocks, and avalanches.

A preview of Nanili level 50.
Level 50 shows all types of obstacles. Can you get to the campfire using 8 blocks?

Walls – You need to move around these.

Moveable ice balls – You can move a ball out of your way until it hits another obstacle.

Ice blocks – In order to explode an ice block you need to reach a trigger. Remember, certain triggers will explode certain ice blocks.

Avalanches – You need to collect a shovel before reaching an avalanche so you can dig yourself through it. At the top right of your screen you will see a counter of how many shovels you have. Remember, if you pass a caution sign you will cause an avalanche to happen!

The levels get trickier and trickier as you go. They are marked as Easy, Medium, and Hard to help you tackle them.

A preview of Nanili level 75.
Level 75 is one of the trickier ones.

Good luck, and have fun learning to code!


You might also like