Tetris Wiki
Advertisement

The Super Rotation System, also known as SRS and Standard Rotation System is the current Tetris Guideline standard for how tetrominoes behave, defining where and how the tetrominoes spawn, how they rotate, and what wall kicks they may perform. SRS traces its routes back to 1991 when BPS introduced its signature third and fourth rotation states for the S, Z, and I tetrominoes in the game Tetris 2 and BomBliss. Two years later, in the game Tetris Battle Gaiden, BPS altered the spawn orientation of the T, L, and J tetrominoes so that they spawned flat-side first. It was not until the 2001 game, Tetris Worlds, that the wall kick system was introduced, and SRS took its final form. Henk Rogers, in his effort to unify all new Tetris games into the Tetris Guideline, required Arika to include a form of SRS in their 2005 game, Tetris The Grand Master 3 Terror-Instinct, where it is called "World" rule, in reference to Tetris Worlds.

Spawn Orientation and Location

The 4 rotation states of all 7 tetrominoes. Starting with the spawn state on the left, the 4 rotation states resulting from successive clockwise rotations are shown in order. The circles merely help to illustrate rotation centers and do not appear in-game.

The spawn orientations are included in the diagram on the right.

  • All tetrominoes spawn horizontally and wholly above the playfield.
  • The I and O tetrominoes spawn centrally, and the other, 3-cell wide tetrominoes spawn rounded to the left.
  • The tetrominoes spawn pointing up.
  • In Tetris Worlds, the tetrominoes spawn in rows 22 and 23 (or just row 22 in the case of the "I" tetromino), however, in later games the tetrominoes spawn 1 row lower.

Color Scheme and Block Style

SRS uses the "ice" block style. The colors are shown below.

Tet.pngTet.pngTet.pngTet.png
SISISISI

I

SJTet.pngTet.pngTet.png
SJSJSJTet.png

J

Tet.pngTet.pngSLTet.png
SLSLSLTet.png

L

Tet.pngSOSOTet.png
Tet.pngSOSOTet.png

O

Tet.pngSSSSTet.png
SSSSTet.pngTet.png

S

Tet.pngSTTet.pngTet.png
STSTSTTet.png

T

SZSZTet.pngTet.png
Tet.pngSZSZTet.png

Z


Basic Rotation

The basic rotation states are shown in the diagram on the right. Some points to note:

  • When unobstructed, the tetrominoes all appear to rotate purely about a single point. These apparent rotation centers are shown as circles in the diagram.
  • It is a pure rotation in a mathematical sense, as opposed to the combination of rotation and translation found in other systems such as Sega Rotation and Atari Rotation.
  • As a direct consequence, the J, L, S, T and Z tetrominoes have 1 of their 4 states (the spawn state) in a "floating" position where they are not in contact with the bottom of their bounding box.
  • This allows the bounding box to descend below the surface of the stack (or the floor of the playing field) making it impossible for the tetrominoes to be rotated without the aid of floor kicks.
  • The S, Z and I tetrominoes have two horizontally oriented states and two vertically oriented states. It can be argued that having two vertical states leads to faster finesse.
  • For the "I" and "O" tetrominoes, the apparent rotation center is at the intersection of gridlines, whereas for the "J", "L", "S", "T" and "Z" tetrominoes, the rotation center coincides with the center of one of the four constituent minos.

Wall Kicks

SRS has super wallkicks. Unlike most rotation systems with super kicks, these wall kicks are relatively modest. When the player attempts to rotate a tetromino, but the position it would normally occupy after basic rotation is obstructed, (either by the wall or floor of the playfield, or by the stack), the game will attempt to "kick" the tetromino into an alternative position nearby. Some points to note:

  • When a rotation is attempted, 5 positions are sequentially tested (inclusive of basic rotation); if none are available, the rotation fails completely.
  • Which positions are tested is determined by the initial rotation state, and the desired final rotation state. Because it is possible to rotate both clockwise and counter-clockwise, for each of the 4 initial states there are 2 final states. Therefore there are a total of 8 possible rotations for each tetromino and 8 sets of wall kick data need to be described.
  • The positions are commonly described as a sequence of ( x, y) kick values representing translations relative to basic rotation; a convention of positive x rightwards, positive y upwards is used, e.g. (-1, 2) would indicate a kick of 1 cell left and 2 cells up.
  • The J, L, T, S, and Z tetrominoes all share the same kick values, the I tetromino has its own set of kick values, and the O tetromino does not kick.
  • Several different conventions are commonly used for the naming of the rotation states. On this page, the following convention will be used:
    • 0 = spawn state
    • 1 = state resulting from a clockwise rotation ("right") from spawn
    • 2 = state resulting from 2 successive rotations in either direction from spawn.
    • 3 = state resulting from a counter-clockwise ("left") rotation from spawn


