A prototype for the Apple TV, written in Swift, created in collaboration with Byron Hallett & John Bailey. Ziggurat was designed to be a chess-like, role playing game for a group of players to play locally. Players create & customise characters by unlocking abilities and items, creating a sense of progression and growth. The game is arranged in groups of levels, players must defeat all the enemies in a run of levels to progress to the next group. At the end of a group of levels there is always a boss character to defeat. The boss character awards a mask item giving player a passive bonus for future levels.
Character creation screen mockup
Character creation, ability selection
One of our core design goals was to create an experience where players were going on mini team adventures, encouraging communication, learning and team balance. In one round, a team would journey through a group of levels, gradually gaining experience and unlocking abilities. The team must defeat a group of levels in one area without the whole team dying, or they must start from the beginning.
Some unique features of Ziggurat...
Concept art, testing scales
Prototype screenshot, ability selection
Players are initially presented 6 unique abilities and 3 hidden, unlockable abilities.
Adding randomisation to the ability selection adds to the replayability of each game, as well as encouraging players to discuss a strategy when creating a well balanced team.
For example, one player may randomly receive a healing ability, while no other players have any healing. This should encourage the player to focus on healing and movement, so they can create a strong support character.
Other players will hopefully want to balance that character out by creating high damage and health characters, for instance.
During the start of the game when abilities are randomly assigned, all players can vote to re-randomise abilities for all player.
Every ability has 3 gem slots, the first gem assigned to it unlocks the ability. Every gem after that upgrades the ability in different ways, depending on the ability,
Upgrading certain ability classes also awards the character with movement capabilities. In a chess-style, turn-based game like this, tile movement can be very important.
For example, the ability to move diagonally can help players get away from enemies unable to move in the same way.
Additionally, abilities have different ranges and will allow horizontal/vertical OR diagonal targeting. These targeting ranges will in some cases be upgraded as the ability is leveled up.
Heart Strings
Landslide
Heroic Moment
Barricade
Piercing Needle
Withering Touch
Temporal Glitch
Mirage Strike
Shard Trap
Chain Lightning
Teleport
Reconstruct
Heart Strings
Damage over time
Landslide
Damage and slide your enemy away! Enemy is dazed for 1 turn if there is no slide space
Heroic Moment
Your great power attracts enemies
Barricade
Shield yourself or a teamate
Piercing Needle
Hit all enemies in a horizontal/vertical line
Withering Touch
Ranged Poison! 30 DMG each turn
Temporal Glitch
Extra move, costing 0 mana!
Mirage Strike
Quickly strike your enemy then retreat to safety. Your mirage distracts them.
Shard Trap
Diagonally place a movement stopping Shard Trap
Chain Lightning
Electricity passes through up to 4 enemies
Teleport
Teleport to a tile some range away from you
Reconstruct
Heal yourself or a teammate in diagonal range
Since the AppleTV only ships with 1 controller, we decided to implement a custom app on iOS that could connect to the game. We imagined players would connect with their iPhone, iPad or Apple Watch and control their cursor that way. Similar to the Jackbox Party Pack.
The framework we used is below. VirtualGameController