Timeline: August 2020 - 2021 (On Hiatus)
Build: Unity, C#
Pre-Alpha Trailer
The Timeless Recurrence of Kagai, or simply Kagai, is a Dungeon Crawler Action RPG with a combat system that focuses on skill expression and precise movement through mastering various different abilities.
While the project is constantly still being changed and worked on, here are some features currently in the game that I have worked on.
The bread and butter of Kaga is the combat system. In Kagai, the player has access to four different sets of spells, which the player can swap and change at their will, with more abilities learned as they progress the story.
Added target dummies to play around and practice some abilities! #preview#gavedev | #indiedev | #pixelart | #madewithunity pic.twitter.com/yGZY0wzyM9
— Karmen Motion Studio (@KarmenMotion) July 11, 2021
Preview of how combat works in Kagai
Kagai takes a page from a system similar to survival games / shooters, where at any given time, the player can only “equip” one spell set, however they are free to swap them at any time. This mechanic will be something that players will have to master, as they encounter enemies that may require them to swap between sets. Each spell has their own internal cooldowns, which allows for some cool combos with masterful usage of these spell sets.
In order for the player to grow their character and obtain items and abilities, the game needs to have interesting and fun dungeons for the player to progress through. Players clear through a variety of dungeons, each containing unique monsters, layouts, and objectives.
behind the scenes preview of the dungeon generator of #TTROK#procedural | #procgen | #gavedev | #indiedev | #pixelart | #madewithunity pic.twitter.com/gwvhC43Yfb
— Karmen Motion Studio (@KarmenMotion) July 18, 2021
Some examples of generated terrain, including valid monster spawn locations and objective locations. The generator is quite lightweight, thanks to Unity’s Tilemaps.
To make each dungeon feel unique and engaging to play through, Kagai procedurally generates each dungeon that the player enters. This is done by utilizing and extending Unity’s Tilemaps, and creating a cell generator. The dungeon generator utilizes various cell based generation, such as cellular automata, random noise from seeds, room tunneling, etc.
behind the scenes part 2 of the dungeon generator of #TTROK#procedural | #procgen | #gavedev | #indiedev | #pixelart | #madewithunity pic.twitter.com/2dOM1Xmz5C
— Karmen Motion Studio (@KarmenMotion) July 18, 2021
The generator was built in mind to allow flexibility in designing the dungeon, here certain predetermined features will always appear regardless of the seed.
Once the terrain has been determined, the generator will then place the player, monsters, any bosses and objectives in valid locations.Building the dungeon generator was an interesting experience, and really challenged my understanding of algorithms, and placing boundaries to ensure that everything will work as intended. A good portion is spent during extending the generator to ensure that all the enemies and objectives will be reachable.
behind the scenes part 3 of the dungeon generator of #TTROK Extending the generator to use some interchangeable parameters that change how generation works#procedural | #procgen | #gavedev | #indiedev | #pixelart | #madewithunity pic.twitter.com/MHjQNaoyBF
— Karmen Motion Studio (@KarmenMotion) July 18, 2021
The generator also contains some interchangeable parameters that change how the generator builds the terrain.
Extending from the combat system of course are the enemies of the game. Although this part of the game is
continuously being iterated, I wanted to share a bit of what currently is in Kagai.
Through designing and architecting the game’s subsystems and combat system to be easily extendible, simply
by changing character movement to utilize an A* pathfinding algorithm, attaching some range checks for
specific behaviors such as aggro and in range, you get quite a simple yet complex enemy agent.
Enemies in Kagai’s dungeons are generally partially procedurally generated. Certain “mobs” of enemies are
predetermined per dungeon, then it decides what variations some of these chosen enemies their “type” (for
example, a sewer based dungeon will choose sewer related mobs, and will lean towards picking “cold” typed
mobs). Finally, some of these picked enemies may also randomize what kind of abilities they will use,
while some will have a predetermined set of abilities.
Another #preview this time showing off a fire slime behavior#gavedev | #indiedev | #pixelart | #madewithunity pic.twitter.com/v30h5TP4u7
— Karmen Motion Studio (@KarmenMotion) July 18, 2021
Example of how a procedurally generated slime AI behaves
There are still some plans to extend the AI to be a bit more unique and complex, since as of right now enemies will seek and hunt any nearby valid target. There may be plans for behaviors such as random patrols, pack behaviour, swarming behaviour, etc.
In tandem with the combat system is the Item & Loot system, which is the core of the game’s objectives and progression. This section of the game is also continuously being iterated, however there are plans of crafting as the core of how players obtain their item progression in tandem with completing quests and objectives from dungeons.
Final #preview today, this time showing item drops #gavedev | #indiedev | #pixelart | #madewithunity pic.twitter.com/NXAS1E8INx
— Karmen Motion Studio (@KarmenMotion) July 18, 2021
Players collect a variety of crafting materials and items that monsters drop, with each item having a different effect on the player.
here's another #preview containing some items that change how abilities behave#gavedev | #indiedev | #pixelart | #madewithunity pic.twitter.com/ph6PdFFt1L
— Karmen Motion Studio (@KarmenMotion) July 18, 2021
Some example items that can change the behaviors of abilities