顯示具有 Scratch 標籤的文章。 顯示所有文章
顯示具有 Scratch 標籤的文章。 顯示所有文章

Scratch 3:簡易數位鋼琴(Simple Digital Piano)

若您覺得文章寫得不錯,請點選文章上的廣告,來支持小編,謝謝。

If you like this post, please click the ads on the blog or buy me a coffee. Thank you very much.

本篇文章將要製作一個簡易的電子鋼琴。

遊戲功能:
  1. 主要角色(本例為恐龍 Dragon)的會移動到按下鋼琴鍵盤的上方。
  2. 恐龍會有動作與變色。
  3. 按下鋼琴鍵盤會發出音樂。
您會做出什麼樣子的鋼琴呢?

遊戲試玩:



製作步驟:(底下程式積木圖形僅供參考,設計方式不是只有一種。)

步驟一:選擇主要角色(本例為恐龍 Dragon)。




步驟二:主要角色積木(本例為恐龍 Dragon)。

步驟三:使用方形工具繪製鋼琴鍵盤。




步驟四:鋼琴鍵盤角色積木。



步驟五:複製鋼琴鍵盤角色,本例複製四個。



步驟六:排列鋼琴鍵盤位置與主要角色(本例為恐龍 Dragon)位置,類似下圖




步驟七:修改鋼琴鍵盤角色積木內的演奏音階使每個鋼琴鍵盤角色發出不一樣的音階



恭喜您完成了。

https://scratch.mit.edu/projects/749493707

mBot 遇上打磚塊,來運動囉。

若您覺得文章寫得不錯,請點選文章上的廣告,來支持小編,謝謝。

If you like this post, please click the ads on the blog or buy me a coffee. Thank you very much.

修改文部落格的文章 Scratch 遊戲:打磚塊 後,就可以用 mBot 裡的超音波來玩打磚塊遊戲了。只把打磚塊遊戲中平台角色的程式積木


換成用超音波的距離偵測


這裡只對座標轉換的方式做點說明:
1. 限制超音波所感測到的距離在30公分以下。
2. Scratch的水平畫面(X座標)寬度為 480 (從 -240 到 240 )。
3. 於是 超音波所感測到的距離 * 16 - 240 就會是 ( -240 到 240 )了。



底下用手拿書本來玩的影片:



Scratch 3 遊戲:刮刮樂 ( Scratch Game: Scratch-off)

若您覺得文章寫得不錯,請點選文章上的廣告,來支持小編,謝謝。

If you like this post, please click the ads on the blog or buy me a coffee. Thank you very much.


【遊戲名稱】刮刮樂 ( Scratch Game: Scratch-off)


【基本動作】
  1. 按下綠旗,移動滑鼠,開始刮刮刮。
    Click the green flag to Scratch....


