User:KonSola5/TRS: Difference between revisions

From TetrisWiki
Jump to navigation Jump to search
KonSola5 (talk | contribs)
Created page with "'''Techmino Rotation System''' is a Super Rotation System-based default rotation system of Techmino, that adds many useful kicks. TRS contains dedicated kicks for all of the 28 dominoes to pentominoes. Notable feature of Techmino is the presence of a mechanic that transforms O-pieces into different pieces or teleports them into holes in order to perform O-spins. == Tetrominoes == === Z === {| border="1" cellspacing="0" |+'''Z Tetromino TRS Wall Kick Data''' |-..."
 
KonSola5 (talk | contribs)
Highlight changes compared to SRS, add kick examples, add pentomino kick table
 
Line 2: Line 2:


== Tetrominoes ==
== Tetrominoes ==
In the tables below, non-180-degree kicks that are not present in SRS are marked with light blue background.
=== Z ===
=== Z ===
{| border="1" cellspacing="0"  
{| border="1" cellspacing="0"  
Line 14: Line 16:
! bgcolor="#80A3F8" width="60"|Test 6
! bgcolor="#80A3F8" width="60"|Test 6
|- align = center
|- align = center
| bgcolor="#80A3F8"|0→R||<tt>( 0, 0)</tt>||<tt>(-1, 0)</tt>||<tt>(-1,+1)</tt>||<tt>( 0,-2)</tt>||<tt>(-1,+2)</tt>||<tt>( 0,+1)</tt>
| bgcolor="#80A3F8"|0→R||<tt>( 0, 0)</tt>||<tt>(-1, 0)</tt>||<tt>(-1,+1)</tt>||<tt>( 0,-2)</tt>||<tt>(-1,+2)</tt>|| bgcolor="#C4E8E8" | <tt>( 0,+1)</tt>
|- align = center
|- align = center
| bgcolor="#80A3F8"|R→0||<tt>( 0, 0)</tt>||<tt>(+1, 0)</tt>||<tt>(+1,-1)</tt>||<tt>( 0,+2)</tt>||<tt>(+1,-2)</tt>||<tt>( 0,-1)</tt>
| bgcolor="#80A3F8"|R→0||<tt>( 0, 0)</tt>||<tt>(+1, 0)</tt>||<tt>(+1,-1)</tt>||<tt>( 0,+2)</tt>||<tt>(+1,-2)</tt>|| bgcolor="#C4E8E8" | <tt>( 0,-1)</tt>
|- align = center
|- align = center
| bgcolor="#80A3F8"|0→L||<tt>( 0, 0)</tt>||<tt>(+1, 0)</tt>||<tt>(+1,+1)</tt>||<tt>( 0,-2)</tt>||<tt>(+1,-1)</tt>||<tt>(+1,-2)</tt>
| bgcolor="#80A3F8"|0→L||<tt>( 0, 0)</tt>||<tt>(+1, 0)</tt>||<tt>(+1,+1)</tt>||<tt>( 0,-2)</tt>||<tt>(+1,-1)</tt>|| bgcolor="#C4E8E8" | <tt>(+1,-2)</tt>
|- align = center
|- align = center
| bgcolor="#80A3F8"|L→0||<tt>( 0, 0)</tt>||<tt>(-1, 0)</tt>||<tt>(-1,-1)</tt>||<tt>( 0,+2)</tt>||<tt>(-1,+2)</tt>||<tt>( 0,-1)</tt>
| bgcolor="#80A3F8"|L→0||<tt>( 0, 0)</tt>||<tt>(-1, 0)</tt>||<tt>(-1,-1)</tt>||<tt>( 0,+2)</tt>||<tt>(-1,+2)</tt>|| bgcolor="#C4E8E8" | <tt>( 0,-1)</tt>
|- align = center
|- align = center
| bgcolor="#80A3F8"|R→2||<tt>( 0, 0)</tt>||<tt>(+1, 0)</tt>||<tt>(+1,-1)</tt>||<tt>( 0,+2)</tt>||<tt>(+1,+2)</tt>||<tt>(+1,+1)</tt>
| bgcolor="#80A3F8"|R→2||<tt>( 0, 0)</tt>||<tt>(+1, 0)</tt>||<tt>(+1,-1)</tt>||<tt>( 0,+2)</tt>||<tt>(+1,+2)</tt>|| bgcolor="#C4E8E8" | <tt>(+1,+1)</tt>
|- align = center
|- align = center
| bgcolor="#80A3F8"|2→R||<tt>( 0, 0)</tt>||<tt>(-1, 0)</tt>||<tt>(-1,+1)</tt>||<tt>( 0,-2)</tt>||<tt>(-1,-2)</tt>||<tt>(-1,-1)</tt>
| bgcolor="#80A3F8"|2→R||<tt>( 0, 0)</tt>||<tt>(-1, 0)</tt>||<tt>(-1,+1)</tt>||<tt>( 0,-2)</tt>||<tt>(-1,-2)</tt>|| bgcolor="#C4E8E8" | <tt>(-1,-1)</tt>
|- align = center
|- align = center
| bgcolor="#80A3F8"|L→2||<tt>( 0, 0)</tt>||<tt>(-1, 0)</tt>||<tt>(-1,-1)</tt>||<tt>( 0,+2)</tt>||<tt>(-1,+2)</tt>||<tt>( 0,-1)</tt>
| bgcolor="#80A3F8"|L→2||<tt>( 0, 0)</tt>||<tt>(-1, 0)</tt>||<tt>(-1,-1)</tt>||<tt>( 0,+2)</tt>||<tt>(-1,+2)</tt>|| bgcolor="#C4E8E8" | <tt>( 0,-1)</tt>
|- align = center
|- align = center
| bgcolor="#80A3F8"|2→L||<tt>( 0, 0)</tt>||<tt>(+1, 0)</tt>||<tt>(+1,+1)</tt>||<tt>( 0,-2)</tt>||<tt>(+1,-2)</tt>||<tt>( 0,+1)</tt>
| bgcolor="#80A3F8"|2→L||<tt>( 0, 0)</tt>||<tt>(+1, 0)</tt>||<tt>(+1,+1)</tt>||<tt>( 0,-2)</tt>||<tt>(+1,-2)</tt>|| bgcolor="#C4E8E8" | <tt>( 0,+1)</tt>
|- align = center
|- align = center
| bgcolor="#80A3F8"|0→2||<tt>( 0, 0)</tt>||<tt>(+1, 0)</tt>||<tt>(-1, 0)</tt>||<tt>( 0,-1)</tt>||<tt>( 0,+1)</tt>||
| bgcolor="#80A3F8"|0→2||<tt>( 0, 0)</tt>||<tt>(+1, 0)</tt>||<tt>(-1, 0)</tt>||<tt>( 0,-1)</tt>||<tt>( 0,+1)</tt>||
Line 39: Line 41:
|}
|}


Example usages of additional kicks:
{|
|- style="vertical-align:top;"
| width="150" | <playfield>
..........
..........
..ZZ......
..GCZ.....
GGGGGGGGG.
</playfield> || width="150" | <playfield>
...Z......
..CZ......
..Z.......
..G.......
GGGGGGGGG.
</playfield>
|- style="vertical-align:top;"
| In SRS, the Z piece can't be rotated clockwise in&nbsp;this position. || TRS' 6th test allows the Z&nbsp;piece to rotate.
|}
=== S ===
=== S ===
The S piece uses mirrored Z kicks.
{| border="1" cellspacing="0"  
{| border="1" cellspacing="0"  
|+'''S Tetromino TRS Wall Kick Data'''
|+'''S Tetromino TRS Wall Kick Data'''
Line 51: Line 74:
! bgcolor="#80A3F8" width="60"|Test 6
! bgcolor="#80A3F8" width="60"|Test 6
|- align = center
|- align = center
| bgcolor="#80A3F8"|0→R||<tt>( 0, 0)</tt>||<tt>(-1, 0)</tt>||<tt>(-1,+1)</tt>||<tt>( 0,-2)</tt>||<tt>(-1,-1)</tt>||<tt>(-1,-2)</tt>
| bgcolor="#80A3F8"|0→R||<tt>( 0, 0)</tt>||<tt>(-1, 0)</tt>||<tt>(-1,+1)</tt>||<tt>( 0,-2)</tt>||<tt>(-1,-1)</tt>|| bgcolor="#C4E8E8" | <tt>(-1,-2)</tt>
|- align = center
|- align = center
| bgcolor="#80A3F8"|R→0||<tt>( 0, 0)</tt>||<tt>(+1, 0)</tt>||<tt>(+1,-1)</tt>||<tt>( 0,+2)</tt>||<tt>(+1,+2)</tt>||<tt>( 0,-1)</tt>
| bgcolor="#80A3F8"|R→0||<tt>( 0, 0)</tt>||<tt>(+1, 0)</tt>||<tt>(+1,-1)</tt>||<tt>( 0,+2)</tt>||<tt>(+1,+2)</tt>|| bgcolor="#C4E8E8" | <tt>( 0,-1)</tt>
|- align = center
|- align = center
| bgcolor="#80A3F8"|0→L||<tt>( 0, 0)</tt>||<tt>(+1, 0)</tt>||<tt>(+1,+1)</tt>||<tt>( 0,-2)</tt>||<tt>(+1,+2)</tt>||<tt>( 0,+1)</tt>
| bgcolor="#80A3F8"|0→L||<tt>( 0, 0)</tt>||<tt>(+1, 0)</tt>||<tt>(+1,+1)</tt>||<tt>( 0,-2)</tt>||<tt>(+1,+2)</tt>|| bgcolor="#C4E8E8" | <tt>( 0,+1)</tt>
|- align = center
|- align = center
| bgcolor="#80A3F8"|L→0||<tt>( 0, 0)</tt>||<tt>(-1, 0)</tt>||<tt>(-1,-1)</tt>||<tt>( 0,+2)</tt>||<tt>(-1,-2)</tt>||<tt>( 0,-1)</tt>
| bgcolor="#80A3F8"|L→0||<tt>( 0, 0)</tt>||<tt>(-1, 0)</tt>||<tt>(-1,-1)</tt>||<tt>( 0,+2)</tt>||<tt>(-1,-2)</tt>|| bgcolor="#C4E8E8" | <tt>( 0,-1)</tt>
|- align = center
|- align = center
| bgcolor="#80A3F8"|R→2||<tt>( 0, 0)</tt>||<tt>(+1, 0)</tt>||<tt>(+1,-1)</tt>||<tt>( 0,+2)</tt>||<tt>(+1,+2)</tt>||<tt>( 0,-1)</tt>
| bgcolor="#80A3F8"|R→2||<tt>( 0, 0)</tt>||<tt>(+1, 0)</tt>||<tt>(+1,-1)</tt>||<tt>( 0,+2)</tt>||<tt>(+1,+2)</tt>|| bgcolor="#C4E8E8" | <tt>( 0,-1)</tt>
|- align = center
|- align = center
| bgcolor="#80A3F8"|2→R||<tt>( 0, 0)</tt>||<tt>(-1, 0)</tt>||<tt>(-1,+1)</tt>||<tt>( 0,-2)</tt>||<tt>(-1,-2)</tt>||<tt>( 0,+1)</tt>
| bgcolor="#80A3F8"|2→R||<tt>( 0, 0)</tt>||<tt>(-1, 0)</tt>||<tt>(-1,+1)</tt>||<tt>( 0,-2)</tt>||<tt>(-1,-2)</tt>|| bgcolor="#C4E8E8" | <tt>( 0,+1)</tt>
|- align = center
|- align = center
| bgcolor="#80A3F8"|L→2||<tt>( 0, 0)</tt>||<tt>(-1, 0)</tt>||<tt>(-1,-1)</tt>||<tt>( 0,+2)</tt>||<tt>(-1,+2)</tt>||<tt>(-1,+1)</tt>
| bgcolor="#80A3F8"|L→2||<tt>( 0, 0)</tt>||<tt>(-1, 0)</tt>||<tt>(-1,-1)</tt>||<tt>( 0,+2)</tt>||<tt>(-1,+2)</tt>|| bgcolor="#C4E8E8" | <tt>(-1,+1)</tt>
|- align = center
|- align = center
| bgcolor="#80A3F8"|2→L||<tt>( 0, 0)</tt>||<tt>(+1, 0)</tt>||<tt>(+1,+1)</tt>||<tt>( 0,-2)</tt>||<tt>(+1,-2)</tt>||<tt>(+1,-1)</tt>
| bgcolor="#80A3F8"|2→L||<tt>( 0, 0)</tt>||<tt>(+1, 0)</tt>||<tt>(+1,+1)</tt>||<tt>( 0,-2)</tt>||<tt>(+1,-2)</tt>|| bgcolor="#C4E8E8" | <tt>(+1,-1)</tt>
|- align = center
|- align = center
| bgcolor="#80A3F8"|0→2||<tt>( 0, 0)</tt>||<tt>(-1, 0)</tt>||<tt>(+1, 0)</tt>||<tt>( 0,-1)</tt>||<tt>( 0,+1)</tt>||
| bgcolor="#80A3F8"|0→2||<tt>( 0, 0)</tt>||<tt>(-1, 0)</tt>||<tt>(+1, 0)</tt>||<tt>( 0,-1)</tt>||<tt>( 0,+1)</tt>||
Line 74: Line 97:
|- align = center
|- align = center
| bgcolor="#80A3F8"|R→L||<tt>( 0, 0)</tt>||<tt>( 0,-1)</tt>||<tt>( 0,+1)</tt>||<tt>( 0,-2)</tt>||||
| bgcolor="#80A3F8"|R→L||<tt>( 0, 0)</tt>||<tt>( 0,-1)</tt>||<tt>( 0,+1)</tt>||<tt>( 0,-2)</tt>||||
|}
Example usages of additional kicks:
{|
|- style="vertical-align:top;"
|width="150" | <playfield>
..........
..........
...SS.....
..SCG.....
GGGGGGGGG.
</playfield> || width="150" | <playfield>
...S......
...SC.....
....S.....
....G.....
GGGGGGGGG.
</playfield>
|- style="vertical-align:top;"
| In SRS, the S piece can't be rotated counterclockwise in&nbsp;this position. || TRS' 6th test allows the S&nbsp;piece to rotate.
|}
|}


Line 90: Line 134:
! bgcolor="#80A3F8" width="60"|Test 8
! bgcolor="#80A3F8" width="60"|Test 8
|- align = center
|- align = center
| bgcolor="#80A3F8"|0→R||<tt>( 0, 0)</tt>||<tt>(-1, 0)</tt>||<tt>(-1,+1)</tt>||<tt>( 0,-2)</tt>||<tt>(+1,+1)</tt>||<tt>( 0,+1)</tt>||<tt>( 0,-1)</tt>||
| bgcolor="#80A3F8"|0→R||<tt>( 0, 0)</tt>||<tt>(-1, 0)</tt>||<tt>(-1,+1)</tt>||<tt>( 0,-2)</tt>|| bgcolor="#C4E8E8" |<tt>(+1,+1)</tt>|| bgcolor="#C4E8E8" |<tt>( 0,+1)</tt>|| bgcolor="#C4E8E8" |<tt>( 0,-1)</tt>||
|- align = center
|- align = center
| bgcolor="#80A3F8"|R→0||<tt>( 0, 0)</tt>||<tt>(+1, 0)</tt>||<tt>(+1,-1)</tt>||<tt>( 0,+2)</tt>||<tt>(-1,-1)</tt>||<tt>( 0,-1)</tt>||<tt>( 0,+1)</tt>||
| bgcolor="#80A3F8"|R→0||<tt>( 0, 0)</tt>||<tt>(+1, 0)</tt>||<tt>(+1,-1)</tt>||<tt>( 0,+2)</tt>|| bgcolor="#C4E8E8" |<tt>(-1,-1)</tt>|| bgcolor="#C4E8E8" |<tt>( 0,-1)</tt>|| bgcolor="#C4E8E8" |<tt>( 0,+1)</tt>||
|- align = center
|- align = center
| bgcolor="#80A3F8"|0→L||<tt>( 0, 0)</tt>||<tt>(+1, 0)</tt>||<tt>(+1,+1)</tt>||<tt>( 0,-2)</tt>||<tt>(+1,-2)</tt>||<tt>(+1,-1)</tt>||<tt>( 0,+1)</tt>||
| bgcolor="#80A3F8"|0→L||<tt>( 0, 0)</tt>||<tt>(+1, 0)</tt>||<tt>(+1,+1)</tt>||<tt>( 0,-2)</tt>||<tt>(+1,-2)</tt>|| bgcolor="#C4E8E8" |<tt>(+1,-1)</tt>|| bgcolor="#C4E8E8" |<tt>( 0,+1)</tt>||
|- align = center
|- align = center
| bgcolor="#80A3F8"|L→0||<tt>( 0, 0)</tt>||<tt>(-1, 0)</tt>||<tt>(-1,-1)</tt>||<tt>( 0,+2)</tt>||<tt>(-1,+2)</tt>||<tt>( 0,-1)</tt>||<tt>(-1,+1)</tt>||
| bgcolor="#80A3F8"|L→0||<tt>( 0, 0)</tt>||<tt>(-1, 0)</tt>||<tt>(-1,-1)</tt>||<tt>( 0,+2)</tt>||<tt>(-1,+2)</tt>|| bgcolor="#C4E8E8" |<tt>( 0,-1)</tt>|| bgcolor="#C4E8E8" |<tt>(-1,+1)</tt>||
|- align = center
|- align = center
| bgcolor="#80A3F8"|R→2||<tt>( 0, 0)</tt>||<tt>(+1, 0)</tt>||<tt>(+1,-1)</tt>||<tt>(+1,+1)</tt>||<tt>(-1, 0)</tt>||<tt>( 0,-1)</tt>||<tt>( 0,+2)</tt>||<tt>(+1,+2)</tt>
| bgcolor="#80A3F8"|R→2||<tt>( 0, 0)</tt>||<tt>(+1, 0)</tt>||<tt>(+1,-1)</tt>|| bgcolor="#C4E8E8" |<tt>(+1,+1)</tt>|| bgcolor="#C4E8E8" |<tt>(-1, 0)</tt>|| bgcolor="#C4E8E8" |<tt>( 0,-1)</tt>||<tt>( 0,+2)</tt>||<tt>(+1,+2)</tt>
|- align = center
|- align = center
| bgcolor="#80A3F8"|2→R||<tt>( 0, 0)</tt>||<tt>(-1, 0)</tt>||<tt>(-1,+1)</tt>||<tt>(-1,-1)</tt>||<tt>(+1, 0)</tt>||<tt>( 0,+1)</tt>||<tt>( 0,-2)</tt>||<tt>(-1,-2)</tt>
| bgcolor="#80A3F8"|2→R||<tt>( 0, 0)</tt>||<tt>(-1, 0)</tt>||<tt>(-1,+1)</tt>|| bgcolor="#C4E8E8" |<tt>(-1,-1)</tt>|| bgcolor="#C4E8E8" |<tt>(+1, 0)</tt>|| bgcolor="#C4E8E8" |<tt>( 0,+1)</tt>||<tt>( 0,-2)</tt>||<tt>(-1,-2)</tt>
|- align = center
|- align = center
| bgcolor="#80A3F8"|L→2||<tt>( 0, 0)</tt>||<tt>(-1, 0)</tt>||<tt>(-1,-1)</tt>||<tt>(+1, 0)</tt>||<tt>( 0,+2)</tt>||<tt>(-1,+2)</tt>||<tt>(-1,+1)</tt>||
| bgcolor="#80A3F8"|L→2||<tt>( 0, 0)</tt>||<tt>(-1, 0)</tt>||<tt>(-1,-1)</tt>|| bgcolor="#C4E8E8" |<tt>(+1, 0)</tt>||<tt>( 0,+2)</tt>||<tt>(-1,+2)</tt>|| bgcolor="#C4E8E8" |<tt>(-1,+1)</tt>||
|- align = center
|- align = center
| bgcolor="#80A3F8"|2→L||<tt>( 0, 0)</tt>||<tt>(+1, 0)</tt>||<tt>(+1,-1)</tt>||<tt>(-1, 0)</tt>||<tt>(+1,+1)</tt>||<tt>( 0,-2)</tt>||<tt>(+1,-2)</tt>||
| bgcolor="#80A3F8"|2→L||<tt>( 0, 0)</tt>||<tt>(+1, 0)</tt>|| bgcolor="#C4E8E8" |<tt>(+1,-1)</tt>|| bgcolor="#C4E8E8" |<tt>(-1, 0)</tt>||<tt>(+1,+1)</tt>||<tt>( 0,-2)</tt>||<tt>(+1,-2)</tt>||
|- align = center
|- align = center
| bgcolor="#80A3F8"|0→2||<tt>( 0, 0)</tt>||<tt>(-1, 0)</tt>||<tt>(+1, 0)</tt>||<tt>( 0,-1)</tt>||<tt>( 0,+1)</tt>||||||
| bgcolor="#80A3F8"|0→2||<tt>( 0, 0)</tt>||<tt>(-1, 0)</tt>||<tt>(+1, 0)</tt>||<tt>( 0,-1)</tt>||<tt>( 0,+1)</tt>||||||
Line 113: Line 157:
|- align = center
|- align = center
| bgcolor="#80A3F8"|R→L||<tt>( 0, 0)</tt>||<tt>( 0,+1)</tt>||<tt>( 0,-1)</tt>||<tt>(-1, 0)</tt>||||||||
| bgcolor="#80A3F8"|R→L||<tt>( 0, 0)</tt>||<tt>( 0,+1)</tt>||<tt>( 0,-1)</tt>||<tt>(-1, 0)</tt>||||||||
|}
Example usages of additional kicks:
{|
|- style="vertical-align:top;"
|width="150" | <playfield>
..........
..........
.......JCJ
GGGGGGGGGJ
GGGGGGGG..
</playfield> || width="150" | <playfield>
..........
..........
.........J
GGGGGGGGGC
GGGGGGGGJJ
</playfield>
|- style="vertical-align:top;"
|  || "Goodspin"
|}
|}


