Bachelor Project - Ascend the Mountain

My first fully self-made game, developed in Unity, was inspired by titles such as Duelyst and Slay the Spire. For this project, I utilized the assets from Duelyst that were released under the CC0 license, then recreated all other aspects to fit my vision for the game.

In parallel, I wrote a paper comparing various approaches to classical game AI to determine the best one for this project. I analyzed and compared techniques such as state machines, behavior trees, goal-oriented action planning, and minimax, as well as newer approaches like machine learning, evaluating their feasibility and choosing the most appropriate approach based on self-defined parameters.

Additionally, I focused on designing card sets and writing design documents that accounted for the unique considerations of this type of game.

Bachelor Project - Ascend the Mountain

Ascend the Mountain is my first solo game development project and also my Bachelor’s degree project. On the game development side, I designed and implemented the game concept, adapting one of my favorite games and revitalizing the assets released by the company to the community with a new approach, turning it into a single-player project where the player faces off against dozens of different AI opponents.

On the Bachelor’s side, I examined and compared various approaches to game AI and ultimately decided to implement the minimax algorithm. I compared it to other common game AI implementations, elaborating on their respective strengths and weaknesses.

Custom Designed Card Set & Game design document

During this project, I also wrote a secondary document in which I elaborated on the game design aspects, considering the different loops and how they interact with various player archetypes.

Additionally, I designed a set of cards for the game that both the player and the AI could interact with, shaping the run and providing the player with new experiences throughout their playthrough.

What did I learn?

Programming

On the programming side, this project ultimately ended in failure, despite the plan and execution both working in theory. However, it taught me a lot about the difference between the real-world application of code I've written and how it was intended to work. It also taught me, though too late, the importance of abandoning an idea or approach that isn't working and refocusing efforts. Sometimes, with the limited time left, this can lead to a more successful outcome than continuing due to a sunk cost fallacy.

Design

During this project, I learned a great deal about game design, particularly in relation to cards—the differences between paper and digital cards, as well as the importance of cohesive themes when designing card sets. Additionally, I gained insight into the value of designing subtle interactions within a game that allow players to experience moments of success by discovering these interactions, whether explicitly intended or not. This approach significantly contributes to making players feel as though they are "breaking the game" and, in a sense, winning against the designer.

Next
Next

Dialogue System and Editor Tool