J, L, T, S, Z Tetromino Wall Kick Data
Test 1 Test 2 Test 3 Test 4 Test 5
0>>1 basic rotation (-1, 0) (-1, 1) ( 0,-2)¹ (-1,-2)
1>>0 basic rotation ( 1, 0) ( 1,-1) ( 0, 2) ( 1, 2)
1>>2 basic rotation ( 1, 0) ( 1,-1) ( 0, 2) ( 1, 2)
2>>1 basic rotation (-1, 0) (-1, 1)¹ ( 0,-2) (-1,-2)
2>>3 basic rotation ( 1, 0) ( 1, 1)¹ ( 0,-2) ( 1,-2)
3>>2 basic rotation (-1, 0) (-1,-1) ( 0, 2) (-1, 2)
3>>0 basic rotation (-1, 0) (-1,-1) ( 0, 2) (-1, 2)
0>>3 basic rotation ( 1, 0) ( 1, 1) ( 0,-2)¹ ( 1,-2)


I Tetromino Wall Kick Data
Test 1 Test 2 Test 3 Test 4 Test 5
0>>1 basic rotation (-2, 0) ( 1, 0) (-2,-1) ( 1, 2)
1>>0 basic rotation ( 2, 0) (-1, 0) ( 2, 1) (-1,-2)
1>>2 basic rotation (-1, 0) ( 2, 0) (-1, 2) ( 2,-1)
2>>1 basic rotation ( 1, 0) (-2, 0) ( 1,-2) (-2, 1)
2>>3 basic rotation ( 2, 0) (-1, 0) ( 2, 1) (-1,-2)
3>>2 basic rotation (-2, 0) ( 1, 0) (-2,-1) ( 1, 2)
3>>0 basic rotation ( 1, 0) (-2, 0) ( 1,-2) (-2, 1)
0>>3 basic rotation (-1, 0) ( 2, 0) (-1, 2) ( 2,-1)

¹ This kick is impossible with the t-tetrimino because if it fits, basic rotation fits too, so basic rotation is used.

A wall kick example:
The desired rotation is 0>>3, and from the table above, the wall kick test order is basic rotation, ( 1, 0), ( 1, 1), ( 0,-2), ( 1,-2).

Tet.pngTet.pngTet.pngTet.pngTet.pngTet.pngTet.pngTet.pngTet.pngTet.png
Tet.pngTet.pngTet.pngTet.pngGGTet.pngTet.pngTet.pngTet.png
Tet.pngTet.pngTet.pngJTet.pngGGGTet.pngTet.png
Tet.pngTet.pngTet.pngjjjgggg
Tet.pnggggTet.pngTet.pngTet.pngggg
Tet.pngggTet.pngTet.pngTet.pnggggg
ggggTet.pngTet.pnggggg
gggggTet.pnggggg

1. Initial position.
Attempt to rotate 0>>3.

Tet.pngTet.pngTet.pngTet.pngTet.pngTet.pngTet.pngTet.pngTet.pngTet.png
Tet.pngTet.pngTet.pngTet.pngGGTet.pngTet.pngTet.pngTet.png
Tet.pngTet.pngTet.pngTet.pngjgggTet.pngTet.png
Tet.pngTet.pngTet.pngTet.pngJTet.pngGGGG
Tet.pngGGXjTet.pngTet.pngggg
ggTet.pngTet.pngTet.pngTet.pnggggg
ggggTet.pngTet.pnggggg
gggggTet.pnggggg

2. Test 1, basic rotation fails.

