Balancing is one of my main fields of interest. For me it is one of more subtle ways to fine tune the player experience. In all my student projects I was in charge of balancing and with each project I learned more. I enjoy exploring the systems of games, finding how certain variables affect each other and discover the math behind the game. But I’m well aware that a game being balanced and feeling balanced are two completely different things and in my opinion the latter is the one is far more important.
Purify is a roguelike deckbuilding game. It was my third student project in which I was in charge of the balancing. I wanted to make balancing my focus for this semester, but unfortunately the only other game designer left the school during the semester which meant I took over all game design responsibilities.
The plan was to balance the cards first, to get a power level for the different deck archetypes. Having an orientation how strong the Player would be, I would then balance the different enemies. With the power level of the enemies I would have the tool I need to create encounters and order them to create an exciting pacing.
Firstly I created a card library, in which all cards are registered with their rarity, energy cost and effect values. Of course many cards share some similar effects but most don't. In order to make them still comparable, I just assume that every card has every effect, but most effects in a way that they don't have an impact (e.g. I treat a card that does 6 damages as: dealing 6 damage, giving 0 defense, healing for 0, have no aoe etc.).
In the power calculator the effect values of the cards are compared to power curves for the different effects and given the correlating power. The sum of the power for each effect value gives me the total power of the card. I can then compare this power with the power budget of the card to see how I need to tweak the values of the card. I also tired to take emergent properties into account like versatility.
At this point I realized that I greatly underestimated the time I needed to achieve every step of my plan. The balancing of the enemies and the pacing were done solely on play testing and gut instinct.
Even though I couldn't do everything I planned, I still learned a lot trying to make a complex balancing tabel.
Firstly the power budget approach works extremely well for similar content, though everything must have the same properties to balance.
Secondly you can use models and approximations of content inorder to make them more comparable.
Also content being balanced and feeling good are two different things. The ladder is more important and can only be confirmed in play testing.
Of course working in google sheets deepened my knowledge with the software to a point I started scripting.
And lastly creating a detailed balancing table is a complex process which takes a lot of time. It should be approached like making a game: start with a rough version first and then iterate again and again to get a more detailed version.
Tree of Dreams is a zen farming game in which you grow crops that you can either sell or give away to fulfill quests. It was my second game I was in charge of the balancing. I created this balancing table with the knowledge of my first lecture in game balancing. The creation of this balancing tabel took a week.
Because of the low content complexity of Tree of Dreams my approach was very straight forward: first balance the crops dependent on the planting cost and the grow time. Depending on the corps I could then determine how to balance the quests.
But while balancing the quests I noticed that not all crops were in similar "demand" for quests. I couldn't simply even out the demand, because the demanded crops had narrative relevance. My solution was to give crops that were in low "quest demand" a high revenue if sold normally by incorporating a frequency factor determined by the "quest demand" of the crops.
I started by creating a list of all corps and their manipulatable values like cost or sell price. Then I added emergent values that I can't change directly but that give context to the manipulatable values.
With the help of the emergent values I created curves that determine the sell price of the crops.
I then did the same for the quests. The main difference is that many values for the quest are derived from the values I gave the crops (e.g. the time it takes to finish a quest is equal to the growth time of the slowest growing crop). Also instead of using the sum of the cost of the crops as cost for the quest, I took the sell values of the crops to incorporate the opportunity cost of not selling them normally.
While the balancing of Tree of Dreams wasn't a complex task I still could learn something from it.
Curves and functions give a great basis to define correlation of interacting variables.
Showing emergent values gives a lot of context to the manipulable values and are a helpful tool while balancing a game.
Documenting the meaning of abbreviations and variables with notes is extremely important, because even in a simple balancing table there are many variables and it is easy to forget what they are representing.