yujiri.xyz

Gaming

Prismata

How to apply rigorous math to Prismata

last edited 2025-05-22

Here I'm going to introduce how to apply rigorous math to Prismata, quantifying the efficiency of different purchases. This will let us answer questions like "which of these two units is *more efficient*, and by how much? And in what situations?" Hopefully, the answers help us improve at the game.

Part 1: inflation

Let's start by introducing the concept of inflation. In economics, inflation refers to money getting less valuable over time, in other words, having money now is measurably better than having the same amount of money next year. Prismata has a similar dynamic: most units generate value every turn, which means having a unit now is measurably better than having the same unit next turn. But exactly how much better?

It depends on the unit and the situation, but let's start with a hyper-simplified version of Prismata where Drone is the only unit in the game and the goal is just to get gold faster than your opponent. Let's also ignore energy and pretend that gold is the only resource. For every 3 Drones, you would be able to buy 1 more per turn, which means having 3 Drones now would lead to having 4 next turn.

So in this case, having stuff now is 4/3 as good as having the same stuff next turn. So 4/3, or 1.33, is what I call Drone inflation, the inflation rate when Drone is the unit most worth buying. The general formula here is (cost + value produced per turn) / cost. In Drone's case, (3 + 1) / 3 = 1.33.

Another way to look at that fact is that a unit is worth 3 times what it produces each turn.

But it's important to emphasize that the inflation rate depends on how efficient are the units you're buying. If Drones costed only 2, then having 2 Drones now would lead to having 3 next turn, which means having stuff now would be 3/2 as good as having the same stuff next turn. Inflation would be 1.5, and units would be worth only twice what they produce each turn.

Exercise to test your understanding: an old version of Wild Drone costed 5 gold and produced 2 per turn, having the same buildtime as a regular Drone. In a version of Prismata with only this unit, what would the rate of inflation be?

Part 2: buildtime

Notice that knowing the rate of inflation lets us quantify the value of buildtime, so that we can compare Drone to Wild Drone, or Tarsier to Steelsplitter. A unit taking an extra turn to build means that you have to pay its cost one turn earlier, which means it costs 1.33x as much (if inflation is 1.33).

Let's try this with the current version of Wild Drone, which costs 2 gold, produces 1 per turn, and has 2 buildtime. Multiply its cost by inflation: 2 * 1.33 = 2.67, and plug that into the formula: (2.67 + 1) / 2.67 = 1.37. So the current version of Wild Drone is still more efficient than a regular Drone.

The 1.37 result describes how efficient Wild Drone is in a game where normally, we're buying normal Drones, causing the inflation rate to be 1.33. But what if Wild Drone were the only unit in the game? Then inflation would actually be 1.37, which means we should've multiplied its cost by 1.37, not 1.33. If we do that, it lowers to about 1.36. Which means we should've multiplied its cost by 1.36 instead of 1.37...

You can keep doing this process until the answer stops significantly changing. But there is a better way using a graphing calculator like desmos.com. Graph the formula for the unit, but with the inflation rate represented as x (so the calculator knows it's a variable), like (2x + 1) / 2x, then also graph the line y = x, and find the point where they cross. This works because x is the "input inflation", and you're looking for a value where Wild Drone's "output inflation" is the same as the input. I call this "recursive inflation". You should find the answer is just under 1.37.

Exercise: What if Wild Drone had 3 buildtime? What would its recursive inflation be then?

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 because you start with the two Engineers you want, and worthless later since you don't want to buy Drones in the late game, so we can treat Drone as if it doesn't cost energy. But when energy costs are relevant, like in games where we want a big economy, or when we want to compare Drone's efficiency to Vivid Drone, we need to figure out the value of energy.

Well, Drone and Engineer are inseparable here. You can't buy more Drones without buying more Engineers, and buying Engineers without buying Drones is pointless, so it would make no sense to say that either unit is more efficient than the other. So, the value of energy should be something that makes Drone and Engineer equally efficient.

Let's write out the inflation of both units using the general formula of (cost + production) / cost:

Drone: (3 + E + 1) / (3 + E)

Engineer: (2 + E) / 2

Here we have 2 expressions with only 1 variable, and we're looking for a value of E that makes them the same. The easiest way to solve this is to go to desmos.com and graph these two expressions (replace E with x so Desmos understands it's a variable), and find the point where they meet. The x coordinate of that point is the value of energy, and the y coordinate is the resulting inflation.

Here are the values you should've gotten:

drone inflation: 1.28

energy value: 0.56

But as a personal choice, I'm going to disregard energy cost for the rest of my calculations unless otherwise specified.

Exercise: what if Vivid Drone (which costs 2EE) replaced Drone? What would the value of energy, and inflation, be then? Pretend it's not limited by the need to consume regular Drones.

Part 4: other resources

How about determining the value of green, blue, and red?

Green is produced by a Conduit, which costs 4. If we ignore the energy cost of Drone, the Conduit costs 4/3 as much, so assuming the first five base set units are perfectly balanced, the thing it produces should be worth 4/3 as much. Likewise, Blastforge costs 5 so blue should be worth 5/3. Animus costs 6, but produces 2 red per turn, so 1 red should be worth 1 gold.

If we value energy at 0.56, then Conduit only costs about 12% more than a Drone, so a green is worth about 1.12. Blastforge costs 40% more, so a blue is worth 1.4, and Animus costs 69% more, so each red is woth about 0.84.

Exercise: What if instead of Conduit, Synthesizer was in the base set, which costs 6B and produces 2 green per turn? What would the value of green be then, with and without accounting for energy?

Part 4: defense

We want to be able to quantify the efficiency of attackers, not just Drones. But attackers generate value in the form of attack, so, like with energy, we'll need a way to convert the value of attack to gold.

Psych! Attackers don't generate value in the form of attack - at least, not usually. They generate value in the form of forcing your opponent to buy defense just *before* they attack. So we're really looking for the value of 1 defense, not the value of 1 attack.

I used to call the value of 1 prompt defense "barrier value", because Barrier provides 1 of it. So, we could say barrier value is the cost of Barrier, 1G (or 2.33 if we convert green to gold). But I wouldn't like to do that because Barrier is a random set unit that's only occasionally available. I'd rather use base set units to determine the value of defense..

Wall is the main blocker in base set, and according to our value for blue, Wall costs 6.67 and provides 3 defense, which means 2.22 cost per defense.

There are a couple of catches. One is that you can only buy defense 3 at a time with Walls, which means you sometimes have to overdefend (if you have 5 defense and are being attacked for 5, you need to buy a Wall, which leaves you at 8 defense when you really only need 6). This makes defense with Walls a bit less efficient than it seems.

The other catch is that if you defend only with Walls, you get exploited (you can't efficiently absorb multiples of 3 damage, or multiples of 3 + 1, with only Walls). So in a real game, you usually mix a few Engineers into your defense. Engineer is less efficient than Wall. It costs 2 for 1 defense, but it's not prompt, which means you have to buy it a turn earlier, which means it cost is worth 1.33 times as much, or 2.67.

Because of these factors, I think a reasonable model is to assume we have to buy one Engineer per Wall. That means Engineer is 1/4th of our defense, so the average cost of 1 defense is a weighed average of 3 parts Wall, 1 part Engineer, or 2.33. Coincidentally, this is the exact cost of a Barrier.

Exercise: Aegis costs 6GGG and has 5 hp. What would the value of 1 defense be if you're buying 5 parts Aegis, 3 parts Wall, and 1 part Engineer?

Part 5: attackers

Let's start with a simple attacker: Gauss Cannon. Gauss Cannon costs 7.33 and produces 1 attack per turn. So it produces -1 defense for the opponent per turn, but the opponent actually has to buy that defense *before* it attacks. Not a full turn before, though. If we define a full turn to be the distance between two turns *of the same player* (which we have been so far), then the distance between your turn and your opponent's turn is only half a turn. The inflation that occurs in half a turn is the square root of full-turn inflation (because you multiply by it twice to get a full turn). So, we can think of the value Gauss Cannon generates as 1 defense times half-turn inflation.

If we plug in the full-turn inflation of 1.33, we'll find out that Gauss Cannon's inflation is just under 1.37. But again, we need to account for recursion, because usually after the early game, we spend most of our resources on attackers, not Drones. We can use the same process we did to find Wild Drone's recursive inflation, and for Gauss Cannon we get just slightly over 1.37.

Exercise: Find Tarsier's recursive inflation. Remember to account for it buildtime!

Part 6: exhaust

What about an attacker with exhaust, like Iso Kronus? It doesn't produce value every turn, so you can't use the formula (cost + production) / cost... or can you?

There is an elegant workaround. Imagine you buy 2 Iso Kronuses, one last turn and one now, and then you can treat them just like 2 Gauss Cannons, except the cost would be 5G + 5G * full-turn inflation.

Exercise: Find Immolite's recursive inflation.

Part 7: Value of non-permanent units

Let's say we want to compare the efficiency of Tarsier to Rhino (as an attacker, not as a prompt blocker). The only problem is... how do we 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 do their thing and then peter out, 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. Sum all the value you get from a Rhino:

And divide the value of each shipment of defense by half-turn inflation to the power of the number of half-turns it takes to arrive. The full expression for Rhino's value: 2.33/x^0.5 + 2.33/x^1.5 + 2*2.33/x^3

Thus, the value of a Rhino at Tarsier inflation is 5.07 as opposed to the Tarsier's 5 (obviously the Tarsier is worth its cost at its own inflation). However Rhino costs 6 and Tarsier costs 5, so now we know that Tarsier is about 18% more efficient than Rhino (at Tarsier inflation).

Exercise: 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?

Part 8: Value of permanent units

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 Drone is worth 3 gold. Can we derive a formula from that? I think we can. The value of a permanent unit is production / (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 warned: that will also produce results 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.)

Now, we can graph Tarsier's value as (2.33 * x^0.5) / (x-1). We can also divide each unit's value expression by its cost, to get its *efficiency* (how much is it worth relative to its cost). This is the most meaningful and widely applicable measure of a unit's strength I've invented so far. It shows that the equilibrium inflation, where Tarsier and Rhino are equally efficient, is 1.5.

Exercise: again, do the same thing for Grimbotch.

I have a couple of desmos graphs.

Recursive inflation

Unit values

Proxied content from gemini://yujiri.xyz/gaming/prismata/math.gmi

Gemini request details:

Original URL
gemini://yujiri.xyz/gaming/prismata/math.gmi
Status code
Success
Meta
text/gemini; lang=en
Proxied by
kineto

Be advised that no attempt was made to verify the remote SSL certificate.

What is Gemini?