4 min read

Analyzing Software Loops

Any time you touch a piece of software you engage in a loop. You enter, you engage, you exit. Loops can be strong (pull you in and don't let you go) or soft (you bounce off after a few minutes). They can be fast (5 minutes) or slow (weeks). Games are the most cognizant of loops and have gotten really really good at them. Marvel Snap is an excellent example of this.

The Loop

Marvel Snap is a trading card game for phones. You have a collection of cards, put a subset of them into a deck, and then play your deck against other players decks. Over time you add cards to your collection and build new decks.

Moving players between these different parts of the loop are desires:

On the surface it’s a simple loop that’s been done for decades (Magic the Gathering, Pokémon, etc.). But the way Snap recognizes this loop and engages with it is where the magic happens.

Each node in the loop gets a core system that supports it:

This loop is enforced by the major progression system within the game—collection level.

Your collection of cards is given a level rating. This rating is a reflection of the number of cards, their variants (duplicate cards with alternative art styles), and visual upgrade level (cards progress from basic, to 3D art, to animated art, etc.).

Playing a deck upgrades a random card in the deck, upgrading the card increases your collection level, increasing your collection level unlocks new cards, adding those new cards to your deck lets you upgrade them, which increases your collection level, and so on...

Loop reinforcement

This loop is then enforced by all the other design decisions in the game.

Small deck size

Snap decks are smaller than other decks in the genre. This reinforces the deck building step because it’s easier to wrap your head around what cards compose your deck, and what effect swapping in a card would have. It also increases the chance that a specific card will be upgraded, making the motivation to swap in new cards to upgrade them greater. Small decks are also a requirement for the next design decision—short rounds.

Short rounds

Not only are short rounds a great fit for the game being on mobile but it speeds up how quickly you go through the loop. There’s no lingering on the ‘play deck’ step with a frustrating crawl through a 20 minute game that you end up losing. Moving through the loop remains swift.

Card pools

The cards that you unlock via collection level are doled out at random from within a specific pool of cards. Which pool of cards is determined by your collection level. Said differently, everyone will have a roughly similar cards, but no one will have the same set of cards. And you’re guaranteed not to get certain cards until you’ve played for a certain amount of time.

What does all that mean? Two things:

1. It’s much harder to outsource deck building to online guides.

For example, this Polygon article on good beginner decks contains many cards I don’t have. I played quite a bit over the holidays and my collection level is still only around 180. The second card pool starts at 214, meaning I still have 34 levels to go before I’ve unlocked all the cards in the first pool and have access to the cards in this “beginner” guide. This means that I’m forced to build my own decks.

2. You’re constantly tantalized by cards you don’t have.

Since other players around your same level are unlocking the same cards but in a different order there’s no sense of “of course they won, they have a better collection”. You have no idea what their collection is like, and instead you’re teased by occasionally seeing new cards (“ooooh, that’s a cool card, maybe I’ll get that when I hit my next collection level!”). This desire also pulls you along the loop.


The monetization also sits on top of this loop. Cards variants and upgrades can be purchased to increase collection level (which unlocks more cards). Crucially, the monetization only directly affects this one step in the loop.

There is no spending money to directly improve how your deck plays (can't purchase advantages that your opponent might not have) and no spending money to improve your deck building (can’t purchase a way to stack your deck, or advice on how to improve your deck).

Of course getting more cards will affect how you build and play your deck, but no differently than if you had gotten more cards purely from playing the game. Monetization speeds up the progression through one node in the loop, keeping the loop in-tact but letting you get your rewards a bit faster. This is in contrast to games where spending money breaks a portion of the loop (removing the desire to move along it because you feel like money is a requirement).

Around and around

The genius of Snap isn’t that they figured out some brand new loop that players wanted to engage in. They recognized the genre loop that has been there forever, and then reinforcing every step of that loop. It’s easy to get too clever trying to invent a loop from scratch. Snap did a beautiful job of observing, identifying, and sharpening what’s already been around for decades.