Almost A Hero – Crating Experiences Using Feedback Loops pt.1


The article consists of two parts. In this first part, we will understand the basics of systems, to understand what are their composing parts. In part 2 we will understand how Feedback Loops form different engines in order to craft experiences for the players.


“Almost a Hero” is an idle game where the player takes control of up to 5 different (almost) Heroes and send them into battle. It mixes Strategy and RPG elements in the Idle genre, with a focus on logic decisions in the short and long-term. One of the characteristics of idle games is that they keep “playing” while the player is away, so the player can stay away of the game for hours or even days and it will surely have many things to do using the offline gathered resources. This promotes shorter but constant playing sessions rather than just one very long session with the imminent risk of player drop that has.
Why specifically “Almost a Hero”? It’s one of my favorite idle games. It mixes a light story with absolute lovable characters. Also, the game is pretty well balanced and have many permutations of heroes and different rings, runes and trinkets to combine and find different ways to advance to the top. But most important than everything, “Almost a Hero” is a game that really respect players’ time and money, something that I find valuable in a mobile market plagued with Skinner Boxes and gambling mechanics. Finally, I like the fact that idle genre is mostly logic-based, therefore is very Game Design-focused so good and especially bad design can’t be hidden. This type of game is based on many interconnected loops working at once, so it’s ideal to understand feedback loops and other parts of systems. These are the reasons why I’ll focus the essay on this game, because I think it would be easy to explain the impact of feedback loops in the game, but there’ll be references to classics of Strategy and RPG genres too.


To understand all the elements that compose and influence feedback loops, we will need to talk about System thinking. System thinking is a way of analyzing the world to find behavior patterns of different agents. This analysis could range from the very general like a whole society or an economic system, to a more particular, like how a player will react when receive feedback from a game or how to spend my monthly salary (resource management).
A particular advantage of systems is that they are everywhere if you start to pay attention. For example, you can analyze markets and economies using system thinking, as well as an ecosystem and all the parts of it (hunter/prey animals, climate, human intervention). System thinking requires to work at different levels of abstraction, going from the high to the low-level elements, analyzing interconnections between all the systems on each level. One of the downsides of System Thinking, is that is most useful on hindsight, when the system is already working. The designer can make very accurate predictions on how the system will work, but only after simulate and analyze the system. That’s why one of the core skills of a designer is to be excellent creating the right prototype.


Systems thinking is a different way of seeing the world. That’s why it has proven useful for many different fields like science, programming, social sciences and Game Design. System thinking has been a widely used tool for game designers, allowing the designer to craft many interconnected systems that generate emergent gameplay. Some widely used terms in Game Design like “the game system” or “core gameplay loop” are terms borrowed from system thinking. This allows for different scenarios that come from the meaningful interaction of the player with the game systems rather than a hard-coded scene, hence they create longer and more sustainable player engagement. For a long time, systemic games were almost exclusively used in Strategy, Simulation and RPG games, because those genres tend to depict systems from the world we live in, but in the last years, many games have adapted themselves into being more systemic. That’s the reason why many games from the last years have included RPG elements, because they use similar “engines” (combination of system elements) to enable a more systemic gameplay. Because of engines we can identify games from the idle genre with elements of RPG like “Almost a Hero”, or determine that Civilization and XCOM are both turn-based strategy games.


We will define the different parts of systems on two sections. The first are functions of systems, these are all the working parts that compose any element on the system. Then we will talk about the specific elements that compose game systems and how they create systemic games using different patterns.


Stocks storage a certain amount of a resource. Stocks have a certain limit that could be a physical space, a number settled by the designer or even the RAM. Stocks in “Almost a Hero” are, for example, the stock that contain Gold, Scraps or Tokens. HP, Damage and Attack Speed are also stocks. The amount of resources in a stock are affected by Sources, Sinks and Connections, among others.

Sources create resources and pass them to a stock. Sources in our world come from the combination of many resources or they come from the end point of another system, but in games, we have the advantage that Sources can spawn resources from nowhere. This advantage is a double-edged sword though, because it could lead to indiscriminately spawn resources and design an unoptimized and cluttered system.

Sinks get rid of a certain amount of resources from the system, like we do when we throw trash. In the real world, “deleted” resources from a system usually end up in another system. That’s the reason why we have enormous and problematic places used as garbage disposal. In games though, resources can be completely removed from the system. Depending on the Source rate, this could lead to resources that effectively disappear from the game. In “Almost a Hero” the player can earn Gems while advancing levels or sharing on Social Media. But if the player spent all Gems and already unlocked all the free content that deliver Gems, the only way to obtain more is to pay real money for it. This is a good decision because such committed players will certainly want to spend some money to keep advancing at a faster rate. It’s worth noting that not having Gems don’t generate deadlocks, only slows down player progress.

