← All Projects

Stealthy Ninja

A top-down maze action game for Android, built for a client who designed it after the DOS game Kroz. A ninja fights through eighteen dungeon levels of skeletons to reach the stairs.

  • 18

    levels, each opening with its own goal

  • 4

    skeleton types, from one hit to four

  • 9

    interface languages, Japanese and Korean too

  • 5

    kunai fanned out by a single throw

Product
A client's game, built by us
Platform
Android phones, landscape
Engine
Unity 2018, C#
Our part
All development, from controls to purchases
Status
Finished, not released to the store

The brief.

Context

Stealthy Ninja is a top-down action game set in stone mazes. The client designed it after Kroz, a DOS game from the late 1980s. Each level is a maze full of skeletons and loot, and the way out is a flight of stairs. Run for the exit, or stay and collect coins, chests and scrolls first.

Challenge

The client brought the idea and the rules, and we built the game. A level had to stay readable on a phone held sideways, with skeletons chasing the ninja down narrow corridors. Coins, upgrades and lives had to add up to one economy that makes old levels worth replaying. The interface had to work in nine languages, Japanese, Korean and Chinese among them.

Approach

We wrote it in Unity and C#. The ninja moves with an on-screen joystick and fights with a sword, shuriken and kunai. Skeletons find their way to him through each maze with Navmesh2D pathfinding. Coins pay for potions, ammunition, upgrades and weapon skills. Saves are encrypted on the device, and the date for daily rewards comes from a time server rather than the phone.

Find the stairs, or stay for the loot.

Every level is a maze with stairs at the far end. Between them are skeletons, coins, chests and scrolls. Head straight for the stairs and the level is done. Stay longer and you leave richer, and any finished level can be played again.

  • The sword never runs out. Shuriken and kunai are counted, and ammo boxes in the maze refill them.
  • A kunai throw sends five blades, fanned out 45° apart.
Sword
Loot

Skeletons that come looking.

Four kinds of skeleton take one to four hits, and the toughest throws kunai back. When the ninja comes close, a skeleton plots a path to him through the maze and gives chase. From level 6 they move faster, and from level 16 they are 60% quicker. The green potion makes the ninja invisible to them.

Eighteen mazes, each with a goal.

Each level opens with its task: Find the scroll, Get to the secret, Choose wisely, Hard level, PACMAN!. Hidden walls break open and teleports jump across the map. Later levels have fewer skeletons and more traps, so it pays to know where you will be spotted.

PACMAN!
Levels

Coins pay for the next run.

Coins collected in the mazes are spent between levels. Upgrades and weapon skills make the ninja stronger for good. Scrolls found inside levels teach powers the shop does not sell, which is the reason to go back for them.

  • Shop

    Red, green and blue potions, shuriken and kunai, with free items to claim once a day.

  • Upgrades

    Speed, the red potion's healing, and how long and how well the blue and green potions work.

  • Skills

    Kunai that pass through enemies, poisoned kunai, a shuriken that circles twice, unlimited lives.

  • Scrolls

    Permanent powers, such as more health or a faster sword, found only inside levels.

  • Lives

    Five lives. Once they run out, one comes back every hour.

  • Purchases

    Coin packs of 100, 500 and 1,000, and a purchase that turns ads off.

Terracotta menus, dark stone mazes.

The menus sit on a warm terracotta field under the red and cream logo. The mazes are near-black stone, so the bright cartoon sprites read at a glance: gold coins, green-eyed skulls, the blue glint of the blades. One brush display font runs from the buttons to the level titles.

  • Terracotta
  • Logo red
  • Cream
  • Dungeon stone
  • Coin gold
  • Skull green
Menu

Small systems, one per job.

Input, combat, enemies, inventory, shop and saves are separate C# components. The menu scene holds the hero and the interface, and each level is a scene of its own. The game reads the date from a time server, so changing the phone clock does not unlock daily rewards or restore lives.

  1. Input

    An on-screen joystick moves the ninja; buttons swing the sword, throw and drink potions.

  2. Levels

    Eighteen level scenes and a boss scene, entered from the menu scene that holds the hero.

  3. Enemies

    Navmesh2D paths through each maze, recalculated while a skeleton gives chase.

  4. Languages

    Smart Localization with nine languages, switched in Settings.

  5. Saves and money

    Encrypted INI saves on the device, AdMob interstitials and Unity IAP coin packs.

What we built.

Our part

  • Hero controls and combat
  • Enemy AI and pathfinding
  • Level scenes and level mechanics
  • Shop, upgrades, skills and lives
  • Nine-language interface
  • Encrypted saves, ads and in-app purchases

Stack

Game
  • Unity 2018
  • C#
Enemy AI
  • Navmesh2D pathfinding
Localization
  • Smart Localization
  • 9 languages
Monetization
  • Google AdMob
  • Unity IAP
Platform
  • Android

Got a game on paper?
We'll build the rest.

Bring the idea and the rules. We write the game around them. Tell us about yours.