=== L ===
=== L ===
The L piece uses mirrored J kicks.
{| border="1" cellspacing="0"  
{| border="1" cellspacing="0"  
|+'''L Tetromino TRS Wall Kick Data'''
|+'''L Tetromino TRS Wall Kick Data'''
Line 129: Line 195:
! bgcolor="#80A3F8" width="60"|Test 8
! bgcolor="#80A3F8" width="60"|Test 8
|- align = center
|- align = center
| bgcolor="#80A3F8"|0→R||<tt>( 0, 0)</tt>||<tt>(-1, 0)</tt>||<tt>(-1,+1)</tt>||<tt>( 0,-2)</tt>||<tt>(-1,-2)</tt>||<tt>(-1,-1)</tt>||<tt>( 0,+1)</tt>||
| bgcolor="#80A3F8"|0→R||<tt>( 0, 0)</tt>||<tt>(-1, 0)</tt>||<tt>(-1,+1)</tt>||<tt>( 0,-2)</tt>||<tt>(-1,-2)</tt>|| bgcolor="#C4E8E8" |<tt>(-1,-1)</tt>|| bgcolor="#C4E8E8" |<tt>( 0,+1)</tt>||
|- align = center
|- align = center
| bgcolor="#80A3F8"|R→0||<tt>( 0, 0)</tt>||<tt>(+1, 0)</tt>||<tt>(+1,-1)</tt>||<tt>( 0,+2)</tt>||<tt>(+1,+2)</tt>||<tt>( 0,-1)</tt>||<tt>(+1,+1)</tt>||
| bgcolor="#80A3F8"|R→0||<tt>( 0, 0)</tt>||<tt>(+1, 0)</tt>||<tt>(+1,-1)</tt>||<tt>( 0,+2)</tt>||<tt>(+1,+2)</tt>|| bgcolor="#C4E8E8" |<tt>( 0,-1)</tt>|| bgcolor="#C4E8E8" |<tt>(+1,+1)</tt>||
|- align = center
|- align = center
| bgcolor="#80A3F8"|0→L||<tt>( 0, 0)</tt>||<tt>(+1, 0)</tt>||<tt>(+1,+1)</tt>||<tt>( 0,-2)</tt>||<tt>(-1,+1)</tt>||<tt>( 0,+1)</tt>||<tt>( 0,-1)</tt>||
| bgcolor="#80A3F8"|0→L||<tt>( 0, 0)</tt>||<tt>(+1, 0)</tt>||<tt>(+1,+1)</tt>||<tt>( 0,-2)</tt>|| bgcolor="#C4E8E8" |<tt>(-1,+1)</tt>|| bgcolor="#C4E8E8" |<tt>( 0,+1)</tt>|| bgcolor="#C4E8E8" |<tt>( 0,-1)</tt>||
|- align = center
|- align = center
| bgcolor="#80A3F8"|L→0||<tt>( 0, 0)</tt>||<tt>(-1, 0)</tt>||<tt>(-1,-1)</tt>||<tt>( 0,+2)</tt>||<tt>(+1,-1)</tt>||<tt>( 0,-1)</tt>||<tt>( 0,+1)</tt>||
| bgcolor="#80A3F8"|L→0||<tt>( 0, 0)</tt>||<tt>(-1, 0)</tt>||<tt>(-1,-1)</tt>||<tt>( 0,+2)</tt>|| bgcolor="#C4E8E8" |<tt>(+1,-1)</tt>|| bgcolor="#C4E8E8" |<tt>( 0,-1)</tt>|| bgcolor="#C4E8E8" |<tt>( 0,+1)</tt>||
|- align = center
|- align = center
| bgcolor="#80A3F8"|R→2||<tt>( 0, 0)</tt>||<tt>(+1, 0)</tt>||<tt>(+1,-1)</tt>||<tt>(-1, 0)</tt>||<tt>( 0,+2)</tt>||<tt>(+1,+2)</tt>||<tt>(+1,+1)</tt>||
| bgcolor="#80A3F8"|R→2||<tt>( 0, 0)</tt>||<tt>(+1, 0)</tt>||<tt>(+1,-1)</tt>|| bgcolor="#C4E8E8" |<tt>(-1, 0)</tt>||<tt>( 0,+2)</tt>||<tt>(+1,+2)</tt>|| bgcolor="#C4E8E8" |<tt>(+1,+1)</tt>||
|- align = center
|- align = center
| bgcolor="#80A3F8"|2→R||<tt>( 0, 0)</tt>||<tt>(-1, 0)</tt>||<tt>(-1,-1)</tt>||<tt>(+1, 0)</tt>||<tt>(-1,+1)</tt>||<tt>( 0,-2)</tt>||<tt>(-1,-2)</tt>||
| bgcolor="#80A3F8"|2→R||<tt>( 0, 0)</tt>||<tt>(-1, 0)</tt>|| bgcolor="#C4E8E8" |<tt>(-1,-1)</tt>|| bgcolor="#C4E8E8" |<tt>(+1, 0)</tt>||<tt>(-1,+1)</tt>||<tt>( 0,-2)</tt>||<tt>(-1,-2)</tt>||
|- align = center
|- align = center
| bgcolor="#80A3F8"|L→2||<tt>( 0, 0)</tt>||<tt>(-1, 0)</tt>||<tt>(-1,-1)</tt>||<tt>(-1,+1)</tt>||<tt>(+1, 0)</tt>||<tt>( 0,-1)</tt>||<tt>( 0,+2)</tt>||<tt>(-1,+2)</tt>
| bgcolor="#80A3F8"|L→2||<tt>( 0, 0)</tt>||<tt>(-1, 0)</tt>||<tt>(-1,-1)</tt>|| bgcolor="#C4E8E8" |<tt>(-1,+1)</tt>|| bgcolor="#C4E8E8" |<tt>(+1, 0)</tt>|| bgcolor="#C4E8E8" |<tt>( 0,-1)</tt>||<tt>( 0,+2)</tt>||<tt>(-1,+2)</tt>
|- align = center
|- align = center
| bgcolor="#80A3F8"|2→L||<tt>( 0, 0)</tt>||<tt>(+1, 0)</tt>||<tt>(+1,+1)</tt>||<tt>(+1,-1)</tt>||<tt>(-1, 0)</tt>||<tt>( 0,+1)</tt>||<tt>( 0,-2)</tt>||<tt>(+1,-2)</tt>
| bgcolor="#80A3F8"|2→L||<tt>( 0, 0)</tt>||<tt>(+1, 0)</tt>||<tt>(+1,+1)</tt>|| bgcolor="#C4E8E8" |<tt>(+1,-1)</tt>|| bgcolor="#C4E8E8" |<tt>(-1, 0)</tt>|| bgcolor="#C4E8E8" |<tt>( 0,+1)</tt>||<tt>( 0,-2)</tt>||<tt>(+1,-2)</tt>
|- align = center
|- align = center
| bgcolor="#80A3F8"|0→2||<tt>( 0, 0)</tt>||<tt>(+1, 0)</tt>||<tt>(-1, 0)</tt>||<tt>( 0,-1)</tt>||<tt>( 0,+1)</tt>||||||
| bgcolor="#80A3F8"|0→2||<tt>( 0, 0)</tt>||<tt>(+1, 0)</tt>||<tt>(-1, 0)</tt>||<tt>( 0,-1)</tt>||<tt>( 0,+1)</tt>||||||
Line 154: Line 220:
|}
|}


Example usages of additional kicks:
{|
|- style="vertical-align:top;"
|width="150" | <playfield>
..........
..........
LCL.......
LGGGGGGGGG
..GGGGGGGG
</playfield> || width="150" | <playfield>
..........
..........
L.........
CGGGGGGGGG
LLGGGGGGGG
</playfield>
|- style="vertical-align:top;"
|  || "Goodspin"
|}


=== T ===
=== T ===
Line 169: Line 255:
! bgcolor="#80A3F8" width="60"|Test 8
! bgcolor="#80A3F8" width="60"|Test 8
|- align = center
|- align = center
| bgcolor="#80A3F8"|0→R||<tt>( 0, 0)</tt>||<tt>(-1, 0)</tt>||<tt>(-1,+1)</tt>||<tt>( 0,-2)</tt>||<tt>(-1,-2)</tt>||<tt>( 0,+1)</tt>||||
| bgcolor="#80A3F8"|0→R||<tt>( 0, 0)</tt>||<tt>(-1, 0)</tt>||<tt>(-1,+1)</tt>||<tt>( 0,-2)</tt>||<tt>(-1,-2)</tt>|| bgcolor="#C4E8E8" |<tt>( 0,+1)</tt>||||
|- align = center
|- align = center
| bgcolor="#80A3F8"|R→0||<tt>( 0, 0)</tt>||<tt>(+1, 0)</tt>||<tt>(+1,-1)</tt>||<tt>( 0,+2)</tt>||<tt>(+1,+2)</tt>||<tt>( 0,+1)</tt>||<tt>( 0,-1)</tt>||
| bgcolor="#80A3F8"|R→0||<tt>( 0, 0)</tt>||<tt>(+1, 0)</tt>||<tt>(+1,-1)</tt>||<tt>( 0,+2)</tt>||<tt>(+1,+2)</tt>|| bgcolor="#C4E8E8" |<tt>( 0,+1)</tt>|| bgcolor="#C4E8E8" |<tt>( 0,-1)</tt>||
|- align = center
|- align = center
| bgcolor="#80A3F8"|0→L||<tt>( 0, 0)</tt>||<tt>(+1, 0)</tt>||<tt>(+1,+1)</tt>||<tt>( 0,-2)</tt>||<tt>(+1,-2)</tt>||<tt>( 0,+1)</tt>||||
| bgcolor="#80A3F8"|0→L||<tt>( 0, 0)</tt>||<tt>(+1, 0)</tt>||<tt>(+1,+1)</tt>||<tt>( 0,-2)</tt>||<tt>(+1,-2)</tt>|| bgcolor="#C4E8E8" |<tt>( 0,+1)</tt>||||
|- align = center
|- align = center
| bgcolor="#80A3F8"|L→0||<tt>( 0, 0)</tt>||<tt>(-1, 0)</tt>||<tt>(-1,-1)</tt>||<tt>( 0,+2)</tt>||<tt>(-1,+2)</tt>||<tt>( 0,+1)</tt>||<tt>( 0,-1)</tt>||
| bgcolor="#80A3F8"|L→0||<tt>( 0, 0)</tt>||<tt>(-1, 0)</tt>||<tt>(-1,-1)</tt>||<tt>( 0,+2)</tt>||<tt>(-1,+2)</tt>|| bgcolor="#C4E8E8" |<tt>( 0,+1)</tt>|| bgcolor="#C4E8E8" |<tt>( 0,-1)</tt>||
|- align = center
|- align = center
| bgcolor="#80A3F8"|R→2||<tt>( 0, 0)</tt>||<tt>(+1, 0)</tt>||<tt>(+1,-1)</tt>||<tt>( 0,-1)</tt>||<tt>(-1,-1)</tt>||<tt>( 0,+2)</tt>||<tt>(+1,+2)</tt>||<tt>(+1,+1)</tt>
| bgcolor="#80A3F8"|R→2||<tt>( 0, 0)</tt>||<tt>(+1, 0)</tt>||<tt>(+1,-1)</tt>|| bgcolor="#C4E8E8" |<tt>( 0,-1)</tt>|| bgcolor="#C4E8E8" |<tt>(-1,-1)</tt>||<tt>( 0,+2)</tt>||<tt>(+1,+2)</tt>|| bgcolor="#C4E8E8" |<tt>(+1,+1)</tt>
|- align = center
|- align = center
| bgcolor="#80A3F8"|2→R||<tt>( 0, 0)</tt>||<tt>(-1, 0)</tt>||<tt>( 0,-2)</tt>||<tt>(-1,-2)</tt>||<tt>(-1,-1)</tt>||<tt>( 0,-1)</tt>||<tt>(+1,+1)</tt>||
| bgcolor="#80A3F8"|2→R||<tt>( 0, 0)</tt>||<tt>(-1, 0)</tt>||<tt>( 0,-2)</tt>||<tt>(-1,-2)</tt>|| bgcolor="#C4E8E8" |<tt>(-1,-1)</tt>|| bgcolor="#C4E8E8" |<tt>( 0,-1)</tt>|| bgcolor="#C4E8E8" |<tt>(+1,+1)</tt>||
|- align = center
|- align = center
| bgcolor="#80A3F8"|L→2||<tt>( 0, 0)</tt>||<tt>(-1, 0)</tt>||<tt>(-1,-1)</tt>||<tt>( 0,-1)</tt>||<tt>(+1,-1)</tt>||<tt>( 0,+2)</tt>||<tt>(-1,+2)</tt>||<tt>(-1,+1)</tt>
| bgcolor="#80A3F8"|L→2||<tt>( 0, 0)</tt>||<tt>(-1, 0)</tt>||<tt>(-1,-1)</tt>|| bgcolor="#C4E8E8" |<tt>( 0,-1)</tt>|| bgcolor="#C4E8E8" |<tt>(+1,-1)</tt>||<tt>( 0,+2)</tt>||<tt>(-1,+2)</tt>|| bgcolor="#C4E8E8" |<tt>(-1,+1)</tt>
|- align = center
|- align = center
| bgcolor="#80A3F8"|2→L||<tt>( 0, 0)</tt>||<tt>(+1, 0)</tt>||<tt>( 0,-2)</tt>||<tt>(+1,-2)</tt>||<tt>(+1,-1)</tt>||<tt>( 0,-1)</tt>||<tt>(-1,+1)</tt>||
| bgcolor="#80A3F8"|2→L||<tt>( 0, 0)</tt>||<tt>(+1, 0)</tt>||<tt>( 0,-2)</tt>||<tt>(+1,-2)</tt>|| bgcolor="#C4E8E8" |<tt>(+1,-1)</tt>|| bgcolor="#C4E8E8" |<tt>( 0,-1)</tt>|| bgcolor="#C4E8E8" |<tt>(-1,+1)</tt>||
|- align = center
|- align = center
| bgcolor="#80A3F8"|0→2||<tt>( 0, 0)</tt>||<tt>(-1, 0)</tt>||<tt>(+1, 0)</tt>||<tt>( 0,+1)</tt>||||||||
| bgcolor="#80A3F8"|0→2||<tt>( 0, 0)</tt>||<tt>(-1, 0)</tt>||<tt>(+1, 0)</tt>||<tt>( 0,+1)</tt>||||||||
Line 193: Line 279:
| bgcolor="#80A3F8"|R→L||<tt>( 0, 0)</tt>||<tt>( 0,-1)</tt>||<tt>( 0,+1)</tt>||<tt>(-1, 0)</tt>||<tt>( 0,-2)</tt>||<tt>( 0,+2)</tt>||||
| bgcolor="#80A3F8"|R→L||<tt>( 0, 0)</tt>||<tt>( 0,-1)</tt>||<tt>( 0,+1)</tt>||<tt>(-1, 0)</tt>||<tt>( 0,-2)</tt>||<tt>( 0,+2)</tt>||||
|}
|}
Examples of additional kicks:
{|
|- style="vertical-align:top;"
|width="150" | <playfield>
..........
...T......
GGGCTGGGGG
G..TGGGGGG
GG.GGGGGGG
</playfield> || width="150" | <playfield>
..........
..........
GGG..GGGGG
GTCTGGGGGG
GGTGGGGGGG
</playfield>
|- style="vertical-align:top;"
|  || "Wrong" T-spin
|}
=== O ===
=== O ===
TODO: Explain how O-spins work
TODO: Explain how O-spins work


