Difference between revisions of "DAS"

From TetrisWiki
Jump to navigation Jump to search
 
 
(23 intermediate revisions by 5 users not shown)
Line 1: Line 1:
 +
[[Image:TGM_Legend_DAS_1.gif|right|frame|Using DAS to move an I tetromino back and forth.]]
 
'''Delayed Auto Shift''' or '''autorepeat''' refers to the behavior of most falling block puzzle games when the player holds the left or right key. The game will shift the falling piece sideways, wait, and then shift it repeatedly if the player continues to hold the key.
 
'''Delayed Auto Shift''' or '''autorepeat''' refers to the behavior of most falling block puzzle games when the player holds the left or right key. The game will shift the falling piece sideways, wait, and then shift it repeatedly if the player continues to hold the key.
  
Some games read the keys as on-off switches and implement DAS in software. Other games, especially earlier games running on home computers, rely on the automatic repeat provided by the hardware or operating system, which the user often has the ability to configure. (In Windows 2000, this setting is Start > Settings > Control Panel > Keyboard > Speed > Character repeat.)
+
Some games read the keys as on-off switches and implement DAS in software. Other games, especially earlier games running on home computers, rely on the automatic repeat provided by the hardware or operating system, which the user often has the ability to configure. (In Windows 2000 and Windows XP, this setting is Control Panel > Keyboard > Speed > Character repeat. Likewise, in Mac OS X, the Keyboard & Mouse preferences control the speed of key repeat.)
 +
 
 +
[[Image:TGM_Legend_DAS_2.gif|frame|Charging DAS during ARE.]]
 +
Some games that have [[ARE]] or [[line clear]] delays allow the player to "charge" DAS by holding the movement key during these delays, so that the piece starts moving sideways as soon as it appears.
 +
Games where ARE or line clear delay becomes faster over time, such as later [[TGM series]] games, often decrease DAS delay at the same time.
 +
 
 +
== Definitions ==
 +
Terminology around DAS has varied over the years, potentially leading to some confusion. This section will define the terminology used by this wiki.
 +
 
 +
=== DAS delay ===
 +
DAS delay refers to the delay between the player holding down the direction abd the auto-shift occurring. This may also be referred to as DAS startup or simply DAS.
 +
 
 +
DAS delay is usually measured either in milliseconds or frames. It is often ambiguous as to whether the delay includes or excludes the frame in which the piece first moves and the piece at which the piece first auto-shifts.
 +
 
 +
This wiki measures DAS delay inclusive of both frames. This corresponds to the number of frames that the direction needs to be held down in order to activate an auto-shift, assuming DAS charge occurs on all frames.
 +
 
 +
=== Auto-repeat rate ===
 +
Auto-repeat rate refers to the rate at which auto-shift inputs repeat, but may also refer to the interval between repeats. The rate can be measured in Hz or G, while the interval can be measured in milliseconds or frames.
  
 
== Games with slow DAS ==
 
== Games with slow DAS ==
Line 7: Line 25:
 
*[[Tetris (NES, Nintendo)]]
 
*[[Tetris (NES, Nintendo)]]
 
*[[Tetris (Game Boy)]]
 
*[[Tetris (Game Boy)]]
 +
*[[Tetris Plus]]
 
*[[The New Tetris]]
 
*[[The New Tetris]]
 
*[[Tetris DS]]
 
*[[Tetris DS]]
Line 16: Line 35:
  
 
== Games with fast DAS ==
 
== Games with fast DAS ==
Tetromino based games with at least 20 Hz DAS:
+
Official Tetris games with at least 20 Hz DAS:
 +
*[[Tetris (Sega)]]
 
*[[Tetris Blast]]
 
*[[Tetris Blast]]
 +
*[[Tetris Plus 2]]
 
*[[Tetris DX]]
 
*[[Tetris DX]]
*Tetanus On Drugs and its GBA port [[Lockjaw: The Overdose]]
 
 
*[[Tetris The Grand Master]] series
 
*[[Tetris The Grand Master]] series
*[[Lockjaw]] (for PC)
+
*[[Tetris: New Century]]
 +
*[[Tetris Friends]]
 
Other:
 
Other:
 
*[[Tetris Attack]]
 
*[[Tetris Attack]]
 +
 +
