User:Kitaru

NES Tetris - effective rate of DAS vs. tapping

NTSC

The aim of this write-up is to compare the worst/average/best cases of DAS usage compared to manual rapid tapping. Comparisons will be made using a vertical I-piece traveling to the left wall (i.e., moving the piece 5 cells).

The NTSC NES technically runs at ~60.098814hz. The calculations here assume 60hz for simplicity since this does not affect the results very much (~0.16469% difference).

In the NTSC version of the game, DAS has a 16 frame start-up and a 10hz move rate (piece moves every 6th frame). Without discussing the particulars in-depth here, consider that DAS can be preserved from piece to piece under most circumstances.

Given the above, the naive assumption is that charged DAS is equivalent to tapping 10 times per second. However, under most circumstances, the piece is likely to enter the playfield ready to move earlier than the usual 6 frames. In fact, 10hz is the worst case for skillstop timing -- releasing left/right frame perfectly, just enough to get the final shift and no longer. The average case for skillstop is likely somewhere right in the middle (i.e. +3 frames). The best case (full charge) is also reasonably attainable via wall tech.

If we're charging DAS from scratch, the best case is when the piece is actively in the playfield. If we have no charge and hold left/right _before_ the piece appears, we have to wait a full 16 frames for the first shift. If the piece is already active, the first shift happens immediately (tap movement) and we only wait 15 more frames for the second shift.

Averaged across a shorter distance, the effective rates of charging from scratch appears rather low: the worst/best case for moving just two cells is 5.45hz and 7.5hz respectively. However, the parity with tapping improves when traversing greater distances. Of course, the player must take into account if current gravity and stack conditions allow for waiting through the full charge time, but -- given enough time -- the parity with manual tapping on simple recoveries looks rather favorable.

frames per cell total avg frame/cell effective rate
from scratch (worst case) 16 6 6 6 6 40 8 7.5hz
from scratch (best case) 1 15 6 6 6 34 6.8 8.82hz
charged (worst case) 6 6 6 6 6 30 6 10hz
charged (average case) 3 6 6 6 6 27 5.4 11.1hz
charged (best case) 1 6 6 6 6 25 5 12hz

The situation becomes even more advantageous if using the "extra tap" method to slightly raise the average rate -- you can get a bit of extra range by using a timed tap to get the final shift out a bit earlier than usual.

TODO: finish explanation of best/worst case for extra tap, and produce table of values -- the result of the calculation is a 12.5~14.29hz effective rates. TODO: discuss cases where physical tapping could prove advantageous due to dangerous upstack in the center of the playfield -- i.e. slope of movement and distribution of acceleration

PAL

TODO: PAL discussion and tables

frames per cell total avg frame/cell effective rate
from scratch (worst case) 12 4 4 4 4 28 5.6 8.93hz
from scratch (best case) 1 11 4 4 4 24 4.8 10.42hz
charged (worst case) 4 4 4 4 4 20 4 12.5hz
charged (average case) 2 4 4 4 4 18 3.6 13.89hz
charged (best case) 1 4 4 4 4 17 3.4 14.71hz