Sources and Sinks together conform what it’s known as the flow of resources. Calculating the Sources (inflow) and Sinks (outflow) gives you a pretty good idea if you’re creating an inflation or deflation of resources in your game.

Connections make possible the exchange of resources between Sources, Stocks and Sinks. Connections move the resources based on the fulfillment of certain conditions. Sometimes these conditions depend on the current amount of certain parameters. This could lead to a situation when a certain stock influences itself, what is usually known as a Feedback Loop. Sometimes, before feedback itself, the stock connect with many other stocks or have outer-loops that feedback the stock too.

Traders take one resource and give back to the player another resource, both parts storing the traded resources. The trade could be player-to-developer. In Almost a Hero as in many other Free to Play games, players invest real money to obtain, for example, Gems. Player will keep the Gems and invest them to advance in the game, while the developer will keep the money and invest it in develop new games or improve the current one. The trading could be player-to-player or player-to-system too. In player-to-system “trade” though, the trader depicted in the game doesn’t always keep the traded resource, making it a Converter.

The player spends real money to get Gems. The money goes to the developer so they can keep creating content for the game, like clothes. The player then spends that Gems to buy clothes from the game store. When the player has no Gems left, the process starts again. The trader keeps count of the trades, helping developers to know what is the correct ratio to deliver new clothes to the game store.

Converters are very similar to traders in games. The difference is that Converters take a resource or set of resources and convert them into another, so the converter doesn’t keep any resource. In this sense, many “trades” like buy clothes for your Heroes is really a conversion from Gems to clothes, if we take the developer out of the scope. Converters remove resources from the system, so they are a combination of a Source and a Sink. It’s important to notice that both Traders and Converters must be taken into account to calculate the inflow and outflow of resources, to avoid create and inflation or deflation that could affect the balance of the game.

If we take the developer out of the scope, Almost a Hero’s game store is just a converter, because the player pay gems that are effectively converted (so they’re removed) into, for example, scraps.


Parts are what Game Designers usually call “tokens”. These are all the “assets” that have an influence on the operation of the system. Parts are composed and influence the system through their parameters. We could think of parameters as a number or a characteristic of the Part, similar to variables in programming. Parts are defined for what parameters compose them and how much of that parameter have by default or at any given moment. Parameters also determine the behavior of the Part. For example, we can differentiate a Defender from an Attacker because the Defender Hero will more likely have less attack power, favoring more HP. It’s important to notice that all parameters are essentially numerical. Even parameters that at first glance don’t seem to be numerical like how a character will move on different type of tiles, the resulting behavior will be a number from the designer (“If the character is on ice, it will move 3 tiles after the player release the move button”) to the programmer to be implemented, modifying values on the game engine.

Connections as an element of game systems are essentially the same Connections of any type of system, but here we specify that they’re connected from and to parameters. Parameters can be connected to other parameters, either inside the same Part or parameters from other Parts. Usually these connections transfer resources when met certain conditions or at a predefined rate. Is in these connections that parameters end up affecting themselves, creating what is known as feedback loops.

In the high-level, it seems that Vexx is fighting an enemy. In the low-level, the damage (DMG) from Vexx is diminishing the health power (HP) of the enemy and vice versa. The DMG of Vexx is being enhanced by a bonus from Mythstones, that is granting 100% more damage, resulting in a total of 80 damage per attack. The parameters of Vexx and the enemy are interacting with each other.

All systems have a Purpose, in the case of games, it’s dictated by the Designer. The main tool for the Designer to imbue a system with purpose is through the game rules. As a designer, it’s important to take into account all the formulas that determine the interaction between different parameters, as well as what parameters will compose the different parts.

Taking into account the 6 functions and the 3 elements of systems, will result on rules that will arise from the purpose of the system clearly identified by the Game Designer, and therefore will fulfill the intended experience.


In this first part, we have analyzed the systems’ composing parts, and how all these parts are connected to create different systems. Stay tuned for part 2, to delve deeper into systems and how feedback loops allow to craft experiences that are compelling and meaningful for the players!


Sellers, Michael (2018). Advanced Game Design.

Sylvester, Tynan (2013). Designing Games.

Upton, Brian (2015). The Aesthetic of Play.

Lehdonvirta and Castronova (2014). Virtual Economies.

Pecorella, Anthony (2016).The Math of Idle Games.