== Games with customisable DAS rate ==
 +
Incomplete.
 +
 +
Official games:
 +
*[[Tetris Friends]] (fixed options, need to be unlocked)
 +
*[[Tetris (tetris.com)]]
 +
Fan games:
 +
*[[TETRIS SEMIPRO-68k]]
  
 
== Practical considerations ==
 
== Practical considerations ==
Line 35: Line 65:
 
{|
 
{|
 
|- valign="top"
 
|- valign="top"
|{{pfstart}}
+
|<playfield>
{{pfrow| | | | | | | | | | }}
+
..........
{{pfrow| | | | |T| | | | | }}
+
....T.....
{{pfrow| | | |T|T|T| | | | }}
+
...TTT....
{{pfrow| | | | | | | | | | }}
+
..........
{{pfrow| | | | | | | | | | }}
+
..........
{{pfend}}
+
</playfield>
|{{pfstart}}
+
|<playfield>
{{pfrow| | | | | | | | | | }}
+
..........
{{pfrow| | | | |T| | | | | }}
+
....T.....
{{pfrow| | | |T|T| | | | | }}
+
...TT.....
{{pfrow| | | | |T| | | | | }}
+
....T.....
{{pfrow| | | | | | | | | | }}
+
..........
{{pfend}}
+
</playfield>
|{{pfstart}}
+
|<playfield>
{{pfrow| | | | | | | | | | }}
+
..........
{{pfrow| | | | | |T| | | | }}
+
.....T....
{{pfrow| | | | |T|T| | | | }}
+
....TT....
{{pfrow| | | | | |T| | | | }}
+
.....T....
{{pfrow| | | | | | | | | | }}
+
..........
{{pfend}}
+
</playfield>
|{{pfstart}}
+
|<playfield>
{{pfrow| | | | | | | | | | }}
+
..........
{{pfrow| | | | | | |T| | | }}
+
......T...
{{pfrow| | | | | |T|T| | | }}
+
.....TT...
{{pfrow| | | | | | |T| | | }}
+
......T...
{{pfrow| | | | | | | | | | }}
+
..........
{{pfend}}
+
</playfield>
|{{pfstart}}
+
|<playfield>
{{pfrow| | | | | | | | | | }}
+
..........
{{pfrow| | | | | | | |T| | }}
+
.......T..
{{pfrow| | | | | | |T|T| | }}
+
......TT..
{{pfrow| | | | | | | |T| | }}
+
.......T..
{{pfrow| | | | | | | | | | }}
+
..........
{{pfend}}
+
</playfield>
|{{pfstart}}
+
|<playfield>
{{pfrow| | | | | | | | | | }}
+
..........
{{pfrow| | | | | | | | |T| }}
+
........T.
{{pfrow| | | | | | | |T|T| }}
+
.......TT.
{{pfrow| | | | | | | | |T| }}
+
........T.
{{pfrow| | | | | | | | | | }}
+
..........
{{pfend}}
+
</playfield>
 
|}
 
|}
  
Line 82: Line 112:
 
{|
 
{|
 
|- valign="top"
 
|- valign="top"
|{{pfstart}}
+
|<playfield>
{{pfrow| | | | | | | | | | }}
+
..........
{{pfrow| | | | |T| | | | | }}
+
....T.....
{{pfrow| | | |T|T|T| | | | }}
+
...TTT....
{{pfrow| | | | | | | | | | }}
+
..........
{{pfrow| | | | | | | | | | }}
+
..........
{{pfend}}
+
</playfield>
|{{pfstart}}
+
|<playfield>
{{pfrow| | | | | | | | | | }}
+
..........
{{pfrow| | | | |T| | | | | }}
+
....T.....
{{pfrow| | | |T|T| | | | | }}
+
...TT.....
{{pfrow| | | | |T| | | | | }}
+
....T.....
{{pfrow| | | | | | | | | | }}
+
..........
{{pfend}}
+
</playfield>
|{{pfstart}}
+
|<playfield>
{{pfrow| | | | | | | | | | }}
+
..........
{{pfrow| | | | | |T| | | | }}
+
.....T....
{{pfrow| | | | |T|T| | | | }}
+
....TT....
{{pfrow| | | | | |T| | | | }}
+
.....T....
{{pfrow| | | | | | | | | | }}
+
..........
{{pfend}}
+
</playfield>
|{{pfstart}}
+
|<playfield>
{{pfrow| | | | | | | | | | }}
+
..........
{{pfrow| | | | | | | | | |T}}
+
.........T
{{pfrow| | | | | | | | |T|T}}
+
........TT
{{pfrow| | | | | | | | | |T}}
+
.........T
{{pfrow| | | | | | | | | | }}
+
..........
{{pfend}}
+
</playfield>
|{{pfstart}}
+
|<playfield>
{{pfrow| | | | | | | | | | }}
+
..........
{{pfrow| | | | | | | | |T| }}
+
........T.
{{pfrow| | | | | | | |T|T| }}
+
.......TT.
{{pfrow| | | | | | | | |T| }}
+
........T.
{{pfrow| | | | | | | | | | }}
+
..........
{{pfend}}
+
</playfield>
 
|}
 
|}
  
