Multiplayer Metrics

Multiplayer Tetris games allow players to send garbage to one another by clearing lines. Some attacks are more valuable than others, but it is not so simple as to say "the more garbage an attack, the better."

Evaluating performance

Suppose you had a number of game replays in front of you. You are unable to watch the games, and you do not know who won which games. However, you do have various data such as how much garbage each player sent, game length, how many pieces used, etc. Given this data, how would you determine who won each game? To simplify this problem, assume that both players finish each game by simultaneously clearing a line so that there remains no upstack. When the games end, only garbage remains.

One commonplace statistic is "Tetrominos Per Minute" (TPM).  It is a simple measurement of playing speed. It seems self-explanatory to say that a faster player will more likely defeat a slower one. However, what if that faster player is only fast because he plays thoughtlessly and wastefully? Maybe he clears too many Singles. A slower player, who makes better use of his pieces, can still win.

Over the years players began to pay closer attention to "Adds Per Minute" (APM). It takes skill to play quickly. Yet, it takes an even cleverer player to ensure that those pieces turn into attacks. APM correlates much more strongly with winning. However, what if the higher APM player focuses too much on attacking and neglects his own garbage? If a slower APM player consistently deals with the garbage he receives while steadily returning fire, he can still win.

A high TPM or APM will not always indicate the winner. However, in the above thought experiment, there is one way to always determine who won the game. It is as simple as adding the total number of garbage rows sent and cleared.

Calculating throughput

Every garbage row the opponent sends will stay on your playfield until you clear it. The net garbage left always equals "garbage received" subtracted from "garbage cleared." When this exceeds twenty, you lose. When the game ends, one player's net garbage remaining will always be greater than or equal to 20. The other's will be less (barring a draw). Therefore, the player who sent and/or cleared the most garbage must be the one who won. An exception to this rule is when a player tops out due to overly high upstack rather than because he has more garbage than his opponent.

At any state of the game, it is easily known which player currently has the higher throughput. In the below example, the left player must have had sent and cleared more combined garbage rows than the player on the right. If he had cleared down less garbage, then he must have had sent much more garbage than his opponent. If he had sent less garbage, then he must have had cleared more of what was sent to him.

Assuming that a player's opponent will not top out on his own, he cannot win without having sent at least twenty rows of garbage. In practice, his opponent will clear at least some of that garbage through the course of normal play. Therefore, he must send a net total of twenty garbage rows.

A win occurs when: Opponent's Garbage Received - Opponent's Garbage Cleared ≥ 20

The throughput formula weighs sent garbage and cleared garbage equally. Interestingly, clearing garbage typically requires less pieces than does sending garbage. For example, take a Tetris consisting of four lines of upstack. This attack requires ten pieces and sends four rows of garbage. That results in an efficiency of 4/10 = 0.4 garbage rows sent per piece. Compare that with one using four rows of lined-up garbage.

This results in clearing down four rows of garbage as well as adding four to the opponent. It only requires one piece to do. 8/1 = 8.0. In terms of throughput, a Tetris made up entirely out of garbage rows is twenty times more an efficient use of your pieces when compared to one composed only of upstack.

Each line of upstack requires 2.5 pieces to complete. Each line of garbage requires only a quarter of a piece to complete. This is the reason behind why downstacking is so effective in terms of increasing throughput, and thus winning potential. Downstacked garbage is equally valuable as sent garbage, yet costs much less per piece. You can stack up for a Double and send one row of garbage. Alternatively, you can use a quarter of one piece to clear down one row of your own garbage. These options both contribute to winning in a similar capacity, yet one is far more efficient than the other.

There are two ways to increase your throughput. You can play more efficiently, and you can play faster. A player who is twice as efficient at using his pieces to clear and send garbage will still break even with someone twice as fast than him. There is a simple relationship between speed, efficiency, and throughput.

Throughput = Efficiency × TPM

Suppose you do not have any garbage on your playfield and strictly want to compare the efficiency of different attacks. You need to know two things: how much garbage each attack sends and how many pieces they require.

AttackGarbage SentPieces PlacedGarbage / Pieces

This paints a decent picture of the relative strength of each attach, but it does not account for everything. It is also useful to consider how both line clear delay and soft dropping can affect an attack's strength. For example, modern games reward players a great deal for clearing T-Spins. T-Spins require soft dropping. This uses up more time on a per piece basis. Line clear delay can also complicate things. Any given line clear animation requires, for example, a quarter of a second to finish. A Tetris clear, which simultaneously clears four in one go, will take one quarter second. However, clearing four singles separately will take up a combined total of one whole second since the line clear animation happens four different times. It is possible to take into account these issues with a different formula.