製作步驟:(底下程式積木僅供參考,設計方式不是只有一種。)
步驟、選擇背景(Backdrops)


    步驟、使用 圓形文字 工具畫硬幣(Coin),中心點設在硬幣的下方。

    步驟使用 矩形 工具畫黑色區塊(Rectangle),中心點設在的黑色區塊的左上角。


    步驟、硬幣程式碼
    功能是按下綠旗後,硬幣跟著滑鼠移動。






    步驟五、建立
    黑色區塊(Rectangle)的函示積木(My Blocks),名稱為 blackScreen。並將 "Run without screen refresh" 勾選。


    步驟六
    黑色區塊(Rectangle)積木。功能為
    1. 按下綠旗時用黑色區塊的分身(Clone)填滿整個螢幕的背景。
    2. 當硬幣碰到黑色區塊的分身(Clone),將此分身刪除。



    額外功能:
    • 限時,時間倒數,時間到,停止遊戲。

    專案範例網址:https://scratch.mit.edu/projects/752532834/

    Scratch 3 免費線上教材

    若您覺得文章寫得不錯,請點選文章上的廣告,來支持小編,謝謝。

    If you like this post, please click the ads on the blog or buy me a coffee. Thank you very much.

    在知道Scratch 線上的免費資源之前,當然要先知道Scratch這個軟體在那兒可以取得。Scratch的官網有提供兩種版本:

    圖文教材
    STEAM 教育學習網 https://steam.oxxostudio.tw/category/scratch/index.html
    橘子蘋果開放教材:https://orangeapple.co/csr/open-material

    影音教材

    ***個人推薦***均一Scratchhttps://www.junyiacademy.org/computing/programming/scratch/scratch-3-m01***個人推薦***

    個人推薦均一Scratch來學習

    Scratch 3 猜拳遊戲(Rock Paper Scissors Game)

    若您覺得文章寫得不錯,請點選文章上的廣告,來支持小編,謝謝。

    猜拳遊戲是很多人都會玩的遊戲,猜拳的規則如下:
    • 出拳時可以出剪刀(Scissor)、石頭(Rock)、布(Paper)。
    • 石頭勝剪刀、剪刀勝布、布勝石頭。
    • 兩人對戰。
    • 猜拳時需喊口令。
    可見下圖(此圖取自維基百科)


    Scratch積木程式先備知識:
    變數(Variable)、亂數(Random number)、角色(Sprite)、造型(Costume)、廣播(Broadcast)的使用。


    遊戲製作步驟(底下程式積木僅供參考,設計方式不是只有一種。)
    步驟一:下載圖檔
    可用 Google 尋找,但要注意版權,此文所用石頭、剪刀、布的圖檔取自 https://iconarchive.com/show/windows-8-icons-by-icons8.html

    步驟二:建立 Human 角色
    按下角色的貓臉(右上角有加號)圖示,選擇繪圖,角色名稱為 Human

    在造型的頁面,點選貓臉(右上角有加號)圖示,選擇上傳

    選擇的石頭、剪刀、布的圖檔
    此時,Human角色的造型如圖:

    更改造型的順序,讓
    • 造型 1 為剪刀
    • 造型 2 為表布
    • 造型 3 為表石頭

    步驟三:建立 Computer 角色
    在 Human 角色上按下右鍵,點選複製,將角色命名為 Computer


    步驟四:修改 Computer 角色造型
    可任意修改 Computer 角色的造型,本文是用繪圖裡的填滿工具來改變 Computer 角色的石頭、剪刀、布的顏色

    更改造型的順序,讓
    • 造型 1 為剪刀
    • 造型 2 為表布
    • 造型 3 為表石頭

    步驟五:建立變數
    建立電腦出拳的 ComHand 變數,以及玩家出拳的 HumHand 變數。

    在此範例會使用變數的數字來表示出了什麼拳:
    • 數字 1 代表剪刀
    • 數字 2 代表布
    • 數字 3 代表石頭

    步驟六:設計 Human 角色積木程式


    步驟七:設計 Computer 角色積木程式

    步驟八:設計背景畫面
    此部分筆者設計四個背景畫面:遊戲進行中( Normal )、玩家勝利( YouWin )、玩家輸了( YouLose )、平手( Draw )。

    步驟九:在背景設計判斷輸贏積木程式

    此部分的程式邏輯為:

    步驟十:試玩遊戲(https://scratch.mit.edu/projects/413785684/)

    遊戲操作方式:
    • 按下 r, s, p 開始猜拳
    • 按下 r 出石頭
    • 按下 s 出剪刀
    • 按下 p 出布

    2020 雲林縣仁和國小 mBot 夏令營活動紀錄

    2020/07/15 ~ 2020/07/17 三天,筆者受邀至雲林縣仁和國小進行 mBot 夏令營的活動,在此紀錄,也感謝仁和國小 余老師的邀請。


    2020/07/15 mBot 夏令營 Day 1:
    • mBot元件認識
    • mBot 介紹
    • mBot 三模式
    • 認識Scratch 積木,打地鼠遊戲製作
    • 燈光音樂秀
    Day 1 上課講義


    Day 1 活動剪影

    Day 1 Scratch 打地鼠作品


    Day 1 心得:
    小朋友的音感實在好。
    小朋友很有才。
    請繼續發揮自己的想法喔。


    2020/07/16 mBot 夏令營 Day 2:
    • 光線感測器
    • 走長方形
    • 推紙杯
    • 軌道設計
    • 巡跡程式設計
    • 最後來個遙控器相撲比賽

    Day 2 上課講義

    Day 2 活動剪影

    Day 2 相撲比賽


    心得:
    每位小朋友都認真地完成屬於自己的積木程式,也走完巡跡路線,明天一起繼續自我挑戰喔!

    2020/07/17 mBot 夏令營 Day 3:巡跡競賽。
    • 1. 直線競速
    • 2. 巡跡賽
    • 3. 創意軌道賽


    疑,直線不是容易走嗎?
    為什麼有紅色線呢?
    是黑色就可以用嗎?
    ...etc...


    Day 3 上課講義

    Day 3 活動剪影

    Day 3 直線競速


    Day 3 循跡賽


    Day 3 創意軌道賽


    心得:
    認真又積極的一群好孩子,有緣再會啦!

    心得總結:
    一開始有點擔心學童對程式設計會有害怕的情況,於是在開始積木程式教學時,就對學童說:「程式設計沒有標準答案,有想法,先試試,我也會協助你們喔。」在製作 Scratch 打地鼠時,學童就開始很積極地詢問:「怎麼計算分數」、「怎麼計時」等功能,學童在設計打地鼠一直意猶未盡地想繼續修改。而在循跡部分,也請學童自己設計軌道與設計程式,試著走走看,走完後,在一起討論所發現的疑問,例如:「同樣的程式,為什麼每次走的結果都不一樣」、「同樣的程式,在不同車子會有不同的結果」等。課程結束時,學童們也是意猶未盡地想繼續比賽,真是一群認真又積極的好孩子!我們有緣再見喔!

    Scratch 3 遊戲:人工智慧篇

    若您覺得文章寫得不錯,請點選文章上的廣告,來支持小編,謝謝。

    在讀者閱讀此篇文章之前,請花個時間閱讀用十分鐘快速瞭解 《人工智慧的過去、現在與未來》,了解一下人工智慧是什麼玩意兒。而此篇文章要介紹如何用Scratch來製作有人工智慧的遊戲。雖然筆者在Scratch簡易人工智慧:有智慧的蟑螂與蟲蟲一文裡,修改了兩個Scratch遊戲,分別為 Scratch 遊戲:水中踩蟑螂Scratch 遊戲:蟲蟲危機,讓遊戲的蟑螂與蟲蟲看起來有智慧(還請AI大師們用力鞭策在下),修改的想法為三種:隨機移動、沿著X軸移動、沿著Y軸移動,而這三種方式用來當成遊戲中人工智慧的入門範例似乎可行(!?)。總之,這要看讀者們對人工智慧的理解是什麼,以及對人工智慧一詞的定義是什麼,才能自己做判斷(茶)。

    此外有聽過深度學習的讀者們,可能會覺得人工智慧不是要讓電腦自己來學習嗎?以這兩個Scratch遊戲來說,根本就不能算人工智慧(笑)。恩,好了,這閒聊的話題就到此為止,開始進入主題囉!

    在Scratch官網的專案分享上有個由SenatorPenguin所分享的Tic-Tac-Toe: Human vs. Computer專案,請讀者玩玩看這個遊戲。


    有沒有感覺很像在與真人對戰呢?

    那這遊戲是怎麼做出來的?有興趣的讀者可以到Tic-Tac-Toe: Human vs. Computer專案按下切換到程式頁面按鈕,就可以看到程式積木了。此外還有Scratcher網友分享聊天機器人:https://scratch.mit.edu/projects/229484236/https://scratch.mit.edu/projects/105644873/;西洋棋:https://scratch.mit.edu/projects/148769358/;五子棋:https://scratch.mit.edu/projects/246218177/https://scratch.mit.edu/projects/250789603/等可以讓玩家(人)與電腦對戰。一樣要請讀者試玩這幾個遊戲,看看有沒有覺得電腦很厲害?

    遊戲所使用的人工智慧通常會分成底下幾種(當然不只有這樣子的分法):漫遊型AI、行為型AI、策略型AI。漫遊型AI是指遊戲中的角色會根據固定的模式來行動,例如左右移動、上下移動、追著主角跑、或是一直跳等單一的動作,在Scratch簡易人工智慧:有智慧的蟑螂與蟲蟲一文中,所使用人工智慧可屬漫遊型AI。行為型AI則是組合多種漫遊型AI來產生具有一些行為的角色,來調整遊戲的難易度,例如攻擊型的角色會用比較多的時間來追逐主角,並攻擊主角;而保守型的角色,則會用比較多的時間來防守自己的寶物等,例如常見的史萊姆通常很弱、魔王通常很聰明又很強。策略型AI使用一些定義好的遊戲規則來開發程式,最常見於棋類遊戲、撲克牌等電腦遊戲,但現在有些會使用深度學習(Deep Learning)的方式來進行開發策略型AI,例如會玩圍棋的AlphaGo。那要怎麼入門遊戲人工智慧呢?請參考這一篇文章:The Total Beginner's Guide to Game AI

    Scratch 遊戲:登陸月球(Lunar Lander)基礎版

    若您覺得文章寫得不錯,請點選文章上的廣告,來支持小編,謝謝。

    【遊戲名稱】登陸月球(Lunar Lander)


    【基本動作】
    1. 使用鍵盤左右鍵控制貓咪移動。
    2. 遊戲開始後,貓咪一直往下掉落。
    3. 落到綠色踏板就過關。
    【玩法】

    1. 向左鍵:貓咪向左移動
    2. 向右鍵:貓咪向右移動

    製作步驟:(底下程式積木僅供參考,設計方式不是只有一種。)

    步驟一、選擇遊戲背景。
    闖關成功背景

    闖關失敗背景

    遊戲進行中背景


    步驟二、選擇著陸地點之角色

    此處選擇內建的 paddle 角色。此角色位置可自由擺放。


    步驟三、設計貓咪角色程式積木

    專案範例:https://scratch.mit.edu/projects/326471795/

    練習:
    1. 增加計時功能。
    2. 增加計分功能。
    3. 增加關卡功能。


    Scratch 遊戲:貓咪過高速公路(Cat's Highway)

    若您覺得文章寫得不錯,請點選文章上的廣告,來支持小編,謝謝。

    【遊戲名稱】貓咪過高速公路

    【基本動作】
    1. 使用鍵盤上、下、左、右,來控制貓咪的移動。
    2. 從起點開始移動,移動到終點區就過關。
    3. 在移動中,被車子撞到。
    【玩法】
    1. 按下綠旗開始遊戲。
    2. 使用上、下、左、右,按鍵來控制貓咪。
    3. 被車子撞到遊戲就結束。
    試試看能讓貓咪通過高速公路嗎?

    製作步驟:(底下程式積木僅供參考,設計方式不是只有一種。)

    步驟、製作高速公路背景圖
    使用繪圖功能(或是其他繪圖軟體,筆者是使用paint.net)來製作含有高速公路的背景。

    步驟二、製作闖關成功與闖關失敗背景圖

    步驟三、選擇車子角色。
    此處選擇 convertible 3、Truck、City Bus三個內建角色。

    步驟四、建立判斷闖關成功與闖關失敗變數

    步驟五、設計貓咪是否有碰到車子的程式積木




    步驟六、設計貓咪上、下、左、右,鍵盤控制的程式積木




    步驟七、設計車子移動的程式積木


    此處只顯示convertible 3車子的移動程式,其他兩台車子的移動方式是類似的。

    專案連結:https://scratch.mit.edu/projects/322469870/

    練習:
    1. 增加計時功能。
    2. 增加車子的數目(可使用分身)。
    3. 增加貓咪生命數。