Line 122: Line 152:
 
{|
 
{|
 
|- valign="top"
 
|- valign="top"
|{{pfstart}}
+
|<playfield>
{{pfrow| | | | | | | | | | }}
+
..........
{{pfrow| | | | |T| | | | | }}
+
....T.....
{{pfrow| | | |T|T|T| | | | }}
+
...TTT....
{{pfrow| | | | | | | | | | }}
+
..........
{{pfrow| | | | | | | | | | }}
+
..........
{{pfend}}
+
</playfield>
|{{pfstart}}
+
|<playfield>
{{pfrow| | | | | | | | | | }}
+
..........
{{pfrow| | | | |T| | | | | }}
+
....T.....
{{pfrow| | | |T|T| | | | | }}
+
...TT.....
{{pfrow| | | | |T| | | | | }}
+
....T.....
{{pfrow| | | | | | | | | | }}
+
..........
{{pfend}}
+
</playfield>
|{{pfstart}}
+
|<playfield>
{{pfrow| | | | | | | | | | }}
+
..........
{{pfrow| | | | | |T| | | | }}
+
.....T....
{{pfrow| | | | |T|T| | | | }}
+
....TT....
{{pfrow| | | | | |T| | | | }}
+
.....T....
{{pfrow| | | | | | | | | | }}
+
..........
{{pfend}}
+
</playfield>
|{{pfstart}}
+
|<playfield>
{{pfrow| | | | | | | | | | }}
+
..........
{{pfrow| | | | | | | | | |T}}
+
.........T
{{pfrow| | | | | | | | |T|T}}
+
........TT
{{pfrow| | | | | | | | | |T}}
+
.........T
{{pfrow| | | | | | | | | | }}
+
..........
{{pfend}}
+
</playfield>
 
Let go too late
 
Let go too late
 
|}
 
|}
Line 155: Line 185:
 
{|
 
{|
 
|- valign="top"
 
|- valign="top"
|{{pfstart}}
+
|<playfield>
{{pfrow| | | | | | | | | | }}
+
..........
{{pfrow| | | | |T| | | | | }}
+
....T.....
{{pfrow| | | |T|T|T| | | | }}
+
...TTT....
{{pfrow| | | | | | | | | | }}
+
..........
{{pfrow| | | | | | | | | | }}
+
..........
{{pfend}}
+
</playfield>
|{{pfstart}}
+
|<playfield>
{{pfrow| | | | | | | | | | }}
+
..........
{{pfrow| | | | |T| | | | | }}
+
....T.....
{{pfrow| | | |T|T| | | | | }}
+
...TT.....
{{pfrow| | | | |T| | | | | }}
+
....T.....
{{pfrow| | | | | | | | | | }}
+
..........
{{pfend}}
+
</playfield>
|{{pfstart}}
+
|<playfield>
{{pfrow| | | | | | | | | | }}
+
..........
{{pfrow| | | | | |T| | | | }}
+
.....T....
{{pfrow| | | | |T|T| | | | }}
+
....TT....
{{pfrow| | | | | |T| | | | }}
+
.....T....
{{pfrow| | | | | | | | | | }}
+
..........
{{pfend}}
+
</playfield>
|{{pfstart}}
+
|<playfield>
{{pfrow| | | | | | | | | | }}
+
..........
{{pfrow| | | | | | | |T| | }}
+
.......T..
{{pfrow| | | | | | |T|T| | }}
+
......TT..
{{pfrow| | | | | | | |T| | }}
+
.......T..
{{pfrow| | | | | | | | | | }}
+
..........
{{pfend}}
+
</playfield>
 
Let go too early
 
Let go too early
 
|}
 
|}
Line 189: Line 219:
 