Different games not only award attacks differently, but also use different amounts of soft drop delay and line clear delay. The efficiency of each attack can vary significantly from game to game. Below, some general parameters were used for a hypothetical game.

Soft Drop Seconds Per RowLine Clear SecondsTetrominos Per Second
AttackAttack EfficiencyGarbage SentPieces DroppedPieces Soft DroppedSoft Dropped RowsLine Clears
T-Spin Single0.54122.5191
T-Spin Double0.64545191
T-Spin Triple0.6967.5191
B2B Tetris0.485510001
B2B T-Spin Single0.81132.5191
B2B T-Spin Double0.80655191
B2B T-Spin Triple0.80577.5191

Not surprisingly, Tetrises are more efficient than Triples, Doubles, and Singles. B2B Tetrises are more efficient than regular ones. T-Spins are more efficient than Tetrises. Even regular T-Spins are more efficient than a B2B Tetrises.

Something interesting also happens when looking at the different T-Spins. Regular T-Spins slightly improve in efficiency as their line count increases from T-Spin Singles to T-Spin Triples. This makes sense because line clear delay is paid only once per attack. This allows the higher T-Spins to use that line clear delay at a discount per piece. However, the opposite trend happens with B2B T-Spins. Smaller T-Spins require less for that extra B2B garbage line on a per piece basis.

Illustrated below, a B2B T-Spin Double sends five rows of garbage. However, dividing it into two B2B T-Spin Singles would instead send three garbage lines each. That results in one more garbage line sent, despite both cases requiring the same number of pieces.

Of course, a player should not take this to mean that he should strive to only make B2B T-Spin Singles, for example. Actual games are far more complex. What is efficient in the short term is by no means more efficient in the long run. For example, a player will receive only one T-piece out of every seven. If he uses it to clear a T-Spin Single (2.5 pieces), on average he is left with 4.5 pieces before the next T-piece comes. He might have used the first 2.5 pieces very efficiently, but wasted the other 4.5 pieces. A B2B T-Spin Double or Triple may use up these pieces more efficiently when viewed from a broader perspective.

Just as soft drop delay has an effect on the efficiency of T-Spins, line clear delay has an impact on Combos. Combos tend to require smaller line clears in order to prolong them. Each separate line clear adds on an additional line clear delay. This overhead adds up over the course of the combo. As a rule, the lesser the line clear delay, the more efficient combos become.

The adjusted attack efficiency formula is useful for comparing 2-wide, 3-wide, and 4-wide combos. A 2-wide, on average, uses Doubles. Each Double sends an extra line. A 4-wide on the other hand uses only Singles, so attacks come only from the combo itself. The 3-wide uses on average a 50/50 combination of Singles and Doubles. Also note that the wider the combo, the longer the combo can be maintained due to using more Singles instead of Doubles. Doubles extinguish potential combo lines at twice the rate of Singles, per piece.

From left to right: 2-wide, 3-wide, and 4-wide combo setups.

Soft Drop Seconds Per RowLine Clear SecondsTetrominos Per Second
AttackAttack EfficiencyGarbage SentPieces DroppedPieces Soft DroppedSoft Dropped RowsLine Clears
2-wide Combo 00.18915001
2-wide Combo 10.189210002
2-wide Combo 20.252415003
2-wide Combo 30.283620004
2-wide Combo 40.302825005
2-wide Combo 50.3461130006
2-wide Combo 60.3771435007
2-wide Combo 70.4251840008
3-wide Combo 00.18915001
3-wide Combo 10.12317.5002
3-wide Combo 20.224312.5003
3-wide Combo 30.247415004
3-wide Combo 40.279620005
3-wide Combo 50.329822.5006
3-wide Combo 60.3721127.5007
3-wide Combo 70.4321430008
3-wide Combo 80.4771835009
3-wide Combo 90.5432237.50010
4-wide Combo 0002.5001
4-wide Combo 1005002
4-wide Combo 20.11917.5003
4-wide Combo 30.179210004
4-wide Combo 40.214312.5005
4-wide Combo 50.298515006
4-wide Combo 60.357717.5007
4-wide Combo 70.4461020008
4-wide Combo 80.5161322.5009
4-wide Combo 90.60717250010
4-wide Combo 100.6822127.50011
4-wide Combo 110.74425300012
4-wide Combo 120.8243032.50013
4-wide Combo 130.89335350014
4-wide Combo 140.9524037.50015