=== I ===
=== I ===
The yellow background highlights kicks reordered compared to SRS.
{| border="1" cellspacing="0"  
{| border="1" cellspacing="0"  
|+'''I Tetromino TRS Wall Kick Data'''
|+'''I Tetromino TRS Wall Kick Data'''
Line 208: Line 316:
! bgcolor="#80A3F8" width="60"|Test 6
! bgcolor="#80A3F8" width="60"|Test 6
|- align = center
|- align = center
| bgcolor="#80A3F8"|0→R||<tt>( 0, 0)</tt>||<tt>( 0,+1)</tt>||<tt>(+1, 0)</tt>||<tt>(-2, 0)</tt>||<tt>(-2,-1)</tt>||<tt>(+1,+2)</tt>
| bgcolor="#80A3F8"|0→R||<tt>( 0, 0)</tt>|| bgcolor="#C4E8E8" |<tt>( 0,+1)</tt>||<tt>(+1, 0)</tt>||<tt>(-2, 0)</tt>||<tt>(-2,-1)</tt>||<tt>(+1,+2)</tt>
|- align = center
|- align = center
| bgcolor="#80A3F8"|R→0||<tt>( 0, 0)</tt>||<tt>(+2, 0)</tt>||<tt>(-1, 0)</tt>||<tt>(-1,-2)</tt>||<tt>(+2,+1)</tt>||<tt>( 0,+1)</tt>
| bgcolor="#80A3F8"|R→0||<tt>( 0, 0)</tt>||<tt>(+2, 0)</tt>||<tt>(-1, 0)</tt>|| bgcolor="#FFFFCC" |<tt>(-1,-2)</tt>|| bgcolor="#FFFFCC" |<tt>(+2,+1)</tt>|| bgcolor="#C4E8E8" |<tt>( 0,+1)</tt>
|- align = center
|- align = center
| bgcolor="#80A3F8"|0→L||<tt>( 0, 0)</tt>||<tt>( 0,+1)</tt>||<tt>(-1, 0)</tt>||<tt>(+2, 0)</tt>||<tt>(+2,-1)</tt>||<tt>(-1,+2)</tt>
| bgcolor="#80A3F8"|0→L||<tt>( 0, 0)</tt>|| bgcolor="#C4E8E8" |<tt>( 0,+1)</tt>||<tt>(-1, 0)</tt>||<tt>(+2, 0)</tt>|| bgcolor="#FFFFCC" |<tt>(+2,-1)</tt>|| bgcolor="#FFFFCC" |<tt>(-1,+2)</tt>
|- align = center
|- align = center
| bgcolor="#80A3F8"|L→0||<tt>( 0, 0)</tt>||<tt>(-2, 0)</tt>||<tt>(+1, 0)</tt>||<tt>(+1,-2)</tt>||<tt>(-2,+1)</tt>||<tt>( 0,+1)</tt>
| bgcolor="#80A3F8"|L→0||<tt>( 0, 0)</tt>|| bgcolor="#FFFFCC" |<tt>(-2, 0)</tt>|| bgcolor="#FFFFCC" |<tt>(+1, 0)</tt>||<tt>(+1,-2)</tt>||<tt>(-2,+1)</tt>|| bgcolor="#C4E8E8" |<tt>( 0,+1)</tt>
|- align = center
|- align = center
| bgcolor="#80A3F8"|R→2||<tt>( 0, 0)</tt>||<tt>(-1, 0)</tt>||<tt>(+2, 0)</tt>||<tt>(+2,-1)</tt>||<tt>( 0,-1)</tt>||<tt>(-1,+2)</tt>
| bgcolor="#80A3F8"|R→2||<tt>( 0, 0)</tt>||<tt>(-1, 0)</tt>||<tt>(+2, 0)</tt>|| bgcolor="#FFFFCC" |<tt>(+2,-1)</tt>|| bgcolor="#C4E8E8" |<tt>( 0,-1)</tt>|| bgcolor="#FFFFCC" |<tt>(-1,+2)</tt>
|- align = center
|- align = center
| bgcolor="#80A3F8"|2→R||<tt>( 0, 0)</tt>||<tt>(-2, 0)</tt>||<tt>(+1, 0)</tt>||<tt>(+1,-2)</tt>||<tt>(-2,+1)</tt>||<tt>( 0,+1)</tt>
| bgcolor="#80A3F8"|2→R||<tt>( 0, 0)</tt>|| bgcolor="#FFFFCC" |<tt>(-2, 0)</tt>|| bgcolor="#FFFFCC" |<tt>(+1, 0)</tt>||<tt>(+1,-2)</tt>||<tt>(-2,+1)</tt>|| bgcolor="#C4E8E8" |<tt>( 0,+1)</tt>
|- align = center
|- align = center
| bgcolor="#80A3F8"|L→2||<tt>( 0, 0)</tt>||<tt>(+1, 0)</tt>||<tt>(-2, 0)</tt>||<tt>(-2,-1)</tt>||<tt>( 0,-1)</tt>||<tt>(+1,+2)</tt>
| bgcolor="#80A3F8"|L→2||<tt>( 0, 0)</tt>|| bgcolor="#FFFFCC" |<tt>(+1, 0)</tt>|| bgcolor="#FFFFCC" |<tt>(-2, 0)</tt>||<tt>(-2,-1)</tt>|| bgcolor="#C4E8E8" |<tt>( 0,-1)</tt>||<tt>(+1,+2)</tt>
|- align = center
|- align = center
| bgcolor="#80A3F8"|2→L||<tt>( 0, 0)</tt>||<tt>(+2, 0)</tt>||<tt>(-1, 0)</tt>||<tt>(-1,-2)</tt>||<tt>(+2,+1)</tt>||<tt>( 0,+1)</tt>
| bgcolor="#80A3F8"|2→L||<tt>( 0, 0)</tt>||<tt>(+2, 0)</tt>||<tt>(-1, 0)</tt>|| bgcolor="#FFFFCC" |<tt>(-1,-2)</tt>|| bgcolor="#FFFFCC" |<tt>(+2,+1)</tt>|| bgcolor="#C4E8E8" |<tt>( 0,+1)</tt>
|- align = center
|- align = center
| bgcolor="#80A3F8"|0→2||<tt>( 0, 0)</tt>||<tt>(-1, 0)</tt>||<tt>(+1, 0)</tt>||<tt>( 0,-1)</tt>||<tt>( 0,+1)</tt>||
| bgcolor="#80A3F8"|0→2||<tt>( 0, 0)</tt>||<tt>(-1, 0)</tt>||<tt>(+1, 0)</tt>||<tt>( 0,-1)</tt>||<tt>( 0,+1)</tt>||
Line 232: Line 340:
| bgcolor="#80A3F8"|R→L||<tt>( 0, 0)</tt>||<tt>( 0,-1)</tt>||<tt>(+1, 0)</tt>||<tt>(-1, 0)</tt>||<tt>( 0,+1)</tt>||
| bgcolor="#80A3F8"|R→L||<tt>( 0, 0)</tt>||<tt>( 0,-1)</tt>||<tt>(+1, 0)</tt>||<tt>(-1, 0)</tt>||<tt>( 0,+1)</tt>||
|}
|}
Thanks to these changes, I kicks are now symmetric about the y-axis when rotating from or to a horizontal orientation.
{| cellpadding="2" style="border:1px solid darkgray;"
|- valign=top
|width="150pt"|<playfield>
..........
----......
.GG.GGGGGG
.GG.GGGGGG
IGGGGGGGGG
IGGGGGGGGG
IGGGGGGGGG
IGGGGGGGGG
</playfield>
|width="350pt"|From the dotted position, it is possible to clear 4 lines with both SRS and TRS by rotating ''clockwise''.
|}
{| cellpadding="2" style="border:1px solid darkgray;"
|- valign=top
|width="150pt"|<playfield>
..........
......----
GGGGGG.GG.
GGGGGG.GG.
GGGGGGGGGI
GGGGGGGGGI
GGGGGGGGGI
GGGGGGGGGI
</playfield>
|width="350pt"|In the symmetric position, only TRS allows the clearing of 4 lines by rotating ''counter-clockwise''.
|}
{| cellpadding="2" style="border:1px solid darkgray;"
|- valign=top
|width="150pt"|<playfield>
......I...
......I---
GGGGGGIGG.
GGGGGGIGG.
GGGGGGGGG.
GGGGGGGGG.
GGGGGGGGG.
GGGGGGGGG.
</playfield>
|width="350pt"|TRS also allows for this position to be achieved by rotating ''clockwise''. However, with SRS, this is the ''only'' position achievable, regardless of which direction the player rotates.
|}
Examples of additional kicks:
{|
|- style="vertical-align:top;"
|width="150" | <playfield>
..........
...I......
GG.IGGGGGG
GG.IGGGGGG
G..I.GGGGG
</playfield> || width="150" | <playfield>
..........
..........
GG..GGGGGG
GG..GGGGGG
GIIIIGGGGG
</playfield>
|- style="vertical-align:top;"
| I-piece is rotated clockwise || Rotate clockwise
|}
== Pentominoes ==
=== Z5 ===
Z pentomino is centrosymmetric, and therefore it does not have any 180-degree kicks.
{| border="1" cellspacing="0"
|+'''Z Pentomino TRS Wall Kick Data'''
|- align = center
! width="45"|
! bgcolor="#80A3F8" width="60"|Test 1
! bgcolor="#80A3F8" width="60"|Test 2
! bgcolor="#80A3F8" width="60"|Test 3
! bgcolor="#80A3F8" width="60"|Test 4
! bgcolor="#80A3F8" width="60"|Test 5
! bgcolor="#80A3F8" width="60"|Test 6
! bgcolor="#80A3F8" width="60"|Test 7
! bgcolor="#80A3F8" width="60"|Test 8
! bgcolor="#80A3F8" width="60"|Test 9
|- align = center
| bgcolor="#80A3F8"|0→R||<tt>( 0, 0)</tt>||<tt>( 0,+1)</tt>||<tt>(+1,+1)</tt>||<tt>(-1, 0)</tt>||<tt>( 0,-3)</tt>||<tt>( 0,+2)</tt>||<tt>( 0,-2)</tt>||<tt>( 0,+3)</tt>||<tt>(-1,+2)</tt>
|- align = center
| bgcolor="#80A3F8"|R→0||<tt>( 0, 0)</tt>||<tt>( 0,-1)</tt>||<tt>(-1,-1)</tt>||<tt>(+1, 0)</tt>||<tt>( 0,-3)</tt>||<tt>( 0,+2)</tt>||<tt>( 0,-2)</tt>||<tt>( 0,+3)</tt>||<tt>(+1,-2)</tt>
|- align = center
| bgcolor="#80A3F8"|0→L||<tt>( 0, 0)</tt>||<tt>(+1, 0)</tt>||<tt>( 0,-3)</tt>||<tt>( 0,-1)</tt>||<tt>( 0,+1)</tt>||<tt>( 0,-2)</tt>||<tt>( 0,+2)</tt>||<tt>( 0,+3)</tt>||<tt>(+1,+2)</tt>
|- align = center
| bgcolor="#80A3F8"|L→0||<tt>( 0, 0)</tt>||<tt>(-1, 0)</tt>||<tt>( 0,-1)</tt>||<tt>( 0,+1)</tt>||<tt>( 0,-2)</tt>||<tt>( 0,-3)</tt>||<tt>( 0,+2)</tt>||<tt>( 0,+3)</tt>||<tt>(-1,-2)</tt>
|- align = center
| bgcolor="#80A3F8"|R→2||<tt>( 0, 0)</tt>||<tt>(-1, 0)</tt>||<tt>( 0,-1)</tt>||<tt>( 0,+1)</tt>||<tt>( 0,-2)</tt>||<tt>( 0,-3)</tt>||<tt>( 0,+2)</tt>||<tt>( 0,+3)</tt>||<tt>(-1,-2)</tt>
|- align = center
| bgcolor="#80A3F8"|2→R||<tt>( 0, 0)</tt>||<tt>(+1, 0)</tt>||<tt>( 0,-3)</tt>||<tt>( 0,-1)</tt>||<tt>( 0,+1)</tt>||<tt>( 0,-2)</tt>||<tt>( 0,+2)</tt>||<tt>( 0,+3)</tt>||<tt>(+1,+2)</tt>
|- align = center
| bgcolor="#80A3F8"|L→2||<tt>( 0, 0)</tt>||<tt>( 0,-1)</tt>||<tt>(-1,-1)</tt>||<tt>(+1, 0)</tt>||<tt>( 0,-3)</tt>||<tt>( 0,+2)</tt>||<tt>( 0,-2)</tt>||<tt>( 0,+3)</tt>||<tt>(+1,-2)</tt>
|- align = center
| bgcolor="#80A3F8"|2→L||<tt>( 0, 0)</tt>||<tt>( 0,+1)</tt>||<tt>(+1,+1)</tt>||<tt>(-1, 0)</tt>||<tt>( 0,-3)</tt>||<tt>( 0,+2)</tt>||<tt>( 0,-2)</tt>||<tt>( 0,+3)</tt>||<tt>(-1,+2)</tt>
|}
=== S5 ===
S pentomino is centrosymmetric, and therefore it does not have any 180-degree kicks.
S pentomino uses mirrored Z5 kicks.
{| border="1" cellspacing="0"
|+'''S Pentomino TRS Wall Kick Data'''
|- align = center
! width="45"|
! bgcolor="#80A3F8" width="60"|Test 1
! bgcolor="#80A3F8" width="60"|Test 2
! bgcolor="#80A3F8" width="60"|Test 3
! bgcolor="#80A3F8" width="60"|Test 4
! bgcolor="#80A3F8" width="60"|Test 5
! bgcolor="#80A3F8" width="60"|Test 6
! bgcolor="#80A3F8" width="60"|Test 7
! bgcolor="#80A3F8" width="60"|Test 8
! bgcolor="#80A3F8" width="60"|Test 9
|- align = center
| bgcolor="#80A3F8"|0→R||<tt>( 0, 0)</tt>||<tt>(-1, 0)</tt>||<tt>( 0,-3)</tt>||<tt>( 0,-1)</tt>||<tt>( 0,+1)</tt>||<tt>( 0,-2)</tt>||<tt>( 0,+2)</tt>||<tt>( 0,+3)</tt>||<tt>(-1,+2)</tt>
|- align = center
| bgcolor="#80A3F8"|R→0||<tt>( 0, 0)</tt>||<tt>(+1, 0)</tt>||<tt>( 0,-1)</tt>||<tt>( 0,+1)</tt>||<tt>( 0,-2)</tt>||<tt>( 0,-3)</tt>||<tt>( 0,+2)</tt>||<tt>( 0,+3)</tt>||<tt>(+1,-2)</tt>
|- align = center
| bgcolor="#80A3F8"|0→L||<tt>( 0, 0)</tt>||<tt>( 0,+1)</tt>||<tt>(-1,+1)</tt>||<tt>(+1, 0)</tt>||<tt>( 0,-3)</tt>||<tt>( 0,+2)</tt>||<tt>( 0,-2)</tt>||<tt>( 0,+3)</tt>||<tt>(+1,+2)</tt>
|- align = center
| bgcolor="#80A3F8"|L→0||<tt>( 0, 0)</tt>||<tt>( 0,-1)</tt>||<tt>(+1,-1)</tt>||<tt>(-1, 0)</tt>||<tt>( 0,-3)</tt>||<tt>( 0,+2)</tt>||<tt>( 0,-2)</tt>||<tt>( 0,+3)</tt>||<tt>(-1,-2)</tt>
|- align = center
| bgcolor="#80A3F8"|R→2||<tt>( 0, 0)</tt>||<tt>( 0,-1)</tt>||<tt>(+1,-1)</tt>||<tt>(-1, 0)</tt>||<tt>( 0,-3)</tt>||<tt>( 0,+2)</tt>||<tt>( 0,-2)</tt>||<tt>( 0,+3)</tt>||<tt>(-1,-2)</tt>
|- align = center
| bgcolor="#80A3F8"|2→R||<tt>( 0, 0)</tt>||<tt>( 0,+1)</tt>||<tt>(-1,+1)</tt>||<tt>(+1, 0)</tt>||<tt>( 0,-3)</tt>||<tt>( 0,+2)</tt>||<tt>( 0,-2)</tt>||<tt>( 0,+3)</tt>||<tt>(+1,+2)</tt>
|- align = center
| bgcolor="#80A3F8"|L→2||<tt>( 0, 0)</tt>||<tt>(+1, 0)</tt>||<tt>( 0,-1)</tt>||<tt>( 0,+1)</tt>||<tt>( 0,-2)</tt>||<tt>( 0,-3)</tt>||<tt>( 0,+2)</tt>||<tt>( 0,+3)</tt>||<tt>(+1,-2)</tt>
|- align = center
| bgcolor="#80A3F8"|2→L||<tt>( 0, 0)</tt>||<tt>(-1, 0)</tt>||<tt>( 0,-3)</tt>||<tt>( 0,-1)</tt>||<tt>( 0,+1)</tt>||<tt>( 0,-2)</tt>||<tt>( 0,+2)</tt>||<tt>( 0,+3)</tt>||<tt>(-1,+2)</tt>
|}
=== P ===
{| border="1" cellspacing="0"
|+'''P Pentomino TRS Wall Kick Data'''
|- align = center
! width="45"|
! bgcolor="#80A3F8" width="60"|Test 1
! bgcolor="#80A3F8" width="60"|Test 2
! bgcolor="#80A3F8" width="60"|Test 3
! bgcolor="#80A3F8" width="60"|Test 4
! bgcolor="#80A3F8" width="60"|Test 5
! bgcolor="#80A3F8" width="60"|Test 6
! bgcolor="#80A3F8" width="60"|Test 7
|- align = center
| bgcolor="#80A3F8"|0→R||<tt>( 0, 0)</tt>||<tt>(-1, 0)</tt>||<tt>(-1,+1)</tt>||<tt>( 0,-2)</tt>||<tt>(-1,-2)</tt>||<tt>(-1,-1)</tt>||<tt>( 0,+1)</tt>
|- align = center
| bgcolor="#80A3F8"|R→0||<tt>( 0, 0)</tt>||<tt>(+1, 0)</tt>||<tt>(+1,-1)</tt>||<tt>( 0,+2)</tt>||<tt>(+1,+2)</tt>||<tt>( 0,-1)</tt>||<tt>(+1,+1)</tt>
|- align = center
| bgcolor="#80A3F8"|0→L||<tt>( 0, 0)</tt>||<tt>(+1, 0)</tt>||<tt>(+1,+1)</tt>||<tt>( 0,-2)</tt>||<tt>(+1,-2)</tt>||||
|- align = center
| bgcolor="#80A3F8"|L→0||<tt>( 0, 0)</tt>||<tt>(-1, 0)</tt>||<tt>(-1,-1)</tt>||<tt>( 0,+2)</tt>||<tt>(-1,+2)</tt>||||
|- align = center
| bgcolor="#80A3F8"|R→2||<tt>( 0, 0)</tt>||<tt>(+1, 0)</tt>||<tt>(+1,-1)</tt>||<tt>( 0,+2)</tt>||<tt>(+1,+2)</tt>||<tt>(+1,+1)</tt>||
|- align = center
| bgcolor="#80A3F8"|2→R||<tt>( 0, 0)</tt>||<tt>(-1, 0)</tt>||<tt>(-1,-1)</tt>||<tt>(-1,+1)</tt>||<tt>( 0,-2)</tt>||<tt>(-1,-2)</tt>||<tt>(-1,-1)</tt>
|- align = center
| bgcolor="#80A3F8"|L→2||<tt>( 0, 0)</tt>||<tt>(-1, 0)</tt>||<tt>(-1,-1)</tt>||<tt>(-1,+1)</tt>||<tt>( 0,-1)</tt>||<tt>( 0,+2)</tt>||<tt>(-1,+2)</tt>
|- align = center
| bgcolor="#80A3F8"|2→L||<tt>( 0, 0)</tt>||<tt>(+1, 0)</tt>||<tt>(+1,+1)</tt>||<tt>(-1, 0)</tt>||<tt>( 0,-2)</tt>||<tt>(+1,-2)</tt>||
|- align = center
| bgcolor="#80A3F8"|0→2||<tt>( 0, 0)</tt>||<tt>(-1, 0)</tt>||<tt>( 0,-1)</tt>||<tt>( 0,+1)</tt>||||||
|- align = center
| bgcolor="#80A3F8"|2→0||<tt>( 0, 0)</tt>||<tt>(+1, 0)</tt>||<tt>( 0,+1)</tt>||<tt>( 0,-1)</tt>||||||
|- align = center
| bgcolor="#80A3F8"|L→R||<tt>( 0, 0)</tt>||<tt>(+1, 0)</tt>||<tt>( 0,+1)</tt>||<tt>(-1, 0)</tt>||||||
|- align = center
| bgcolor="#80A3F8"|R→L||<tt>( 0, 0)</tt>||<tt>(-1, 0)</tt>||<tt>( 0,-1)</tt>||<tt>(+1, 0)</tt>||||||
|}
=== Q ===
Q pentomino uses mirrored P kicks.
{| border="1" cellspacing="0"
|+'''Q Pentomino TRS Wall Kick Data'''
|- align = center
! width="45"|
! bgcolor="#80A3F8" width="60"|Test 1
! bgcolor="#80A3F8" width="60"|Test 2
! bgcolor="#80A3F8" width="60"|Test 3
! bgcolor="#80A3F8" width="60"|Test 4
! bgcolor="#80A3F8" width="60"|Test 5
! bgcolor="#80A3F8" width="60"|Test 6
! bgcolor="#80A3F8" width="60"|Test 7
|- align = center
| bgcolor="#80A3F8"|0→R||<tt>( 0, 0)</tt>||<tt>(-1, 0)</tt>||<tt>(-1,+1)</tt>||<tt>( 0,-2)</tt>||<tt>(-1,-2)</tt>||||
|- align = center
| bgcolor="#80A3F8"|R→0||<tt>( 0, 0)</tt>||<tt>(+1, 0)</tt>||<tt>(+1,-1)</tt>||<tt>( 0,+2)</tt>||<tt>(+1,+2)</tt>||||
|- align = center
| bgcolor="#80A3F8"|0→L||<tt>( 0, 0)</tt>||<tt>(+1, 0)</tt>||<tt>(+1,+1)</tt>||<tt>( 0,-2)</tt>||<tt>(+1,-2)</tt>||<tt>(+1,-1)</tt>||<tt>( 0,+1)</tt>
|- align = center
| bgcolor="#80A3F8"|L→0||<tt>( 0, 0)</tt>||<tt>(-1, 0)</tt>||<tt>(-1,-1)</tt>||<tt>( 0,+2)</tt>||<tt>(-1,+2)</tt>||<tt>( 0,-1)</tt>||<tt>(-1,+1)</tt>
|- align = center
| bgcolor="#80A3F8"|R→2||<tt>( 0, 0)</tt>||<tt>(+1, 0)</tt>||<tt>(+1,-1)</tt>||<tt>(+1,+1)</tt>||<tt>( 0,-1)</tt>||<tt>( 0,+2)</tt>||<tt>(+1,+2)</tt>
|- align = center
| bgcolor="#80A3F8"|2→R||<tt>( 0, 0)</tt>||<tt>(-1, 0)</tt>||<tt>(-1,+1)</tt>||<tt>(+1, 0)</tt>||<tt>( 0,-2)</tt>||<tt>(-1,-2)</tt>||
|- align = center
| bgcolor="#80A3F8"|L→2||<tt>( 0, 0)</tt>||<tt>(-1, 0)</tt>||<tt>(-1,-1)</tt>||<tt>( 0,+2)</tt>||<tt>(-1,+2)</tt>||<tt>(-1,+1)</tt>||
|- align = center
| bgcolor="#80A3F8"|2→L||<tt>( 0, 0)</tt>||<tt>(+1, 0)</tt>||<tt>(+1,-1)</tt>||<tt>(+1,+1)</tt>||<tt>( 0,-2)</tt>||<tt>(+1,-2)</tt>||<tt>(+1,-1)</tt>
|- align = center
| bgcolor="#80A3F8"|0→2||<tt>( 0, 0)</tt>||<tt>(+1, 0)</tt>||<tt>( 0,-1)</tt>||<tt>( 0,+1)</tt>||||||
|- align = center
| bgcolor="#80A3F8"|2→0||<tt>( 0, 0)</tt>||<tt>(-1, 0)</tt>||<tt>( 0,+1)</tt>||<tt>( 0,-1)</tt>||||||
|- align = center
| bgcolor="#80A3F8"|L→R||<tt>( 0, 0)</tt>||<tt>(+1, 0)</tt>||<tt>( 0,-1)</tt>||<tt>(-1, 0)</tt>||||||
|- align = center
| bgcolor="#80A3F8"|R→L||<tt>( 0, 0)</tt>||<tt>(-1, 0)</tt>||<tt>( 0,+1)</tt>||<tt>(+1, 0)</tt>||||||
|}
=== F ===
{| border="1" cellspacing="0"
|+'''F Pentomino TRS Wall Kick Data'''
|- align = center
! width="45"|
! bgcolor="#80A3F8" width="60"|Test 1
! bgcolor="#80A3F8" width="60"|Test 2
! bgcolor="#80A3F8" width="60"|Test 3
! bgcolor="#80A3F8" width="60"|Test 4
! bgcolor="#80A3F8" width="60"|Test 5
! bgcolor="#80A3F8" width="60"|Test 6
! bgcolor="#80A3F8" width="60"|Test 7
|- align = center
| bgcolor="#80A3F8"|0→R||<tt>( 0, 0)</tt>||<tt>(-1, 0)</tt>||<tt>(+1, 0)</tt>||<tt>(-1,+1)</tt>||<tt>( 0,-2)</tt>||<tt>( 0,-3)</tt>||
|- align = center
| bgcolor="#80A3F8"|R→0||<tt>( 0, 0)</tt>||<tt>(+1, 0)</tt>||<tt>(+1,-1)</tt>||<tt>(-1, 0)</tt>||<tt>( 0,+2)</tt>||<tt>( 0,+3)</tt>||
|- align = center
| bgcolor="#80A3F8"|0→L||<tt>( 0, 0)</tt>||<tt>(+1, 0)</tt>||<tt>(+1,-1)</tt>||<tt>( 0,+1)</tt>||<tt>( 0,-2)</tt>||<tt>( 0,-3)</tt>||
|- align = center
| bgcolor="#80A3F8"|L→0||<tt>( 0, 0)</tt>||<tt>(-1,+1)</tt>||<tt>(+1, 0)</tt>||<tt>( 0,-1)</tt>||<tt>( 0,+2)</tt>||<tt>( 0,+3)</tt>||
|- align = center
| bgcolor="#80A3F8"|R→2||<tt>( 0, 0)</tt>||<tt>(+1, 0)</tt>||<tt>( 0,-1)</tt>||<tt>(-1, 0)</tt>||<tt>( 0,+2)</tt>||||
|- align = center
| bgcolor="#80A3F8"|2→R||<tt>( 0, 0)</tt>||<tt>(-1, 0)</tt>||<tt>( 0,+1)</tt>||<tt>(+1, 0)</tt>||<tt>( 0,-2)</tt>||||
|- align = center
| bgcolor="#80A3F8"|L→2||<tt>( 0, 0)</tt>||<tt>(-1, 0)</tt>||<tt>( 0,+1)</tt>||<tt>(-1,+1)</tt>||<tt>(+1, 0)</tt>||<tt>( 0,+2)</tt>||<tt>(-2, 0)</tt>
|- align = center
| bgcolor="#80A3F8"|2→L||<tt>( 0, 0)</tt>||<tt>(+1, 0)</tt>||<tt>(+1,-1)</tt>||<tt>( 0,-1)</tt>||<tt>(-1, 0)</tt>||<tt>( 0,-2)</tt>||<tt>(+2, 0)</tt>
|- align = center
| bgcolor="#80A3F8"|0→2||<tt>( 0, 0)</tt>||<tt>(+1, 0)</tt>||<tt>(-1, 0)</tt>||<tt>(-1,-1)</tt>||||||
|- align = center
| bgcolor="#80A3F8"|2→0||<tt>( 0, 0)</tt>||<tt>(-1, 0)</tt>||<tt>(+1, 0)</tt>||<tt>(+1,+1)</tt>||||||
|- align = center
| bgcolor="#80A3F8"|L→R||<tt>( 0, 0)</tt>||<tt>( 0,-1)</tt>||<tt>(-1,+1)</tt>||<tt>( 0,+1)</tt>||||||
|- align = center
| bgcolor="#80A3F8"|R→L||<tt>( 0, 0)</tt>||<tt>( 0,-1)</tt>||<tt>(+1,-1)</tt>||<tt>( 0,+1)</tt>||||||
|}
=== E ===
E pentomino uses mirrored F kicks.
{| border="1" cellspacing="0"
|+'''F Pentomino TRS Wall Kick Data'''
|- align = center
! width="45"|
! bgcolor="#80A3F8" width="60"|Test 1
! bgcolor="#80A3F8" width="60"|Test 2
! bgcolor="#80A3F8" width="60"|Test 3
! bgcolor="#80A3F8" width="60"|Test 4
! bgcolor="#80A3F8" width="60"|Test 5
! bgcolor="#80A3F8" width="60"|Test 6
! bgcolor="#80A3F8" width="60"|Test 7
|- align = center
| bgcolor="#80A3F8"|0→R||<tt>( 0, 0)</tt>||<tt>(-1, 0)</tt>||<tt>(-1,-1)</tt>||<tt>( 0,+1)</tt>||<tt>( 0,-2)</tt>||<tt>( 0,-3)</tt>||
|- align = center
| bgcolor="#80A3F8"|R→0||<tt>( 0, 0)</tt>||<tt>(+1,+1)</tt>||<tt>(-1, 0)</tt>||<tt>( 0,-1)</tt>||<tt>( 0,+2)</tt>||<tt>( 0,+3)</tt>||
|- align = center
| bgcolor="#80A3F8"|0→L||<tt>( 0, 0)</tt>||<tt>(+1, 0)</tt>||<tt>(-1, 0)</tt>||<tt>(+1,+1)</tt>||<tt>( 0,-2)</tt>||<tt>( 0,-3)</tt>||
|- align = center
| bgcolor="#80A3F8"|L→0||<tt>( 0, 0)</tt>||<tt>(-1, 0)</tt>||<tt>(-1,-1)</tt>||<tt>(+1, 0)</tt>||<tt>( 0,+2)</tt>||<tt>( 0,+3)</tt>||
|- align = center
| bgcolor="#80A3F8"|R→2||<tt>( 0, 0)</tt>||<tt>(+1, 0)</tt>||<tt>( 0,+1)</tt>||<tt>(+1,+1)</tt>||<tt>(-1, 0)</tt>||<tt>( 0,+2)</tt>||<tt>(+2, 0)</tt>
|- align = center
| bgcolor="#80A3F8"|2→R||<tt>( 0, 0)</tt>||<tt>(-1, 0)</tt>||<tt>(-1,-1)</tt>||<tt>( 0,-1)</tt>||<tt>(+1, 0)</tt>||<tt>( 0,-2)</tt>||<tt>(-2, 0)</tt>
|- align = center
| bgcolor="#80A3F8"|L→2||<tt>( 0, 0)</tt>||<tt>(-1, 0)</tt>||<tt>( 0,-1)</tt>||<tt>(+1, 0)</tt>||<tt>( 0,+2)</tt>||||
|- align = center
| bgcolor="#80A3F8"|2→L||<tt>( 0, 0)</tt>||<tt>(+1, 0)</tt>||<tt>( 0,+1)</tt>||<tt>(-1, 0)</tt>||<tt>( 0,-2)</tt>||||
|- align = center
| bgcolor="#80A3F8"|0→2||<tt>( 0, 0)</tt>||<tt>(-1, 0)</tt>||<tt>(+1, 0)</tt>||<tt>(+1,-1)</tt>||||||
|- align = center
| bgcolor="#80A3F8"|2→0||<tt>( 0, 0)</tt>||<tt>(+1, 0)</tt>||<tt>(-1, 0)</tt>||<tt>(-1,+1)</tt>||||||
|- align = center
| bgcolor="#80A3F8"|L→R||<tt>( 0, 0)</tt>||<tt>( 0,-1)</tt>||<tt>(-1,-1)</tt>||<tt>( 0,+1)</tt>||||||
|- align = center
| bgcolor="#80A3F8"|R→L||<tt>( 0, 0)</tt>||<tt>( 0,-1)</tt>||<tt>(+1,+1)</tt>||<tt>( 0,+1)</tt>||||||
|}
=== T5 ===
{| border="1" cellspacing="0"
|+'''T Pentomino TRS Wall Kick Data'''
|- align = center
! width="45"|
! bgcolor="#80A3F8" width="60"|Test 1
! bgcolor="#80A3F8" width="60"|Test 2
! bgcolor="#80A3F8" width="60"|Test 3
! bgcolor="#80A3F8" width="60"|Test 4
! bgcolor="#80A3F8" width="60"|Test 5
! bgcolor="#80A3F8" width="60"|Test 6
! bgcolor="#80A3F8" width="60"|Test 7
! bgcolor="#80A3F8" width="60"|Test 8
! bgcolor="#80A3F8" width="60"|Test 9
|- align = center
| bgcolor="#80A3F8"|0→R||<tt>( 0, 0)</tt>||<tt>( 0,-1)</tt>||<tt>(-1,-1)</tt>||<tt>(+1, 0)</tt>||<tt>(+1,+1)</tt>||<tt>( 0,-3)</tt>||<tt>(-1, 0)</tt>||<tt>( 0,+2)</tt>||<tt>(-1,+2)</tt>
|- align = center
| bgcolor="#80A3F8"|R→0||<tt>( 0, 0)</tt>||<tt>(+1, 0)</tt>||<tt>( 0,-1)</tt>||<tt>(-1,-1)</tt>||<tt>( 0,-2)</tt>||<tt>(-1,+1)</tt>||<tt>( 0,-3)</tt>||<tt>(+1,-2)</tt>||<tt>( 0,+1)</tt>
|- align = center
| bgcolor="#80A3F8"|0→L||<tt>( 0, 0)</tt>||<tt>( 0,-1)</tt>||<tt>(+1,-1)</tt>||<tt>(-1, 0)</tt>||<tt>(-1,+1)</tt>||<tt>( 0,-3)</tt>||<tt>(+1, 0)</tt>||<tt>( 0,+2)</tt>||<tt>(+1,+2)</tt>
|- align = center
| bgcolor="#80A3F8"|L→0||<tt>( 0, 0)</tt>||<tt>(-1, 0)</tt>||<tt>( 0,-1)</tt>||<tt>(+1,-1)</tt>||<tt>( 0,-2)</tt>||<tt>(+1,+1)</tt>||<tt>( 0,-3)</tt>||<tt>(-1,-2)</tt>||<tt>( 0,+1)</tt>
|- align = center
| bgcolor="#80A3F8"|R→2||<tt>( 0, 0)</tt>||<tt>(+1, 0)</tt>||<tt>(-1, 0)</tt>||<tt>( 0,-2)</tt>||<tt>( 0,-3)</tt>||<tt>( 0,+1)</tt>||<tt>(-1,+1)</tt>||||
|- align = center
| bgcolor="#80A3F8"|2→R||<tt>( 0, 0)</tt>||<tt>(+1,-1)</tt>||<tt>(-1, 0)</tt>||<tt>(+1, 0)</tt>||<tt>( 0,-1)</tt>||<tt>( 0,+2)</tt>||<tt>( 0,+3)</tt>||||
|- align = center
| bgcolor="#80A3F8"|L→2||<tt>( 0, 0)</tt>||<tt>(-1, 0)</tt>||<tt>(+1, 0)</tt>||<tt>( 0,-2)</tt>||<tt>( 0,-3)</tt>||<tt>( 0,+1)</tt>||<tt>(+1,+1)</tt>||||
|- align = center
| bgcolor="#80A3F8"|2→L||<tt>( 0, 0)</tt>||<tt>(-1,-1)</tt>||<tt>(+1, 0)</tt>||<tt>(-1, 0)</tt>||<tt>( 0,-1)</tt>||<tt>( 0,+2)</tt>||<tt>( 0,+3)</tt>||||
|- align = center
| bgcolor="#80A3F8"|0→2||<tt>( 0, 0)</tt>||<tt>( 0,-1)</tt>||<tt>( 0,+1)</tt>||<tt>( 0,+2)</tt>||||||||||
|- align = center
| bgcolor="#80A3F8"|2→0||<tt>( 0, 0)</tt>||<tt>( 0,-1)</tt>||<tt>( 0,+1)</tt>||<tt>( 0,-2)</tt>||||||||||
|- align = center
| bgcolor="#80A3F8"|L→R||<tt>( 0, 0)</tt>||<tt>(+1, 0)</tt>||<tt>(-1,+1)</tt>||<tt>(-2, 0)</tt>||||||||||
|- align = center
| bgcolor="#80A3F8"|R→L||<tt>( 0, 0)</tt>||<tt>(-1, 0)</tt>||<tt>(+1,+1)</tt>||<tt>(+2, 0)</tt>||||||||||
|}
=== U ===
{| border="1" cellspacing="0"
|+'''U Pentomino TRS Wall Kick Data'''
|- align = center
! width="45"|
! bgcolor="#80A3F8" width="60"|Test 1
! bgcolor="#80A3F8" width="60"|Test 2
! bgcolor="#80A3F8" width="60"|Test 3
! bgcolor="#80A3F8" width="60"|Test 4
! bgcolor="#80A3F8" width="60"|Test 5
|- align = center
| bgcolor="#80A3F8"|0→R||<tt>( 0, 0)</tt>||<tt>(-1, 0)</tt>||<tt>(-1,+1)</tt>||<tt>( 0,-2)</tt>||<tt>(-1,-2)</tt>
|- align = center
| bgcolor="#80A3F8"|R→0||<tt>( 0, 0)</tt>||<tt>(+1, 0)</tt>||<tt>(+1,-1)</tt>||<tt>( 0,+2)</tt>||<tt>(+1,+2)</tt>
|- align = center
| bgcolor="#80A3F8"|0→L||<tt>( 0, 0)</tt>||<tt>(+1, 0)</tt>||<tt>(+1,+1)</tt>||<tt>( 0,-2)</tt>||<tt>(+1,-2)</tt>
|- align = center
| bgcolor="#80A3F8"|L→0||<tt>( 0, 0)</tt>||<tt>(-1, 0)</tt>||<tt>(-1,-1)</tt>||<tt>( 0,-2)</tt>||<tt>(-1,+2)</tt>
|- align = center
| bgcolor="#80A3F8"|R→2||<tt>( 0, 0)</tt>||<tt>(+1, 0)</tt>||<tt>(+1,-1)</tt>||<tt>(+1,+1)</tt>||
|- align = center
| bgcolor="#80A3F8"|2→R||<tt>( 0, 0)</tt>||<tt>(-1,-1)</tt>||<tt>(-1,+1)</tt>||<tt>(-1,-1)</tt>||
|- align = center
| bgcolor="#80A3F8"|L→2||<tt>( 0, 0)</tt>||<tt>(-1, 0)</tt>||<tt>(-1,-1)</tt>||<tt>(-1,+1)</tt>||
|- align = center
| bgcolor="#80A3F8"|2→L||<tt>( 0, 0)</tt>||<tt>(+1,-1)</tt>||<tt>(+1,+1)</tt>||<tt>(+1,-1)</tt>||
|- align = center
| bgcolor="#80A3F8"|0→2||<tt>( 0, 0)</tt>||<tt>( 0,+1)</tt>||||||
|- align = center
| bgcolor="#80A3F8"|2→0||<tt>( 0, 0)</tt>||<tt>( 0,-1)</tt>||||||
|- align = center
| bgcolor="#80A3F8"|L→R||<tt>( 0, 0)</tt>||<tt>( 0,-1)</tt>||<tt>( 0,+1)</tt>||<tt>(+1, 0)</tt>||
|- align = center
| bgcolor="#80A3F8"|R→L||<tt>( 0, 0)</tt>||<tt>( 0,-1)</tt>||<tt>( 0,+1)</tt>||<tt>(-1, 0)</tt>||
|}
=== V ===
{| border="1" cellspacing="0"
|+'''V Pentomino TRS Wall Kick Data'''
|- align = center
! width="45"|
! bgcolor="#80A3F8" width="60"|Test 1
! bgcolor="#80A3F8" width="60"|Test 2
! bgcolor="#80A3F8" width="60"|Test 3
! bgcolor="#80A3F8" width="60"|Test 4
! bgcolor="#80A3F8" width="60"|Test 5
|- align = center
| bgcolor="#80A3F8"|0→R||<tt>( 0, 0)</tt>||<tt>( 0,+1)</tt>||<tt>(-1, 0)</tt>||<tt>( 0,-2)</tt>||<tt>(-1,-2)</tt>
|- align = center
| bgcolor="#80A3F8"|R→0||<tt>( 0, 0)</tt>||<tt>( 0,+1)</tt>||<tt>(+1, 0)</tt>||<tt>( 0,-2)</tt>||<tt>(+1,-2)</tt>
|- align = center
| bgcolor="#80A3F8"|0→L||<tt>( 0, 0)</tt>||<tt>( 0,-1)</tt>||<tt>( 0,+1)</tt>||<tt>( 0,+2)</tt>||
|- align = center
| bgcolor="#80A3F8"|L→0||<tt>( 0, 0)</tt>||<tt>( 0,-1)</tt>||<tt>( 0,+1)</tt>||<tt>( 0,-2)</tt>||
|- align = center
| bgcolor="#80A3F8"|R→2||<tt>( 0, 0)</tt>||<tt>( 0,-1)</tt>||<tt>( 0,+1)</tt>||<tt>( 0,+2)</tt>||
|- align = center
| bgcolor="#80A3F8"|2→R||<tt>( 0, 0)</tt>||<tt>( 0,-1)</tt>||<tt>( 0,+1)</tt>||<tt>( 0,-2)</tt>||
|- align = center
| bgcolor="#80A3F8"|L→2||<tt>( 0, 0)</tt>||<tt>(+1, 0)</tt>||<tt>(-1, 0)</tt>||||
|- align = center
| bgcolor="#80A3F8"|2→L||<tt>( 0, 0)</tt>||<tt>(-1, 0)</tt>||<tt>(+1, 0)</tt>||||
|- align = center
| bgcolor="#80A3F8"|0→2||<tt>( 0, 0)</tt>||<tt>(-1,+1)</tt>||<tt>(+1,-1)</tt>||||
|- align = center
| bgcolor="#80A3F8"|2→0||<tt>( 0, 0)</tt>||<tt>(+1,-1)</tt>||<tt>(-1,+1)</tt>||||
|- align = center
| bgcolor="#80A3F8"|L→R||<tt>( 0, 0)</tt>||<tt>(+1,+1)</tt>||<tt>(-1,-1)</tt>||||
|- align = center
| bgcolor="#80A3F8"|R→L||<tt>( 0, 0)</tt>||<tt>(-1,-1)</tt>||<tt>(+1,+1)</tt>||||
|}
=== W ===
{| border="1" cellspacing="0"
|+'''W Pentomino TRS Wall Kick Data'''
|- align = center
! width="45"|
! bgcolor="#80A3F8" width="60"|Test 1
! bgcolor="#80A3F8" width="60"|Test 2
! bgcolor="#80A3F8" width="60"|Test 3
! bgcolor="#80A3F8" width="60"|Test 4
! bgcolor="#80A3F8" width="60"|Test 5
! bgcolor="#80A3F8" width="60"|Test 6
! bgcolor="#80A3F8" width="60"|Test 7
! bgcolor="#80A3F8" width="60"|Test 8
! bgcolor="#80A3F8" width="60"|Test 9
! bgcolor="#80A3F8" width="60"|Test 10
|- align = center
| bgcolor="#80A3F8"|0→R||<tt>( 0, 0)</tt>||<tt>( 0,-1)</tt>||<tt>(-1, 0)</tt>||<tt>(+1, 0)</tt>||<tt>(+1,-1)</tt>||<tt>( 0,+2)</tt>||||||||
|- align = center
| bgcolor="#80A3F8"|R→0||<tt>( 0, 0)</tt>||<tt>( 0,-1)</tt>||<tt>(-1,-1)</tt>||<tt>( 0,+1)</tt>||<tt>( 0,-2)</tt>||<tt>(+1,-2)</tt>||<tt>( 0,+2)</tt>||||||
|- align = center
| bgcolor="#80A3F8"|0→L||<tt>( 0, 0)</tt>||<tt>(+1, 0)</tt>||<tt>(+1,+1)</tt>||<tt>( 0,-1)</tt>||<tt>( 0,-2)</tt>||<tt>( 0,-3)</tt>||<tt>(+1,-1)</tt>||<tt>( 0,+1)</tt>||<tt>( 0,+2)</tt>||<tt>( 0,+3)</tt>
|- align = center
| bgcolor="#80A3F8"|L→0||<tt>( 0, 0)</tt>||<tt>(-1, 0)</tt>||<tt>(-1,+1)</tt>||<tt>( 0,-1)</tt>||<tt>( 0,-2)</tt>||<tt>( 0,-3)</tt>||<tt>(-1,-1)</tt>||<tt>( 0,+1)</tt>||<tt>( 0,+2)</tt>||<tt>( 0,+3)</tt>
|- align = center
| bgcolor="#80A3F8"|R→2||<tt>( 0, 0)</tt>||<tt>(+1, 0)</tt>||<tt>( 0,-1)</tt>||<tt>(-2, 0)</tt>||<tt>(+1,+1)</tt>||<tt>(-1, 0)</tt>||<tt>( 0,+1)</tt>||<tt>(-1,-1)</tt>||||
|- align = center
| bgcolor="#80A3F8"|2→R||<tt>( 0, 0)</tt>||<tt>(-1, 0)</tt>||<tt>( 0,-1)</tt>||<tt>(+2, 0)</tt>||<tt>(-1,+1)</tt>||<tt>(+1, 0)</tt>||<tt>( 0,+1)</tt>||<tt>(+1,-1)</tt>||||
|- align = center
| bgcolor="#80A3F8"|L→2||<tt>( 0, 0)</tt>||<tt>( 0,-1)</tt>||<tt>(+1, 0)</tt>||<tt>( 0,+1)</tt>||<tt>(-1, 0)</tt>||<tt>(-1,-1)</tt>||<tt>( 0,+2)</tt>||||||
|- align = center
| bgcolor="#80A3F8"|2→L||<tt>( 0, 0)</tt>||<tt>( 0,-1)</tt>||<tt>(+1,-1)</tt>||<tt>( 0,+1)</tt>||<tt>( 0,-2)</tt>||<tt>(-1,-2)</tt>||<tt>( 0,+2)</tt>||||||
|- align = center
| bgcolor="#80A3F8"|0→2||<tt>( 0, 0)</tt>||<tt>( 0,-1)</tt>||<tt>(-1, 0)</tt>||||||||||||||
|- align = center
| bgcolor="#80A3F8"|2→0||<tt>( 0, 0)</tt>||<tt>( 0,+1)</tt>||<tt>(+1, 0)</tt>||||||||||||||
|- align = center
| bgcolor="#80A3F8"|L→R||<tt>( 0, 0)</tt>||<tt>( 0,+1)</tt>||<tt>(-1, 0)</tt>||||||||||||||
|- align = center
| bgcolor="#80A3F8"|R→L||<tt>( 0, 0)</tt>||<tt>( 0,-1)</tt>||<tt>(+1, 0)</tt>||||||||||||||
|}
=== X ===
X pentomino is special, because its first test is not <tt>(0, 0)</tt>. This allows for X-spins to exist.
{| border="1" cellspacing="0"
|+'''X Pentomino TRS Wall Kick Data'''
|- align = center
! width="45"|
! bgcolor="#80A3F8" width="60"|Test 1
! bgcolor="#80A3F8" width="60"|Test 2
! bgcolor="#80A3F8" width="60"|Test 3
! bgcolor="#80A3F8" width="60"|Test 4
! bgcolor="#80A3F8" width="60"|Test 5
|- align = center
| bgcolor="#80A3F8"|CW||<tt>(+1,-1)</tt>||<tt>(+1, 0)</tt>||<tt>(+1,+1)</tt>||<tt>(+1,-2)</tt>||<tt>(+1,+2)</tt>
|- align = center
| bgcolor="#80A3F8"|CCW||<tt>(-1,-1)</tt>||<tt>(-1, 0)</tt>||<tt>(-1,+1)</tt>||<tt>(-1,-2)</tt>||<tt>(-1,+2)</tt>
|- align = center
| bgcolor="#80A3F8"|180||<tt>( 0,-1)</tt>||<tt>( 0,-2)</tt>||<tt>( 0,+1)</tt>||<tt>( 0,-2)</tt>||<tt>( 0,+2)</tt>
|}
=== J5 ===
{| border="1" cellspacing="0"
|+'''J Pentomino TRS Wall Kick Data'''
|- align = center
! width="45"|
! bgcolor="#80A3F8" width="60"|Test 1
! bgcolor="#80A3F8" width="60"|Test 2
! bgcolor="#80A3F8" width="60"|Test 3
! bgcolor="#80A3F8" width="60"|Test 4
! bgcolor="#80A3F8" width="60"|Test 5
! bgcolor="#80A3F8" width="60"|Test 6
! bgcolor="#80A3F8" width="60"|Test 7
! bgcolor="#80A3F8" width="60"|Test 8
! bgcolor="#80A3F8" width="60"|Test 9
! bgcolor="#80A3F8" width="60"|Test 10
|- align = center
| bgcolor="#80A3F8"|0→R||<tt>( 0, 0)</tt>||<tt>(-1, 0)</tt>||<tt>(-1,+1)</tt>||<tt>( 0,-3)</tt>||<tt>(-1,+1)</tt>||<tt>(-1,+2)</tt>||<tt>( 0,+1)</tt>||||||
|- align = center
| bgcolor="#80A3F8"|R→0||<tt>( 0, 0)</tt>||<tt>(-1, 0)</tt>||<tt>(+1,-1)</tt>||<tt>( 0,+3)</tt>||<tt>(+1,-1)</tt>||<tt>(+1,-2)</tt>||<tt>( 0,+1)</tt>||||||
|- align = center
| bgcolor="#80A3F8"|0→L||<tt>( 0, 0)</tt>||<tt>( 0,-1)</tt>||<tt>(+1,-1)</tt>||<tt>(-1, 0)</tt>||<tt>(+1,+1)</tt>||<tt>( 0,-2)</tt>||<tt>(+1,-2)</tt>||<tt>( 0,-3)</tt>||<tt>(+1,-3)</tt>||<tt>(-1,+1)</tt>
|- align = center
| bgcolor="#80A3F8"|L→0||<tt>( 0, 0)</tt>||<tt>( 0,+1)</tt>||<tt>(-1,+1)</tt>||<tt>(+1, 0)</tt>||<tt>(-1,-1)</tt>||<tt>( 0,+2)</tt>||<tt>(-1,+2)</tt>||<tt>( 0,+3)</tt>||<tt>(-1,+3)</tt>||<tt>(+1,-1)</tt>
|- align = center
| bgcolor="#80A3F8"|R→2||<tt>( 0, 0)</tt>||<tt>(+1, 0)</tt>||<tt>(+1,-1)</tt>||<tt>( 0,-1)</tt>||<tt>(+1,-2)</tt>||<tt>( 0,-2)</tt>||<tt>(+1,+1)</tt>||<tt>(-1, 0)</tt>||<tt>( 0,+2)</tt>||<tt>(+1,+2)</tt>
|- align = center
| bgcolor="#80A3F8"|2→R||<tt>( 0, 0)</tt>||<tt>(-1, 0)</tt>||<tt>(-1,+1)</tt>||<tt>( 0,+1)</tt>||<tt>(-1,+2)</tt>||<tt>( 0,+2)</tt>||<tt>(-1,-1)</tt>||<tt>(+1, 0)</tt>||<tt>( 0,-2)</tt>||<tt>(-1,-2)</tt>
|- align = center
| bgcolor="#80A3F8"|L→2||<tt>( 0, 0)</tt>||<tt>(-1, 0)</tt>||<tt>(-1,+1)</tt>||<tt>(-1,-1)</tt>||<tt>(+1, 0)</tt>||<tt>( 0,+2)</tt>||<tt>(-1,+2)</tt>||<tt>( 0,-2)</tt>||||
|- align = center
| bgcolor="#80A3F8"|2→L||<tt>( 0, 0)</tt>||<tt>(+1, 0)</tt>||<tt>(+1,-1)</tt>||<tt>(+1,+1)</tt>||<tt>(-1, 0)</tt>||<tt>( 0,-2)</tt>||<tt>(+1,-2)</tt>||<tt>( 0,+2)</tt>||||
|- align = center
| bgcolor="#80A3F8"|0→2||<tt>( 0, 0)</tt>||<tt>( 0,-1)</tt>||<tt>(-1,-1)</tt>||<tt>(+1,-1)</tt>||<tt>(-1, 0)</tt>||<tt>(+2,-1)</tt>||||||||
|- align = center
| bgcolor="#80A3F8"|2→0||<tt>( 0, 0)</tt>||<tt>( 0,+1)</tt>||<tt>(+1,+1)</tt>||<tt>(-1,+1)</tt>||<tt>(+1, 0)</tt>||<tt>(-2,+1)</tt>||||||||
|- align = center
| bgcolor="#80A3F8"|L→R||<tt>( 0, 0)</tt>||<tt>(-1, 0)</tt>||<tt>(-1,-1)</tt>||<tt>( 0,+1)</tt>||<tt>(-1,-2)</tt>||||||||||
|- align = center
| bgcolor="#80A3F8"|R→L||<tt>( 0, 0)</tt>||<tt>(+1, 0)</tt>||<tt>(+1,+1)</tt>||<tt>( 0,-1)</tt>||<tt>(+1,+2)</tt>||||||||||
|}
=== L5 ===
L pentomino uses mirrored J5 kicks.
{| border="1" cellspacing="0"
|+'''L Pentomino TRS Wall Kick Data'''
|- align = center
! width="45"|
! bgcolor="#80A3F8" width="60"|Test 1
! bgcolor="#80A3F8" width="60"|Test 2
! bgcolor="#80A3F8" width="60"|Test 3
! bgcolor="#80A3F8" width="60"|Test 4
! bgcolor="#80A3F8" width="60"|Test 5
! bgcolor="#80A3F8" width="60"|Test 6
! bgcolor="#80A3F8" width="60"|Test 7
! bgcolor="#80A3F8" width="60"|Test 8
! bgcolor="#80A3F8" width="60"|Test 9
! bgcolor="#80A3F8" width="60"|Test 10
|- align = center
| bgcolor="#80A3F8"|0→R||<tt>( 0, 0)</tt>||<tt>( 0,-1)</tt>||<tt>(-1,-1)</tt>||<tt>(+1, 0)</tt>||<tt>(-1,+1)</tt>||<tt>( 0,-2)</tt>||<tt>(-1,-2)</tt>||<tt>( 0,-3)</tt>||<tt>(-1,-3)</tt>||<tt>(+1,+1)</tt>
|- align = center
| bgcolor="#80A3F8"|R→0||<tt>( 0, 0)</tt>||<tt>( 0,+1)</tt>||<tt>(+1,+1)</tt>||<tt>(-1, 0)</tt>||<tt>(+1,-1)</tt>||<tt>( 0,+2)</tt>||<tt>(+1,+2)</tt>||<tt>( 0,+3)</tt>||<tt>(+1,+3)</tt>||<tt>(-1,-1)</tt>
|- align = center
| bgcolor="#80A3F8"|0→L||<tt>( 0, 0)</tt>||<tt>(+1, 0)</tt>||<tt>(+1,+1)</tt>||<tt>( 0,-3)</tt>||<tt>(+1,+1)</tt>||<tt>(+1,+2)</tt>||<tt>( 0,+1)</tt>||||||
|- align = center
| bgcolor="#80A3F8"|L→0||<tt>( 0, 0)</tt>||<tt>(+1, 0)</tt>||<tt>(-1,-1)</tt>||<tt>( 0,+3)</tt>||<tt>(-1,-1)</tt>||<tt>(-1,-2)</tt>||<tt>( 0,+1)</tt>||||||
|- align = center
| bgcolor="#80A3F8"|R→2||<tt>( 0, 0)</tt>||<tt>(+1, 0)</tt>||<tt>(+1,+1)</tt>||<tt>(+1,-1)</tt>||<tt>(-1, 0)</tt>||<tt>( 0,+2)</tt>||<tt>(+1,+2)</tt>||<tt>( 0,-2)</tt>||||
|- align = center
| bgcolor="#80A3F8"|2→R||<tt>( 0, 0)</tt>||<tt>(-1, 0)</tt>||<tt>(-1,-1)</tt>||<tt>(-1,+1)</tt>||<tt>(+1, 0)</tt>||<tt>( 0,-2)</tt>||<tt>(-1,-2)</tt>||<tt>( 0,+2)</tt>||||
|- align = center
| bgcolor="#80A3F8"|L→2||<tt>( 0, 0)</tt>||<tt>(-1, 0)</tt>||<tt>(-1,-1)</tt>||<tt>( 0,-1)</tt>||<tt>(-1,-2)</tt>||<tt>( 0,-2)</tt>||<tt>(-1,+1)</tt>||<tt>(+1, 0)</tt>||<tt>( 0,+2)</tt>||<tt>(-1,+2)</tt>
|- align = center
| bgcolor="#80A3F8"|2→L||<tt>( 0, 0)</tt>||<tt>(+1, 0)</tt>||<tt>(+1,+1)</tt>||<tt>( 0,+1)</tt>||<tt>(+1,+2)</tt>||<tt>( 0,+2)</tt>||<tt>(+1,-1)</tt>||<tt>(-1, 0)</tt>||<tt>( 0,-2)</tt>||<tt>(+1,-2)</tt>
|- align = center
| bgcolor="#80A3F8"|0→2||<tt>( 0, 0)</tt>||<tt>( 0,-1)</tt>||<tt>(+1,-1)</tt>||<tt>(-1,-1)</tt>||<tt>(+1, 0)</tt>||<tt>(-2,-1)</tt>||||||||
|- align = center
| bgcolor="#80A3F8"|2→0||<tt>( 0, 0)</tt>||<tt>( 0,+1)</tt>||<tt>(-1,+1)</tt>||<tt>(+1,+1)</tt>||<tt>(-1, 0)</tt>||<tt>(+2,+1)</tt>||||||||
|- align = center
| bgcolor="#80A3F8"|L→R||<tt>( 0, 0)</tt>||<tt>(-1, 0)</tt>||<tt>(-1,+1)</tt>||<tt>( 0,-1)</tt>||<tt>(-1,+2)</tt>||||||||||
|- align = center
| bgcolor="#80A3F8"|R→L||<tt>( 0, 0)</tt>||<tt>(+1, 0)</tt>||<tt>(+1,-1)</tt>||<tt>( 0,+1)</tt>||<tt>(+1,-2)</tt>||||||||||
|}
=== R ===
{| border="1" cellspacing="0"
|+'''R Pentomino TRS Wall Kick Data'''
|- align = center
! width="45"|
! bgcolor="#80A3F8" width="60"|Test 1
! bgcolor="#80A3F8" width="60"|Test 2
! bgcolor="#80A3F8" width="60"|Test 3
! bgcolor="#80A3F8" width="60"|Test 4
! bgcolor="#80A3F8" width="60"|Test 5
! bgcolor="#80A3F8" width="60"|Test 6
! bgcolor="#80A3F8" width="60"|Test 7
! bgcolor="#80A3F8" width="60"|Test 8
! bgcolor="#80A3F8" width="60"|Test 9
! bgcolor="#80A3F8" width="60"|Test 10
! bgcolor="#80A3F8" width="60"|Test 11
! bgcolor="#80A3F8" width="60"|Test 12
|- align = center
| bgcolor="#80A3F8"|0→R||<tt>( 0, 0)</tt>||<tt>(-1, 0)</tt>||<tt>(-1,+1)</tt>||<tt>(+1, 0)</tt>||<tt>(-1,+2)</tt>||<tt>(-1,-1)</tt>||<tt>( 0,-3)</tt>||<tt>( 0,+1)</tt>||||||||
|- align = center
| bgcolor="#80A3F8"|R→0||<tt>( 0, 0)</tt>||<tt>(-1, 0)</tt>||<tt>(+1, 0)</tt>||<tt>(+1,-1)</tt>||<tt>(+1,-2)</tt>||<tt>(+1,+1)</tt>||<tt>( 0,+3)</tt>||<tt>( 0,+1)</tt>||||||||
|- align = center
| bgcolor="#80A3F8"|0→L||<tt>( 0, 0)</tt>||<tt>( 0,-1)</tt>||<tt>(+1, 0)</tt>||<tt>( 0,+1)</tt>||<tt>(+1,-1)</tt>||<tt>(-1, 0)</tt>||<tt>(+1,+1)</tt>||<tt>( 0,-2)</tt>||<tt>(+1,-2)</tt>||<tt>( 0,-3)</tt>||<tt>(+1,-3)</tt>||<tt>(-1,+1)</tt>
|- align = center
| bgcolor="#80A3F8"|L→0||<tt>( 0, 0)</tt>||<tt>( 0,-1)</tt>||<tt>(-1, 0)</tt>||<tt>( 0,+1)</tt>||<tt>(-1,+1)</tt>||<tt>(+1, 0)</tt>||<tt>(-1,-1)</tt>||<tt>( 0,+2)</tt>||<tt>(-1,+2)</tt>||<tt>( 0,+3)</tt>||<tt>(-1,+3)</tt>||<tt>(+1,-1)</tt>
|- align = center
| bgcolor="#80A3F8"|R→2||<tt>( 0, 0)</tt>||<tt>(+1, 0)</tt>||<tt>(+1,-1)</tt>||<tt>( 0,-1)</tt>||<tt>(+1,-2)</tt>||<tt>( 0,-2)</tt>||<tt>(+1,+1)</tt>||<tt>(-1, 0)</tt>||<tt>( 0,+2)</tt>||<tt>(+1,+2)</tt>||||
|- align = center
| bgcolor="#80A3F8"|2→R||<tt>( 0, 0)</tt>||<tt>(-1, 0)</tt>||<tt>(-1,+1)</tt>||<tt>( 0,+1)</tt>||<tt>(-1,+2)</tt>||<tt>( 0,+2)</tt>||<tt>(-1,-1)</tt>||<tt>(+1, 0)</tt>||<tt>( 0,-2)</tt>||<tt>(-1,-2)</tt>||||
|- align = center
| bgcolor="#80A3F8"|L→2||<tt>( 0, 0)</tt>||<tt>( 0,-1)</tt>||<tt>(-1, 0)</tt>||<tt>(-1,+1)</tt>||<tt>(-1,-1)</tt>||<tt>(+1, 0)</tt>||<tt>( 0,+2)</tt>||<tt>(-1,+2)</tt>||<tt>( 0,-2)</tt>||||||
|- align = center
| bgcolor="#80A3F8"|2→L||<tt>( 0, 0)</tt>||<tt>( 0,+1)</tt>||<tt>(+1, 0)</tt>||<tt>(+1,-1)</tt>||<tt>(+1,+1)</tt>||<tt>(-1, 0)</tt>||<tt>( 0,-2)</tt>||<tt>(+1,-2)</tt>||<tt>( 0,+2)</tt>||||||
|- align = center
| bgcolor="#80A3F8"|0→2||<tt>( 0, 0)</tt>||<tt>( 0,-1)</tt>||<tt>(+1,-1)</tt>||<tt>(-1, 0)</tt>||<tt>(+2,-1)</tt>||<tt>( 0,+1)</tt>||||||||||||
|- align = center
| bgcolor="#80A3F8"|2→0||<tt>( 0, 0)</tt>||<tt>( 0,+1)</tt>||<tt>(-1,+1)</tt>||<tt>(+1, 0)</tt>||<tt>(-2,+1)</tt>||<tt>( 0,-1)</tt>||||||||||||
|- align = center
| bgcolor="#80A3F8"|L→R||<tt>( 0, 0)</tt>||<tt>(-1, 0)</tt>||<tt>(-1,-1)</tt>||<tt>( 0,+1)</tt>||<tt>(-1,-2)</tt>||||||||||||||
|- align = center
| bgcolor="#80A3F8"|R→L||<tt>( 0, 0)</tt>||<tt>(+1, 0)</tt>||<tt>(+1,+1)</tt>||<tt>( 0,-1)</tt>||<tt>(+1,+2)</tt>||||||||||||||
|}
=== Y ===
Y pentomino uses mirrored R kicks.
{| border="1" cellspacing="0"
|+'''Y Pentomino TRS Wall Kick Data'''
|- align = center
! width="45"|
! bgcolor="#80A3F8" width="60"|Test 1
! bgcolor="#80A3F8" width="60"|Test 2
! bgcolor="#80A3F8" width="60"|Test 3
! bgcolor="#80A3F8" width="60"|Test 4
! bgcolor="#80A3F8" width="60"|Test 5
! bgcolor="#80A3F8" width="60"|Test 6
! bgcolor="#80A3F8" width="60"|Test 7
! bgcolor="#80A3F8" width="60"|Test 8
! bgcolor="#80A3F8" width="60"|Test 9
! bgcolor="#80A3F8" width="60"|Test 10
! bgcolor="#80A3F8" width="60"|Test 11
! bgcolor="#80A3F8" width="60"|Test 12
|- align = center
| bgcolor="#80A3F8"|0→R||<tt>( 0, 0)</tt>||<tt>( 0,-1)</tt>||<tt>(-1, 0)</tt>||<tt>( 0,+1)</tt>||<tt>(-1,-1)</tt>||<tt>(+1, 0)</tt>||<tt>(-1,+1)</tt>||<tt>( 0,-2)</tt>||<tt>(-1,-2)</tt>||<tt>( 0,-3)</tt>||<tt>(-1,-3)</tt>||<tt>(+1,+1)</tt>
|- align = center
| bgcolor="#80A3F8"|R→0||<tt>( 0, 0)</tt>||<tt>( 0,-1)</tt>||<tt>(+1, 0)</tt>||<tt>( 0,+1)</tt>||<tt>(+1,+1)</tt>||<tt>(-1, 0)</tt>||<tt>(+1,-1)</tt>||<tt>( 0,+2)</tt>||<tt>(+1,+2)</tt>||<tt>( 0,+3)</tt>||<tt>(+1,+3)</tt>||<tt>(-1,-1)</tt>
|- align = center
| bgcolor="#80A3F8"|0→L||<tt>( 0, 0)</tt>||<tt>(+1, 0)</tt>||<tt>(+1,+1)</tt>||<tt>(-1, 0)</tt>||<tt>(+1,+2)</tt>||<tt>(+1,-1)</tt>||<tt>( 0,-3)</tt>||<tt>( 0,+1)</tt>||||||||
|- align = center
| bgcolor="#80A3F8"|L→0||<tt>( 0, 0)</tt>||<tt>(+1, 0)</tt>||<tt>(-1, 0)</tt>||<tt>(-1,-1)</tt>||<tt>(-1,-2)</tt>||<tt>(-1,+1)</tt>||<tt>( 0,+3)</tt>||<tt>( 0,+1)</tt>||||||||
|- align = center
| bgcolor="#80A3F8"|R→2||<tt>( 0, 0)</tt>||<tt>( 0,-1)</tt>||<tt>(+1, 0)</tt>||<tt>(+1,+1)</tt>||<tt>(+1,-1)</tt>||<tt>(-1, 0)</tt>||<tt>( 0,+2)</tt>||<tt>(+1,+2)</tt>||<tt>( 0,-2)</tt>||||||
|- align = center
| bgcolor="#80A3F8"|2→R||<tt>( 0, 0)</tt>||<tt>( 0,+1)</tt>||<tt>(-1, 0)</tt>||<tt>(-1,-1)</tt>||<tt>(-1,+1)</tt>||<tt>(+1, 0)</tt>||<tt>( 0,-2)</tt>||<tt>(-1,-2)</tt>||<tt>( 0,+2)</tt>||||||
|- align = center
| bgcolor="#80A3F8"|L→2||<tt>( 0, 0)</tt>||<tt>(-1, 0)</tt>||<tt>(-1,-1)</tt>||<tt>( 0,-1)</tt>||<tt>(-1,-2)</tt>||<tt>( 0,-2)</tt>||<tt>(-1,+1)</tt>||<tt>(+1, 0)</tt>||<tt>( 0,+2)</tt>||<tt>(-1,+2)</tt>||||
|- align = center
| bgcolor="#80A3F8"|2→L||<tt>( 0, 0)</tt>||<tt>(+1, 0)</tt>||<tt>(+1,+1)</tt>||<tt>( 0,+1)</tt>||<tt>(+1,+2)</tt>||<tt>( 0,+2)</tt>||<tt>(+1,-1)</tt>||<tt>(-1, 0)</tt>||<tt>( 0,-2)</tt>||<tt>(+1,-2)</tt>||||
|- align = center
| bgcolor="#80A3F8"|0→2||<tt>( 0, 0)</tt>||<tt>( 0,-1)</tt>||<tt>(-1,-1)</tt>||<tt>(+1, 0)</tt>||<tt>(-2,-1)</tt>||<tt>( 0,+1)</tt>||||||||||||
|- align = center
| bgcolor="#80A3F8"|2→0||<tt>( 0, 0)</tt>||<tt>( 0,+1)</tt>||<tt>(+1,+1)</tt>||<tt>(-1, 0)</tt>||<tt>(+2,+1)</tt>||<tt>( 0,-1)</tt>||||||||||||
|- align = center
| bgcolor="#80A3F8"|L→R||<tt>( 0, 0)</tt>||<tt>(-1, 0)</tt>||<tt>(-1,+1)</tt>||<tt>( 0,-1)</tt>||<tt>(-1,+2)</tt>||||||||||||||
|- align = center
| bgcolor="#80A3F8"|R→L||<tt>( 0, 0)</tt>||<tt>(+1, 0)</tt>||<tt>(+1,-1)</tt>||<tt>( 0,+1)</tt>||<tt>(+1,-2)</tt>||||||||||||||
|}
=== N ===
{| border="1" cellspacing="0"
|+'''N Pentomino TRS Wall Kick Data'''
|- align = center
! width="45"|
! bgcolor="#80A3F8" width="60"|Test 1
! bgcolor="#80A3F8" width="60"|Test 2
! bgcolor="#80A3F8" width="60"|Test 3
! bgcolor="#80A3F8" width="60"|Test 4
! bgcolor="#80A3F8" width="60"|Test 5
! bgcolor="#80A3F8" width="60"|Test 6
! bgcolor="#80A3F8" width="60"|Test 7
! bgcolor="#80A3F8" width="60"|Test 8
! bgcolor="#80A3F8" width="60"|Test 9
! bgcolor="#80A3F8" width="60"|Test 10
! bgcolor="#80A3F8" width="60"|Test 11
|- align = center
| bgcolor="#80A3F8"|0→R||<tt>( 0, 0)</tt>||<tt>(-1, 0)</tt>||<tt>(-1,+1)</tt>||<tt>( 0,+1)</tt>||<tt>(+1, 0)</tt>||<tt>(+1,+1)</tt>||<tt>(-1,+2)</tt>||<tt>(-2, 0)</tt>||<tt>( 0,-2)</tt>||||
|- align = center
| bgcolor="#80A3F8"|R→0||<tt>( 0, 0)</tt>||<tt>(+1, 0)</tt>||<tt>(-1, 0)</tt>||<tt>( 0,-1)</tt>||<tt>(-1,-1)</tt>||<tt>(+1,-1)</tt>||<tt>(+1,-2)</tt>||<tt>(+2, 0)</tt>||<tt>( 0,+2)</tt>||||
|- align = center
| bgcolor="#80A3F8"|0→L||<tt>( 0, 0)</tt>||<tt>(-1, 0)</tt>||<tt>(+1,-1)</tt>||<tt>( 0,-2)</tt>||<tt>( 0,-3)</tt>||<tt>(+1, 0)</tt>||<tt>(+1,-2)</tt>||<tt>(+1,-3)</tt>||<tt>( 0,+1)</tt>||<tt>(-1,+1)</tt>||
|- align = center
| bgcolor="#80A3F8"|L→0||<tt>( 0, 0)</tt>||<tt>(-1, 0)</tt>||<tt>(+1,-1)</tt>||<tt>(+1,-2)</tt>||<tt>(+1, 0)</tt>||<tt>( 0,-2)</tt>||<tt>(+1,-3)</tt>||<tt>(-1,+2)</tt>||<tt>( 0,+3)</tt>||<tt>(-1,+3)</tt>||
|- align = center
| bgcolor="#80A3F8"|R→2||<tt>( 0, 0)</tt>||<tt>(-1, 0)</tt>||<tt>(+1,-1)</tt>||<tt>(-1,-1)</tt>||<tt>(+1,-2)</tt>||<tt>(+1, 0)</tt>||<tt>( 0,-2)</tt>||<tt>(+1,-3)</tt>||<tt>(-1,+2)</tt>||<tt>( 0,+3)</tt>||<tt>(-1,+3)</tt>
|- align = center
| bgcolor="#80A3F8"|2→R||<tt>( 0, 0)</tt>||<tt>(-1, 0)</tt>||<tt>(+1,-1)</tt>||<tt>(+1,+1)</tt>||<tt>( 0,-2)</tt>||<tt>( 0,-3)</tt>||<tt>(+1, 0)</tt>||<tt>(+1,-2)</tt>||<tt>(+1,-3)</tt>||<tt>( 0,+1)</tt>||<tt>(-1,+1)</tt>
|- align = center
| bgcolor="#80A3F8"|L→2||<tt>( 0, 0)</tt>||<tt>(-1, 0)</tt>||<tt>( 0,-1)</tt>||<tt>(-1,-2)</tt>||<tt>(+1,-1)</tt>||<tt>(+1, 0)</tt>||<tt>(+1,+1)</tt>||<tt>( 0,+2)</tt>||<tt>( 0,+3)</tt>||||
|- align = center
| bgcolor="#80A3F8"|2→L||<tt>( 0, 0)</tt>||<tt>( 0,-2)</tt>||<tt>( 0,-3)</tt>||<tt>(+1,+2)</tt>||<tt>(+1, 0)</tt>||<tt>( 0,+1)</tt>||<tt>(-1,+1)</tt>||<tt>( 0,-1)</tt>||<tt>( 0,+2)</tt>||||
|- align = center
| bgcolor="#80A3F8"|0→2||<tt>( 0, 0)</tt>||<tt>(-1, 0)</tt>||<tt>( 0,+2)</tt>||<tt>( 0,-1)</tt>||||||||||||||
|- align = center
| bgcolor="#80A3F8"|2→0||<tt>( 0, 0)</tt>||<tt>(+1, 0)</tt>||<tt>( 0,-2)</tt>||<tt>( 0,+1)</tt>||||||||||||||
|- align = center
| bgcolor="#80A3F8"|L→R||<tt>( 0, 0)</tt>||<tt>(-1, 0)</tt>||<tt>(-1,-1)</tt>||<tt>( 0,+1)</tt>||<tt>(+1,+2)</tt>||||||||||||
|- align = center
| bgcolor="#80A3F8"|R→L||<tt>( 0, 0)</tt>||<tt>(+1, 0)</tt>||<tt>(+1,+1)</tt>||<tt>( 0,-1)</tt>||<tt>(-1,-2)</tt>||||||||||||
|}
=== H ===
H pentomino uses mirrored N kicks.
{| border="1" cellspacing="0"
|+'''H Pentomino TRS Wall Kick Data'''
|- align = center
! width="45"|
! bgcolor="#80A3F8" width="60"|Test 1
! bgcolor="#80A3F8" width="60"|Test 2
! bgcolor="#80A3F8" width="60"|Test 3
! bgcolor="#80A3F8" width="60"|Test 4
! bgcolor="#80A3F8" width="60"|Test 5
! bgcolor="#80A3F8" width="60"|Test 6
! bgcolor="#80A3F8" width="60"|Test 7
! bgcolor="#80A3F8" width="60"|Test 8
! bgcolor="#80A3F8" width="60"|Test 9
! bgcolor="#80A3F8" width="60"|Test 10
! bgcolor="#80A3F8" width="60"|Test 11
|- align = center
| bgcolor="#80A3F8"|0→R||<tt>( 0, 0)</tt>||<tt>(+1, 0)</tt>||<tt>(-1,-1)</tt>||<tt>( 0,-2)</tt>||<tt>( 0,-3)</tt>||<tt>(-1, 0)</tt>||<tt>(-1,-2)</tt>||<tt>(-1,-3)</tt>||<tt>( 0,+1)</tt>||<tt>(+1,+1)</tt>||
|- align = center
| bgcolor="#80A3F8"|R→0||<tt>( 0, 0)</tt>||<tt>(+1, 0)</tt>||<tt>(-1,-1)</tt>||<tt>(-1,-2)</tt>||<tt>(-1, 0)</tt>||<tt>( 0,-2)</tt>||<tt>(-1,-3)</tt>||<tt>(+1,+2)</tt>||<tt>( 0,+3)</tt>||<tt>(+1,+3)</tt>||
|- align = center
| bgcolor="#80A3F8"|0→L||<tt>( 0, 0)</tt>||<tt>(+1, 0)</tt>||<tt>(+1,+1)</tt>||<tt>( 0,+1)</tt>||<tt>(-1, 0)</tt>||<tt>(-1,+1)</tt>||<tt>(+1,+2)</tt>||<tt>(+2, 0)</tt>||<tt>( 0,-2)</tt>||||
|- align = center
| bgcolor="#80A3F8"|L→0||<tt>( 0, 0)</tt>||<tt>(-1, 0)</tt>||<tt>(+1, 0)</tt>||<tt>( 0,-1)</tt>||<tt>(+1,-1)</tt>||<tt>(-1,-1)</tt>||<tt>(-1,-2)</tt>||<tt>(-2, 0)</tt>||<tt>( 0,+2)</tt>||||
|- align = center
| bgcolor="#80A3F8"|R→2||<tt>( 0, 0)</tt>||<tt>(+1, 0)</tt>||<tt>( 0,-1)</tt>||<tt>(+1,-2)</tt>||<tt>(-1,-1)</tt>||<tt>(-1, 0)</tt>||<tt>(-1,+1)</tt>||<tt>( 0,+2)</tt>||<tt>( 0,+3)</tt>||||
|- align = center
| bgcolor="#80A3F8"|2→R||<tt>( 0, 0)</tt>||<tt>( 0,-2)</tt>||<tt>( 0,-3)</tt>||<tt>(-1,+2)</tt>||<tt>(-1, 0)</tt>||<tt>( 0,+1)</tt>||<tt>(+1,+1)</tt>||<tt>( 0,-1)</tt>||<tt>( 0,+2)</tt>||||
|- align = center
| bgcolor="#80A3F8"|L→2||<tt>( 0, 0)</tt>||<tt>(+1, 0)</tt>||<tt>(-1,-1)</tt>||<tt>(+1,-1)</tt>||<tt>(-1,-2)</tt>||<tt>(-1, 0)</tt>||<tt>( 0,-2)</tt>||<tt>(-1,-3)</tt>||<tt>(+1,+2)</tt>||<tt>( 0,+3)</tt>||<tt>(+1,+3)</tt>
|- align = center
| bgcolor="#80A3F8"|2→L||<tt>( 0, 0)</tt>||<tt>(+1, 0)</tt>||<tt>(-1,-1)</tt>||<tt>(-1,+1)</tt>||<tt>( 0,-2)</tt>||<tt>( 0,-3)</tt>||<tt>(-1, 0)</tt>||<tt>(-1,-2)</tt>||<tt>(-1,-3)</tt>||<tt>( 0,+1)</tt>||<tt>(+1,+1)</tt>
|- align = center
| bgcolor="#80A3F8"|0→2||<tt>( 0, 0)</tt>||<tt>(+1, 0)</tt>||<tt>( 0,+2)</tt>||<tt>( 0,-1)</tt>||||||||||||||
|- align = center
| bgcolor="#80A3F8"|2→0||<tt>( 0, 0)</tt>||<tt>(-1, 0)</tt>||<tt>( 0,-2)</tt>||<tt>( 0,+1)</tt>||||||||||||||
|- align = center
| bgcolor="#80A3F8"|L→R||<tt>( 0, 0)</tt>||<tt>(-1, 0)</tt>||<tt>(-1,+1)</tt>||<tt>( 0,-1)</tt>||<tt>(+1,-2)</tt>||||||||||||
|- align = center
| bgcolor="#80A3F8"|R→L||<tt>( 0, 0)</tt>||<tt>(+1, 0)</tt>||<tt>(+1,-1)</tt>||<tt>( 0,+1)</tt>||<tt>(-1,+2)</tt>||||||||||||
|}
=== I5 ===
I pentomino is centrosymmetric, and therefore it does not have any 180-degree kicks.
{| border="1" cellspacing="0"
|+'''I Pentomino TRS Wall Kick Data'''
|- align = center
! width="45"|
! bgcolor="#80A3F8" width="60"|Test 1
! bgcolor="#80A3F8" width="60"|Test 2
! bgcolor="#80A3F8" width="60"|Test 3
! bgcolor="#80A3F8" width="60"|Test 4
! bgcolor="#80A3F8" width="60"|Test 5
! bgcolor="#80A3F8" width="60"|Test 6
! bgcolor="#80A3F8" width="60"|Test 7
! bgcolor="#80A3F8" width="60"|Test 8
! bgcolor="#80A3F8" width="60"|Test 9
! bgcolor="#80A3F8" width="60"|Test 10
! bgcolor="#80A3F8" width="60"|Test 11
! bgcolor="#80A3F8" width="60"|Test 12
! bgcolor="#80A3F8" width="60"|Test 13
! bgcolor="#80A3F8" width="60"|Test 14
! bgcolor="#80A3F8" width="60"|Test 15
! bgcolor="#80A3F8" width="60"|Test 16
! bgcolor="#80A3F8" width="60"|Test 17
! bgcolor="#80A3F8" width="60"|Test 18
! bgcolor="#80A3F8" width="60"|Test 19
! bgcolor="#80A3F8" width="60"|Test 20
! bgcolor="#80A3F8" width="60"|Test 21
|- align = center
| bgcolor="#80A3F8"|0→R||<tt>( 0, 0)</tt>||<tt>(+1,-1)</tt>||<tt>(+1, 0)</tt>||<tt>(+1,+1)</tt>||<tt>( 0,+1)</tt>||<tt>(-1,+1)</tt>||<tt>(-1, 0)</tt>||<tt>(-1,-1)</tt>||<tt>( 0,-1)</tt>||<tt>( 0,-2)</tt>||<tt>(-2,-1)</tt>||<tt>(-2,-2)</tt>||<tt>(+2, 0)</tt>||<tt>(+2,-1)</tt>||<tt>(+2,-2)</tt>||<tt>(+1,+2)</tt>||<tt>(+2,+2)</tt>||<tt>(-1,+2)</tt>||<tt>(-2,+2)</tt>||||
|- align = center
| bgcolor="#80A3F8"|R→0||<tt>( 0, 0)</tt>||<tt>(-1, 0)</tt>||<tt>(-1,-1)</tt>||<tt>( 0,-1)</tt>||<tt>(+1,-1)</tt>||<tt>(-2,-2)</tt>||<tt>(-2,-1)</tt>||<tt>(-2, 0)</tt>||<tt>(-1,-2)</tt>||<tt>( 0,-2)</tt>||<tt>(+1,-2)</tt>||<tt>(+2,-2)</tt>||<tt>(-1,+1)</tt>||<tt>(-2,+1)</tt>||<tt>(-2,+2)</tt>||<tt>(+1, 0)</tt>||<tt>(+2, 0)</tt>||<tt>(+2,-1)</tt>||<tt>( 0,+1)</tt>||<tt>(+1,-1)</tt>||<tt>(+2,-2)</tt>
|- align = center
| bgcolor="#80A3F8"|0→L||<tt>( 0, 0)</tt>||<tt>(-1,-1)</tt>||<tt>(-1, 0)</tt>||<tt>(-1,+1)</tt>||<tt>( 0,+1)</tt>||<tt>(+1,+1)</tt>||<tt>(+1, 0)</tt>||<tt>(+1,-1)</tt>||<tt>( 0,-1)</tt>||<tt>( 0,-2)</tt>||<tt>(+2,-1)</tt>||<tt>(+2,-2)</tt>||<tt>(-2, 0)</tt>||<tt>(-2,-1)</tt>||<tt>(-2,-2)</tt>||<tt>(-1,+2)</tt>||<tt>(-2,+2)</tt>||<tt>(+1,+2)</tt>||<tt>(+2,+2)</tt>||||
|- align = center
| bgcolor="#80A3F8"|L→0||<tt>( 0, 0)</tt>||<tt>(+1, 0)</tt>||<tt>(+1,-1)</tt>||<tt>( 0,-1)</tt>||<tt>(-1,-1)</tt>||<tt>(+2,-2)</tt>||<tt>(+2,-1)</tt>||<tt>(+2, 0)</tt>||<tt>(+1,-2)</tt>||<tt>( 0,-2)</tt>||<tt>(-1,-2)</tt>||<tt>(-2,-2)</tt>||<tt>(+1,+1)</tt>||<tt>(+2,+1)</tt>||<tt>(+2,+2)</tt>||<tt>(-1, 0)</tt>||<tt>(-2, 0)</tt>||<tt>(-2,-1)</tt>||<tt>( 0,+1)</tt>||<tt>(-1,-1)</tt>||<tt>(-2,-2)</tt>
|- align = center
| bgcolor="#80A3F8"|R→2||<tt>( 0, 0)</tt>||<tt>(+1, 0)</tt>||<tt>(+1,-1)</tt>||<tt>( 0,-1)</tt>||<tt>(-1,-1)</tt>||<tt>(+2,-2)</tt>||<tt>(+2,-1)</tt>||<tt>(+2, 0)</tt>||<tt>(+1,-2)</tt>||<tt>( 0,-2)</tt>||<tt>(-1,-2)</tt>||<tt>(-2,-2)</tt>||<tt>(+1,+1)</tt>||<tt>(+2,+1)</tt>||<tt>(+2,+2)</tt>||<tt>(-1, 0)</tt>||<tt>(-2, 0)</tt>||<tt>(-2,-1)</tt>||<tt>( 0,+1)</tt>||<tt>(-1,-1)</tt>||<tt>(-2,-2)</tt>
|- align = center
| bgcolor="#80A3F8"|2→R||<tt>( 0, 0)</tt>||<tt>(-1,-1)</tt>||<tt>(-1, 0)</tt>||<tt>(-1,+1)</tt>||<tt>( 0,+1)</tt>||<tt>(+1,+1)</tt>||<tt>(+1, 0)</tt>||<tt>(+1,-1)</tt>||<tt>( 0,-1)</tt>||<tt>( 0,-2)</tt>||<tt>(+2,-1)</tt>||<tt>(+2,-2)</tt>||<tt>(-2, 0)</tt>||<tt>(-2,-1)</tt>||<tt>(-2,-2)</tt>||<tt>(-1,+2)</tt>||<tt>(-2,+2)</tt>||<tt>(+1,+2)</tt>||<tt>(+2,+2)</tt>||||
|- align = center
| bgcolor="#80A3F8"|L→2||<tt>( 0, 0)</tt>||<tt>(-1, 0)</tt>||<tt>(-1,-1)</tt>||<tt>( 0,-1)</tt>||<tt>(+1,-1)</tt>||<tt>(-2,-2)</tt>||<tt>(-2,-1)</tt>||<tt>(-2, 0)</tt>||<tt>(-1,-2)</tt>||<tt>( 0,-2)</tt>||<tt>(+1,-2)</tt>||<tt>(+2,-2)</tt>||<tt>(-1,+1)</tt>||<tt>(-2,+1)</tt>||<tt>(-2,+2)</tt>||<tt>(+1, 0)</tt>||<tt>(+2, 0)</tt>||<tt>(+2,-1)</tt>||<tt>( 0,+1)</tt>||<tt>(+1,-1)</tt>||<tt>(+2,-2)</tt>
|- align = center
| bgcolor="#80A3F8"|2→L||<tt>( 0, 0)</tt>||<tt>(+1,-1)</tt>||<tt>(+1, 0)</tt>||<tt>(+1,+1)</tt>||<tt>( 0,+1)</tt>||<tt>(-1,+1)</tt>||<tt>(-1, 0)</tt>||<tt>(-1,-1)</tt>||<tt>( 0,-1)</tt>||<tt>( 0,-2)</tt>||<tt>(-2,-1)</tt>||<tt>(-2,-2)</tt>||<tt>(+2, 0)</tt>||<tt>(+2,-1)</tt>||<tt>(+2,-2)</tt>||<tt>(+1,+2)</tt>||<tt>(+2,+2)</tt>||<tt>(-1,+2)</tt>||<tt>(-2,+2)</tt>||||
|}
== Playfield test ==
== Playfield test ==
<playfield>
<playfield>

