操作の最適化(上級編)

前置き

テトリスやってたらよく出てくる話題だと思うんですよ 最適化 ちなみに英語ではfinesseっていいます

簡単に言うなら「操作を単純にしてミスをへらす置き方」ってことだけど、ここには忘れがちなことが隠れてる それは「なるべく速く置ける」という条件が付いてるということ

とは言っても横方向の移動しかないからすごく単純な最適化問題なんだけど、ミスりにくくかつなるべく速く置ける操作はどんなものか?を考えるために、まず普通の最適化についてすこしだけ

最近はテトリスの最適化についてまとめてあるサイトも多くなって、ググれば色々なページがヒットするらしい!(今検索して知った)

ねぎぽよとスナイピング テトリス攻略っ[その22]最適化を覚えよう

0G 60 Hz SRS Movement Finesse - Hard Drop - Tetris Wiki

テトリスDSwikiが自分の知ってる一番古いページだけど見れなくなってた…(;_;)

この記事では基本的な最適化はできてる人向けなので、できない人はまず↑のページなどで基本を覚えましょう。 これも置いとこ 最適化(基本のほう)で作ったテト譜

 

 

本題

でまぁ、

docs.google.com

 

ここでも紹介されてるけど、まずは「DAS(横移動の溜め)や空白時間を減らす置き方」について書きます

 

 

f:id:p8g:20180506112225p:plain

例えばこの場面、ツモがSミノ(現在手)、Iミノと来ているとする

くぼみにSミノを置いてIでテトリスをする時、基本的な最適化による手順は次のようになる

f:id:p8g:20180506112452p:plain

→キーを押して操作開始

 

f:id:p8g:20180506112614p:plain

壁まで到達 →キーを離して←を押す

 

f:id:p8g:20180506112718p:plain

くぼみの上に来たので←キーを離してハードドロップする

 

f:id:p8g:20180506112957p:plain

Iミノ出現 ←キーを押して操作開始 壁に着くまでに左回転しておく(右回転だと移動が1列分遅れるので左回転)

 

f:id:p8g:20180506113250p:plain

壁まで来たので←キーを離してハードドロップしておわり

 

この一連の操作でもっと速くなる部分があったんですけど、どこか分かります?

ちなみにSを壁まで移動せず目押しするのは最適化じゃないです(目押しのプロなら別だけど…)

 

 

f:id:p8g:20180506112718p:plain

この部分です ここで一旦←を離してハードドロップしてますが、次のミノの最初の入力が←で同じなので、離す必要がありません。←を押しながらハードドロップすることで、Iミノの横移動の溜めをSミノの時点から開始することができます 操作数も減って速くなるんだからやらない理由がないw

 

こんな感じで、基本的な最適化だと、1つのミノと置き場所に対して1つの操作が割り振られてたけど、上級編では現在手と次の置き場所から操作を決定します

他の例を全部言ってると画像だらけ&長くなってしまうのでテト譜で… 操作の流れは↑にあったgoogleスライドに全部あるので、それを参考にしたらいいと思います

最適化(上級編)テト譜

 

これができるようになると、面白いことが起こります

f:id:p8g:20180506124900p:plain

この場面 普通にLミノを右の2段の穴に入れるために、押し付けて回転の操作で置いて、Oミノを即ハードドロップ みたいな感じになると思います

 

f:id:p8g:20180506125206p:plain

じゃあ、ネクストがこうなると…?

Lミノは右の2段穴に折り返しで置いて、←の横溜めを作っておいてIミノでテトリスをするのが速い

こんな感じで、「ネクストによって最適なミノの操作方法が変化する」というのが、難しくまた面白いところ

代わりの置き方がある操作といえば、これも

f:id:p8g:20180506130507p:plain

Tミノを右回転してくぼみにはめる場合、折り返し+回転か、コンコン+回転になるんだけど、これ、次の溜めに使える方向が、折り返しだと→で、コンコンだと←なんですよね だから、次のミノを右端などに置きたい場合は折り返して、左端に置きたいときはコンコンにするのが最良ということになりそうですね

 

 

 

次は、「目押しでもOKな場合」を書きます

ぷよテトやテトリスDSなど、ARR(横溜めがたまってから始まるはやい横移動)の間隔が比較的遅いテトリスの場合、ある程度は目押しができる場合があります でも、特定の1列にピタッと落とすのはそれでも厳しいところがある なら、

 

f:id:p8g:20180506122536p:plain

受け入れてくれる列が固まってたら目押しでも行けるのでは?2~3列あったらプロじゃなくても目押しは安定してできそうじゃない?

 

f:id:p8g:20180506123022p:plain

もうこれを見たら、Oミノを折り返して(ここから→の溜め継続)左の2×2穴に入れて、Zを立てて目押しして、Jを右端に置くまで見える この3ミノを操作するのに必要な横溜めの回数は2回だけ!(通常なら3回) さらに、Zミノはコンハードドロップ(orコンコンハードドロップ)のところをARRのはやさでできるのでさらに速い やばいでしょこれ超速い

まぁ、これ使えるの40ラインか、超見えてるときの実戦ぐらいなんだけどね 使えるようになりたい

 

 

最後に「ソフトドロップと地形を使って置く」を書きます

上部の方まで積み上がっていると、せり上がりをもらった直後など、折り返しなどの操作をしようと思っても地形に当たってしまって逆に置きミスしてしまうことがあります そうなりそうな時は、地形を使いながら置くと、置きやすい場合があります 上に書いた2つよりは簡単

f:id:p8g:20180506135218p:plain f:id:p8g:20180506135632p:plain

ソフトドロップをしながら←押しっぱなしにすることで、この位置に来ます ここで回転をすれば、置きミスの心配もなく置くことができそう

 

 

 

 

最初の「DASや空白時間を減らす置き方」は、スプリント、40ラインの上級者なら(自然とできるようになったのか分からないけど)やっているのをよく見かけます でもこんな感じでまとまっているのを今まで自分が見たことがなかったので今回書いてみました わかりやすいように上手く書けた自信は全く無いですが、参考になったら幸いです(´・ω・`)

あと最後に、理論的に最適な操作はあるけど、人によって得意不得意は出てくると思うので、自分にいちばんしっくり来るのを選んで使うのがいいと思います それじゃノシ