我們就來一步一步解決你的每一步逆向過程吧
首先是第四步 召喚苔石牆
如推文所說 BlockID: 在 1.8 變成了 Block: 所以要改成 Block:"cobblestone_wall"
而它的 data value 則用 Data: 指定, 你要的是苔石牆所以是 Data:1
因此完整指令就是
summon FallingSand ~1 ~10 ~ {Block:"cobblestone_wall",Data:1,Time:1}
到這裡是簡單的地方
第三步, 召喚一個指令礦車存有以上指令
召喚指令礦車不難: summon MinecartCommandBlock ~2 ~ ~ {Command:""}
但問題在於要把指令放進 Command:"" 裡
因為指令裡有 " 這個字元, 這會跟 Command:"" 的 " 衝突
解法是在這些 " 前面加一個 \ (這叫做跳脫字元)
所以第三步的完整指令是:
summon MinecartCommandBlock ~2 ~ ~ {Command:"summon FallingSand ~1 ~10 ~
{Block:\"cobblestone_wall\",Data:1,Time:1}"}
綠色部份就是第四步指令, 只把 " 代換成 \" 而已
暗紅色的 \ 就是字串裡的跳脫字元
再來第二步, 設置一個指令方塊存有以上指令
同樣的設置指令方塊不難: setblock ~2 ~ ~ command_block 0 replace {Command:""}
問題一樣在於要把第三步指令放進 Command:"" 裡
這裡除了 " 這個字有問題之外, \ 這個字也有一樣問題
(不然你怎麼告訴麥塊說我就是要一個 \ 字在指令裡?)
所以 \ 這個字也要加上一個 \ 跳脫
因此第二步的完整指令就是:
setblock ~2 ~ ~ command_block 0 replace {Command:"summon MinecartCommandBlock
~2 ~ ~ {Command:\"summon FallingSand ~1 ~10 ~ {Block:\\\"cobblestone_wall\\\",
Data:1,Time:1}\"}"}
上面的 \ 有兩種顏色
普通白色的 \ 是給白色指令看的跳脫字元, 這樣才會產生第三步的指令
然後暗紅色的 \ 是給紅色指令看的跳脫字元, 這樣紅色指令才會產生第四步的指令
所以最後你要放進最初始的指令礦車中的指令就是上面三行那一串了