Latest revision as of 18:53, 22 June 2024

Techmino Rotation System is a Super Rotation System-based default rotation system of Techmino, that adds many useful kicks. TRS contains dedicated kicks for all of the 28 dominoes to pentominoes. Notable feature of Techmino is the presence of a mechanic that transforms O-pieces into different pieces or teleports them into holes in order to perform O-spins.

Tetrominoes

In the tables below, non-180-degree kicks that are not present in SRS are marked with light blue background.

Z

Z Tetromino TRS Wall Kick Data
Test 1 Test 2 Test 3 Test 4 Test 5 Test 6
0→R ( 0, 0) (-1, 0) (-1,+1) ( 0,-2) (-1,+2) ( 0,+1)
R→0 ( 0, 0) (+1, 0) (+1,-1) ( 0,+2) (+1,-2) ( 0,-1)
0→L ( 0, 0) (+1, 0) (+1,+1) ( 0,-2) (+1,-1) (+1,-2)
L→0 ( 0, 0) (-1, 0) (-1,-1) ( 0,+2) (-1,+2) ( 0,-1)
R→2 ( 0, 0) (+1, 0) (+1,-1) ( 0,+2) (+1,+2) (+1,+1)
2→R ( 0, 0) (-1, 0) (-1,+1) ( 0,-2) (-1,-2) (-1,-1)
L→2 ( 0, 0) (-1, 0) (-1,-1) ( 0,+2) (-1,+2) ( 0,-1)
2→L ( 0, 0) (+1, 0) (+1,+1) ( 0,-2) (+1,-2) ( 0,+1)
0→2 ( 0, 0) (+1, 0) (-1, 0) ( 0,-1) ( 0,+1)
2→0 ( 0, 0) (-1, 0) (+1, 0) ( 0,+1) ( 0,-1)
L→R ( 0, 0) ( 0,-1) ( 0,+1) ( 0,-2)
R→L ( 0, 0) ( 0,+1) ( 0,-1) ( 0,+2)

Example usages of additional kicks:

..........
..........
..ZZ......
..GCZ.....
GGGGGGGGG.
...Z......
..CZ......
..Z.......
..G.......
GGGGGGGGG.
In SRS, the Z piece can't be rotated clockwise in this position. TRS' 6th test allows the Z piece to rotate.

S

The S piece uses mirrored Z kicks.

S Tetromino TRS Wall Kick Data
Test 1 Test 2 Test 3 Test 4 Test 5 Test 6
0→R ( 0, 0) (-1, 0) (-1,+1) ( 0,-2) (-1,-1) (-1,-2)
R→0 ( 0, 0) (+1, 0) (+1,-1) ( 0,+2) (+1,+2) ( 0,-1)
0→L ( 0, 0) (+1, 0) (+1,+1) ( 0,-2) (+1,+2) ( 0,+1)
L→0 ( 0, 0) (-1, 0) (-1,-1) ( 0,+2) (-1,-2) ( 0,-1)
R→2 ( 0, 0) (+1, 0) (+1,-1) ( 0,+2) (+1,+2) ( 0,-1)
2→R ( 0, 0) (-1, 0) (-1,+1) ( 0,-2) (-1,-2) ( 0,+1)
L→2 ( 0, 0) (-1, 0) (-1,-1) ( 0,+2) (-1,+2) (-1,+1)
2→L ( 0, 0) (+1, 0) (+1,+1) ( 0,-2) (+1,-2) (+1,-1)
0→2 ( 0, 0) (-1, 0) (+1, 0) ( 0,-1) ( 0,+1)
2→0 ( 0, 0) (+1, 0) (-1, 0) ( 0,+1) ( 0,-1)
L→R ( 0, 0) ( 0,+1) ( 0,-1) ( 0,+2)
R→L ( 0, 0) ( 0,-1) ( 0,+1) ( 0,-2)

Example usages of additional kicks:

..........
..........
...SS.....
..SCG.....
GGGGGGGGG.
...S......
...SC.....
....S.....
....G.....
GGGGGGGGG.
In SRS, the S piece can't be rotated counterclockwise in this position. TRS' 6th test allows the S piece to rotate.

J

J Tetromino TRS Wall Kick Data
Test 1 Test 2 Test 3 Test 4 Test 5 Test 6 Test 7 Test 8
0→R ( 0, 0) (-1, 0) (-1,+1) ( 0,-2) (+1,+1) ( 0,+1) ( 0,-1)
R→0 ( 0, 0) (+1, 0) (+1,-1) ( 0,+2) (-1,-1) ( 0,-1) ( 0,+1)
0→L ( 0, 0) (+1, 0) (+1,+1) ( 0,-2) (+1,-2) (+1,-1) ( 0,+1)
L→0 ( 0, 0) (-1, 0) (-1,-1) ( 0,+2) (-1,+2) ( 0,-1) (-1,+1)
R→2 ( 0, 0) (+1, 0) (+1,-1) (+1,+1) (-1, 0) ( 0,-1) ( 0,+2) (+1,+2)
2→R ( 0, 0) (-1, 0) (-1,+1) (-1,-1) (+1, 0) ( 0,+1) ( 0,-2) (-1,-2)
L→2 ( 0, 0) (-1, 0) (-1,-1) (+1, 0) ( 0,+2) (-1,+2) (-1,+1)
2→L ( 0, 0) (+1, 0) (+1,-1) (-1, 0) (+1,+1) ( 0,-2) (+1,-2)
0→2 ( 0, 0) (-1, 0) (+1, 0) ( 0,-1) ( 0,+1)
2→0 ( 0, 0) (+1, 0) (-1, 0) ( 0,+1) ( 0,-1)
L→R ( 0, 0) ( 0,-1) ( 0,+1) (+1, 0)
R→L ( 0, 0) ( 0,+1) ( 0,-1) (-1, 0)

Example usages of additional kicks:

..........
..........
.......JCJ
GGGGGGGGGJ
GGGGGGGG..
..........
..........
.........J
GGGGGGGGGC
GGGGGGGGJJ
"Goodspin"

L

The L piece uses mirrored J kicks.

L Tetromino TRS Wall Kick Data
Test 1 Test 2 Test 3 Test 4 Test 5 Test 6 Test 7 Test 8
0→R ( 0, 0) (-1, 0) (-1,+1) ( 0,-2) (-1,-2) (-1,-1) ( 0,+1)
R→0 ( 0, 0) (+1, 0) (+1,-1) ( 0,+2) (+1,+2) ( 0,-1) (+1,+1)
0→L ( 0, 0) (+1, 0) (+1,+1) ( 0,-2) (-1,+1) ( 0,+1) ( 0,-1)
L→0 ( 0, 0) (-1, 0) (-1,-1) ( 0,+2) (+1,-1) ( 0,-1) ( 0,+1)
R→2 ( 0, 0) (+1, 0) (+1,-1) (-1, 0) ( 0,+2) (+1,+2) (+1,+1)
2→R ( 0, 0) (-1, 0) (-1,-1) (+1, 0) (-1,+1) ( 0,-2) (-1,-2)
L→2 ( 0, 0) (-1, 0) (-1,-1) (-1,+1) (+1, 0) ( 0,-1) ( 0,+2) (-1,+2)
2→L ( 0, 0) (+1, 0) (+1,+1) (+1,-1) (-1, 0) ( 0,+1) ( 0,-2) (+1,-2)
0→2 ( 0, 0) (+1, 0) (-1, 0) ( 0,-1) ( 0,+1)
2→0 ( 0, 0) (-1, 0) (+1, 0) ( 0,+1) ( 0,-1)
L→R ( 0, 0) ( 0,+1) ( 0,-1) (+1, 0)
R→L ( 0, 0) ( 0,-1) ( 0,+1) (-1, 0)

Example usages of additional kicks:

..........
..........
LCL.......
LGGGGGGGGG
..GGGGGGGG
..........
..........
L.........
CGGGGGGGGG
LLGGGGGGGG
"Goodspin"

T

T Tetromino TRS Wall Kick Data
Test 1 Test 2 Test 3 Test 4 Test 5 Test 6 Test 7 Test 8
0→R ( 0, 0) (-1, 0) (-1,+1) ( 0,-2) (-1,-2) ( 0,+1)
R→0 ( 0, 0) (+1, 0) (+1,-1) ( 0,+2) (+1,+2) ( 0,+1) ( 0,-1)
0→L ( 0, 0) (+1, 0) (+1,+1) ( 0,-2) (+1,-2) ( 0,+1)
L→0 ( 0, 0) (-1, 0) (-1,-1) ( 0,+2) (-1,+2) ( 0,+1) ( 0,-1)
R→2 ( 0, 0) (+1, 0) (+1,-1) ( 0,-1) (-1,-1) ( 0,+2) (+1,+2) (+1,+1)
2→R ( 0, 0) (-1, 0) ( 0,-2) (-1,-2) (-1,-1) ( 0,-1) (+1,+1)
L→2 ( 0, 0) (-1, 0) (-1,-1) ( 0,-1) (+1,-1) ( 0,+2) (-1,+2) (-1,+1)
2→L ( 0, 0) (+1, 0) ( 0,-2) (+1,-2) (+1,-1) ( 0,-1) (-1,+1)
0→2 ( 0, 0) (-1, 0) (+1, 0) ( 0,+1)
2→0 ( 0, 0) (+1, 0) (-1, 0) ( 0,-1)
L→R ( 0, 0) ( 0,-1) ( 0,+1) (+1, 0) ( 0,-2) ( 0,+2)
R→L ( 0, 0) ( 0,-1) ( 0,+1) (-1, 0) ( 0,-2) ( 0,+2)

Examples of additional kicks:

..........
...T......
GGGCTGGGGG
G..TGGGGGG
GG.GGGGGGG
..........
..........
GGG..GGGGG
GTCTGGGGGG
GGTGGGGGGG
"Wrong" T-spin

O

TODO: Explain how O-spins work

I

The yellow background highlights kicks reordered compared to SRS.

I Tetromino TRS Wall Kick Data
Test 1 Test 2 Test 3 Test 4 Test 5 Test 6
0→R ( 0, 0) ( 0,+1) (+1, 0) (-2, 0) (-2,-1) (+1,+2)
R→0 ( 0, 0) (+2, 0) (-1, 0) (-1,-2) (+2,+1) ( 0,+1)
0→L ( 0, 0) ( 0,+1) (-1, 0) (+2, 0) (+2,-1) (-1,+2)
L→0 ( 0, 0) (-2, 0) (+1, 0) (+1,-2) (-2,+1) ( 0,+1)
R→2 ( 0, 0) (-1, 0) (+2, 0) (+2,-1) ( 0,-1) (-1,+2)
2→R ( 0, 0) (-2, 0) (+1, 0) (+1,-2) (-2,+1) ( 0,+1)
L→2 ( 0, 0) (+1, 0) (-2, 0) (-2,-1) ( 0,-1) (+1,+2)
2→L ( 0, 0) (+2, 0) (-1, 0) (-1,-2) (+2,+1) ( 0,+1)
0→2 ( 0, 0) (-1, 0) (+1, 0) ( 0,-1) ( 0,+1)
2→0 ( 0, 0) (+1, 0) (-1, 0) ( 0,+1) ( 0,-1)
L→R ( 0, 0) ( 0,-1) (-1, 0) (+1, 0) ( 0,+1)
R→L ( 0, 0) ( 0,-1) (+1, 0) (-1, 0) ( 0,+1)

Thanks to these changes, I kicks are now symmetric about the y-axis when rotating from or to a horizontal orientation.

..........
----......
.GG.GGGGGG
.GG.GGGGGG
IGGGGGGGGG
IGGGGGGGGG
IGGGGGGGGG
IGGGGGGGGG
From the dotted position, it is possible to clear 4 lines with both SRS and TRS by rotating clockwise.
..........
......----
GGGGGG.GG.
GGGGGG.GG.
GGGGGGGGGI
GGGGGGGGGI
GGGGGGGGGI
GGGGGGGGGI
In the symmetric position, only TRS allows the clearing of 4 lines by rotating counter-clockwise.
......I...
......I---
GGGGGGIGG.
GGGGGGIGG.
GGGGGGGGG.
GGGGGGGGG.
GGGGGGGGG.
GGGGGGGGG.
TRS also allows for this position to be achieved by rotating clockwise. However, with SRS, this is the only position achievable, regardless of which direction the player rotates.

Examples of additional kicks:

..........
...I......
GG.IGGGGGG
GG.IGGGGGG
G..I.GGGGG
..........
..........
GG..GGGGGG
GG..GGGGGG
GIIIIGGGGG
I-piece is rotated clockwise Rotate clockwise

Pentominoes

Z5

Z pentomino is centrosymmetric, and therefore it does not have any 180-degree kicks.

Z Pentomino TRS Wall Kick Data
Test 1 Test 2 Test 3 Test 4 Test 5 Test 6 Test 7 Test 8 Test 9
0→R ( 0, 0) ( 0,+1) (+1,+1) (-1, 0) ( 0,-3) ( 0,+2) ( 0,-2) ( 0,+3) (-1,+2)
R→0 ( 0, 0) ( 0,-1) (-1,-1) (+1, 0) ( 0,-3) ( 0,+2) ( 0,-2) ( 0,+3) (+1,-2)
0→L ( 0, 0) (+1, 0) ( 0,-3) ( 0,-1) ( 0,+1) ( 0,-2) ( 0,+2) ( 0,+3) (+1,+2)
L→0 ( 0, 0) (-1, 0) ( 0,-1) ( 0,+1) ( 0,-2) ( 0,-3) ( 0,+2) ( 0,+3) (-1,-2)
R→2 ( 0, 0) (-1, 0) ( 0,-1) ( 0,+1) ( 0,-2) ( 0,-3) ( 0,+2) ( 0,+3) (-1,-2)
2→R ( 0, 0) (+1, 0) ( 0,-3) ( 0,-1) ( 0,+1) ( 0,-2) ( 0,+2) ( 0,+3) (+1,+2)
L→2 ( 0, 0) ( 0,-1) (-1,-1) (+1, 0) ( 0,-3) ( 0,+2) ( 0,-2) ( 0,+3) (+1,-2)
2→L ( 0, 0) ( 0,+1) (+1,+1) (-1, 0) ( 0,-3) ( 0,+2) ( 0,-2) ( 0,+3) (-1,+2)

S5

S pentomino is centrosymmetric, and therefore it does not have any 180-degree kicks. S pentomino uses mirrored Z5 kicks.

S Pentomino TRS Wall Kick Data
Test 1 Test 2 Test 3 Test 4 Test 5 Test 6 Test 7 Test 8 Test 9
0→R ( 0, 0) (-1, 0) ( 0,-3) ( 0,-1) ( 0,+1) ( 0,-2) ( 0,+2) ( 0,+3) (-1,+2)
R→0 ( 0, 0) (+1, 0) ( 0,-1) ( 0,+1) ( 0,-2) ( 0,-3) ( 0,+2) ( 0,+3) (+1,-2)
0→L ( 0, 0) ( 0,+1) (-1,+1) (+1, 0) ( 0,-3) ( 0,+2) ( 0,-2) ( 0,+3) (+1,+2)
L→0 ( 0, 0) ( 0,-1) (+1,-1) (-1, 0) ( 0,-3) ( 0,+2) ( 0,-2) ( 0,+3) (-1,-2)
R→2 ( 0, 0) ( 0,-1) (+1,-1) (-1, 0) ( 0,-3) ( 0,+2) ( 0,-2) ( 0,+3) (-1,-2)
2→R ( 0, 0) ( 0,+1) (-1,+1) (+1, 0) ( 0,-3) ( 0,+2) ( 0,-2) ( 0,+3) (+1,+2)
L→2 ( 0, 0) (+1, 0) ( 0,-1) ( 0,+1) ( 0,-2) ( 0,-3) ( 0,+2) ( 0,+3) (+1,-2)
2→L ( 0, 0) (-1, 0) ( 0,-3) ( 0,-1) ( 0,+1) ( 0,-2) ( 0,+2) ( 0,+3) (-1,+2)

P

P Pentomino TRS Wall Kick Data
Test 1 Test 2 Test 3 Test 4 Test 5 Test 6 Test 7
0→R ( 0, 0) (-1, 0) (-1,+1) ( 0,-2) (-1,-2) (-1,-1) ( 0,+1)
R→0 ( 0, 0) (+1, 0) (+1,-1) ( 0,+2) (+1,+2) ( 0,-1) (+1,+1)
0→L ( 0, 0) (+1, 0) (+1,+1) ( 0,-2) (+1,-2)
L→0 ( 0, 0) (-1, 0) (-1,-1) ( 0,+2) (-1,+2)
R→2 ( 0, 0) (+1, 0) (+1,-1) ( 0,+2) (+1,+2) (+1,+1)
2→R ( 0, 0) (-1, 0) (-1,-1) (-1,+1) ( 0,-2) (-1,-2) (-1,-1)
L→2 ( 0, 0) (-1, 0) (-1,-1) (-1,+1) ( 0,-1) ( 0,+2) (-1,+2)
2→L ( 0, 0) (+1, 0) (+1,+1) (-1, 0) ( 0,-2) (+1,-2)
0→2 ( 0, 0) (-1, 0) ( 0,-1) ( 0,+1)
2→0 ( 0, 0) (+1, 0) ( 0,+1) ( 0,-1)
L→R ( 0, 0) (+1, 0) ( 0,+1) (-1, 0)
R→L ( 0, 0) (-1, 0) ( 0,-1) (+1, 0)

Q

Q pentomino uses mirrored P kicks.

Q Pentomino TRS Wall Kick Data
Test 1 Test 2 Test 3 Test 4 Test 5 Test 6 Test 7
0→R ( 0, 0) (-1, 0) (-1,+1) ( 0,-2) (-1,-2)
R→0 ( 0, 0) (+1, 0) (+1,-1) ( 0,+2) (+1,+2)
0→L ( 0, 0) (+1, 0) (+1,+1) ( 0,-2) (+1,-2) (+1,-1) ( 0,+1)
L→0 ( 0, 0) (-1, 0) (-1,-1) ( 0,+2) (-1,+2) ( 0,-1) (-1,+1)
R→2 ( 0, 0) (+1, 0) (+1,-1) (+1,+1) ( 0,-1) ( 0,+2) (+1,+2)
2→R ( 0, 0) (-1, 0) (-1,+1) (+1, 0) ( 0,-2) (-1,-2)
L→2 ( 0, 0) (-1, 0) (-1,-1) ( 0,+2) (-1,+2) (-1,+1)
2→L ( 0, 0) (+1, 0) (+1,-1) (+1,+1) ( 0,-2) (+1,-2) (+1,-1)
0→2 ( 0, 0) (+1, 0) ( 0,-1) ( 0,+1)
2→0 ( 0, 0) (-1, 0) ( 0,+1) ( 0,-1)
L→R ( 0, 0) (+1, 0) ( 0,-1) (-1, 0)
R→L ( 0, 0) (-1, 0) ( 0,+1) (+1, 0)

F

F Pentomino TRS Wall Kick Data
Test 1 Test 2 Test 3 Test 4 Test 5 Test 6 Test 7
0→R ( 0, 0) (-1, 0) (+1, 0) (-1,+1) ( 0,-2) ( 0,-3)
R→0 ( 0, 0) (+1, 0) (+1,-1) (-1, 0) ( 0,+2) ( 0,+3)
0→L ( 0, 0) (+1, 0) (+1,-1) ( 0,+1) ( 0,-2) ( 0,-3)
L→0 ( 0, 0) (-1,+1) (+1, 0) ( 0,-1) ( 0,+2) ( 0,+3)
R→2 ( 0, 0) (+1, 0) ( 0,-1) (-1, 0) ( 0,+2)
2→R ( 0, 0) (-1, 0) ( 0,+1) (+1, 0) ( 0,-2)
L→2 ( 0, 0) (-1, 0) ( 0,+1) (-1,+1) (+1, 0) ( 0,+2) (-2, 0)
2→L ( 0, 0) (+1, 0) (+1,-1) ( 0,-1) (-1, 0) ( 0,-2) (+2, 0)
0→2 ( 0, 0) (+1, 0) (-1, 0) (-1,-1)
2→0 ( 0, 0) (-1, 0) (+1, 0) (+1,+1)
L→R ( 0, 0) ( 0,-1) (-1,+1) ( 0,+1)
R→L ( 0, 0) ( 0,-1) (+1,-1) ( 0,+1)

E

E pentomino uses mirrored F kicks.

F Pentomino TRS Wall Kick Data
Test 1 Test 2 Test 3 Test 4 Test 5 Test 6 Test 7
0→R ( 0, 0) (-1, 0) (-1,-1) ( 0,+1) ( 0,-2) ( 0,-3)
R→0 ( 0, 0) (+1,+1) (-1, 0) ( 0,-1) ( 0,+2) ( 0,+3)
0→L ( 0, 0) (+1, 0) (-1, 0) (+1,+1) ( 0,-2) ( 0,-3)
L→0 ( 0, 0) (-1, 0) (-1,-1) (+1, 0) ( 0,+2) ( 0,+3)
R→2 ( 0, 0) (+1, 0) ( 0,+1) (+1,+1) (-1, 0) ( 0,+2) (+2, 0)
2→R ( 0, 0) (-1, 0) (-1,-1) ( 0,-1) (+1, 0) ( 0,-2) (-2, 0)
L→2 ( 0, 0) (-1, 0) ( 0,-1) (+1, 0) ( 0,+2)
2→L ( 0, 0) (+1, 0) ( 0,+1) (-1, 0) ( 0,-2)
0→2 ( 0, 0) (-1, 0) (+1, 0) (+1,-1)
2→0 ( 0, 0) (+1, 0) (-1, 0) (-1,+1)
L→R ( 0, 0) ( 0,-1) (-1,-1) ( 0,+1)
R→L ( 0, 0) ( 0,-1) (+1,+1) ( 0,+1)

T5

