Playing forever: Difference between revisions
*>Tepples m the new animation has more pieces |
*>Colour thief major rewrite + more content |
||
Line 1: | Line 1: | ||
[[ | The following outlines a method of playing forever given the following conditions: | ||
*the [[Random Generator]] is used to generate piece sequences | |||
*the game has the [[Hold]] feature | |||
*at least 5 [[piece previews]] are available | |||
== Standard Procedure == | |||
The general method is achieved by dividing the screen into self contained sections as shown below. Specifically, the 4 left columns, the 4 right columns, and the 2 middle columns will be treated as distinct regions, with specific pieces assigned exclusively to each region. Because the random generator provides strings of bags containing each of the 7 pieces in a random order, it is possible to construct a strategy around the relatively small variation, with looping patterns. | |||
S, T, and Z will be placed to the left, L, J, and O will be placed to the right, and I pieces will fill the middle. | |||
{{pfstart}} | {{pfstart}} | ||
{{pfrow| |Z| | | |I| | | | }} | {{pfrow| |Z| | | |I| | | | }} | ||
Line 9: | Line 16: | ||
{{pfend}} | {{pfend}} | ||
== S, T, and Z | === The S, T, and Z piece loop === | ||
This pattern loops after 4 bags of pieces. Depending on the order of the pieces for each bag, you may need to use [[Hold]] to force a piece to come last. Piece previews are technically not required to play this pattern. | |||
The Z piece must drop last, so use Hold to change the order if necessary: | |||
{{pfstart}} | {{pfstart}} | ||
{{pfrow| |Z| | | | | | | | }} | {{pfrow| |Z| | | | | | | | }} | ||
{{pfrow|Z|Z|S| | | | | | | }} | {{pfrow|Z|Z|S| | | | | | | }} | ||
Line 73: | Line 27: | ||
{{pfrow|G|G|G|G| | | | | | }} | {{pfrow|G|G|G|G| | | | | | }} | ||
{{pfend}} | {{pfend}} | ||
The T piece must drop last, so use Hold to change the order if necessary: | |||
{{pfstart}} | {{pfstart}} | ||
{{pfrow| | | |T| | | | | | }} | {{pfrow| | | |T| | | | | | }} | ||
Line 96: | Line 36: | ||
{{pfrow|G|G|G|S| | | | | | }} | {{pfrow|G|G|G|S| | | | | | }} | ||
{{pfend}} | {{pfend}} | ||
The S piece must drop last, so use Hold to change the order if necessary: | |||
{{pfstart}} | {{pfstart}} | ||
{{pfrow|S| | | | | | | | | }} | {{pfrow|S| | | | | | | | | }} | ||
Line 114: | Line 45: | ||
{{pfrow|T|G|G|G| | | | | | }} | {{pfrow|T|G|G|G| | | | | | }} | ||
{{pfend}} | {{pfend}} | ||
The S piece must drop last, so use Hold to change the order if necessary: | |||
{{pfstart}} | {{pfstart}} | ||
{{pfrow| | | | | | | | | | }} | {{pfrow| | | | | | | | | | }} | ||
{{pfrow|S|T|T|T| | | | | | }} | {{pfrow|S|T|T|T| | | | | | }} | ||
Line 141: | Line 54: | ||
{{pfrow|G|G|Z|G| | | | | | }} | {{pfrow|G|G|Z|G| | | | | | }} | ||
{{pfend}} | {{pfend}} | ||
=== | === The L, J, and O piece loop === | ||
This pattern loops after a single bag of pieces. Depending on the order of the pieces, you will need to use a different construction. 5 piece previews are required to play this pattern, because in the worst case scenario you will need to see the first 6 pieces (active piece + 5 piece previews) in order to determine whether the O piece is coming last. | |||
O piece first: | |||
{{pfstart}} | {{pfstart}} | ||
{{pfrow| | | {{pfrow| | | | | | |J|J|L|L}} | ||
{{pfrow| | {{pfrow| | | | | | |J|O|O|L}} | ||
{{pfrow| | {{pfrow| | | | | | |J|O|O|L}} | ||
{{pfend}} | {{pfend}} | ||
O piece last: | |||
{{pfstart}} | {{pfstart}} | ||
{{pfrow| | | | | | |L|O|O|J}} | {{pfrow| | | | | | |L|O|O|J}} | ||
Line 184: | Line 70: | ||
{{pfrow| | | | | | |L|L|J|J}} | {{pfrow| | | | | | |L|L|J|J}} | ||
{{pfend}} | {{pfend}} | ||
JO pieces first: (mirror for LO first) | |||
{| | {| | ||
|{{pfstart}} | |{{pfstart}} | ||
Line 218: | Line 98: | ||
|} | |} | ||
=== The I piece loop === | |||
This pattern loops every 2 bags. No use of Hold or piece previews is required. The player must simply alternate putting the I tetromino in columns 5 and 6 to reap tetrises. | |||
== I | |||
{| | {| | ||
|{{pfstart}} | |{{pfstart}} | ||
{{pfrow| | | | | | | | | | }} | {{pfrow| | | | |I| | | | | }} | ||
{{pfrow| | | | | | | | | | }} | {{pfrow| | | | |I| | | | | }} | ||
{{pfrow| | {{pfrow| | | | |I| | | | | }} | ||
{{pfrow| | {{pfrow| | | | |I| | | | | }} | ||
{{pfend}} | {{pfend}} | ||
|{{pfstart}} | |{{pfstart}} | ||
{{pfrow| | | | | | | | | | }} | {{pfrow| | | | |G|I| | | | }} | ||
{{pfrow| | {{pfrow| | | | |G|I| | | | }} | ||
{{pfrow| | | | |G|I| | | | }} | |||
{{pfrow| | | | |G|I| | | | }} | |||
{{pfrow| | |||
{{pfrow| | |||
{{pfend}} | {{pfend}} | ||
|} | |} | ||
== Balancing the Stacks == | |||
Since the loops have a cycle of 4, 1, and 2 bags respectively, after playing 4 bags they will all be flat. However, the I loop will have only placed 8 rows compared to the 12 rows placed by both the STZ and LJO loops. | |||
{| | {| | ||
|- valign="top" | |- valign="top" | ||
|{{pfstart}} | |{{pfstart}} | ||
{{pfrow| | | | | | | | | | }} | {{pfrow| | | | | | | | | | }} | ||
{{pfrow| | | | | | | | | | }} | {{pfrow| | | | | | | | | | }} | ||
{{pfrow| | | | | | | | | | }} | {{pfrow| | | | | | | | | | }} | ||
{{pfrow| | {{pfrow|G|G|G|G| | |G|G|G|G}} | ||
{{pfrow| | {{pfrow|G|G|G|G| | |G|G|G|G}} | ||
{{pfrow| | {{pfrow|G|G|G|G| | |G|G|G|G}} | ||
{{pfrow| | {{pfrow|G|G|G|G| | |G|G|G|G}} | ||
{{pfrow| | {{pfrow|G|G|G|G|G|G|G|G|G|G}} | ||
{{pfrow| | {{pfrow|G|G|G|G|G|G|G|G|G|G}} | ||
{{pfrow| | {{pfrow|G|G|G|G|G|G|G|G|G|G}} | ||
{{pfrow| | {{pfrow|G|G|G|G|G|G|G|G|G|G}} | ||
{{pfrow| | {{pfrow|G|G|G|G|G|G|G|G|G|G}} | ||
{{pfrow| | {{pfrow|G|G|G|G|G|G|G|G|G|G}} | ||
{{pfrow|G|G|G|G|G|G|G|G|G|G}} | |||
{{pfrow|G|G|G|G|G|G|G|G|G|G}} | |||
{{pfrow|G|G|G|G| |G|G|G|G|G}} | |||
{{pfrow|G|G|G|G| |G|G|G|G|G}} | |||
{{pfend}} | {{pfend}} | ||
The rows stacked <br> after 4 bags. | |||
|{{pfstart}} | |{{pfstart}} | ||
{{pfrow| | | | | | | | | | }} | {{pfrow| | | | | | | | | | }} | ||
{{pfrow| | | | | | | | | | }} | {{pfrow| | | | | | | | | | }} | ||
{{pfrow| | | | | | | | | | }} | {{pfrow| | | | | | | | | | }} | ||
{{pfrow| | {{pfrow|G|G|G|G| | |G|G|G|G}} | ||
{{pfrow| | {{pfrow|G|G|G|G| | |G|G|G|G}} | ||
{{pfrow| | {{pfrow|G|G|G|G| | |G|G|G|G}} | ||
{{pfrow| | {{pfrow|G|G|G|G| | |G|G|G|G}} | ||
{{pfrow|-|-|-|-|-|-|-|-|-|-}} | {{pfrow|-|-|-|-|-|-|-|-|-|-}} | ||
{{pfrow|-|-|-|-|-|-|-|-|-|-}} | {{pfrow|-|-|-|-|-|-|-|-|-|-}} | ||
{{pfrow|-|-|-|-|-|-|-|-|-|-}} | {{pfrow|-|-|-|-|-|-|-|-|-|-}} | ||
{{pfrow|-|-|-|-|-|-|-|-|-|-}} | {{pfrow|-|-|-|-|-|-|-|-|-|-}} | ||
{{pfrow|-|-|-|-|-|-|-|-|-|-}} | {{pfrow|-|-|-|-|-|-|-|-|-|-}} | ||
{{pfrow|-|-|-|-|-|-|-|-|-|-}} | {{pfrow|-|-|-|-|-|-|-|-|-|-}} | ||
Line 472: | Line 156: | ||
{{pfrow|-|-|-|-|-|-|-|-|-|-}} | {{pfrow|-|-|-|-|-|-|-|-|-|-}} | ||
{{pfend}} | {{pfend}} | ||
Though of course, <br> lines have cleared. | |||
|{{pfstart}} | |{{pfstart}} | ||
{{pfrow| | | | | | | | | | }} | {{pfrow| | | | | | | | | | }} | ||
Line 481: | Line 165: | ||
{{pfrow| | | | | | | | | | }} | {{pfrow| | | | | | | | | | }} | ||
{{pfrow| | | | | | | | | | }} | {{pfrow| | | | | | | | | | }} | ||
{{pfrow| | | | | | | | | | }} | {{pfrow| | | | | | | | | | }} | ||
{{pfrow| | | | | | | | | | }} | {{pfrow| | | | | | | | | | }} | ||
{{pfrow| | | | | | | | | | }} | {{pfrow| | | | | | | | | | }} | ||
{{pfrow| | | | | | | | | | }} | {{pfrow| | | | | | | | | | }} | ||
{{pfrow|G|G|G|G| | |G|G|G|G}} | |||
{{pfrow|G|G|G|G| | |G|G|G|G}} | |||
{{pfrow|G|G|G|G| | |G|G|G|G}} | |||
{{pfrow|G|G|G|G| | |G|G|G|G}} | |||
{{pfend}} | |||
Leaving us with a <br> surplus. | |||
|} | |||
In order to offset this balance, it is necessary to change strategy. Continue to do the standard STZ loop, while using the following LO and IJ loops. | |||
=== The L, O piece loop === | |||
This pattern loops after a 2 bags of pieces. Order is not important, and therefore neither Hold nor piece previews are strictly required for it. | |||
{| | |||
|{{pfstart}} | |||
{{pfrow| | | | | | | | | | }} | {{pfrow| | | | | | | | | | }} | ||
{{pfrow| | | | | | | | |L| }} | |||
{{pfrow| | | | | | |O|O|L| }} | |||
{{pfrow| | | | | | |O|O|L|L}} | |||
{{pfend}} | |||
|{{pfstart}} | |||
{{pfrow| | | | | | |O|O|L|L}} | |||
{{pfrow| | | | | | |O|O|G|L}} | |||
{{pfrow| | | | | | |G|G|G|L}} | |||
{{pfrow| | | | | | |G|G|G|G}} | |||
{{pfend}} | |||
|} | |||
=== The I, J piece loop === | |||
This pattern loops after 2 bags of pieces. Order is not important, and therefore neither Hold nor piece previews are strictly required for it. | |||
{| | |||
|- valign="top" | |||
|{{pfstart}} | |||
{{pfrow| | | | | | | | | | }} | {{pfrow| | | | | | | | | | }} | ||
{{pfrow| | | | | | | | | | }} | {{pfrow| | | | | | | | | | }} | ||
{{pfrow| | | | {{pfrow|G|G|G|G| | |G|G|G|G}} | ||
{{pfrow| | {{pfrow|G|G|G|G| |I|G|G|G|G}} | ||
{{pfrow| | {{pfrow|G|G|G|G| |I|G|G|G|G}} | ||
{{pfrow| | {{pfrow|G|G|G|G| |I|G|G|G|G}} | ||
{{pfrow| | {{pfrow|G|G|G|G| |I|G|G|G|G}} | ||
{{pfrow| | {{pfrow|G|G|G|G| |J|G|G|G|G}} | ||
{{pfrow| | {{pfrow|G|G|G|G| |J|G|G|G|G}} | ||
{{pfrow| | {{pfrow|G|G|G|G|J|J|G|G|G|G}} | ||
{{pfend}} | {{pfend}} | ||
|{{pfstart}} | |{{pfstart}} | ||
{{pfrow| | | | | | | | | | }} | {{pfrow| | | | | | | | | | }} | ||
{{pfrow| | | | | | | | | | }} | {{pfrow| | | | | | | | | | }} | ||
{{pfrow| | | | | | | | | | }} | {{pfrow|G|G|G|G|J|J|G|G|G|G}} | ||
{{pfrow| | | | | | | | | | }} | {{pfrow|G|G|G|G|J|G|G|G|G|G}} | ||
{{pfrow| | | | | | | | | | }} | {{pfrow|G|G|G|G|J|G|G|G|G|G}} | ||
{{pfrow| | | | | | | | | | }} | {{pfrow|G|G|G|G|I|G|G|G|G|G}} | ||
{{pfrow| | | | | | | | | | }} | {{pfrow|G|G|G|G|I|G|G|G|G|G}} | ||
{{pfrow| | | | {{pfrow|G|G|G|G|I|G|G|G|G|G}} | ||
{{pfrow|G|G|G|G|I|G|G|G|G|G}} | |||
{{pfrow|G|G|G|G|G|G|G|G|G|G}} | |||
{{pfrow| | |||
{{pfrow| | |||
{{pfend}} | {{pfend}} | ||
|} | |} | ||
If the heights of | Because of line clears, the order is not very important. Even if you place pieces in the opposite order than what is shown, the net change in screen geometry will be the same. | ||
=== Putting it all together === | |||
If you play the standard method for 12 bags, the balancing method for 4 bags, and finally the reverse balancing method (with LO on the left and STZ on the right), then you will clear the entire screen allowing you to start over again and play indefinitely. Simple arithmetic will show this: | |||
Building with the standard pattern for 12 bags contributes stack heights of: | |||
36, 24, 36 | |||
Building with the balancing pattern for 4 bags contributes stack heights of: | |||
12, 16, 8 | |||
Building the balancing pattern for 4 bags, swapping the location of the STZ and LO loops, contributes stack heights of: | |||
8, 16, 12 | |||
Adding these all together gives you: | |||
56, 56, 56 | |||
So playing this method will clear the screen every 20 bags, or 140 pieces, after clearing 56 lines. | |||
== Open questions == | == Open questions == | ||
Adapting this method to the following situations is left as an exercise for the reader: | Adapting this method to the following situations is left as an exercise for the reader: | ||
*All tetris line clears | |||
*High [[Drop#Gravity|gravity]] | *High [[Drop#Gravity|gravity]] | ||
*No [[hold piece]] | *No [[hold piece]] | ||
*[[ | *No [[piece previews]] | ||
*14-piece bag randomizer | *14-piece bag randomizer | ||
== See also == | == See also == |
Revision as of 04:30, 25 June 2007
The following outlines a method of playing forever given the following conditions:
- the Random Generator is used to generate piece sequences
- the game has the Hold feature
- at least 5 piece previews are available
Standard Procedure
The general method is achieved by dividing the screen into self contained sections as shown below. Specifically, the 4 left columns, the 4 right columns, and the 2 middle columns will be treated as distinct regions, with specific pieces assigned exclusively to each region. Because the random generator provides strings of bags containing each of the 7 pieces in a random order, it is possible to construct a strategy around the relatively small variation, with looping patterns.
S, T, and Z will be placed to the left, L, J, and O will be placed to the right, and I pieces will fill the middle.
The S, T, and Z piece loop
This pattern loops after 4 bags of pieces. Depending on the order of the pieces for each bag, you may need to use Hold to force a piece to come last. Piece previews are technically not required to play this pattern.
The Z piece must drop last, so use Hold to change the order if necessary:
The T piece must drop last, so use Hold to change the order if necessary:
The S piece must drop last, so use Hold to change the order if necessary:
The S piece must drop last, so use Hold to change the order if necessary:
The L, J, and O piece loop
This pattern loops after a single bag of pieces. Depending on the order of the pieces, you will need to use a different construction. 5 piece previews are required to play this pattern, because in the worst case scenario you will need to see the first 6 pieces (active piece + 5 piece previews) in order to determine whether the O piece is coming last.
O piece first:
O piece last:
JO pieces first: (mirror for LO first)
Drop J |
Soft-drop O |
Slide O |
Drop L |
The I piece loop
This pattern loops every 2 bags. No use of Hold or piece previews is required. The player must simply alternate putting the I tetromino in columns 5 and 6 to reap tetrises.
|
|
Balancing the Stacks
Since the loops have a cycle of 4, 1, and 2 bags respectively, after playing 4 bags they will all be flat. However, the I loop will have only placed 8 rows compared to the 12 rows placed by both the STZ and LJO loops.
The rows stacked |
Though of course, |
Leaving us with a |
In order to offset this balance, it is necessary to change strategy. Continue to do the standard STZ loop, while using the following LO and IJ loops.
The L, O piece loop
This pattern loops after a 2 bags of pieces. Order is not important, and therefore neither Hold nor piece previews are strictly required for it.
|
|
The I, J piece loop
This pattern loops after 2 bags of pieces. Order is not important, and therefore neither Hold nor piece previews are strictly required for it.
|
|
Because of line clears, the order is not very important. Even if you place pieces in the opposite order than what is shown, the net change in screen geometry will be the same.
Putting it all together
If you play the standard method for 12 bags, the balancing method for 4 bags, and finally the reverse balancing method (with LO on the left and STZ on the right), then you will clear the entire screen allowing you to start over again and play indefinitely. Simple arithmetic will show this:
Building with the standard pattern for 12 bags contributes stack heights of: 36, 24, 36
Building with the balancing pattern for 4 bags contributes stack heights of: 12, 16, 8
Building the balancing pattern for 4 bags, swapping the location of the STZ and LO loops, contributes stack heights of: 8, 16, 12
Adding these all together gives you: 56, 56, 56
So playing this method will clear the screen every 20 bags, or 140 pieces, after clearing 56 lines.
Open questions
Adapting this method to the following situations is left as an exercise for the reader:
- All tetris line clears
- High gravity
- No hold piece
- No piece previews
- 14-piece bag randomizer
See also
- ST stacking, a method of making back-to-back T-spin doubles