Sinner's Ascent
A real-time deck building, dungeon crawling RPG. [Capstone Project]
Move to: About / Process / Considerations / Takeaways
Sinner's Ascent Sizzle Reel (with sound)
ROLES: Game Designer | Programmer | Project Manager
TOOLS: Unity | Aseprite, Krita | Reaper
Duration: September 2021 - April 2022 (8 Months)
About
Sinner's Ascent is a real-time deckbuilding dungeon crawler where the player must traverse up a mythical tower, utilizing spells and abilities in the form of cards that they can use to customize their playstyle with.
This project was developed as part of a Capstone project in a 5-person team for our final year at Sheridan. I was responsible for most of the game design, project management, and programming related to the main mechanics and gameplay systems such as the deckbuilding combat system and enemy AI. I also filled in for some of the art that we were lacking, as well as sound implementation. Finally, I coordinated with an external 6-person team to help develop music and sound for our game.
Process
Spell Card Combat System
My main contribution to the project is developing the main mechanic in Sinner's Ascent: the card combat system. The player begins with a few weak cards they can use to defeat enemies, and along their playthrough they would obtain random, stronger cards that they can build out their spell deck with.
The goal of this mechanic was to develop hack n' slash combat with a fresh twist using the variance and decision making behind deckbuilding games. By introducing deck oriented mechanics (such as mana ramping/curving, card economy, deck archetypes, shuffling, etc.) and retaining the dynamism of hack-and-slash RPGs, I wanted to reward players for not only good reactions and micromanagement, but also for creating a synergistic deck of spells.
Early notes and prototyping of the Card and Deck mechanic
Resource Management
Iterating on how our team wanted to incorporate deck-based spell and mana management was a balance between designer vision and player feedback. While some players wanted less spell slots and cards that costed less mana, we ultimately decided to stick with our original vision after playtesting different versions of this mechanic.
Deckbuilding
As my team and I wanted to allow for more customization and player expression when building their "Spell Deck", we decided to go with a fluid maximum deck size. Players could choose to build a deck ranging between 5 to 20 cards.
Enemy AI (Abilities)
My goal for enemy ability was to be very modular, designer friendly, and quick to iterate on. Ultimately, I made all enemies functionally compatible with the Spell Card system I built for the player. As a result, developers are easily able to add, remove, and edit ability parameters. Additionally, each enemy attack has:
-
Weight (to determine probability of being picked as the next attack on the list)
-
Cooldown
-
And Level requirement (to boost reusability, the same enemy at a higher level can introduce new attacks to produce a unique experience)
Another huge development benefit to this system was that any enemy can use any ability if you give it to them.
Enemy using 3 different attacks in a random sequence
Considerations
The development cycle came with many inefficiencies and problems that I've tackled and learned a lot from in order to better my productivity during my future projects. However, as a result there were many design issues that I failed to consider or meaningful systems I didn't implement in time that prevented Sinner's Ascent's gameplay from really shining. Here are some that I think I could have improved on:
Deck Size Incentive
Due to the randomness of drawing cards in any deck-oriented game, the ideal strategy is to have as little cards as possible within your deck in order to maximize the chances that you draw your best cards, rendering the fluid deck size mechanic useless. A mechanic I should've prioritized during development to counter this would be to create incentive to have a larger deck, like increasing the player's stats relative to their deck size.
Archetypal Card Design
Sinner's Ascent does not have much mechanical diversity between the cards you can obtain during playthroughs, leading to all playstyles feeling very similar. Unlike other card games, Sinner's Ascent lacked the ability to encourage interesting deck archetypes (aggro, control, combo, etc). In hindsight, spending more time and care designing each card with the possibility to fall into one or more of these unique archetypes would've been the proper solution.
Mana Ramping
To encourage creative and unique deckbuilding, most card games have some form of "mana ramping" that engages the player's ability to adapt their strategy over the course of a game. While Sinner's Ascent has this mechanic (Clearing a room grants +1 Max Mana), it doesn't encourage fun or strategic deckbuilding because players can simply edit their deck as they progress through the level; the higher their mana, the more expensive their spells are.
To fix this, I think that Sinner's Ascent should've incorporated restrictions on when the player could edit their deck to encourage them to think more about what cards they want to put into their deck before entering combat and rewarding them for it.
Takeaways
This was the longest project I've worked on during my time at Sheridan which taught me a lot. Aside from learning better programming practices, I think the greatest takeaway for me understanding the team building aspects of development. Spending a whole year with a team came with many problems I had to learn to tackle, and really emphasized the importance of understanding and coordinating with your team members, not just sticking to your own lane.
Scope management was another important aspect I learned to tackle during the development cycle. While I believed the game had a lot of room for complex mechanics, emergent gameplay, and meaningful content, there was a lot of scope cutting that we had to learn to do in order to actually finish the project.
Click here to check out the game!: