Embark through the ruins of fallen fantasy civilisations, slip through the cracks of time and reactivate an ancient device that will change the past forever. Swap between four distinct characters as they each carry their own burdens, yet strive to work together, in Abtohka: Kingdoms of Despair.
More about the Project
Studio: Team Pengala
Platform: PC & Mac
Tools: C#, JSON & FMOD
Development Time: 6 Months (+)
Team Size: 4 People
Designed and Developed over 6 months, Abtohka was a passion project of four like-minded individuals, with my role as Lead Programmer and Technical Designer.
This was my first stab at indie development, and we were all heavily involved with each stage of the process from core concept to narrative design, yet my most notable tasks were making the AI - a custom 2D A* pathfinding algorithm made in Unity with complex and unique behavioural trees for each character. Abtohka boasts an atmosphere further exemplified by its rich realistic characters and game world, elements the games core loop and design pillars set out prior, and I was likewise heavily involved in its dynamic puzzle and tutorial design, helping create the levels and worlds within.
Distinct, complementary, playable characters - Every Traveller has unique abilities making them work together harmoniously, and is approachable, engaging and challenging.
Efficient teamwork - Completing the levels requires the satisfying utilisation of strategic party management, with numerous stances being micro-managed in order to progress.
Always engaging, never draining - Puzzles within the world consist of environmental, combat and maneuverability challenges. These are arranged into self-contained Chambers, several of which will have multiple solutions. All puzzles are non-obvious but none are so taxing they should cause the player to become stuck for an excessive period of time.
Exploration & excitement - Exploring the dark fantasy world of Abtohka is intriguing and mysterious, an atmospheric setting full of atmosphere, hidden details and secrets...
This was by far the biggest project I've worked on, and we eventually presented it at Brunel's Digital Design Show. Below I'll break down some mechanics and elements from the game, and how I approached a couple of them.
Abtohkas initial idea revolved around the unique preferences of four individuals working together, our aim to make something we could all enjoy, from puzzles and action roleplay, all the way to RTS mechanics. The choice to work together came after the intense Game Jam that resulted in Star Opera, and we were all looking forward to what we could create next. After many conceptual design meetings, sleepless nights, and a house filled with post-it-notes and scribbles on the wall, we managed to end on a dark fantasy, 2D action/adventure puzzle game called Abtohka: Kingdoms of Despair.
The name derives from the prefix Ab (appearing in Latin/Greek/Sanskrit and others having a
multifaceted meaning: ‘away/abnormal/outside of’) + toh (an old English word meaning ‘to’ implying travel) +
Ka (an ancient Egyptian concept of the fragile soul within the human body). The intention of these meanings
to infer in the player a world that sounds ancient, surreal, old, mystical and vast.
Throughout its early design, and even later in its development process, I took charge to bring these characters to life by starting to prototype and create their core concept in Unity. As a group of designers, we valued quick iterations of concepts, the earlier in development you change and adapt your core design, the less time will be lost in the future. This responsibility fell on me, the sole technical designer and programmer, to then take these rapidly adapting ideas and create technical versions to test them, their success depending on my confidence and ability to then expand their design through the upcoming six months.
This swiftly moved on to creating high-fidelity prototypes, focusing on the AI and how each character behaves within the world to further exemplify their realism; when controlling one character within Abtohka, the other three can follow, attack, and even investigate the environment by their own accord. These distinct personalities opened up each character to behave in unique but predictable patterns, allowing us to explore more complex puzzle designs whilst letting me explore AI at my own pace.
As I was so intimately involved with the technical side of the design, the responsibility to not only program and implement numerous mechanics but likewise make sure they're enjoyable for players fell upon me. This resulted in me working closely with the Lead Designer to make sure the tutorial allowed each character to truly shine, letting the players embrace the magic circle to fully immerse themselves, whilst allowing them moments to breathe as they descend into this whimsical dark fantasy world.
As covered earlier, instead of having a character selection screen, or being forced to micro-manage each character manually, Abtohka prides itself
in its AI and Pathfinding, allowing each character, enemy, and even puzzle in the world to function seamlessly without player input, even with something as simple as going
through doors to another map, or fleeing combat; instead of waiting for direct commands, the AI will actively follow the players choices.
Lettings the players solve each encounter by themselves while not getting hindered by the AI was a challenge, and it ultimately resulted in the creation of "Stances", a direct way for players to influence each action the AI makes. This transformed each each puzzle into a more enjoyable and predictable experience.
Combat, however, was a completely separate experience, one where I could truly let the AI wreak havoc upon the enemy, and depending on whether they were in the Attack or Support stance,
had vastly different outcomes. This resulted in each character having numerous uses for their abilities, from a healing/damage toggle, to a
slow down/speed up debuff, and based on their stance, the characters would update their playstyle accordingly.
Each object within the game contained the same variables, from custom physics to elements such as weight, health, and resource points, with each character possessing different weight and movement attributes based on their appearance. This also allowed each ability to have vastly varying effects based on who its used to, for example, the Brute throwing the Oracle into the air would make her fly, whilst him throwing the Warden would be much less impactful.
The Oracle has a supportive role within the party. Whether she's crawling to hidden areas while the party holds off adversaries, or using her time magic to buy more time, with her distinct playstyle and ability to die rather quickly allowing for a tendency to avoid aggression, you better hope her passive activates in tight spots. In terms of puzzle solving, The Oracle’s time magic allows for adept manipulation of the speed of moving obstacles and physics.
Chrono-Wrench - Fires a projectile that on a successful hit, breaks the flow of time around an entity for a limited time (approx 5-10 seconds).
Backtrack - Summons a bubble in time next to the Oracle. Whatever entity walks through the bubble will absorb it, then return to its original location within a limited time (approx 5-10 seconds).
Crawl - Oracle crawls through an crawlspace and emerge a short time later somewhere else.
Time Wrinkle - The Oracle has a limited usage of Time travelling magic to dodge hits from Adversaries, taking no damage.
The Brute has the tank role within the party. Able to withstand constant assaults from adversaries, the Brute can buy precious time for the other party members to complete puzzles and maneuver complex obstacles with his assistance. He doesn’t enjoy fighting, but has a proficiency at it, instead knocking back Adversaries rather than cutting them down. In terms of puzzle solving, The Brute’s Abilities allow for destructive effects on the environment.
Pummel: The Brute throws his fists into an Adversary dealing moderate damage with significant knockback.
Propel: Grab a Traveller/Adversary/Obstacle and hurtle them horizontally.
Transmute: The Brute turns into a sphere of foliage and nature.
Enflowerment: The Brute’s aura of nature makes a plant regrow in an area. There are three kinds of plant with a combat/maneuverability/environment effect. This allows for the players to access different parts of the level that open up.
Nature’s Son - When stationary for a few seconds The Brute’s starts to grow roots and vines, allowing the Travellers to climb upon him.
The Warden has the primary damage-dealing role within the party. Able to devastate groups of enemies with his rapid attack speed and vast utilisation of different weapons and Abilities, the Warden can be useful in various ways, whether that’s opening up pathways covered by Adversaries, or dispatching Adversaries to allow his party more time. In terms of puzzle solving, he has multifaceted abilities using his equipment (weaponry, shields, hookshot, etc).
Wield: When standing over any Crude Weaponry (old rusted weapons) the Warden will activate Wield, equipping the item.
Strike: Whilst Wielding he will use Strike till the Crude Weapon’s strength depletes and it breaks. When not Wielding he will use his standard Wing Blades which do not deplete or break.
Fortify: The Warden briefly summons his trusty Towershield, from his Fallen Kingdom’s past, placing it firmly into the ground. This blocks Adversaries and Travellers from passing by, until the Towershield sustains enough damage to be knocked to the ground. Once knocked down, Travellers may jump on it to surf on it for a short while.
Hookshot: The Warden fires his silk web to a hook, then lifts himself upwards.
Berserk: The Warden speeds up with each successive Strike that hits an Adversary or destructible Obstacle.
The Apostle is a jack-of-all-trades within the party. Whether he’s healing the Travellers, or damaging the adversaries, the Apostle can adapt to whatever kingdom he’s currently in, utilising the power of their Altars to pick up a certain mechanics to help the Travellers in their journey. In terms of puzzle solving, the Apostle is notably able to view the hidden bits of the level that exist within other dimensions, as well as utilising his broad variety of magical powers.
Darkness Surge: Fires a projectile of Void magic. Upon hitting an Adversary three times, deals damage. When striking an Obstacle/Adversary within The Nexus (light dimension) it temporarily makes it exist and becomes visible/interactive for the other Travellers.
Brightness Burst: Upon hitting three successful hits on an Traveller, heal a Medium amount of Health. When striking an Obstacle/Adversary within The Void (shadow dimension) it temporarily makes it exist and becomes visible/interactive for the other Travellers.
Possession: Shoving the cursed fire of his lantern into the face of a single Adversary, The Apostle has a chance to temporarily take control over it.
Masquerade: The Apostle communes at an Altar with the God of that Fallen Kingdom. Each God offers a different mask, granting an ability that allows a new portion of the level to be explored for a limited time.
Void Eye: Able to see invisible Obstacles and Adversaries that exist in a parallel shadow dimension.
Nexus Eye: Able to see invisible Obstacles and Adversaries that exist in a parallel light dimension.
➢ A challenging experience with a smooth learning curve.
➢ Enjoyed by both hardcore & casual players, but rewards ingenuity.
➢ Unlockable & customisable skills for each playthrough.
➢ A dark fantasy ancient world with an unusual time-focused apocalyptic narrative.
➢ An Action/Adventure experience with challenging puzzles and distinct characters and abilities.
➢ A traditional 2D platformer with a pixel-art aesthetic.
The puzzles within a Chamber will generally be made of three broad categories:
Puzzles that require The Travellers to interact with Obstacles, and/or Machinery.
E.g. The Oracle’s Chrono-Wrench ability can slow down a closing doorway, allowing the Apostle to enter a sub-room where he can interact with hidden dimensional switches, which when ordered correctly opens the exit from the Chamber.
Puzzles that require The Travellers to engage with Adversaries. Sometimes elements of these puzzles will simply aid the Player through the otherwise high
challenge of combat, whilst most often this will be fundamentally necessary to progress.
E.g. The player controls the Warden fighting an endless swarm of Adversaries, climbing from a ladder, onto a castle wall. The player sets the Warden to the Attack stance and swaps to the Brute, who is at a lower point in the level. The player uses the Brute to Pummel the structure supporting the wall Eventually the wall will give way. The Warden can use his Hookshot ability to escape as the swarm of Adversaries fall to their deaths, crushed under their ladder.
Puzzles that require The Travellers to work together to get all of their team across challenging parts of the level spaces (platforms, gorges, cliffs etc).
E.g. The Brute’s Propel ability moves the Warden to an area where he can use his Strike ability on a wooden structure, to collapse part of the ceiling, creating a bridge for the other Travellers to cross.