俄羅斯方塊-從入門到退坑(3. 踢牆)

Helomair Wu
Mar 6, 2024

--

前言

從這章開始要稍微深入一點講解機制類的東西,可能會有點枯燥,可以直接看懶人包記住一些技巧怎麼用後就可以跳過去了。

等哪天想了解多一點但不知道要從哪裡開始看的話,再回來看看

本文暫時不會講解 180 度轉的移動機制

回到目錄

懶人包

正文基本上都在講解機制,如果只是想學怎麼轉的話可以看看保羅方塊旋轉教學 或是直接看正文最後一部分常用踢牆技巧

最懶的方法就是,把方塊卡到該位置後,順轉逆轉各按四下,進不去就拿180轉試試,不行就算了

正文

本文圖片皆來自 https://tetris.wiki/Super_Rotation_System

Super Rotation System (以下簡稱SRS) 中定義了方塊初始方向與位置、方塊基本旋轉、踢牆判定,本文重點講解踢牆,其他的部分看情況補上。

SRS 定義了四種代號來代表方塊旋轉的方向:

  • 0 = 起始狀態
  • R = 從起始狀態按一次順時鐘旋轉 (右)
  • L = 從起始狀態按一次逆時鐘旋轉 (左)
  • 2 = 從起始狀態按兩次順轉 (或是逆轉),總之就是轉180度

本文會根據方塊重心踢牆判定踢牆後移動方式常用踢牆技巧等部分講解

一、方塊重心

先看看下面這張圖,每一行最左邊的小圖為方塊起始狀態,後面為每次按下順轉後的情況,白點為重心

圖片來源:https://harddrop.com/wiki/File:SRS-pieces.png

根據定義,方塊的旋轉都是繞著重心在旋轉,單方向按下四次後會回到初始狀態

所以方塊一般來說
不會因為旋轉而改變重心的水平位置
不會因為旋轉而改變重心的水平位置
不會因為旋轉而改變重心的水平位置

而唯一的例外就是踢牆

二、踢牆發生

踢牆發生於 方塊基本旋轉受阻 (撞到牆面或地面,或是跟現有堆疊卡到)

以下為 J 方塊逆轉(向左旋轉)後,會發現有一部份跟目前場面卡到,便會觸發踢牆機制,判定方塊最終位置

因為 J 方塊的重心為長條三格的中間那格,所以才會這樣旋轉,並在旋轉完後撞到現有堆疊

三、方塊移動

踢牆機制觸發後會有5次位置判定,Test1 ~ Test5,過程中有地方判斷成功就中斷判定並將方塊放置

假如過 Test 5 後都沒有地方可放,便判定此次旋轉失敗,狀態不變

J, L, S, T, Z 使用同一個判定表 ,I 方塊自己獨立一個判定表,O沒有踢牆機制

表格中的座標為重心座標,(0,0)就是當前位置,(+1,0)就是重心往右一格,以此類推

以下給個範例,請根據第一張表的最下面 0->L 那行來看

  1. 起始位置,按一下逆轉
  2. Test 1,重心於(0,0)位置不可放 (因為和目前場面卡到)
  3. Test 2,根據表格將重心移到(+1,0)做判定,依舊不可放
  4. Test 3,根據表格將重心移到(+1,+1)做判定,依舊不可放
  5. Test 4,根據表格將重心移到(0,-2)做判定,依舊不可放
  6. Test 5,根據表格將重心移到(+1,-2)做判定,可放,此次旋轉成功。

四、常用踢牆技巧

建議可以看看 https://harddrop.com/wiki/SRS 下面的Wall Kick Illustration,詳細且有圖片說明
這裡目前僅列出作者在實戰中常用的,180度轉看情況更新

S 方塊

  1. 左右無高牆,先 R 一次卡到定點,再 R 一次可進

2. 左右有高牆,進洞前先 L ,到底後再 L 一次可進

Z 方塊

跟S完全相反

  1. 左右無高牆,先 L 一次卡到定點,再 L 一次可進
  2. 左右有高牆,進洞前先 R ,到底後再 R 一次可進

J 方塊 L 方塊

  1. 這種形狀可以塞進去,J順轉L逆轉
J方塊可進
在此位置順轉
L方塊可進
在此位置逆轉

I 方塊

I 方塊太多,強烈建議去HD官網看完整一點

  1. 以下順轉可進

2. 以下逆轉可進

T 方塊就留到下一章 T轉機制

回到目錄

--

--