• 4-month project
  • Student project for M1 LISAA
  • 5 people group
  • Unreal Engine 4
  • CCG Toolkit
  • Game Designer
  • Programming

Ascend is a card duel game between a player and an AI. Our character's goal is to reach the top of a tower in order to perform a ritual called the Ascend. Many enemies will stand in the way of our hero, who must be defeated one after another.

Download Ascend here !

CCG Toolkit and prototyping

With such a short time frame (4 months to make the whole game), the pre-production phase was extremely short. Once the game concept was validated (within the first week) and the main systems of the game defined (link to the game mechanics documentation), I moved very quickly to prototyping in Unreal Engine in order to answer our questions and start iterating already. I was able to do some rapid prototyping thanks to the CCG Toolkit (a framework available on the Unreal Marketplace), which gave me a good foundation, and which I modified greatly afterwards.

Screenshot of a game during the prototyping phase

This prototype was a success, a lot of things needed to be changed (not only visually but also in the game design and interactions) but we were able to answer the 3 main questions I had identified: the game is fun, the adaptability to the game situation thanks to the cards is well felt, and the time frame of the project seems to be enough to script, dress and balance the game for about 30 cards. However, it was necessary to reduce the scope in terms of the number of battles planned (3 at the base with different enemies, then only one battle after prototyping for the vertical slice that our game represents).

Setting up the decks

The goal is to give one special deck to the player and another to the enemy, with different cards and different mechanics. With the maximum number of cards we established during prototyping (about 30), I was able to start designing the different cards and deck sizes. Since the game is not a multiplayer game, it is not necessary for the decks (the AI's and the player's) to have the same mechanics. As a result, the mechanics of the elements will be player-specific, and the enemies will only have their own creatures.

To reference the various cards to be integrated into the game and quickly communicate with the rest of the team, I put together a document listing all of these cards with their stats, mana cost, ability, and illustration theme (ideas or leads for illustrators).

Table referencing the different cards in the player's deck during the production phase

Balacing

One of my biggest tasks was to balance the cards in the game, so that the player would have a fair challenge in battle. To do this I set up a matrix crossing the values of the cards. This value is of course arbitrary but allows me to give an indication regarding the attack, life and effect of this card compared to its cost (the value of the ability is calculated automatically with the table on the right).

Crossed matrix of creatures in player's deck

Elements and element merging are the main mechanics of the game, they had to be impactful, fun to play and balanced so as not to completely derail the game experience. I went through several trials and finally came up with a system in which each element (both the basic ones and the merged ones) is interesting to play, provides good versatility, and can be used with other cards (some are still stronger or more useful than others, but I'm relatively happy with the result).

You have to take into account the elements "sacrificed" during the fusion to balance the complex elements. You can see that Ether seems to have a negative value but this is due to its very particular effect, which is very useful in some situations but can be much less useful in the rest of the game.

For the enemy deck, there were not as many creatures due to time constraints. So the goal was to give cards representing micro challenges for the player to take on throughout the fight:

  • pop up one creature with 3 attack points and 3 life points (3/3) = challenge player's field control directly early in the game
  • make two 2/2 creatures appear at the same time = challenge player's field control directly early in the game, with multiple creatures appearing at the same time
  • one 3/3 AOE creature = challenges player's response to massive terrain control
  • a creature 7/7 = challenges handling large creatures

Tutoring

Despite the feedbacks set up and card descriptions, it's not all the time simple to understand everything for a new player or for someone who is not familiar with card games. So I decided to set up a scripted tutorial. Integrating the tutorial into the story helps to hook players in directly and give context to the effects of the cards.

The tests before and after the implementation of the tutorial are unanimous: people understand the interface of the game and the functioning of the game much better.

Scripting

Although the CCG Toolkit gives a good basis for setting up a card game, I had to modify it a lot in order to get the result we really wanted. What I modified/added:

  • changing the allocation of predefined decks
  • adding the text system for dialogues and tutorial
  • adding the card merge system
  • adding all card effects
  • modification of the system to generate the card template
  • added and modified visual and audio feedback to some cards (so that the player recognizes what is happening and the consequences of their actions)

Download Ascend here !