{|
 
{|
 
|- valign="top"
 
|- valign="top"
|{{pfstart}}
+
|<playfield>
{{pfrow| | | | | | | | | | }}
+
..........
{{pfrow| | | | |T| | | | | }}
+
....T.....
{{pfrow| | | |T|T|T| | | | }}
+
...TTT....
{{pfrow| | | | | | | | | | }}
+
..........
{{pfrow| | | | | | | | | | }}
+
..........
{{pfend}}
+
</playfield>
|{{pfstart}}
+
|<playfield>
{{pfrow| | | | | | | | | | }}
+
..........
{{pfrow| | | | | |T| | | | }}
+
.....T....
{{pfrow| | | | |T|T|T| | | }}
+
....TTT...
{{pfrow| | | | | | | | | | }}
+
..........
{{pfrow| | | | | | | | | | }}
+
..........
{{pfend}}
+
</playfield>
|{{pfstart}}
+
|<playfield>
{{pfrow| | | | | | | | | | }}
+
..........
{{pfrow| | | | | | | | |T| }}
+
........T.
{{pfrow| | | | | | | |T|T|T}}
+
.......TTT
{{pfrow| | | | | | | | | | }}
+
..........
{{pfrow| | | | | | | | | | }}
+
..........
{{pfend}}
+
</playfield>
|{{pfstart}}
+
|<playfield>
{{pfrow| | | | | | | | | | }}
+
..........
{{pfrow| | | | | | | | |T| }}
+
........T.
{{pfrow| | | | | | | |T|T| }}
+
.......TT.
{{pfrow| | | | | | | | |T| }}
+
........T.
{{pfrow| | | | | | | | | | }}
+
..........
{{pfend}}
+
</playfield>
 
|}
 
|}
  
 
However, at fast gravity, rotation (especially [[IRS|initial rotation]]) before movement may help the player navigate pyramid structures.
 
However, at fast gravity, rotation (especially [[IRS|initial rotation]]) before movement may help the player navigate pyramid structures.
  
In SRS for games with fast DAS, moving to the right wall then rotating uses less button presses in cases with all pieces except ''O''. With ''J'', ''L'', and ''T'', moving to the right wall, rotating and then moving once more left is faster still (two movements) than tapping three times right. With ''I'', moving to the right wall and rotating clockwise is faster, as well as rotating counter-clockwise for the third column-- and vice versa for the left wall. In other rotation systems such as the ones the [[TGM]] series use, this technique works halfway, which some pieces can benefit from rotating after moving to the wall on the left-- others on the right.
+
In SRS for games with fast DAS, moving to the right wall then rotating uses less button presses in cases with all pieces except ''O''. With ''J'', ''L'', and ''T'', moving to the right wall, rotating and then moving once more left is faster still (two movements) than tapping three times right. With ''I'', moving to the right wall and rotating clockwise is faster, as well as rotating counter-clockwise for the third column-- and vice versa for the left wall. In other rotation systems such as [[TGM Rotation]], this technique works halfway, which some pieces can benefit from rotating after moving to the wall on the left-- others on the right.
  
 
== See Also ==
 
== See Also ==
 
*[[Movement Finesse]]
 
*[[Movement Finesse]]
 
== External links ==
 
