I’m Dani Garcia, half of the team behind Alchemic Jousts, a strategy game just released for PC and PS4. Alchemic Jousts has a huge amount of different Elementals and Spells to use and features a deck selection system before each game, so we spent a great amount of time designing and tweaking the game mechanics and systems, and I wanted to write this blog about the design decisions we took and why we think those benefit gameplay.
When we started working on Alchemic Jousts, we wanted to have simple and easy to understand mechanics so any player could have fun, and at the same time achieve a deep strategic gameplay where it was obvious after winning or losing why that happened.
In order to do that, we had a few things clear:
- We had to avoid Random effects.
- We really had to avoid Skill Spam.
- All Skills had to be useful through the whole game, and no Skill combination could be unbeatable.
No chances for Random
While I think random elements can work and be an important part of many games, for this game they would have been harmful, as we wanted to build a strategic game focused on making the right decisions at the right moments, so the player needed to always have the correct information in order to decide properly.
If you look at any screenshot of the game, you can predict how all combats will end, and know which Elementals will die and which ones will survive. Having any random effect in the combat sequence (randomized damage points, health pools, critical hits…), would break it, so instead, we had to create very clear rules in order to know which Elementals will beat which ones, which we also used to add interesting gameplay mechanics.
Keep in mind that the game is real time and not turn-based, and many times you will only have very few seconds to decide the best option, so those rules really need to be simple and clear.
Only a Water Elemental from the red player will survive. Believe me!
We started with a very basic mechanic: Water beats Fire, Fire beats Earth and Earth beats Water. Also, when two identical Elementals hit, they both die.
On top of that (literally), some Elementals (like the Air one) fly, never entering combat with the other Elementals below, so players have two lanes to defend and attack.
Those simple rules are the base for our combat system. We have many other elementals with their own abilities: Lava will win the first combat and turn into Fire after that, Sand will always lose combats but do double damage to the Enemy Tower, Storm will cast lightnings to the enemy Elementals below…
All of them have very simple and easy to catch mechanics, none of them have any random based effect, and still the combination of all the possible Elementals and their effects cause a huge amount of strategic decisions for the player to make.
Breaking the Rules
Players don’t only have Elementals at their disposal, they can also use Spells, Enchants and Buffs to cause both positive and negative effects. These were also designed in the same way, without any random effect. You know exactly what’s going to happen once you use one of them, so you can take informed decisions.
Also, because of the way the Elementals have been designed with those clear rules, these Skills become more impactful. For instance, you can use a Lightning on an enemy Elemental to kill it. Using a Spell to kill a unit is not an original mechanic, but in this case and because of the combat rules, targeting the correct Elemental can have a huge ripple effect on all the combats waiting to happen:
You kill a Water Elemental, so now your Fire Elemental doesn’t die fighting against that Water, and it kills an Earth Elemental that was coming behind the Water one. In this case, with a single target killing Spell, you just killed 2 enemies and “created” an extra Elemental to attack the enemy Tower, but the consequences of any Spell can be even more game-changing.
Finally, considering the rock-paper-scissors mechanic is the base of the game, we reinforced it with many of those Skills. There are many skills that will damage only the Elementals related to a certain Element, or make them run faster, or make them grow to increase their damage to the Towers… All those Skills work really well, creating synergies between your Skills and covering any weak spots you might have on the deck you create for a game.
A well timed Storm can clear your path to the enemy tower.
Smashing your face on the keyboard won’t work
Many strategy games are production races, the faster you generate resources and the faster you can create units, the higher the chances to win. Again, I’m not against that approach, as it can work on many games, but that’s not the way we wanted to go.
Having clear and simple rules for the combats would have been useless if we then filled the screen with dozens of Elementals, overwhelming the player with too many information, making it impossible to decide the best Elementals to cast. To avoid that, we had to get a bit creative when designing the resource and cooldowns system.
This was the main way to avoid Elemental spamming, so we could keep the strategic concept on our game. We all know how Cooldowns work, after using a Skill you have to wait a certain amount of time before using it again. That wasn’t enough for our game, as you could still select 12 Elementals before a match and keep spamming them as they were ready.
To solve that, we assigned a Cooldown Group for each Skill, so any time a Skill is used, all the Skills sharing the same Cooldown Group will also become unavailable. This system created many advantages for the game:
- It avoided Skill spamming, which was the main problem to solve.
- Made the strategic decisions taken much more important. Deciding between casting an Air Elemental to attack the enemy Tower instead of a Water one defend an incoming enemy Fire becomes meaningful when you know you can only cast one of them.
- Elementals are the most affected by those Cooldown Groups, and that made the selection of Skills more varied, as using only Elementals isn’t effective, so you can select more Spells, Enchants and Buffs instead, which make games much more interesting.
And yet, you can still send hordes combining the correct Spells.
Resources you can ignore while playing
Our game has 4 resources (air, water, fire and earth), and while playing, a certain amount of each one is generated each second. All the Skills have a certain Cost that needs to be paid in order to use them (300 Water, for instance), and there are many Skills that can be used to increase or decrease the amount of resources generated.
Resources took an important role when balancing the game and affect the gameplay in many ways, but players already have a lot to think about with the Elementals on the screen, so we wanted to create a system where resources were impactful but players didn’t notice them when playing.
We didn't wanted to add counter for each resource, allowing you to “buy” a Skill once you have accumulated enough of its resource. That would cause the player to spend too much time focused on those counters. Instead, each Air resource generated each second is evenly distributed between all the Air Skills that are not ready to use yet (and the same for the other elements). This system also created many advantages for the game:
- Instead of focusing on the resource counters, waiting for them to reach a certain amount, you can now focus on the action and the Skills will automatically pop out when their Cost has been paid and they are ready to use.
- You can use cheap Skills and at the same time charge the expensive ones. Players don’t have to save resources in order to use that powerful spell, they are free to use any charged Skill without harming their chances to use the expensive ones later.
- It also created interesting decisions for the players when selecting the Skills before each match. As resources are evenly distributed, the more Skills you select from a certain element, the longer they will take to charge, so that adds a strategic layer when selecting those Skills: Should I select less Fire Skills, or should I also add a Volcano to increase the Fire I generate?
'e', 's' and 'f' are ready to be cast. The others are either on Cooldown or lack resources.
My “I win” button is not working
Alchemic Jousts shares most of the deck building mechanics you can find in most card games, but we also wanted to go in a different way with that. Instead of having a “permanent” deck built, useful on any game, we created different game modes and Global Effects (effects chosen before the deck building phase of a game, changing some of the rules for that match), which make players try to select the best 12 Skills for that specific match.
That would had been useless if we implemented something in the lines of “Legendary Skills”, Skills that are so good you have to always take them. Instead, we made sure all Skills were always useful. Of course, some Skills are better than others, but they also cost more, or have longer Cooldown times or their Cooldown is grouped with other Skills so only 1 can be used at a time.
Cooldown grouping was extremely useful to balance Elementals and make the basic ones useful through the whole game. Lava (and the other Double Elementals) is better than Fire (and the other Simple Elementals), but you can’t just select a bunch of Double Elementals, as they all share the same Cooldown Group, so in the same time you cast a Double, the enemy will cast a Double and a Simple, so by design, it’s better to combine them and pick a bit of everything.
Rock-Paper-Scissors all over the place
We also wanted to make sure that no Skill combination could beat any other combination. The different Game Modes and Global Effects help a lot in that regard, as some Skills are clearly more or less useful depending on those, but we also made sure that for each Skill there’s always at least 1 Skill that can counter it, so you can consider that the rock-paper-scissors mechanic also exist even for Skills where that isn’t obvious.
All these mechanics create a different kind of Deck building process compared to the one you usually have in most card games, in which card building is something you do outside the game and you will usually stick with the same deck for several games at least. In our case, we tried to convert the deck building process as an important part of any match, allowing the players to try different things and to see more variety while playing.
See how the Skill bar is different on each image.
His “I win” button isn’t working either
There’s an extra consequence of the way we designed the game, and one we are proud of: if you play in single player mode, the AI doesn’t cheat. We have 3 difficulties to choose from, and the lazy way to do it would have been to create a basic AI casting random skills and boosting its resources and cooldowns, but again, that would have harmed all the previous design decisions. Instead, we made sure the AI was following the rules for each skill and was casting them in a coherent way, which is also a way to teach the new players about those Skills.
By the end of the process, we had an AI who was really good playing at our game, so instead of boosting its resources for the higher difficulties, we had to reduce them for the lower ones. That means we could do easier difficulties for more casual players while keeping a challenging difficulty for hardcore ones, and in all of them the AI will be using its Skills properly.
This is our first game, and we had no doubt we wanted to focus on the gameplay aspect before anything else. We are never the best judges of our own work, but after all this time working on the game and playing hundreds of hours testing all this design decisions, we still have fun playing the game, both in single and multiplayer (though I usually win the latest, so I’m not 100% its mutual in this case), and I think that’s a good sign of the work done designing it.
I hope you found this article interesting, and if you want to ask or discuss anything, I’ll be happy to answer, either here in the comments, or you can also drop me an email from the contact button on our website.
If you want to try Alchemic Jousts, you can get it from the Steam (launching the 16th) and PS4 stores using the links below.