Tet.pngTet.pngTet.pngTet.pngTet.pngTet.pngTet.pngTet.pngTet.pngTet.png
Tet.pngTet.pngTet.pngTet.pngGGTet.pngTet.pngTet.pngTet.png
Tet.pngTet.pngTet.pngTet.pngTet.pngXGGTet.pngTet.png
Tet.pngTet.pngTet.pngTet.pngTet.pngjgggg
Tet.pnggggjjTet.pngggg
ggTet.pngTet.pngTet.pngTet.pnggggg
ggggTet.pngTet.pnggggg
gggggTet.pnggggg

3. Test 2, ( 1, 0) fails.

Tet.pngTet.pngTet.pngTet.pngTet.pngTet.pngTet.pngTet.pngTet.pngTet.png
Tet.pngTet.pngTet.pngTet.pngGXTet.pngTet.pngTet.pngTet.png
Tet.pngTet.pngTet.pngTet.pngTet.pngXGGTet.pngTet.png
Tet.pngTet.pngTet.pngTet.pngjjgggg
Tet.pnggggTet.pngTet.pngTet.pngggg
ggTet.pngTet.pngTet.pngTet.pnggggg
ggggTet.pngTet.pnggggg
gggggTet.pnggggg

4. Test 3, ( 1, 1) fails.

Tet.pngTet.pngTet.pngTet.pngTet.pngTet.pngTet.pngTet.pngTet.pngTet.png
Tet.pngTet.pngTet.pngTet.pngGgTet.pngTet.pngTet.pngTet.png
Tet.pngTet.pngTet.pngTet.pngTet.pngGGGTet.pngTet.png
Tet.pngTet.pngTet.pngTet.pngTet.pngTet.pnggggg
Tet.pnggggjTet.pngTet.pngggg
ggTet.pngTet.pngjTet.pnggggg
gggxjTet.pnggggg
gggggTet.pnggggg

5. Test 4, ( 0,-2) fails.

Tet.pngTet.pngTet.pngTet.pngTet.pngTet.pngTet.pngTet.pngTet.pngTet.png
Tet.pngTet.pngTet.pngTet.pngGgTet.pngTet.pngTet.pngTet.png
Tet.pngTet.pngTet.pngTet.pngTet.pngGGGTet.pngTet.png
Tet.pngTet.pngTet.pngTet.pngTet.pngTet.pnggggg
Tet.pnggggTet.pngjTet.pngggg
ggTet.pngTet.pngTet.pngjgggg
ggggjjgggg
gggggTet.pnggggg

6. Final position.
Test 5, ( 1,-2) succeeds.

180° rotation

In Nullpomino, this is the 180° rotation kick table, taken directly from the standard wall kick data code: https://github.com/JoshuaWebb/nullpomino/blob/master/src/mu/nu/nullpo/game/subsystem/wallkick/StandardWallkick.java

	private static final int WALLKICK_NORMAL_180[][][] =
	{
		{{ 1, 0},{ 2, 0},{ 1, 1},{ 2, 1},{-1, 0},{-2, 0},{-1, 1},{-2, 1},{ 0,-1},{ 3, 0},{-3, 0}},	// 0>>2─┐
		{{ 0, 1},{ 0, 2},{-1, 1},{-1, 2},{ 0,-1},{ 0,-2},{-1,-1},{-1,-2},{ 1, 0},{ 0, 3},{ 0,-3}},	// 1>>3─┼┐
		{{-1, 0},{-2, 0},{-1,-1},{-2,-1},{ 1, 0},{ 2, 0},{ 1,-1},{ 2,-1},{ 0, 1},{-3, 0},{ 3, 0}},	// 2>>0─┘│
		{{ 0, 1},{ 0, 2},{ 1, 1},{ 1, 2},{ 0,-1},{ 0,-2},{ 1,-1},{ 1,-2},{-1, 0},{ 0, 3},{ 0,-3}},	// 3>>1──┘
	};
	private static final int WALLKICK_I_180[][][] =
	{
		{{-1, 0},{-2, 0},{ 1, 0},{ 2, 0},{ 0, 1}},													// 0>>2─┐
		{{ 0, 1},{ 0, 2},{ 0,-1},{ 0,-2},{-1, 0}},													// 1>>3─┼┐
		{{ 1, 0},{ 2, 0},{-1, 0},{-2, 0},{ 0,-1}},													// 2>>0─┘│
		{{ 0, 1},{ 0, 2},{ 0,-1},{ 0,-2},{ 1, 0}},													// 3>>1──┘
};

