Ever heard experienced Prismata players say things like "Inflation is high in this position so Immolite is better than Tarsier" or "Absorbing on Steelsplitter over Wall is good when inflation >= 1.4" or "Everyone knows Gaussite is worth 1.33 gold" or "BV is lower with Plexo in the set" and been totally mystified? You're not alone. Here I'm going to explain what these comments mean. When you're done, you will have a solid understanding of the math that goes on behind the scenes in Prismata and hopefully, you will be better at the game. Each section ends with an assignment to test your understanding.

Part 1: Determining the value of resources

The different resources are all worth different amounts. Gold, obviously, is worth 1 gold. But how do we figure out what green, blue and red are worth (we'll get to energy in part 3, it's more complicated)? Simple. Drone costs 3 gold and produces 1/3 of that cost each turn. So if we assume that the first five base set units are perfectly balanced (which they kind of automatically are since they set the standards for everything else), then a Conduit must also produce 1/3 of its value per turn, thus green is worth 1/3 the cost of a Conduit, or 1.33. By the same token, blue is worth 1.67, and red is worth exactly 1 gold. Now of course these are generalizations, as the value of each resource is situational. For example, in a set with every blue unit you could ever want and nothing green, green is probably worth less and blue more because they give you less/more options for what to spend them on. Likewise, in a Shadowfang game, your 4th red is worth much less than your 3rd red because the 4th one is going to be spent on a base set attacker or maybe even red sink while the 3rd one allows you to buy one of the most efficient attackers in the game. Nevertheless, these generalizations are useful.

Assignment: suppose there was a building that costed 8 and produced three yellows per turn. How much is one yellow worth? 0.89

Part 2: Inflation of a unit