The garbage gained from Doubles in thinner combos does not outweigh the per piece efficiency of wider combos. Interestingly, combos are not any more efficient than regular Tetrises until around the Combo 7 mark.

Only after a Combo 12 do they become more efficient than B2B T-Spins. This highlights the validity of the controversial middle 4-wide opening. Although, increasing line clear delay would have a major influence on its effectiveness.

Change on Attack Garbage

In the recent past, Tetris games have tacked on a peculiar feature called Change on Attack (COA). Previously, games would randomly assign the column where each garbage row's hole appears. COA instead lines up garbage holes for each separate attack. When the player sends another attack, then those holes line up again, but on another column.

Below, in the second frame, a player receives one line of garbage due to a Double. His opponent then makes a Tetris, as seen in the third frame. It sends four rows of lined-up garbage.

Lined-up garbage poses much less of a threat than randomly distributed garbage. A single I-piece can completely nullify a Tetris's or T-Spin Double's attack. COA weakens bigger attacks compared to smaller ones. The threat is more superficial. Games can become reduced to a similar experience to playing on a see-saw. You send over a Tetris, and then your opponent sends it right back, and so on. Worse still, it greatly reduces the complexity of downstacking.

The take-away from this is that COA games have very little slippery slope. Sending garbage efficiently means much less when your opponent can easily send it right back with a couple of quick Tetrises. Instead of hurting your opponent, you could be setting yourself up for disaster. It can be confusing to know exactly what to aim for.

Typically, games between evenly skilled players end after one saves up a fair amount of ammo and has an I- or T-piece in hold with a couple of I- or T-pieces soon on the way. This allows for a quick spike of garbage to deliver the final blow before the opponent can convert that clean garbage into easy throughput. Long combos are also sometimes able overcome COA's total lack of slippery slope.

I have been told that it is good to wait until your opponent has messy garbage before you send clean garbage attacks. The idea is to ensnare your opponent with difficult garbage in order to attain enough time to deliver the final blow. This gives you an opportunity to send "volume" garbage in the meanwhile. Personally, I have had trouble making this idea work. It is worth noting that players will never have more than a few I-pieces at any one time. Send enough clean garbage, and it will not matter if it is clean or not once they run out of I-pieces.

In the end, the player with the most throughput will still win, COA or not. Purposefully sending messy garbage will interfere with your opponent's ability to downstack efficiently. That in turn should have an effect on his overall throughput. However, I am unable to say whether deliberately sending weaker attacks is worth it to this end.

Garbage Canceling

Many modern games allow attacks to cancel one another out when they occur during the same time span. Imagine if you send four rows and your opponent sends over two. Two rows will cancel, and your opponent will receive the difference of two rows. When your opponent sends an attack, for a short time you will not actually receive it. The game waits until you drop your current piece before filling your playfield with pending garbage. If with that piece you send an attack, the two attacks cancel each other out. Any remainder is sent to whomever made the lesser attack.

Inevitably, players figured out a way to use this to their advantage. By timing your attacks, you can choose to deliberately cancel garbage or accept the trade. Below, the player on the left is dangerously near to topping out.

Suppose he takes the first opportunity to clear his Tetris. Then, his opponent sends a Tetris back. He winds up right back where he started.

However, if the two attacks cancel, something slightly different occurs. The last frame never happens. This is the result:

This is a much better position for the left player to be in. Not only is he nearer to the bottom, his opponent has less ammo to threaten him with. The opposite tactic is useful when your opponent is against the ropes and you are not. Deliberately timing the attack so you trade garbage instead of canceling it can give you the opportunity to deliver the final blow.

Timing the attack can be done by simply waiting for your opponent to send lines. However, it is usually better to stack pieces while waiting, preparing ammo in the meanwhile. Do not overdo it, though. If you need to wait too long in order to time an attack, it is probably better to forego this tactic rather than potentially sacrifice throughput.

There are a couple of other times where it may be useful to deliberately time attacks. For example, if you are sending clean garbage and your opponent sends over messy garbage, it would suit you to cancel it. On the other hand, if you can afford it, you should try to accept clean garbage when possible. It is also useful to send clean garbage, but wait for your opponent to send a smaller attack. When these cancel, your opponent will receive only one or two lined-up garbage rows. This way, you allow him less usable, clean ammo without altering your throughput.

Diagrams made with tage.

Popular posts from this blog



Building a Rating System for Competitive NES Tetris