Note that these values can be modified (LINUX ONLY!). Sorry, Windows users, but you are stuck with this kick table.

In tetr.js, 180° rotation is 2 clockwise rotations.

In Tetris Perfect, 180° SRS rotation has no kicks.

In Guideline SRS, there are no 180 kicks due to offsets.

Other

  • SRS uses a non-locking soft drop, and a locking hard drop.
  • SRS uses Infinity
  • There is no ARE, IHS, or IRS in SRS.

Arika SRS

In their games Tetris The Grand Master 3 Terror-Instinct and Tetris The Grand Master Ace, Arika were required to include a form of SRS as the default rotation system, in order to conform more closely to Henk Rogers' Tetris Guideline. Arika's implementation of SRS uses the exact same wall kick data for the J, L, S, T and Z tetrominoes as the Guideline's standard; however, the I tetromino uses the wall kick data shown below:

Highlighted in red are the glitchy kicks.

Arika I Tetromino Wall Kick Data
Test 1 Test 2 Test 3 Test 4 Test 5
0>>1 basic rotation (-2, 0) ( 1, 0) ( 1, 2) (-2,-1)
0>>3 basic rotation ( 2, 0) (-1, 0) (-1, 2) ( 2,-1)
2>>1 basic rotation (-2, 0) ( 1, 0) (-2, 1) ( 1,-1)
2>>3 basic rotation ( 2, 0) (-1, 0) ( 2, 1) (-1,-1)
1>>0 basic rotation ( 2, 0) (-1, 0) ( 2, 1) (-1,-2)
3>>0 basic rotation (-2, 0) ( 1, 0) (-2, 1) ( 1,-2)
1>>2 basic rotation (-1, 0) ( 2, 0) (-1, 2) ( 2,-1)
3>>2 basic rotation ( 1, 0) (-2, 0) ( 1, 2) (-2,-1)

This is also used in Tetris Perfect, but with unglitchy kicks (( 1,-2) instead of ( 1,-1), (-1,-2) instead of (-1,-1)).

The logic behind Arika's modifications is that the I wall kicks are now symmetric about the y-axis when rotating from or to a horizontal orientation. One noticeable consequence of this is illustrated in the following example:

Tet.pngTet.pngTet.pngTet.pngTet.pngTet.pngTet.pngTet.pngTet.pngTet.png
----Tet.pngTet.pngTet.pngTet.pngTet.pngTet.png
Tet.pngggTet.pnggggggg
Tet.pngggTet.pnggggggg
sIggggggggg
sIggggggggg
sIggggggggg
sIggggggggg
From the dotted position, it is possible to clear 4 lines with both Guideline and Arika SRS by rotating clockwise.
Tet.pngTet.pngTet.pngTet.pngTet.pngTet.pngTet.pngTet.pngTet.pngTet.png
Tet.pngTet.pngTet.pngTet.pngTet.pngTet.png----
ggggggTet.pngggTet.png
ggggggTet.pngggTet.png
gggggggggaI
gggggggggaI
gggggggggaI
gggggggggaI
In the symmetric position, only Arika SRS allows the clearing of 4 lines by rotating counter-clockwise.
Tet.pngTet.pngTet.pngTet.pngTet.pngTet.pngaITet.pngTet.pngTet.png
Tet.pngTet.pngTet.pngTet.pngTet.pngTet.pngaI---
ggggggaIggTet.png
ggggggaIggTet.png
gggggggggTet.png
gggggggggTet.png
gggggggggTet.png
gggggggggTet.png
Arika SRS also allows for this position to be achieved by rotating clockwise. However, with Guideline SRS, this is the only position achievable, regardless of which direction the player rotates (due to Guideline SRS's bias for the i-tetrimino).

Spawn orientation

Arika's SRS spawns the blocks pointing down (like ARS), as opposed to Guideline SRS.

Color scheme and Block style

Arika's SRS uses the "gradient" block style, just like ARS. The colors are shown below.

AIAIAIAI
Tet.pngTet.pngTet.pngTet.png

I

AJAJAJTet.png
Tet.pngTet.pngAJTet.png

J

ALALALTet.png
ALTet.pngTet.pngTet.png

L

Tet.pngAOAOTet.png
Tet.pngAOAOTet.png

O

Tet.pngaSaSTet.png
aSaSTet.pngTet.png

S

aTaTaTTet.png
Tet.pngaTTet.pngTet.png

T

aZaZTet.pngTet.png
Tet.pngaZaZTet.png

Z

But in Tetris Perfect, SRS only refers to the rotation system itself, so this block style is not used.

How Guideline SRS Really Works

File:SRS-true-rotations.png

The internal true rotations used in Guideline SRS; offsets are applied to these.


Instead of directly assigning a set of ( x, y) kick translations to each of the 8 possible rotations, TTC actually employed a different approach, and instead assigned a set of ( x, y) "offset" values to the 4 rotation states. The kick translations are then derived by taking the difference between pairs of offset data. When rotating from A to B, subtracting B's values from A's will give the kick translation for the rotation one way; and subtracting A's values from B's will give the kick translation for rotating back the other way.

There is another complexity to TTC's implementation: the derived translations are relative to a different datum. So far on this page, kick translations have been defined relative to "basic rotation", but TTC uses what forum user nightmareci has named "true rotation". "True rotation" is still a mathematical pure rotation with no translation involved; however, the rotation center always coincides with the center of one of the four constituent minos. (Recall that the apparent rotation center of the I and O tetrominoes in basic rotation coincided with the intersection of gridlines). This means that for "true rotation", the rotation center for the O piece is not at the geometric center, so the piece will have a "wobble" when rotated. The first kick translation has to be used to correct for this wobble.

This "true rotation" is also used in Tetris Best, but it uses different kicks, and the "wobble" is not corrected, so O-spins can be done.

However, "true rotation" is not used in Tetris Perfect's SRS. I piece has standard rotation center, and O rotation is entirely removed in SRS rotation.

The tetris2019.sb2 and tetrisimplementation do use the "true rotation" due to the mathematical formula for rotating on a center.

J, L, S, T, Z Tetromino Offset Data
Offset 1 Offset 2 Offset 3 Offset 4 Offset 5
0 true rotation true rotation true rotation true rotation true rotation
1 true rotation ( 1, 0) ( 1,-1) ( 0, 2) ( 1, 2)
2 true rotation true rotation true rotation true rotation true rotation
3 true rotation (-1, 0) (-1,-1) ( 0, 2) (-1, 2)


I Tetromino Offset Data
Offset 1 Offset 2 Offset 3 Offset 4 Offset 5
0 true rotation (-1, 0) ( 2, 0) (-1, 0) ( 2, 0)
1 (-1, 0) true rotation true rotation ( 0, 1) ( 0,-2)
2 (-1, 1) ( 1, 1) (-2, 1) ( 1, 0) (-2, 0)
3 ( 0, 1) ( 0, 1) ( 0, 1) ( 0,-1) ( 0, 2)


O Tetromino Offset Data
Offset
0 true rotation
1 ( 0,-1)
2 (-1,-1)
3 (-1, 0)


An example of deriving kick translations from the offsets:

The offsets for J, rotation state 0 are: true rotation, true rotation, true rotation, true rotation, true rotation.
The offsets for J, rotation state 1 are: true rotation, ( 1, 0), ( 1,-1), ( 0, 2), ( 1, 2).

true rotation - true rotation = true rotation,
true rotation - ( 1, 0) = (-1, 0),
true rotation - ( 1,-1) = (-1, 1),
true rotation - ( 0, 2) = ( 0,-2),
true rotation - ( 1, 2) = (-1,-2).

Therefore, the kick translations for the J rotation 0>>1, relative to "true rotation" (which is conveniently the same as "basic rotation" for the J tetromino), are: true rotation, (-1, 0), (-1, 1), ( 0,-2), (-1,-2).

These offsets are not confirmed to appear in Arika's srs though

Wall Kicks Illustration

SRS wall kicks are symmetric for all pieces but the I piece. That means for the mirrored playfield and mirrored piece ( J ↔ L piece, S ↔ Z piece, L ↔ R rotation state), the equivalent kick (same y value, opposite sign for x value) will appear. Thus for all pieces but the I piece, the kick system can be completely described by just examining clockwise rotation.

Kick Tests Useful Kicks
0>>1 basic rotation
Tet.pngTet.pngTet.pngTet.pngTet.png
Tet.pngTet.pngTet.pngTet.pngTet.png
Tet.pngTet.pngLGTet.png
Tet.pngG-LGTet.png
Tet.pngTet.pngLLTet.png
Tet.pngTet.pngTet.pngTet.pngTet.png
Tet.pngTet.pngTet.pngTet.pngTet.png
(-1, 0)
Tet.pngTet.pngTet.pngTet.pngTet.png
Tet.pngTet.pngTet.pngTet.pngTet.png
Tet.pngLTet.pngGTet.png
Tet.png-LGGTet.png
Tet.pngLLTet.pngTet.png
Tet.pngTet.pngTet.pngTet.pngTet.png
Tet.pngTet.pngTet.pngTet.pngTet.png
(-1, 1)
Tet.pngTet.pngTet.pngTet.pngTet.png
Tet.pngLTet.pngTet.pngTet.png
Tet.pngLTet.pngGTet.png
Tet.png-L-LGTet.png
Tet.pngTet.pngTet.pngTet.pngTet.png
Tet.pngTet.pngTet.pngTet.pngTet.png
Tet.pngTet.pngTet.pngTet.pngTet.png
( 0,-2)
Tet.pngTet.pngTet.pngTet.pngTet.png
Tet.pngTet.pngTet.pngTet.pngTet.png
Tet.pngTet.pngTet.pngGTet.png
Tet.pngGGGTet.png
Tet.pngTet.pngLTet.pngTet.png
Tet.pngTet.pngLTet.pngTet.png
Tet.pngTet.pngLLTet.png
(-1,-2)
Tet.pngTet.pngTet.pngTet.pngTet.png
Tet.pngTet.pngTet.pngTet.pngTet.png
Tet.pngTet.pngTet.pngGTet.png
Tet.pngGGGTet.png
Tet.pngLTet.pngTet.pngTet.png
Tet.pngLTet.pngTet.pngTet.png
Tet.pngLLTet.pngTet.png
(-1, 0)
Tet.pngTet.pngTet.pngTet.pngTet.png
Tet.pngTet.pngTet.pngTet.pngTet.png
Tet.pngTet.pngTet.pngTet.pngTet.png
GGTet.pngTet.pngTet.png
G-Tet.pngLTet.png
GLLLTet.png
G--GTet.png
(-1,-2)
Tet.pngTet.pngTet.pngTet.pngTet.png
Tet.pngTet.pngTet.pngTet.pngTet.png
GGTet.pngLTet.png
GLLLTet.png
G-GGG
G-GGG
G--GG
1>>2 basic rotation

Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5

( 1, 0)

Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5

( 1,-1)

Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5

( 0, 2)

Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5

( 1, 2)

Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5

( 1,-1)

Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5

( 1, 0)

Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5

2>>3 basic rotation

Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5

( 1, 0)

Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5

( 1, 1)

Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5

( 0,-2)

Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5

( 1,-2)

Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5

( 1,-2)

Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5

no kick
3>>0 basic rotation

Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5

(-1, 0)

Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5

(-1,-1)

Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5

( 0, 2)

Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5

(-1, 2)

Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5

(-1,-1)

Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5

no kick


Kick Tests Useful Kicks
0>>1 basic rotation

Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5

(-1, 0)

Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5

(-1, 1)

Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5

(0,-2)

Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5

(-1,-2)

Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5

(-1, 0)

Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5

( 0,-2)

Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5

1>>2 basic rotation

Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5

( 1, 0)

Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5

( 1,-1)

Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5

( 0, 2)

Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5

( 1, 2)

Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5

( 1,-1)

Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5

( 1, 0)

Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5

2>>3 basic rotation

Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5

( 1, 0)

Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5

( 1, 1)

Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5

( 0,-2)

Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5

( 1,-2)

Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5

( 1,-2)

Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5

no kick
3>>0 basic rotation

Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5

(-1, 0)

Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5

(-1,-1)

Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5

( 0, 2)

Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5

(-1, 2)

Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5

(-1,-1)

Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5

(-1, 0)

Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5


Kick Tests Useful Kicks
0>>1 basic rotation

Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5

(-1, 0)

Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5

(-1, 1)

Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5

not possible (-1,-2)

Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5

(-1,-2)

Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5

(-1, 0)

Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5

1>>2 basic rotation

Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5

( 1, 0)

Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5

( 1,-1)

Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5

( 0, 2)

Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5

( 1, 2)

Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5

basic rotation

Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5

( 1,-1)

Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5

2>>3 basic rotation

Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5

( 1, 0)

Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5

not possible ( 0,-2)

Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5

( 1,-2)

Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5

( 1,-2)

Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5

( 0,-2)

Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5

3>>0 basic rotation

Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5

(-1, 0)

Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5

(-1,-1)

Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5

( 0, 2)

Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5

(-1, 2)

Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5

(-1,-1)

Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5

(-1, 0)

Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5


Kick Tests Useful Kicks
0>>1 basic rotation

Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5

(-1, 0)

Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5

(-1, 1)

Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5

(0,-2)

Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5

(-1,-2)

Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5

(-1,-2)

Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5

no kick
1>>2 basic rotation

Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5

( 1, 0)

Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5

( 1,-1)

Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5

( 0, 2)

Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5

( 1, 2)

Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5

( 1,-1)

Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5

( 1, 0)

Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5

2>>3 basic rotation

Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5

( 1, 0)

Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5

( 1, 1)

Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5

( 0,-2)

Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5

( 1,-2)

Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5

( 0,-2)

Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5

no kick
3>>0 basic rotation

Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5

(-1, 0)

Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5

(-1,-1)

Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5

( 0, 2)

Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5

(-1, 2)

Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5

(-1, 0)

Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5

no kick


Kick Tests Useful Kicks
0>>1 basic rotation

Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5

(-1, 0)

Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5

(-1, 1)

Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5

( 0,-2)

Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5

(-1,-2)

Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5

( 0,-2)

Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5

basic rotation

Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5

1>>2 basic rotation

Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5

( 1, 0)

Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5

( 1,-1)

Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5

( 0, 2)

Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5

( 1, 2)

Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5

( 1,-1)

Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5

( 1, 0)

Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5

2>>3 basic rotation

Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5

( 1, 0)

Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5

( 1, 1)

Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5

( 0,-2)

Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5

( 1,-2)

Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5

( 1,-2)

Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5

no kick
3>>0 basic rotation

Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5

(-1, 0)

Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5

(-1,-1)

Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5

( 0, 2)

Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5

(-1, 2)

Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5

basic rotation

Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5

no kick


Kick Tests Useful Kicks
0>>1 basic rotation

Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8

(-2, 0)

Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8

( 1, 0)

Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8

(-2,-1)

Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8

( 1, 2)

Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8

(-2,-1)

Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8

1>>2 basic rotation

Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8

(-1, 0)

Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8

( 2, 0)

Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8

(-1, 2)

Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8

( 2,-1)

Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8

( 2,-1)

Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8

2>>3 basic rotation

Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8

( 2, 0)

Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8

(-1, 0)

Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8

( 2, 1)

Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8

(-1,-2)

Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8

(-1,-2)

Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8

3>>0 basic rotation

Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8

( 1, 0)

Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8

(-2, 0)

Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8

( 1,-2)

Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8

(-2, 1)

Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8

( 1,-2)

Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8


Kick Tests Useful Kicks
0>>3 basic rotation

Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8

(-1, 0)

Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8

( 2, 0)

Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8

(-1, 2)

Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8

( 2,-1)

Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8

no kick
3>>2 basic rotation

Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8

(-2, 0)

Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8

( 1, 0)

Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8

(-2,-1)

Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8

( 1, 2)

Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8

(-2,-1)

Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8

2>>1 basic rotation

Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8

( 1, 0)

Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8

(-2, 0)

Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8

( 1,-2)

Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8

(-2, 1)

Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8

( 1,-2)

Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8

1>>0 basic rotation

Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8

( 2, 0)

Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8

(-1, 0)

Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8

( 2, 1)

Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8

(-1,-2)

Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8

(-1,-2)

Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8 Template:Mrow8


Criticism

The Super Rotation System, and with it associated Move Reset Lock delay, is criticized by a large amount of players. SRS is suitable for multiplayer but causes problems in modes with significant gravity effect such as Marathon. In the following we will list advantages (1 point each) and disadvantages (-1 point each) of using SRS, and give points for each one.

Pro

  • Pieces rotate very smoothly under no gravity. The piece rotates to the position where an unexperienced player would expect it. (+1)
LLTet.png
Tet.png+LTet.png
Tet.pngLTet.png
SRS:
Smooth rotation
under 0 gravity
LLTet.png
Tet.pngLTet.png
Tet.pngLTet.png
TGM:
Weird "Up"
rotation state
Tet.pngLL
Tet.png+WL
Tet.pngTet.pngL
MTC, TETRIS MAX:
Center of rotation
lies outside piece
LLTet.png
Tet.pngLTet.png
Tet.pngLTet.png
Atari:
Piece aligned to
top-left corner
Tet.pngTet.pngL
L+LL
Tet.pngTet.pngTet.png
Tet.pngTet.pngTet.png
Tet.pngTet.pngL
LLL
Tet.pngTet.pngTet.png
Tet.png+WL
LLL
Tet.pngTet.pngL
LLL
Tet.pngTet.pngTet.png
Tet.pngLTet.png
Tet.png+LTet.png
Tet.pngLL
Tet.pngLTet.png
Tet.pngLTet.png
Tet.pngLL
LTet.pngTet.png
L+WTet.png
LLTet.png
LTet.pngTet.png
LTet.pngTet.png
LLTet.png
  • SRS uses kicks that may move a piece to an otherwise unreachable location. (+1)

Template:Mrow5 Template:Mrow5 Template:Mrow5

Template:Mrow5 Template:Mrow5 Template:Mrow5

Template:Mrow5 Template:Mrow5 Template:Mrow5

Template:Mrow5 Template:Mrow5 Template:Mrow5

    • More of these can be done in Tetris Best, like the wrong t-spin triple.

Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5

Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5

  • Move Reset and kicks allow quite interesting multiplayer rules and T-spin setups. Players often have to make gaps narrower such that certain filled cells serve as leverage point and the piece is kicked in downward direction. (+1)
-Tet.pngTet.pngTet.png
---ZG
-Tet.pngTet.pngG
GGTet.pngG
GTet.pngTet.pngG
GGTet.pngG
GGTet.pngG
GTet.pngTet.pngG
GTet.pngTet.pngG
-Tet.pngTet.pngTet.png
---ZG
-Tet.pngTet.pngG
GGTet.pngG
GTet.pngTet.pngG
GGTet.pngG
GGTet.pngG
GTet.pngTet.pngG
GGTet.pngG
Tet.pngTet.pngTet.pngTet.png
-Tet.pngTet.pngTet.png
---ZG
-Tet.pngTet.pngG
GGTet.pngG
GTet.pngTet.pngG
GTet.pngTet.pngG
GTet.pngTet.pngTet.png
GGTet.pngG
Red cell marks
leverage point.
Tet.pngTet.pngTet.pngTet.png
-Tet.pngTet.pngTet.png
---ZG
-Tet.pngTet.pngG
GGTet.pngG
GTet.pngTet.pngG
GTet.pngTet.pngTet.png
GGTet.pngG
GGTet.pngG
Tet.pngTet.pngTet.pngTet.png
Tet.pngTet.pngTet.pngTet.png
-Tet.pngTet.pngTet.png
---ZG
-Tet.pngTet.pngG
GGTet.pngG
GTet.pngTet.pngG
GGTet.pngG
GTet.pngGG
Tet.pngTet.pngTet.pngTet.png
Tet.pngTet.pngTet.pngTet.png
Tet.pngTet.pngTet.pngTet.png
-Tet.pngTet.pngTet.png
---ZG
-Tet.pngTet.pngG
GGTet.pngG
GTet.pngTet.pngTet.png
GGTet.pngG
  • The four rotation states of S, Z and I pieces allow to utilize Finesse and make some moves possible that don't require kicks. (+1)

Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5

Possible in SRS.
Not possible in TGM.

Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5

Rotate counterclockw.
when moving towards left.

Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5

Rotate clockwise
when moving towards right.

Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5

Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5

Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5

  • Most spins can be reversed. That means for most kicks, there exists a kick in the other direction. (+1)

Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5

Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5

last second decision:
  e.g. for 4-wide

Contra

  • SRS uses Up spawning direction (pieces spawn flatside down). If a non-rotated piece hits a perfectly even ground, it can't be rotated anymore without an upward kick being used. Note that this problem wouldn't exist, if the pieces spawned in Down direction or if the Up rotation state would be moved 1 row downwards (like in TGM). This was fixed in Tetris Best when set on ARS. (-1)

Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5

Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5

Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5

Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5

Template:Mrow5 Template:Mrow5 Template:Mrow5 Template:Mrow5

Template:Mrow5 Template:Mrow5