In Netrunner, the main question corporations have to answer is “Is this safe?” Every bit of ICE they install, every time they gain credits, corp players are looking to provide an unanswerable defense, so that they can score an agenda. Ultimately, however, runners will find the credits and breakers to get into any server—and recently, they’ve been doing so at a faster pace. To stay competitive, corp players have to think about how to tax the runner—something I’d like to explore with Path Length. If we look at this long enough, we’ll start to see why certain cards get played, and other, seemingly impressive cards, get snubbed.
Let’s define Path Length as the total cost for a runner to access a specific card in a server. Any time the Path Length is greater than what the runner can reach during their turn, then the runner is “locked out” of the server, just as surely as if they didn’t have the correct breaker.
So, for an undefended PAD campaign, the Path Length (PL) is just a click to make the run. Whereas for a server defended by an Ice Wall, the Path Length is the break cost of the ICE plus a click. Let’s call the cost to break an ice Bice. This would be dependent on the breaker the runner has installed and the ICE itself. Sneakdoor Zeta (sneakdoor.com) has extensively compiled the cost to break whatever ice with whatever breaker. We’ll use their numbers.
So for a server defended by multiple ice, the total PL is 1 click+(Bice1+Bice2+Bice3…). To make things easier, let’s call the sum of the break costs of all the ice B. It’s pretty easy to look up the costs and add them together, so I won’t do it here.
Some might try to come up with a credit equivalency for the 1 click at the beginning. And that may be valid, but I don’t think it’s necessarily useful. You only get 4 clicks per turn as the runner, and it may be possible to totally lock out a server based on click cost alone—something players complain about vs Jinteki: Replicating Perfection using Enhanced Login Protocols. Consider Turing or Eli 1.0. If you run on your third click without a breaker, then the Path Length is just too great, and the runner cannot make a successful run.
You’ve got Choices
Speaking of bioroids, they give us an interesting choice: breaking with breakers or with clicks. In this case, a server defended by Eli 1.0 and attacked by a runner with a Corroder installed has PL = 1 click + 4 credits, or 1 click + 2 clicks . This choice could also be written out as:
1 click + {4 credits, 2 clicks}
Where the point is to choose one of the options in brackets. Similar things could be done for ice that doesn’t directly end the run: for example, the PL of a server defended by a Pup would be
1 click +{2 credits, 2 cards}
So far this has been just an exercise in looking up numbers. But let’s consider a card with a pretty high break cost: Chum. For the setup shown, Chum takes 3 credits to break, and the Wall of Static takes 2 credits, making:
PL= 1 click + 3 credits + 2 credits = 1 click + 5 credits
But wait! The runner could let Chum trigger, giving the Wall of Static +2 STR. Then the Path Length would be:
1 click + 0 credits + 4 credits= 1 click + 4 credits
For this common breaker suite, all that happened when triggering the subroutine was the PL increased 2 credits over not having Chum installed. This is actually better than breaking Chum! In contrast, Pup increases the PL by the same amount, but is more generally useful.
You could claim that there are a lot of ICE, in Jinteki especially, whose entire function is to increase the Path Length. Destroyers, for example, just add Trash a Program to the cost. However, if the corporation is able to trash a vital program, like an icebreaker, this can cripple all future runs. In general, these ICE may as well have End the run subroutines by the mid-game, barring some runner shenanigans, like relying on a Komainu to trigger I’ve Had Worse.
This Section is Mandatory
Let’s talk about upgrades. These vary wildly in power level and function, but the ones we’re most interested in for now are those that change the path length. Let’s imagine a server with 2 NEXT ice, and an Experiential Data installed in the server. Without the upgrade, this has a PL of 1 click + B credits. If the corp rezzes the upgrade, then the break cost of each ice changes. If the breakers have 1:1 pump costs, like Crypsis, then the new break cost for each ice is just 1 more. So the new PL = 1 click + (B+2) credits, or, if you have N pieces of ice installed,
PLExperiential = 1 click + (B+N) credits
This is assuming there’s nothing crazy about the breakers—they don’t have, for example, a 3 credits to pump 5 STR ability. Those could be a better case for the corp, but that’s something of a niche scenario, with all the Corroders and Zu.13s running around. Yes, there’s no common 1:1 sentry breaker, but with Mimics and Datasuckers, the effect is often the same.
As a note, if the runner is using 1:1 breakers, this upgrade is actually a losing proposition for the Corp: each subsequent piece of ice costs money to install. Placing 2 pieces of ice on a server costs 1(credit), 3 pieces, 3(credit), and so on. If there’s only 1 piece of ice, you’ve paid 2(credit) to increase the PL by 1; if there’s 2 pieces of ice, you’re paying 3 to increase Path Length by 2. It only gets worse from there. Simply put, scaling by number of ice just never catches up to your investment for installing the ice and rezzing Experiential Data.
A more interesting upgrade is Ash 2X3ZB9CY. Ash doesn’t mess with the break costs of a server, but does add to the PL by imposing a trace against accesses. So, without the Ash, we can say PLbase = 1 click + B credits. But with Ash, we could say PL=1 click + (B+C+4) credits, where C is the number of credits the corporation chooses to spend. Alternatively, the runner could take the trace, trash Ash, and run back in. This gives a new Path Length of:
PLAsh = 1 click + B credits + {(C+4) credits, 1 click + (B+3) credits}
Or,
PLAsh = PLbase + {(C+4) credits, PLbase+3 credits}.
So the best amount for the corp to spend, assuming the runner could get in next click, will be around B-1. Maybe a bit more, if you think they value their clicks.
Caprice is a Monster
Let’s talk about one of the more prominent upgrades: Caprice Nisei. After all ice are passed, Caprice offers the corp a last-chance Rock-Paper-Scissors game to keep the runner out. This isn’t a deterministic calculation at all, so let’s consider the case where we have a huge number of runs on this server, and calculate a probabilistic path length, or PPL.
Without the Caprice, things are simple: PLbase=1 click + B credits, as before. With Caprice rezzed, both players now have to pay 0-2 credits. Let’s say they both use dice, so we get a nice average value for how much they spend: 1 credit. Now our PPL for one run is:
PPLone run = 1 click + (B+1) credits
Then we have to consider how often the runner will get in—since both players are using dice, it’s just 1/3rd of the time. The other 2/3rds, they have to run again. Or:
PPL = [1 click + (B+1) credits] + [1 click + (B+1) credits]*(2/3)
But even this second run might not cut it! Or the third! That’s right, we’ve got an infinite series on our hands—one that looks like:
PPL = [1+1*(2/3)+1*(2/3)2…] click + [(B+1) + (B+1)*(2/3) + (B+1)*(2/3)2 + …] credits
This isn’t the worst, as we can reduce the series to a single factor, using some simple arithmetic. I’ll spare you the algebra—the end result looks like:
PPLCaprice = 3*PPLone run = 3 clicks + (3B+3) credits
So, on average, Caprice more than triples the path length of any one server—far better than Ash! There are few other upgrades that mimic this boost. The closest you can get is Off the Grid, which adds the PL of the corp’s HQ to the PL of the server. Or, in other words:
PLOff The Grid = PLserver + PLHQ
This is still not triple the cost of running a single server, so Caprice is both better and cheaper. We could install a Crisium Grid on HQ, which would give us:
PLOTG Crisium = PLserver + 2*PLHQ + 5 credits
This starts to look a lot like Caprice, but for 2 cards and 8 credits instead of 1 card and 2 credits (plus change for the psi game). Few other defensive upgrades even come close. In fact, most upgrades either decrease costs for the Corporation, or provide additional punishment for the runner. A special mention goes to The Twins, who, in a perfect game, could triple the break cost of each ice on a server—provided the corp has the cards to trash in hand, of course.
Centralize
With all of this math built up, we might as well talk about agendas in central servers. Whereas remote servers either absolutely have an agenda in them or they absolutely don’t (from the corp’s perspective), central servers are much more difficult. Archives acts like a remote server in all meaningful respects, except that Jackson can purge the agendas before the runner touches them. But HQ and R&D are different beasts entirely.
In HQ, you have some number of cards in hand, N, and n of those are agendas. The runner chooses a card at random—which means we need to think about this one probabilistically. As before, the PLHQ=1 click + B credits. The chance that they hit an agenda in HQ is n/N. If they have to run again to find the agenda, then we get:
PLHQAg = PLHQ + ((n-N)/N)*PLHQ
And if they have to run again… wait, we did this before. Let’s pretend we went through the algebra all over again. We get:
PPLHQAg = PLHQ*(N/n)
Or, for an HQ with 5 cards and 1 agenda,
PPLHQAg = PLHQ*(5/1) = PLHQ*5
This indicates that taxing out HQ is certainly a viable strategy–if the corp raises the PL of HQ by only 1 credit, then the runner would, on average, have to pay 5 credits! But a second agenda in hand, or an HQ interface, doubles their chances to pull the agenda—giving a PPLHQAg = PLHQ*2.5. A remote with a Caprice installed is safer!
Further Developments
R&D is a bit more difficult. The runner can’t run RnD twice in a turn and have an equal chance of seeing an agenda (without some shenanigans)—they have to deal with what they saw on top of R&D that turn, and stop there. However, since even the corporation doesn’t know what’s coming up, we could still talk about probabilities—the probability that there is an agenda in the top N cards of the deck—and cost—the cost to see a new card. So, in the base case where there are no shenanigans, the PL_R&D=1(click)+B(credits), and the probability to see an agenda in the top is given by a hypergeometric function, quickly taking the Path Length into “DEEP MATH” territory.
Let’s use a basic rule of thumb, that the average chance to pull an agenda from R&D for each random access sits at ~20% (Usually it’s a bit lower, but this gives a nice fraction.) In that case, the PPLR&DAg = PLR&D + 4/5(R+PLR&D), where R is the cost to remove the top card of R&D. This could vary, but will always have the option for 3 clicks, ie, letting the turn pass. If we let this iteration continue, we get something that looks like:
PPLR&DAg = PLR&D + (4/5)*(R1+PLR&D) + (4/5)2*(R2+R&D) + …
PPLR&DAg = PLR&D*5 + (4/5)*R1+(4/5)2 *R2 + …
And, if all the R’s are 3 clicks, then:
PPLR&DAg = PLR&D*5 + 4*R = PLR&D*5 + 12 click
Let’s imagine that you have an R&D interface out. In that case, the chance to nab at least 1 agenda on the first run (using our silly 20% rule) is 40%. This is where things get a bit silly—if we see five cards, for instance, there is a chance that we won’t see an agenda, despite our 20% rule. Hypergeometric stuff takes this into account, but let’s just limit ourselves to two cards from the deck, to try to get a handle on how to best defend ourselves. So then our expression looks like:
PPLR&DAg = PLR&D + (3/5)*({R1,R2}+PLR&D) + (4/5)*(3/5)*({R2,R3}+PLR&D) + (4/5)2*(3/5)*({R3,R4}+PLR&D) + …
This is assuming that the runner can only remove 1 card at a time from the top of R&D—this is why runs after the second get factors of 4/5. Doing some algebra, we can get:
PPLR&DAg = PLR&D + (3/5)*[5*PL_R&D + {R1,R2}+(4/5)*{R2,R3}+(4/5)2*{R3,R4}+…] .
PPLR&DAg = 4*PLR&D + (3/5)*[{R1,R2}+(4/5)*{R2,R3}+(4/5)2*{R3,R4}+…]
And, if all the Rs are 3 clicks,
PPLR&DAg = 4*PLR&D;D + 9 clicks
Essentially, the RDI reduced the number of runs by 1—exactly what we’d predict. On the other hand, if we were able to remove two cards from the top of R&D each time, we’d get:
PPLR&DAg = PLR&D + 3/5(R1+R2+PLR&D) + (3/5)2*(R3+R4+PLR&D) + (3/5)^3*(R5+R6+PLR&D)…
PPLR&DAg = PLR&D*2.5 + (3/5)*[R1+R2+(3/5)*(R3+R4)+…]
And again, assuming all Rs are 3 clicks,
PPLR&DAg = PLR&D;D*2.5 + 9 clicks
There are two interesting facts here: First, that you still have to pay the same cost for removing cards between removing only one card, or removing two cards. Logically, this makes sense. You have to get rid of those cards somehow! And, second, that the path length decreases as the runner lets the corp draw past the cards the runner saw. Again, this is obvious to some, but it points to two distinct reasons to run R&D.
Early in the life of Netrunner, the concept of “R&D Lock” took hold. The idea was that if the runner always saw cards in R&D before the corp had a chance to draw them, then they would inevitably win the game. In principle, this is still valid. But it usually required knowing the top 3 cards in R&D each turn—often requiring runners to get into R&D for a single new access. This is something corps could tax by raising the Path Length of R&D.
More recently, we’ve seen a rise in runners that can pressure the corp in a variety of ways. For those runners, R&D is mainly interesting as a source of easy-to-find agendas. They’d be more interested in the PL to the nearest agenda—which they can decrease by running less. This isn’t that surprising, but it does bear mentioning. As long as they maximize the number of new cards they see on R&D, they’re making a good play.
Wrapping it up
Path Length is something of a slippery metric. Since it relies on knowing the breakers a runner has available to them, as well as the ICE on the field, it often isn’t easy to come up with quick numbers to show where to place the next piece of ICE. But with a little work, we can use it on specific pieces of ICE in common situations, and evaluate if those pieces of ICE are actually working for us. We can also use it to look at how upgrades work, and evaluate if they protect agendas well enough. By doing that, we find that only upgrades that multiply the server’s path length are good enough to play. Further, we can see that raising the Path Length on central servers, even slightly, will pay off big dividends.
I’m confident that Path Length is a solid way to evaluate corp defenses. Runners have to pay the cost to access agendas, or else lose the game. By looking at the ways cards and strategies manipulate these costs, we can decide if they are worth considering–and possibly find new ways of remaining competitive.
Brandon Long is a Physics PhD candidate and avid Netrunner player since the Spin Cycle. He has worked on analysis of dust in the atmosphere and the orientation of molecules. He has also produced the Netrunner ICE Cost Calculator.