Start Here
01|Scratch 是什麼?
先理解 Scratch 的定位,再開始學積木,會更容易建立整體概念。
Scratch 的核心特色
- 用積木拖拉來寫程式,不容易打錯字。
- 適合做動畫、故事、遊戲、互動問答、角色表演。
- 可以從角色、背景、聲音與按鍵互動快速做出成果。
- 作品可從簡單的小練習慢慢擴充成完整專案。
Scratch 官方鼓勵的創作方向
- Stories 故事
- Games 遊戲
- Animations 動畫
- Starter Projects 初學者範例專案
官方頁面強調「Think Big…But Start Small!」,也就是可以有大目標,但先從小作品開始最有效。[Source](https://scratch.mit.edu/starter-projects)
你可以把 Scratch 想成:
一個讓你一邊玩、一邊設計互動、一邊學會程式思考的創作平台。
Editor
02|介面介紹與舞台座標
Scratch 作品通常由「舞台」「角色」「腳本」三部分共同組成。
Scratch 編輯器基本區塊
- 舞台: 顯示作品結果的地方。
- 角色清單: 管理所有角色 Sprite。
- 積木區: 依顏色分類的積木工具箱。
- 程式區: 將積木拖到這裡組合程式。
- 造型 / 音效頁: 編輯角色外觀與聲音。
舞台座標觀念
- 中央通常是 (0,0)。
- x 越大越往右,x 越小越往左。
- y 越大越往上,y 越小越往下。
- 常見範圍約為 x: -240 到 240,y: -180 到 180。
1
先放事件積木
初學最常用的是「當綠旗被點擊」。
2
加入動作與外觀
例如移動、轉向、說話、換造型。
3
加入控制與判斷
讓角色重複執行、在特定條件下做反應。
Learning Path
03|初學者標準學習流程
如果你不知道該從哪裡開始,可以照這個順序學。
建議:
初學不要一開始就做大型 RPG 或平台跳躍遊戲,先做「打招呼動畫、接物遊戲、問答機」這類能快速完成的作品。
Important
04|積木形狀與語意
Scratch 不只要看顏色,還要看積木形狀。不同形狀代表不同程式功能。
帽子積木
事件起點
放在最上面,代表腳本何時開始。
堆疊積木
一般動作
能上下串接,例如移動、說話、等待。
C 型積木
包住其他積木
常見於重複、如果、重複無限次。
回傳值積木
提供資料
像數字、文字、位置、變數數值。
布林積木
真假判斷
常用於如果條件內,例如碰到邊緣?
重點:
初學者最常卡住的地方,是不知道為什麼有些積木不能互相接。其實通常是因為「形狀不匹配」:例如布林積木只能放進需要判斷條件的位置。
Blocks
05|Scratch 積木語法詳解
這裡把各個積木類別拆開解釋,並附上常用場景與範例。
動作 Motion
控制角色移動、方向、位置與滑行。
移動 10 步
右轉 15 度
前往 x:y
滑行到...
常用用途: 角色走路、飛行、追逐、巡邏。
外觀 Looks
控制說話、顯示、隱藏、換造型、圖層與特效。
說出「你好」
顯示
切換造型
改變顏色效果
常用用途: 台詞、動畫、角色變身、畫面切換。
音效 Sound
控制音效播放、節奏與音量。
播放音效
停止所有音效
音量設為
常用用途: 點擊音、過關音、背景音樂。
事件 Events
腳本的起點,也是互動作品的觸發中心。
當綠旗被點擊
當空白鍵被按下
廣播 訊息
當收到 訊息
常用用途: 啟動遊戲、換關、通知其他角色動作。
控制 Control
負責流程控制,是程式邏輯的骨架。
重複 10 次
重複無限次
如果 / 否則
等待 1 秒
常用用途: 動畫循環、敵人 AI、流程判斷、倒數。
偵測 Sensing
取得鍵盤、滑鼠、碰撞、問題回答與位置資訊。
碰到邊緣?
按鍵被按下?
詢問並等待
滑鼠 x
常用用途: 玩家控制、問答互動、碰撞偵測。
運算 Operators
提供數學運算、邏輯比較與文字處理。
+ - × ÷
< = >
且 / 或 / 不成立
連接文字
常用用途: 分數判斷、座標計算、答案比對。
變數與清單 Variables / Lists
紀錄會變動的資料或一組資料集合。
將分數設為 0
分數改變 1
顯示變數
清單新增項目
常用用途: 分數、生命、倒數計時、題庫。
我的積木 My Blocks
自訂常用功能,減少重複積木,讓程式更整潔。
定義 跳躍
定義 攻擊
定義 顯示結束畫面
常用用途: 大型專案、重複流程、角色技能。
常用積木組合
| 目標 |
積木組合 |
用途說明 |
| 讓角色走路 |
當綠旗被點擊 → 重複無限次 → 下一個造型 → 移動 5 步 → 等待 0.15 秒 |
動畫與移動結合,做出走路效果。 |
| 鍵盤控制 |
重複無限次 → 如果「右鍵被按下?」→ x 改變 6 |
常用於平台遊戲與接物遊戲。 |
| 碰撞加分 |
如果碰到蘋果? → 分數改變 1 → 前往隨機位置 |
最常見的得分機制。 |
| 答題互動 |
詢問並等待 → 如果 回答 = 正解 → 說「答對」 |
適合做測驗、教學互動。 |
| 角色同步換場景 |
廣播「第二關」 → 當收到「第二關」→ 切換背景 / 顯示角色 |
解決多角色合作問題。 |
Logic
06|核心程式觀念
這些觀念是從 Scratch 過渡到任何程式語言都會用到的基礎。
1. 順序 Sequence
積木由上往下執行。順序一改,結果可能完全不同。
當綠旗被點擊
說出「開始」
等待 1 秒
移動 50 步
播放音效直到結束
2. 事件 Event
讓程式知道什麼時候開始。
當綠旗被點擊
當空白鍵被按下
當角色被點擊
當收到「開始遊戲」
3. 迴圈 Loop
適合重複執行的動作,例如動畫、巡邏與持續偵測。
重複 10 次
移動 10 步
重複無限次
如果 <碰到邊緣?> 那麼
反彈
4. 條件判斷 If
根據情況做不同反應,是遊戲邏輯的核心。
如果 <分數 > 9> 那麼
廣播「過關」
否則
說出「繼續收集」
5. 變數 Variable
可以儲存數值或文字,並在執行時變動。
當綠旗被點擊
將 [分數] 設為 0
如果 <碰到星星?> 那麼
將 [分數] 改變 1
6. 廣播 Broadcast
讓角色與舞台互相傳遞訊息。
角色A:
廣播「開始第二關」
舞台:
當收到「開始第二關」
切換背景到 [第二關]
Projects
07|範例應用專案
從簡單到中等難度,逐步練會 Scratch 的主要積木。
範例一|會打招呼的角色
學習重點
當綠旗被點擊
說出「大家好,我是 Scratch Cat!」持續 2 秒
移動 40 步
下一個造型
等待 0.2 秒
下一個造型
說出「歡迎來學 Scratch!」持續 2 秒
範例二|接水果得分遊戲
學習重點
籃子:
當綠旗被點擊
重複無限次
如果 <右鍵被按下?> 那麼
x 改變 8
如果 <左鍵被按下?> 那麼
x 改變 -8
水果:
當綠旗被點擊
前往 x:(隨機) y:180
重複無限次
y 改變 -6
如果 <碰到 籃子?> 那麼
將 [分數] 改變 1
前往 x:(隨機) y:180
範例三|問答小測驗機
學習重點
當綠旗被點擊
將 [分數] 設為 0
詢問「3 + 4 = ?」並等待
如果 <(回答) = (7)> 那麼
說出「答對了!」持續 2 秒
將 [分數] 改變 1
否則
說出「答錯了」持續 2 秒
範例四|按鍵演奏小鋼琴
學習重點
當 a 鍵被按下
播放音效 [do]
當 s 鍵被按下
播放音效 [re]
當 d 鍵被按下
播放音效 [mi]
範例五|邊緣反彈球
學習重點
當綠旗被點擊
重複無限次
移動 8 步
如果 <碰到邊緣?> 那麼
反彈
改變 [顏色] 效果 25
範例六|換場景故事動畫
學習重點
角色A:
當綠旗被點擊
說出「我們出發吧!」持續 2 秒
廣播「場景二」
舞台:
當收到「場景二」
切換背景到 [森林]
角色B:
當收到「場景二」
顯示
說出「歡迎來到森林!」持續 2 秒
Debug
08|初學者常見錯誤與除錯技巧
程式寫不出來很正常,重點是知道怎麼找問題。
1. 沒有反應?先檢查最上面有沒有事件積木。
很多初學者把積木排好了,但忘記放「當綠旗被點擊」或其他事件。
2. 角色不動?檢查是不是放錯角色。
Scratch 每個角色都有自己的程式,請確認你是在正確角色上編寫。
3. 如果判斷沒生效?確認條件積木是不是放對位置。
例如「碰到邊緣?」必須放進 if 的條件區。
4. 分數不對?檢查是否忘了在開始時把變數設回 0。
5. 動作太快看不到?加入等待 0.1 秒到 0.3 秒。
這樣比較容易看到執行過程,也方便除錯。
6. 多角色不同步?使用廣播來協調。
比起用很多等待,有時廣播更清楚、更穩定。
Challenge
09|挑戰任務
試著自己完成,不看答案也沒關係,先做出版本再慢慢修正。
挑戰 A|走路動畫角色
- 按下綠旗後走 10 次
- 每次前進 10 步
- 每次切換一次造型
挑戰 B|追逐滑鼠角色
- 角色朝向滑鼠
- 持續移動追逐
- 碰到滑鼠附近時說「抓到了」
挑戰 D|簡單賽車遊戲
- 用左右鍵控制方向
- 碰到牆壁就停下或扣分
- 到達終點顯示過關
Quiz
10|Scratch 小測驗
做完後會立即顯示成績與解析。
作答說明: 共 10 題單選。
建議先讀完上面的教學再作答。
FAQ
11|常見問題
Scratch 算真正的程式設計嗎?
算。它只是把文字語法改成積木形式,但底層學到的仍是事件、迴圈、條件、變數、流程控制與資料邏輯。
學完 Scratch 後適合接什麼語言?
通常可往 Python 或 JavaScript 前進,因為這兩種語言都很適合初學者,且能延續你在 Scratch 學到的邏輯基礎。
為什麼有些積木不能接起來?
因為 Scratch 積木有不同形狀。像布林積木通常只能放進條件位置;帽子積木只能放在最上面。
什麼時候該用廣播,而不是一直用等待?
當你要控制多個角色同步進行、換場景、進入下一關時,廣播通常比單純等待更清楚、更容易維護。
References
12|參考資料與延伸學習
本頁整理時參考了 Scratch 官方的初學資源與入門方向。
下一步建議:
先照本頁完成 2 到 3 個小作品,再開始自己設計題目、角色與規則。真正的進步,往往來自「改造自己的作品」而不是只看教學。