Skip to content

Instantly share code, notes, and snippets.

@knewjade
Last active June 11, 2023 08:19
Show Gist options
  • Save knewjade/2b8620cf81b7dd9ecc0e75a6084b536d to your computer and use it in GitHub Desktop.
Save knewjade/2b8620cf81b7dd9ecc0e75a6084b536d to your computer and use it in GitHub Desktop.

パフェのための基礎理論

テトリス Advent Calendar 2017 3日目の記事になります。

こんにちは。newjade と申します。普段はパフェ用のツールを作りつつ、理論値を調べているパフェ屋さんです。だいたい twitter に出没しています。

今回の記事は、連パフェについてです。ワールドルールを基準に書いています。 パフェ自体、これまではまとまった資料がほとんどありませんでした(テト界隈だとあまり人気がなさげ)。

ただ最近になり、harddropのwikiに開幕パフェの記事が掲載されました。 http://harddrop.com/wiki/Perfect_Clear_Opener

開幕パフェに必要なことが網羅されていて、本当にとても良い記事だと思います。(投稿されたのがアドカレ登録後で実は結構焦った)

英語で読みにくいという方もいると思うので、この記事ではこれをベースとして、連パフェについて補足をしつつまとめていきます。 本文は割と長いです。

対象読者

  • パフェを理論的な観点であまり調べたことがない方
  • 連続パフェをしたことがない方

今日の記事では、パフェの基本的な理論と考え方について書きます。

もう既に10連パフェできるよという方は、おそらくブラウザバックしても大丈夫だと思います。

そもそもパフェ・連パフェとは

Perfect Clear(PC; パフェ; パフェクリ)のことで、一言でいえば「全消し」のことです。 最もスタンダードなのは4ラインパフェで、10個のミノを使ってフィールドの下4段を綺麗に埋めます。

image

1回パフェをすると、また次の10個のミノを使ってパフェを目指すことができます。 これを繰り返すことを連続パフェ(連パフェ)と言います。

image

対戦での連パフェはテトvsテトの場合、出来ても 2〜3連パフェ くらいかと思います。

ぷよぷよvsテトリスの場合、上手い人だと相手次第で何回もパフェできそうな感じはあります。

と言っても、初心者がすぐに試合で連パフェを決めるのは至難の技なので、まずは40ラインでやる10連パフェがオススメです。 ※ ツモ次第では 40ライン11連パフェ も可能です。

連パフェの練習が対戦で直接活きる場面は少ないですが、間接的に平積みなどで良い効果があると思います。

  • 綺麗な地形を保つミノの組み合わせを意識するようになる
  • ネクストをみるようになる
  • 7種1巡を意識するようになる

あと楽しいです(ただし人による)。

パリティ

理論的にテトリスを説明するとき定番の話です。 フィールドを市松模様で塗り分けたとき、各ミノを構成する黒白の個数は次のようになります。

  • T以外 → 2:2
  • T → 3:1

image

4ラインパフェの場合、黒白はそれぞれ20個ずつ必要なので、Tが奇数個だとフィールドを綺麗に埋めることができません。

ただし、1行だけ(または連続した奇数行)ライン消去することで、黒白のバランスを変えることができます。 正確には次のようになります。

  • 単体で消去したラインより下にあるブロック数が奇数 = T 奇数個分 パリティが変わる
  • 単体で消去したラインより下にあるブロック数が偶数 = T 偶数個分 パリティが変わる
  • 連続した偶数行同時にライン消去 = パリティに変化なし

もし一番下の段を消した場合、空きブロックは 0 で偶数となります。

たとえば、パフェテンプレの形をみてみます。すでに地形でTが1つ使われています。

image

実際にパリティを数えると 黄色15:灰色13 で偏っています。

image

ここでSを入れると、2段目が揃って、1段目は3マス分だけ空いています。

image

この後の地形でパリティを数えると 黄色11:灰色11 で偏りが戻っています。つまり、Tが1個分変化したと言えます。

image


ここからわかることは次の2つです。

Tが奇数個のときは、下に奇数個をスペースがある単体行のライン消去が必要

Iホールドパフェテンプレを考えてみます。 最初の選択肢は、基本的に「I縦」「I横1段目」「I横3段目」になります。

image

image

image

もしネクストで使えるミノにTがないとき、「I横1段目」に置くケースは、2段目単体の消去ができなくなるため、あまりないです(例外は IIOL, IOSJなど、I以外でもう1度ライン消去できるパターンです)。

別な例をみます。下の地形にはTがありません。このとき次のTをどこにおくか考えます。

image

このときにパフェを見切れていないと、右下の隙間を埋めたくなるかもしれません。 もしくは穴を塞がなくて収まりの良さそうな場所においてしまうかもしれません。 もしそうしてしまうと下のように、パフェまでにさらにもうひとつTが必要になってしまいます。

image image

ちなみに正解はこんな感じです。パフェだと穴の上にミノをおく勇気が必要です。

image

Tが偶数個のときに単体行のライン消去するときは、下に偶数個をスペースを残す

Tが奇数個のときと反対になります。

もしネクストで使えるミノにTがあるとき、「I横3段目」に置くはケースはあまりないです。(例外は I横3段目消去→JLで2段目消去など、T奇数個同様に、I以外でもう1度ライン消去できるパターンです)


一番大切なのはTが何個であるか、把握・予測することです。


縦パリティ

パリティではフィールドを市松模様上に塗り分けました。 その塗り分けを縦1列ごとにしたものを縦パリティと呼びます。 各ミノは黒白何個ずつで構成されるかは次の通りです。

  • SZO・I回転なし/裏向き → 2:2
  • I右回転/左回転 → 4:0
  • LJ → 3:1
  • T回転なし/裏向き(上向き・下向き)→ 2:2  ※ ここではT横と呼ぶ
  • T右回転/左回転(右向き・左向き)→ 3:1  ※ここではT縦と呼ぶ

4ラインパフェの場合、黒白はそれぞれ20個ずつ必要なので、3:1で構成されるもの(LJ・T縦)の合計個数が偶数個でなければなりません。

image image

縦パリティは、市松模様と違ってライン消去の影響を受けません。 そのため、ネクストをみてLJTの数を数えるだけで、Tの方向をある程度予測できます。

Iホールドパフェテンプレを考えてみます。地形部分にL+J+T縦があるので、縦パリティに偏りがある状態です。

image

image

そのため、残りの部分にはLJ・T縦を奇数個だけ使います。

LJを2個とも使う場合

この場合はTが必要になります。そのため多くは ITLJ となります(一応LTJSの可能性もあり)。

このときTは縦になります。

image

image

LJを1個だけ使う場合

LJTが3つともくるケースはなかなかないため、基本的にLJどちらかを使います。

もしLJを両方ツモった場合、片方はホールドすることになります。

image

このときTを置く場合は、必ず横になります。

image

四角の境界

高さ4の四角をつくるとき、最も簡単なものはIOを組み合わせたものだと思います。

image

それ以外のSZも使うような高さ4の四角を考えます。このとき、左端/右端の列にLJ・T縦が必要となります。

image image image image

SZの微妙な隙間を埋めるにはLJ・T縦が必要となり、これは感覚的にもわかると思います。

はじめのうちは、何も考えずに四角形をつくりがちになるかと思いますが、LJTの数に気をつけないと残りの四角をつくる分がなくなってしまいます。

image

壁の左右の空白ブロック数

Q. この地形からパフェできる?

image

A. できない

Jによってできた壁の左右の空白を数えると、左側17個・右側15個になっています。 1つのミノは4個のブロックで構成されているので、4の倍数でなければ埋めることができません。

7種1巡

ワールドルールの仕様の一つで、近年のテトリスのツモは完全なランダムではなく、一定の規則性があります。

具体的には、ツモは7種類のミノを1セット(バッグと呼ばれる)となっており、その中の並びがランダムになります。 そのため、特定のミノだけが偏って降ってくることはなく、ネクストより先のミノもある程度予測できます。

ツモの例)

[TSZLJOI] → [SLOJIZT] → [IZTOJSL] → ...

あくまで [ ] の中で同じ種類のミノはありません。


4ラインパフェの場合、1回のパフェでミノを10個ずつ使うので、7回パフェする(70個のミノを使う)とツモの規則性はゲーム開始時と同じになります。

各パフェ回数での、選ばれるミノの規則性は次の通りです。

たとえば「4回目」の場合、「3回目でホールドしたミノ」+「3回目の最後で使われなかった4ミノ」+「ランダムに選ばれる6ミノ」の11ミノでパフェを目指すことを表しています。

パフェ 前で使わなかったミノ 7種類から選ばれるミノ
1 回目 7 4
2 回目 ホールドミノ + 3 7
3 回目 7 3
4 回目 4 6
5 回目 1 7 2
6 回目 5 5
7 回目 2 7 1
8 回目(≒1回目) 6 4

この表からわかることはいくつかあります。

2回目(9回目)・7回目は、はじめから最低限必要な10ミノが確定する

7回目は11個目のミノが不確定ですが、その前の組み合わせが決まっているので、パフェしやすいといえます。

またもし7回目で、先頭からの10ミノでパフェできれば、8回目で開幕のテンプレが使えるようになります。

5回目・7回目以外では同じ種類のミノが3個落ちてくるケースは少ない

「ひとつ前のパフェで、最後のバッグ以外でホールドする(最初の方にホールドしてそのまま次に持ち越す)」場合、 何回目であっても、同じ種類のミノが3つ落ちてくる可能性が高くなります。 その場合でも、ホールドしたものが3個落ちてくるかも、ぐらいに思っておけば問題ないです。

ただし、SZホールドで3個になった場合は、絶対にパフェできないルートに入る可能性があるので、注意してください。

ホールドに関係なく、5回目・7回目では同じミノが3個落ちてくる可能性があります。 ちなみに、5回目・7回目で3個落ちてくる確率は以下の通りです。 (確率は「ひとつ前のホールドを最後のバッグ内でする」が前提です。)

  • 5回目: 52.38 % (4656960/8890560)
  • 7回目: 42.86 % (3175200/7408800)

割と高いですが、3個目は必ずラスト2つに含まれるため、ホールドで逃げられる可能性が高いです。 そのため、そこまで気にする必要はありません。

4回目・6回目以外ではすべての種類のミノが最低1個は落ちてくる

4回目・6回目以外は「7のバッグ」があるのですべてのミノが落ちてきます。ただし、8回目は少し注意が必要です。

ちなみに、4回目・6回目で1個も落ちてこないミノがある確率は 28.57 % (3628800/12700800) です。 (確率は「ひとつ前のホールドを最後のバッグ内でする」が前提です。)

調べてみたら思った以上に高かった。

2ラインパフェをしたら、規則性は4回分先のものになる

2ラインパフェはミノを5個しか使わないため、4ラインの流れとは少し変わります。

もし2回目で2ラインパフェしたら、次は6回目のパフェが始まります。

image


このことをなんとなくでも覚えておくと、どのミノが降ってきそうかなんとなくわかるようになります。



明日 4日目 は、もう少し実践に近いパフェについて書いています。よろしくおねがいします。

4日目:連パフェのながれ

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment