Introduction to Python Applications 2023 - Python Telegram Bot 期末專案規格 === ###### tags: `Python` `Python and Its Application 2023` `telegram` `Reversi` ## 使用 Telegram Bot 做黑白棋遊戲 {%youtube icS-JhBABiI %} ## 黑白棋遊戲規則 1. 棋盤共有8行8列共64格。開局時,棋盤正中央的4格先置放黑白相隔的4枚棋子 2. 黑子先行 3. 雙方輪流落子 4. 落子和棋盤上任一枚己方的棋子在一條線上(橫、直、斜線皆可)夾著對方棋子,就能將對方的這些棋子轉變為己方 5. 落子時必須能達成「**落子和棋盤上任一枚己方的棋子在一條線上(橫、直、斜線皆可)夾著對方棋子**」 6. 當己方無法落子,則對方可以繼續落子,反之亦然 7. 雙方都沒有棋步可下則對局結束,棋子顏色多的一方為獲勝者 ## 你的 Telegram Bot 需要符合 1. 透過一個指令開啟一場新的黑白棋(EX: /game_start) 2. 所提供的黑白棋遊戲,需按照規格所定義的黑白棋遊戲規則運作 3. 電腦都是持白棋,User 則是持黑棋 4. 運作方式可以參照範例的,也可以自己設計一套,唯需要於錄影解說程式碼時說明你的運作邏輯 ## 你需要符合 1. 錄影並解說程式碼,向助教證明你有學到足夠的知識完成題目 2. 電腦不能將棋下至非法的地方,使用者將棋下至非法的地方則需要給予使用者提示,並阻止使用者 3. 當遊戲結束時,需要可以知道是誰贏,並顯示出來 4. 遊戲要可以重新開始 5. 嚴禁抄襲 ## 你不需要符合 1. 電腦下贏使用者 ## 提交 > Windows可以使用Bandicam來錄影,也可以使用支援Windows、MAC的OBS但比較複雜一些;無論如何千萬不要使用手機對螢幕錄影,拜託! - 拍攝YouTube解說你的程式碼並完成一場遊戲,請確定畫質可以看清楚(720p以上),以及有清楚錄製你的聲音 - 將主程式打包好提交到e3,並於作業說明貼上 youtube 連結 - 請勿使用 Mac 內建錄影,因為沒有聲音(如果你確定有聲音的話可以用) - 早點寫早點交,如果助教發現有問題會通知你,如果太晚交可能就算通知你也來不及改 ## 提示 1. 範例有用到的 telegram 的功能皆在[本篇 Lecture Notes](https://hackmd.io/@truckski/SJkxm2gV3)有提到 2. 會有電腦因為 User 無法落子,而連續落子的狀況 3. 會有 User 因為電腦無法落子,而連續落子的狀況 4. 遊戲不一定會是在所有 64 格都下完了時才結束,可能因為雙方皆無法落子,而提早結束 5. 你可以使用人工智慧來幫你完成作業,唯你需要將使用過程錄製下來上傳至 E3 作業繳交區 ### 落子在非法的地方 可以用以下方式提醒使用者  ## 附件(黑子與白子) - ⚫️ - ⚪️ ## 參考資料 - [wiki](https://zh.wikipedia.org/zh-tw/%E9%BB%91%E7%99%BD%E6%A3%8B)
×
Sign in
Email
Password
Forgot password
or
Sign in via Google
Sign in via Facebook
Sign in via X(Twitter)
Sign in via GitHub
Sign in via Dropbox
Sign in with Wallet
Wallet (
)
Connect another wallet
Continue with a different method
New to HackMD?
Sign up
By signing in, you agree to our
terms of service
.