== External links ==
*[http://www.tetrisconcept.com/finesse.txt Meditation on Finesse] (for ''Tetris DS'') by caffeine
+
*[https://web.archive.org/web/20090321020942/http://www.tetrisconcept.com/finesse.txt Meditation on Finesse] (for ''Tetris DS'') by caffeine
  
[[Category:Game Mechanics]]
+
[[Category:Gameplay]]
[[Category:Gameplay Components]]
 

Latest revision as of 08:58, 9 September 2019

Using DAS to move an I tetromino back and forth.

Delayed Auto Shift or autorepeat refers to the behavior of most falling block puzzle games when the player holds the left or right key. The game will shift the falling piece sideways, wait, and then shift it repeatedly if the player continues to hold the key.

Some games read the keys as on-off switches and implement DAS in software. Other games, especially earlier games running on home computers, rely on the automatic repeat provided by the hardware or operating system, which the user often has the ability to configure. (In Windows 2000 and Windows XP, this setting is Control Panel > Keyboard > Speed > Character repeat. Likewise, in Mac OS X, the Keyboard & Mouse preferences control the speed of key repeat.)

Charging DAS during ARE.

Some games that have ARE or line clear delays allow the player to "charge" DAS by holding the movement key during these delays, so that the piece starts moving sideways as soon as it appears. Games where ARE or line clear delay becomes faster over time, such as later TGM series games, often decrease DAS delay at the same time.

Definitions

Terminology around DAS has varied over the years, potentially leading to some confusion. This section will define the terminology used by this wiki.

DAS delay

DAS delay refers to the delay between the player holding down the direction abd the auto-shift occurring. This may also be referred to as DAS startup or simply DAS.

DAS delay is usually measured either in milliseconds or frames. It is often ambiguous as to whether the delay includes or excludes the frame in which the piece first moves and the piece at which the piece first auto-shifts.

This wiki measures DAS delay inclusive of both frames. This corresponds to the number of frames that the direction needs to be held down in order to activate an auto-shift, assuming DAS charge occurs on all frames.

Auto-repeat rate

Auto-repeat rate refers to the rate at which auto-shift inputs repeat, but may also refer to the interval between repeats. The rate can be measured in Hz or G, while the interval can be measured in milliseconds or frames.

Games with slow DAS

Tetromino based:

Other:

Games with fast DAS

Official Tetris games with at least 20 Hz DAS:

Other:

Games with customisable DAS rate

Incomplete.

Official games:

Fan games:

Practical considerations

Main article: 60 Hz SRS Movement Finesse

Tactics for placing tetrominoes differ per game based on the speed of DAS and based on whether the player can load DAS during a line clear.

One space from the wall

To place a T, L, or J tetromino with its flat side one square from the side of the matrix at low gravity, it is fastest to rotate the tetromino after moving it. In bounding box based rotation systems such as SRS or its immediate predecessors, this applies to S and Z as well.

Rotate before move, tap tap tap:

..........
....T.....
...TTT....
..........
..........
..........
....T.....
...TT.....
....T.....
..........
..........
.....T....
....TT....
.....T....
..........
..........
......T...
.....TT...
......T...
..........
..........
.......T..
......TT..
.......T..
..........
..........
........T.
.......TT.
........T.
..........

Rotate before move, DAS then backtrack:

..........
....T.....
...TTT....
..........
..........
..........
....T.....
...TT.....
....T.....
..........
..........
.....T....
....TT....
.....T....
..........
..........
.........T
........TT
.........T
..........
..........
........T.
.......TT.
........T.
..........

Rotate before move, DAS then let go before the tetromino hits the wall, leads to misdrops, especially in games with fast DAS:

..........
....T.....
...TTT....
..........
..........
..........
....T.....
...TT.....
....T.....
..........
..........
.....T....
....TT....
.....T....
..........
..........
.........T
........TT
.........T
..........

Let go too late

..........
....T.....
...TTT....
..........
..........
..........
....T.....
...TT.....
....T.....
..........
..........
.....T....
....TT....
.....T....
..........
..........
.......T..
......TT..
.......T..
..........

Let go too early

Move before rotate:

..........
....T.....
...TTT....
..........
..........
..........
.....T....
....TTT...
..........
..........
..........
........T.
.......TTT
..........
..........
..........
........T.
.......TT.
........T.
..........

However, at fast gravity, rotation (especially initial rotation) before movement may help the player navigate pyramid structures.

In SRS for games with fast DAS, moving to the right wall then rotating uses less button presses in cases with all pieces except O. With J, L, and T, moving to the right wall, rotating and then moving once more left is faster still (two movements) than tapping three times right. With I, moving to the right wall and rotating clockwise is faster, as well as rotating counter-clockwise for the third column-- and vice versa for the left wall. In other rotation systems such as TGM Rotation, this technique works halfway, which some pieces can benefit from rotating after moving to the wall on the left-- others on the right.

See Also

External links