Inflation refers to things being worth more now than they are later. Having 9 gold now is better than having 10 gold next turn. (If you had the 9 gold earlier you could spend it on something that would still be there next turn but would also have generated more than 1 gold worth of value.) But how do we determine the exact ratio? Simple. If Drone were the only unit in the game (and it didn't cost energy), 3 gold now would be worth 4 gold next turn because you could spend it on a Drone which would be still be worth 3 gold next turn but would also have produced 1 gold (as you can see, the general formula is [cost of the unit + what it produces each turn] / cost). So 1.33 is what we call Drone inflation, or the inflation when our resources are being spent on Drones. This means everything we have now is worth 4/3 as much as having it next turn (notice this lets us quantify the value of buildtime, so that we can compare eg. Drone to Thorium Dynamo, or Tarsier to Steelsplitter). Another way of looking at it is that each unit is worth 3 times what it produces each turn (so a Tarsier is worth 3 attack, etc). More efficient units have higher inflation (because they pay for themselves faster). But before we move on to that, we aren't quite finished with Drone yet.

Assignment: an old version of Wild Drone had buildtime 1, costed 5 gold and produced 2 gold per turn. What was its inflation? 1.4

Part 3: Energy cost

A real Drone costs energy, right? In games where you won't be buying a third Engineer energy is basically free at first and worthless later since you don't want to buy Drones in the late game and so we can treat Drone as if it doesn't cost energy. But when energy costs are relevant, such as in high-econ games where we want to buy additional Engineers, or when we want to compare Drone's efficiency to Vivid Drone, we need to figure out the value of energy. You might think we can do this the same way as before: assume that Drone and Engineer are balanced and so they must have the same inflation, thus an energy is worth 1/3 of a Engineer's cost or 0.67. But this is wrong for two reasons. Once energy has value, Drone suddenly costs more than 3, so 1.33 is no longer accurate. Additionally, Engineers can block, so when you spend 2 gold on one you're getting more value than just the energy production. (Technically the same applies to Drones but most of the time you won't be defending with Drones until a long time later so in their case it's worth very little by comparison.) There is no good way to quantify the value of Engineers blocking. What we can do is calculate the inflation of Engineer and Drone if energy has value but blocking doesn't, and then conclude that the inflation we're looking for is slightly higher than that because Engineer gives you value besides the energy and is thus more efficient than we calculated. So what we need to do is find a value for energy that gives non-blocking Engineer and non-blocking Drone the same inflation. You can do this by graphing them at desmos.com - use the value of energy as x and the inflation of the two units as y, and find the point where the lines meet. The value for energy you find (the x co-ordinate) should be 0.56, and the inflation it gives (the y) should be 1.28. So now we know that when energy matters, Drone/Engineer inflation is somewhere between 1.33 and 1.28.

Assignment: what if Engineer costed 5 and didn't block and Drone costed 1E? What would the inflation be then? 1.36 (energy is worth 1.8)

Part 4: Barrier Value

BV stands for "Barrier Value" and refers to the value of 1 defense (because Barrier provides 1 defense). Obviously this is a useful thing to know because it lets us compare units that return value in BV (attackers and defenders) to units that return value in other resources, as well as know how good clicking Auride Core is, etc. So how do we calculate BV? You might think we can just use the cost of Barrier, but that wouldn't be the best method because Barrier is a random set unit that is only occasionally available. It would be more useful to find the BV generated by the most efficient defender that is available in every game: Wall. Wall costs 6.67 according the value for Behemium that we computed earlier, and gives you 3 BV. That means that in base set 1 BV is worth approximately 2.2 gold. However, we have to account for one more thing. If you defend with only Walls, you are likely to get exploited. In a real game you have to supplement your defense with some Engineers for defensive granularity. So now we're off to find Engineer's BV. You might think it's 2 because Engineer costs 2 gold, but that would be very wrong. Engineer isn't prompt you see. When you buy it, you're paying 2 gold now for 1 defense next turn. That means Engineer's real BV is 2 * inflation since you had to pay the cost one turn ago, and with standard Drone inflation, that means 2.67. So in base set BV is between 2.2 and 2.67, but closer to 2.2 so probably 2.3 is a good approximation. This is the value I use in my calculations.

Assignment: Aegis costs 6GGG and has 5 health. What is Aegis's BV? 2

Part 5: Attacker inflation

Now that we know how much HP is worth, we're ready to calculate the inflation of an attacker so we can compare it to Drone! Let's start with Tarsier. Tarsier costs 5 (remember red is worth 1) and produces -1 BV for your opponent every turn. You might be tempted to say its inflation is 1.46, but there are two problems with calculating it that way. First, Tarsier has two build time, so you need to multiply it's cost by inflation. Your next instinct is probably to use Drone inflation for that and thus come out with 1.35, but there's another thing you're missing. This formula works for Drone because Drone produces one gold on your next turn. Attackers actually produce value on your opponent's turn by forcing them to buy defense - specifically on your opponent's turn that is just before your next turn (half a turn before it if you think about it). What we've been using so far is the inflation of a full turn. Half-turn inflation is equal to the square root of full-turn inflation (because you multiply by it twice to get full-turn inflation), so we need to multiply the value of the attack that Tarsier is producing by half-turn inflation. Use the square root of Drone's inflation (1.15) and you'll come out with 1.4. There's just one problem left. Twice now we've plugged in Drone inflation to our formula. That tells us how efficient Tarsier is when our resources are being spent on Drones. But Tarsier is more efficient than Drone, so in a real game our resources will be getting spent on Tarsiers. That changes the inflation. So we need to plug in the output we're getting in place of Drone inflation recursively until it stops significantly changing (or we could just graph Tarsier's inflation at desmos and see where it crosses the line y=x - if you're not sure why that works, think about it for a little bit). Do that, and you'll finally come out with 1.39. That is Tarsier's recursive inflation, or its inflation when we're buying nothing but Tarsiers all game. (Note that the only reason it went down when we accounted for the recursion is because Tarsier has build time. This reflects the truth that Tarsier is worse in higher-inflation positions and therefore worse in the late-game, but for buildtime-1 attackers it would go up and the opposite would be true.)

An aside: This is why Prismata works

You probably noticed that Tarsier is much more efficient than Drone. In fact even Steelsplitter is more efficient than Drone. So you might wonder why we even buy Drones in Prismata when attackers are accessible from the beginning. If you bought a t1 Blastforge, you'd be able to buy more efficient units than Drones and still defend yourself if counterattacked, right?

The answer is absorb. As soon as the opponent buys a Wall, your first two attackers are essentially dead because they're just going to get eternally absorbed. It's like 5B kills your 12BB worth of Steelsplitters while being able to be bought after the Steelsplitters (because Wall is prompt). Attackers are much more efficient than Drones, but clearly absorb is several times that much more efficient than attack.

Luckily for attackers, only one unit can absorb at a time. Two Walls can't hold off four Steelsplitters forever. And this is why Prismata works: without absorb, you would never buy Drones because attackers are just more efficient. But if you could assign damage freely, then you would never buy attackers because your opponent could just stack as many absorbers and out-value you with their un-absorbable Drones. Capped absorb means that the optimal strategy (generally speaking) is to buy Drones at first, then switch to buying attackers once you have enough econ to buy them fast enough that their efficiency will compensate for the first couple being absorbed. It's beautiful how elegant this is.

Okay, so now on to your assignment for part 5: calculate Borehole Patroller's recursive inflation. You can model the Pixie it comes with by subtracting its value from the cost of the Patroller (though be warned this method is dangerous; it works for recursive inflation but can give some wacky results when you try to find a unit's inflation at an input other than its own, which we'll get to later). 1.38

Part 6: Comparing permanent units with non-permanent units

Our next task is to compare the efficiency of Tarsier to Rhino. The only problem is... how do you calculate Rhino's inflation? For a permanent unit we use (cost+production)/cost, but that only works because a permanent unit is still worth its cost next turn. Rhino has lost a stamina and thus is worth less than its cost one turn after you buy it. Non-permanent units don't have inflation; if they were the only unit in the game they would just be worth their cost and so you wouldn't gain anything by buying them sooner rather than later. What we can do is find the gold value of a Rhino at Tarsier inflation, which is pretty easy: You spend 5R on turn x, half a turn after x the opponent has to buy a BV, three half turns after it they have to buy another BV, and six half turns after it you receive two BV yourself. Divide each shipment of BV by half-turn inflation to the power of the number of half-turns it takes to arrive. Thus, the value of a Rhino at Tarsier inflation is 5.07 as opposed to the Tarsier's 5 (obviously the Tarsier is worth it's cost at its own inflation). However the Rhino costs 6 and the Tarsier costs 5, so now we know that Tarsier is about 18% more efficient than Rhino (at Tarsier inflation).

Assignment: do the same thing for Grimbotch. Grimbotch is basically a better version of Rhino when promptness isn't a factor. How much is one worth at Tarsier inflation? 5.8

Part 7: Equilibrium inflation

Obviously Rhino will get better relative to Tarsier the higher the inflation gets, and vice versa. Want to find the inflation where Rhino and Tarsier are equally good? Me too! Unfortunately this means we need to know how to find the value of a permanent unit at an inflation other than its own. Hm...

Well, I said earlier that at Drone inflation a Tarsier is worth 3 attack, and that made sense at the time. Can we derive a formula from that? I think we can. The value of a permanent unit is (production)*(1/(inflation-1)). (Note that this formula can also be used to find recursive inflation, by finding the inflation where it's worth its cost. But be wary that that will also produce recursive inflation figures for non-permanent units; they're bogus - non-permanent units have good high-inflation scaling, so the inflation where they're worth their cost makes them look a lot better than they are.) Just remember two things: first, attackers produce value half a turn sooner than Drones, and second, Tarsier has 2 build time. Now go to desmos and graph it. You should find that the equilibrium inflation is 1.5. Higher than that and Rhinos are better, lower and Tarsiers are better.

Assignment: again, do the same thing for Grimbotch. 1.31

Part 8: Exhaust attackers

Attackers with exhaust are a conundrum that took me a long time to figure out how to calculate. The solution is pretty obvious in retrospect though: for an attacker with exhaust 2 like Iso Kronus, just buy two of them one after the other and say that they're always attacking. So Iso Kronus costs 6.33 and produces 2 BV * half-turn inflation every other turn, so to get two constant attack starting the same time as if you bought buildtime-1 attackers you have to buy one Iso Kronus now and one last turn. That means Iso Kronus's inflation is equal to (6.33x+6.33+4.6x^0.5)/(6.33x+6.33), or 1.36.

Assignment: find Immolite's inflation. 1.4