T Pentomino TRS Wall Kick Data
Test 1 Test 2 Test 3 Test 4 Test 5 Test 6 Test 7 Test 8 Test 9
0→R ( 0, 0) ( 0,-1) (-1,-1) (+1, 0) (+1,+1) ( 0,-3) (-1, 0) ( 0,+2) (-1,+2)
R→0 ( 0, 0) (+1, 0) ( 0,-1) (-1,-1) ( 0,-2) (-1,+1) ( 0,-3) (+1,-2) ( 0,+1)
0→L ( 0, 0) ( 0,-1) (+1,-1) (-1, 0) (-1,+1) ( 0,-3) (+1, 0) ( 0,+2) (+1,+2)
L→0 ( 0, 0) (-1, 0) ( 0,-1) (+1,-1) ( 0,-2) (+1,+1) ( 0,-3) (-1,-2) ( 0,+1)
R→2 ( 0, 0) (+1, 0) (-1, 0) ( 0,-2) ( 0,-3) ( 0,+1) (-1,+1)
2→R ( 0, 0) (+1,-1) (-1, 0) (+1, 0) ( 0,-1) ( 0,+2) ( 0,+3)
L→2 ( 0, 0) (-1, 0) (+1, 0) ( 0,-2) ( 0,-3) ( 0,+1) (+1,+1)
2→L ( 0, 0) (-1,-1) (+1, 0) (-1, 0) ( 0,-1) ( 0,+2) ( 0,+3)
0→2 ( 0, 0) ( 0,-1) ( 0,+1) ( 0,+2)
2→0 ( 0, 0) ( 0,-1) ( 0,+1) ( 0,-2)
L→R ( 0, 0) (+1, 0) (-1,+1) (-2, 0)
R→L ( 0, 0) (-1, 0) (+1,+1) (+2, 0)

U

U Pentomino TRS Wall Kick Data
Test 1 Test 2 Test 3 Test 4 Test 5
0→R ( 0, 0) (-1, 0) (-1,+1) ( 0,-2) (-1,-2)
R→0 ( 0, 0) (+1, 0) (+1,-1) ( 0,+2) (+1,+2)
0→L ( 0, 0) (+1, 0) (+1,+1) ( 0,-2) (+1,-2)
L→0 ( 0, 0) (-1, 0) (-1,-1) ( 0,-2) (-1,+2)
R→2 ( 0, 0) (+1, 0) (+1,-1) (+1,+1)
2→R ( 0, 0) (-1,-1) (-1,+1) (-1,-1)
L→2 ( 0, 0) (-1, 0) (-1,-1) (-1,+1)
2→L ( 0, 0) (+1,-1) (+1,+1) (+1,-1)
0→2 ( 0, 0) ( 0,+1)
2→0 ( 0, 0) ( 0,-1)
L→R ( 0, 0) ( 0,-1) ( 0,+1) (+1, 0)
R→L ( 0, 0) ( 0,-1) ( 0,+1) (-1, 0)

V

V Pentomino TRS Wall Kick Data
Test 1 Test 2 Test 3 Test 4 Test 5
0→R ( 0, 0) ( 0,+1) (-1, 0) ( 0,-2) (-1,-2)
R→0 ( 0, 0) ( 0,+1) (+1, 0) ( 0,-2) (+1,-2)
0→L ( 0, 0) ( 0,-1) ( 0,+1) ( 0,+2)
L→0 ( 0, 0) ( 0,-1) ( 0,+1) ( 0,-2)
R→2 ( 0, 0) ( 0,-1) ( 0,+1) ( 0,+2)
2→R ( 0, 0) ( 0,-1) ( 0,+1) ( 0,-2)
L→2 ( 0, 0) (+1, 0) (-1, 0)
2→L ( 0, 0) (-1, 0) (+1, 0)
0→2 ( 0, 0) (-1,+1) (+1,-1)
2→0 ( 0, 0) (+1,-1) (-1,+1)
L→R ( 0, 0) (+1,+1) (-1,-1)
R→L ( 0, 0) (-1,-1) (+1,+1)

W

W Pentomino TRS Wall Kick Data
Test 1 Test 2 Test 3 Test 4 Test 5 Test 6 Test 7 Test 8 Test 9 Test 10
0→R ( 0, 0) ( 0,-1) (-1, 0) (+1, 0) (+1,-1) ( 0,+2)
R→0 ( 0, 0) ( 0,-1) (-1,-1) ( 0,+1) ( 0,-2) (+1,-2) ( 0,+2)
0→L ( 0, 0) (+1, 0) (+1,+1) ( 0,-1) ( 0,-2) ( 0,-3) (+1,-1) ( 0,+1) ( 0,+2) ( 0,+3)
L→0 ( 0, 0) (-1, 0) (-1,+1) ( 0,-1) ( 0,-2) ( 0,-3) (-1,-1) ( 0,+1) ( 0,+2) ( 0,+3)
R→2 ( 0, 0) (+1, 0) ( 0,-1) (-2, 0) (+1,+1) (-1, 0) ( 0,+1) (-1,-1)
2→R ( 0, 0) (-1, 0) ( 0,-1) (+2, 0) (-1,+1) (+1, 0) ( 0,+1) (+1,-1)
L→2 ( 0, 0) ( 0,-1) (+1, 0) ( 0,+1) (-1, 0) (-1,-1) ( 0,+2)
2→L ( 0, 0) ( 0,-1) (+1,-1) ( 0,+1) ( 0,-2) (-1,-2) ( 0,+2)
0→2 ( 0, 0) ( 0,-1) (-1, 0)
2→0 ( 0, 0) ( 0,+1) (+1, 0)
L→R ( 0, 0) ( 0,+1) (-1, 0)
R→L ( 0, 0) ( 0,-1) (+1, 0)

X

X pentomino is special, because its first test is not (0, 0). This allows for X-spins to exist.

X Pentomino TRS Wall Kick Data
Test 1 Test 2 Test 3 Test 4 Test 5
CW (+1,-1) (+1, 0) (+1,+1) (+1,-2) (+1,+2)
CCW (-1,-1) (-1, 0) (-1,+1) (-1,-2) (-1,+2)
180 ( 0,-1) ( 0,-2) ( 0,+1) ( 0,-2) ( 0,+2)

J5

J Pentomino TRS Wall Kick Data
Test 1 Test 2 Test 3 Test 4 Test 5 Test 6 Test 7 Test 8 Test 9 Test 10
0→R ( 0, 0) (-1, 0) (-1,+1) ( 0,-3) (-1,+1) (-1,+2) ( 0,+1)
R→0 ( 0, 0) (-1, 0) (+1,-1) ( 0,+3) (+1,-1) (+1,-2) ( 0,+1)
0→L ( 0, 0) ( 0,-1) (+1,-1) (-1, 0) (+1,+1) ( 0,-2) (+1,-2) ( 0,-3) (+1,-3) (-1,+1)
L→0 ( 0, 0) ( 0,+1) (-1,+1) (+1, 0) (-1,-1) ( 0,+2) (-1,+2) ( 0,+3) (-1,+3) (+1,-1)
R→2 ( 0, 0) (+1, 0) (+1,-1) ( 0,-1) (+1,-2) ( 0,-2) (+1,+1) (-1, 0) ( 0,+2) (+1,+2)
2→R ( 0, 0) (-1, 0) (-1,+1) ( 0,+1) (-1,+2) ( 0,+2) (-1,-1) (+1, 0) ( 0,-2) (-1,-2)
L→2 ( 0, 0) (-1, 0) (-1,+1) (-1,-1) (+1, 0) ( 0,+2) (-1,+2) ( 0,-2)
2→L ( 0, 0) (+1, 0) (+1,-1) (+1,+1) (-1, 0) ( 0,-2) (+1,-2) ( 0,+2)
0→2 ( 0, 0) ( 0,-1) (-1,-1) (+1,-1) (-1, 0) (+2,-1)
2→0 ( 0, 0) ( 0,+1) (+1,+1) (-1,+1) (+1, 0) (-2,+1)
L→R ( 0, 0) (-1, 0) (-1,-1) ( 0,+1) (-1,-2)
R→L ( 0, 0) (+1, 0) (+1,+1) ( 0,-1) (+1,+2)

L5

L pentomino uses mirrored J5 kicks.

L Pentomino TRS Wall Kick Data
Test 1 Test 2 Test 3 Test 4 Test 5 Test 6 Test 7 Test 8 Test 9 Test 10
0→R ( 0, 0) ( 0,-1) (-1,-1) (+1, 0) (-1,+1) ( 0,-2) (-1,-2) ( 0,-3) (-1,-3) (+1,+1)
R→0 ( 0, 0) ( 0,+1) (+1,+1) (-1, 0) (+1,-1) ( 0,+2) (+1,+2) ( 0,+3) (+1,+3) (-1,-1)
0→L ( 0, 0) (+1, 0) (+1,+1) ( 0,-3) (+1,+1) (+1,+2) ( 0,+1)
L→0 ( 0, 0) (+1, 0) (-1,-1) ( 0,+3) (-1,-1) (-1,-2) ( 0,+1)
R→2 ( 0, 0) (+1, 0) (+1,+1) (+1,-1) (-1, 0) ( 0,+2) (+1,+2) ( 0,-2)
2→R ( 0, 0) (-1, 0) (-1,-1) (-1,+1) (+1, 0) ( 0,-2) (-1,-2) ( 0,+2)
L→2 ( 0, 0) (-1, 0) (-1,-1) ( 0,-1) (-1,-2) ( 0,-2) (-1,+1) (+1, 0) ( 0,+2) (-1,+2)
2→L ( 0, 0) (+1, 0) (+1,+1) ( 0,+1) (+1,+2) ( 0,+2) (+1,-1) (-1, 0) ( 0,-2) (+1,-2)
0→2 ( 0, 0) ( 0,-1) (+1,-1) (-1,-1) (+1, 0) (-2,-1)
2→0 ( 0, 0) ( 0,+1) (-1,+1) (+1,+1) (-1, 0) (+2,+1)
L→R ( 0, 0) (-1, 0) (-1,+1) ( 0,-1) (-1,+2)
R→L ( 0, 0) (+1, 0) (+1,-1) ( 0,+1) (+1,-2)

R

R Pentomino TRS Wall Kick Data
Test 1 Test 2 Test 3 Test 4 Test 5 Test 6 Test 7 Test 8 Test 9 Test 10 Test 11 Test 12
0→R ( 0, 0) (-1, 0) (-1,+1) (+1, 0) (-1,+2) (-1,-1) ( 0,-3) ( 0,+1)
R→0 ( 0, 0) (-1, 0) (+1, 0) (+1,-1) (+1,-2) (+1,+1) ( 0,+3) ( 0,+1)
0→L ( 0, 0) ( 0,-1) (+1, 0) ( 0,+1) (+1,-1) (-1, 0) (+1,+1) ( 0,-2) (+1,-2) ( 0,-3) (+1,-3) (-1,+1)
L→0 ( 0, 0) ( 0,-1) (-1, 0) ( 0,+1) (-1,+1) (+1, 0) (-1,-1) ( 0,+2) (-1,+2) ( 0,+3) (-1,+3) (+1,-1)
R→2 ( 0, 0) (+1, 0) (+1,-1) ( 0,-1) (+1,-2) ( 0,-2) (+1,+1) (-1, 0) ( 0,+2) (+1,+2)
2→R ( 0, 0) (-1, 0) (-1,+1) ( 0,+1) (-1,+2) ( 0,+2) (-1,-1) (+1, 0) ( 0,-2) (-1,-2)
L→2 ( 0, 0) ( 0,-1) (-1, 0) (-1,+1) (-1,-1) (+1, 0) ( 0,+2) (-1,+2) ( 0,-2)
2→L ( 0, 0) ( 0,+1) (+1, 0) (+1,-1) (+1,+1) (-1, 0) ( 0,-2) (+1,-2) ( 0,+2)
0→2 ( 0, 0) ( 0,-1) (+1,-1) (-1, 0) (+2,-1) ( 0,+1)
2→0 ( 0, 0) ( 0,+1) (-1,+1) (+1, 0) (-2,+1) ( 0,-1)
L→R ( 0, 0) (-1, 0) (-1,-1) ( 0,+1) (-1,-2)
R→L ( 0, 0) (+1, 0) (+1,+1) ( 0,-1) (+1,+2)

Y

Y pentomino uses mirrored R kicks.

Y Pentomino TRS Wall Kick Data
Test 1 Test 2 Test 3 Test 4 Test 5 Test 6 Test 7 Test 8 Test 9 Test 10 Test 11 Test 12
0→R ( 0, 0) ( 0,-1) (-1, 0) ( 0,+1) (-1,-1) (+1, 0) (-1,+1) ( 0,-2) (-1,-2) ( 0,-3) (-1,-3) (+1,+1)
R→0 ( 0, 0) ( 0,-1) (+1, 0) ( 0,+1) (+1,+1) (-1, 0) (+1,-1) ( 0,+2) (+1,+2) ( 0,+3) (+1,+3) (-1,-1)
0→L ( 0, 0) (+1, 0) (+1,+1) (-1, 0) (+1,+2) (+1,-1) ( 0,-3) ( 0,+1)
L→0 ( 0, 0) (+1, 0) (-1, 0) (-1,-1) (-1,-2) (-1,+1) ( 0,+3) ( 0,+1)
R→2 ( 0, 0) ( 0,-1) (+1, 0) (+1,+1) (+1,-1) (-1, 0) ( 0,+2) (+1,+2) ( 0,-2)
2→R ( 0, 0) ( 0,+1) (-1, 0) (-1,-1) (-1,+1) (+1, 0) ( 0,-2) (-1,-2) ( 0,+2)
L→2 ( 0, 0) (-1, 0) (-1,-1) ( 0,-1) (-1,-2) ( 0,-2) (-1,+1) (+1, 0) ( 0,+2) (-1,+2)
2→L ( 0, 0) (+1, 0) (+1,+1) ( 0,+1) (+1,+2) ( 0,+2) (+1,-1) (-1, 0) ( 0,-2) (+1,-2)
0→2 ( 0, 0) ( 0,-1) (-1,-1) (+1, 0) (-2,-1) ( 0,+1)
2→0 ( 0, 0) ( 0,+1) (+1,+1) (-1, 0) (+2,+1) ( 0,-1)
L→R ( 0, 0) (-1, 0) (-1,+1) ( 0,-1) (-1,+2)
R→L ( 0, 0) (+1, 0) (+1,-1) ( 0,+1) (+1,-2)

N

N Pentomino TRS Wall Kick Data
Test 1 Test 2 Test 3 Test 4 Test 5 Test 6 Test 7 Test 8 Test 9 Test 10 Test 11
0→R ( 0, 0) (-1, 0) (-1,+1) ( 0,+1) (+1, 0) (+1,+1) (-1,+2) (-2, 0) ( 0,-2)
R→0 ( 0, 0) (+1, 0) (-1, 0) ( 0,-1) (-1,-1) (+1,-1) (+1,-2) (+2, 0) ( 0,+2)
0→L ( 0, 0) (-1, 0) (+1,-1) ( 0,-2) ( 0,-3) (+1, 0) (+1,-2) (+1,-3) ( 0,+1) (-1,+1)
L→0 ( 0, 0) (-1, 0) (+1,-1) (+1,-2) (+1, 0) ( 0,-2) (+1,-3) (-1,+2) ( 0,+3) (-1,+3)
R→2 ( 0, 0) (-1, 0) (+1,-1) (-1,-1) (+1,-2) (+1, 0) ( 0,-2) (+1,-3) (-1,+2) ( 0,+3) (-1,+3)
2→R ( 0, 0) (-1, 0) (+1,-1) (+1,+1) ( 0,-2) ( 0,-3) (+1, 0) (+1,-2) (+1,-3) ( 0,+1) (-1,+1)
L→2 ( 0, 0) (-1, 0) ( 0,-1) (-1,-2) (+1,-1) (+1, 0) (+1,+1) ( 0,+2) ( 0,+3)
2→L ( 0, 0) ( 0,-2) ( 0,-3) (+1,+2) (+1, 0) ( 0,+1) (-1,+1) ( 0,-1) ( 0,+2)
0→2 ( 0, 0) (-1, 0) ( 0,+2) ( 0,-1)
2→0 ( 0, 0) (+1, 0) ( 0,-2) ( 0,+1)
L→R ( 0, 0) (-1, 0) (-1,-1) ( 0,+1) (+1,+2)
R→L ( 0, 0) (+1, 0) (+1,+1) ( 0,-1) (-1,-2)

H

H pentomino uses mirrored N kicks.

H Pentomino TRS Wall Kick Data
Test 1 Test 2 Test 3 Test 4 Test 5 Test 6 Test 7 Test 8 Test 9 Test 10 Test 11
0→R ( 0, 0) (+1, 0) (-1,-1) ( 0,-2) ( 0,-3) (-1, 0) (-1,-2) (-1,-3) ( 0,+1) (+1,+1)
R→0 ( 0, 0) (+1, 0) (-1,-1) (-1,-2) (-1, 0) ( 0,-2) (-1,-3) (+1,+2) ( 0,+3) (+1,+3)
0→L ( 0, 0) (+1, 0) (+1,+1) ( 0,+1) (-1, 0) (-1,+1) (+1,+2) (+2, 0) ( 0,-2)
L→0 ( 0, 0) (-1, 0) (+1, 0) ( 0,-1) (+1,-1) (-1,-1) (-1,-2) (-2, 0) ( 0,+2)
R→2 ( 0, 0) (+1, 0) ( 0,-1) (+1,-2) (-1,-1) (-1, 0) (-1,+1) ( 0,+2) ( 0,+3)
2→R ( 0, 0) ( 0,-2) ( 0,-3) (-1,+2) (-1, 0) ( 0,+1) (+1,+1) ( 0,-1) ( 0,+2)
L→2 ( 0, 0) (+1, 0) (-1,-1) (+1,-1) (-1,-2) (-1, 0) ( 0,-2) (-1,-3) (+1,+2) ( 0,+3) (+1,+3)
2→L ( 0, 0) (+1, 0) (-1,-1) (-1,+1) ( 0,-2) ( 0,-3) (-1, 0) (-1,-2) (-1,-3) ( 0,+1) (+1,+1)
0→2 ( 0, 0) (+1, 0) ( 0,+2) ( 0,-1)
2→0 ( 0, 0) (-1, 0) ( 0,-2) ( 0,+1)
L→R ( 0, 0) (-1, 0) (-1,+1) ( 0,-1) (+1,-2)
R→L ( 0, 0) (+1, 0) (+1,-1) ( 0,+1) (-1,+2)

I5

I pentomino is centrosymmetric, and therefore it does not have any 180-degree kicks.

I Pentomino TRS Wall Kick Data
Test 1 Test 2 Test 3 Test 4 Test 5 Test 6 Test 7 Test 8 Test 9 Test 10 Test 11 Test 12 Test 13 Test 14 Test 15 Test 16 Test 17 Test 18 Test 19 Test 20 Test 21
0→R ( 0, 0) (+1,-1) (+1, 0) (+1,+1) ( 0,+1) (-1,+1) (-1, 0) (-1,-1) ( 0,-1) ( 0,-2) (-2,-1) (-2,-2) (+2, 0) (+2,-1) (+2,-2) (+1,+2) (+2,+2) (-1,+2) (-2,+2)
R→0 ( 0, 0) (-1, 0) (-1,-1) ( 0,-1) (+1,-1) (-2,-2) (-2,-1) (-2, 0) (-1,-2) ( 0,-2) (+1,-2) (+2,-2) (-1,+1) (-2,+1) (-2,+2) (+1, 0) (+2, 0) (+2,-1) ( 0,+1) (+1,-1) (+2,-2)
0→L ( 0, 0) (-1,-1) (-1, 0) (-1,+1) ( 0,+1) (+1,+1) (+1, 0) (+1,-1) ( 0,-1) ( 0,-2) (+2,-1) (+2,-2) (-2, 0) (-2,-1) (-2,-2) (-1,+2) (-2,+2) (+1,+2) (+2,+2)
L→0 ( 0, 0) (+1, 0) (+1,-1) ( 0,-1) (-1,-1) (+2,-2) (+2,-1) (+2, 0) (+1,-2) ( 0,-2) (-1,-2) (-2,-2) (+1,+1) (+2,+1) (+2,+2) (-1, 0) (-2, 0) (-2,-1) ( 0,+1) (-1,-1) (-2,-2)
R→2 ( 0, 0) (+1, 0) (+1,-1) ( 0,-1) (-1,-1) (+2,-2) (+2,-1) (+2, 0) (+1,-2) ( 0,-2) (-1,-2) (-2,-2) (+1,+1) (+2,+1) (+2,+2) (-1, 0) (-2, 0) (-2,-1) ( 0,+1) (-1,-1) (-2,-2)
2→R ( 0, 0) (-1,-1) (-1, 0) (-1,+1) ( 0,+1) (+1,+1) (+1, 0) (+1,-1) ( 0,-1) ( 0,-2) (+2,-1) (+2,-2) (-2, 0) (-2,-1) (-2,-2) (-1,+2) (-2,+2) (+1,+2) (+2,+2)
L→2 ( 0, 0) (-1, 0) (-1,-1) ( 0,-1) (+1,-1) (-2,-2) (-2,-1) (-2, 0) (-1,-2) ( 0,-2) (+1,-2) (+2,-2) (-1,+1) (-2,+1) (-2,+2) (+1, 0) (+2, 0) (+2,-1) ( 0,+1) (+1,-1) (+2,-2)
2→L ( 0, 0) (+1,-1) (+1, 0) (+1,+1) ( 0,+1) (-1,+1) (-1, 0) (-1,-1) ( 0,-1) ( 0,-2) (-2,-1) (-2,-2) (+2, 0) (+2,-1) (+2,-2) (+1,+2) (+2,+2) (-1,+2) (-2,+2)

Playfield test

ABCD-FGHIJ-L-NOP--ST---X-Z
ABCD-FGHIJ-L-NOP--ST---X-Z
-.--------------------....
----------123456789-......