資料介紹
描述
在看過基于Krishna Lalith 版本的Knights Tour 拼圖后,我對她的另一個項目很感興趣,那就是她的Mastermind Game 。Krishna 的版本創(chuàng)建了一個包含所有可能結(jié)果的數(shù)組,并且基本上使用蠻力來嘗試每一種可能的結(jié)果,從而在了解數(shù)字是否存在時消除未來的猜測。我的變體基本相同。它不是擁有所有可能結(jié)果的數(shù)組,而是將用戶的結(jié)果連同其猜測一起存儲在歷史數(shù)組中,并將任何派生規(guī)則存儲在規(guī)則數(shù)組中。規(guī)則數(shù)組應用于未來的猜測,歷史數(shù)組用于根據(jù)用戶之前的響應確定新規(guī)則。
該軟件基于以下#define
陳述以三種模式運行:
#define AUTO 10000
#define SINGLE 9651
#define RELEASE 0
:
#define COMPILE_MODE RELEASE
#define COMPILE_MODE
可以AUTO
是,SINGLE
或者RELEASE
。
自動模式
在這種模式下,軟件將測試玩家可以選擇的每個數(shù)字排列。它將確定哪個數(shù)字進行了最多的猜測。輸出顯示在 Arduino IDE 控制臺上。
單人模式
在確定哪個數(shù)字被猜測最多后,它被放置在#define SINGLE xxxx
編譯器常量中并COMPILE_MODE
設(shè)置為SINGLE
. Arduino IDE 控制臺上的輸出顯示所做的猜測及其創(chuàng)建的規(guī)則。有4條規(guī)則
- KNOWN - 已知位置的已知數(shù)字
- SOMEWHERE - 已知數(shù)字在錯誤的位置并且已知不在特定位置
- 任何地方 - 已知數(shù)字在錯誤的位置,但不知道其他任何東西。
- NEVER - 數(shù)字絕對不存在。
通過查看猜測的歷史記錄,您可以調(diào)整算法并再次嘗試 AUTO 模式,看看是否有改進,或者是否有任何數(shù)字序列無法解決。
發(fā)布模式
這是允許用戶交互的最終游戲模式。
著名景點
該功能computerGuessPlayer
是計算機將嘗試猜測玩家號碼的地方。它有兩個參數(shù),都是回調(diào)函數(shù)。
pInputFunction
- 調(diào)用函數(shù)以獲取對猜測的響應
pOutputFunction
- 調(diào)用函數(shù)以顯示正在進行的猜測
這允許 AUTO 和 SINGLE 模式測試不同的值來猜測和 RELEASE 模式使用鍵盤和顯示器。
規(guī)則數(shù)組僅包含唯一規(guī)則并進行排序,以便在 SOMEWHERE 和 ANYWHERE 規(guī)則之前測試 KNOWN 規(guī)則。
構(gòu)建游戲
我設(shè)計了一個 PCB 來固定開關(guān)和顯示器,并 3D 打印了一個合適的外殼。ATMega328 芯片安裝在電路板的背面。我使用了 28 針 DIL 變體。IC 插座的引腳被壓平并像 SMD 設(shè)備一樣焊接到電路板上。還有一個 5V SMD 穩(wěn)壓器和一個 16 MHz SMD 諧振器。
我已經(jīng)包含了 Eagle 文件,以防您想將電路板商業(yè)化制作或像我一樣自己制作。我使用碳粉方法。
3D 打印外殼后,用 2.5 毫米的鉆頭鉆出安裝孔,并用 3 毫米的絲錐鉆出螺紋。使用 6mm M3 螺釘將電路板固定到位。
制作開關(guān)
我提供了一個 Eagle 電路板布局,您可以使用激光打印機將其打印到透明標簽上。
切標簽
組裝開關(guān)
最后組裝PCB并將其固定到前面板
連接電池和開關(guān)
使用 FTDI 編程器對 ATMega328 進行編程。如果 ATMega328 未使用 Arduino UNO 引導加載程序進行預編程,您需要先添加一個。
結(jié)論
這是一個有趣的編程練習。該算法可以大大改進。它只回顧歷史表中的一兩個動作。硬件也可以與揚聲器一起使用。
- 儀器手套開源構(gòu)建
- 蛋打開源構(gòu)建
- 西蒙小游戲開源構(gòu)建
- 復古游戲時鐘開源構(gòu)建
- 簡單的音樂游戲構(gòu)建
- Arduino迷宮游戲開源分享
- 使用Arduino UNO構(gòu)建游戲
- 構(gòu)建簡單的游戲設(shè)備
- 液晶記憶游戲開源分享
- Arduino井字游戲和熄燈游戲開源分享
- Arduino掃雷游戲開源分享
- 液晶游戲開源分享
- 接口usb游戲開源分享
- 軍工產(chǎn)品的六性原理、概念、策劃與設(shè)計 0次下載
- 基于數(shù)字技術(shù)的建筑策劃設(shè)想
- PyTorch神經(jīng)網(wǎng)絡(luò)模型構(gòu)建過程 276次閱讀
- 什么是數(shù)字主線?如何構(gòu)建數(shù)字主線?數(shù)字主線應用如何? 1990次閱讀
- 使用Rust和Nomad進行開源游戲服務(wù)器管理 517次閱讀
- 構(gòu)建高密度數(shù)字輸入(DI)和數(shù)字輸出(DO)模塊時面臨的技術(shù)挑戰(zhàn) 2156次閱讀
- 基于AI視覺技術(shù)構(gòu)建柔性生產(chǎn)數(shù)字化車間 685次閱讀
- 清華等開源「工具學習基準」ToolBench,微調(diào)模型ToolLLaMA性能超越ChatGPT 481次閱讀
- 鴻蒙上開發(fā)“推箱子”小游戲 950次閱讀
- 鴻蒙上實現(xiàn)“數(shù)字華容道”小游戲 1081次閱讀
- 如何使用數(shù)字電位計構(gòu)建可編程振蕩器 1052次閱讀
- 構(gòu)建一個很酷數(shù)字羅盤的教程分享 7484次閱讀
- 尋找開源硬件成功的觸發(fā)器 636次閱讀
- 基于AT89C205構(gòu)建的電子骰子的電路圖 2178次閱讀
- 構(gòu)建開源芯片生態(tài)需要什么要的 4327次閱讀
- 以數(shù)字音頻系統(tǒng)為例介紹音頻系統(tǒng)的構(gòu)建 4502次閱讀
- 構(gòu)建區(qū)塊鏈游戲的項目有哪一些 478次閱讀
下載排行
本周
- 1山景DSP芯片AP8248A2數(shù)據(jù)手冊
- 1.06 MB | 532次下載 | 免費
- 2RK3399完整板原理圖(支持平板,盒子VR)
- 3.28 MB | 339次下載 | 免費
- 3TC358743XBG評估板參考手冊
- 1.36 MB | 330次下載 | 免費
- 4DFM軟件使用教程
- 0.84 MB | 295次下載 | 免費
- 5元宇宙深度解析—未來的未來-風口還是泡沫
- 6.40 MB | 227次下載 | 免費
- 6迪文DGUS開發(fā)指南
- 31.67 MB | 194次下載 | 免費
- 7元宇宙底層硬件系列報告
- 13.42 MB | 182次下載 | 免費
- 8FP5207XR-G1中文應用手冊
- 1.09 MB | 178次下載 | 免費
本月
- 1OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費
- 2555集成電路應用800例(新編版)
- 0.00 MB | 33566次下載 | 免費
- 3接口電路圖大全
- 未知 | 30323次下載 | 免費
- 4開關(guān)電源設(shè)計實例指南
- 未知 | 21549次下載 | 免費
- 5電氣工程師手冊免費下載(新編第二版pdf電子書)
- 0.00 MB | 15349次下載 | 免費
- 6數(shù)字電路基礎(chǔ)pdf(下載)
- 未知 | 13750次下載 | 免費
- 7電子制作實例集錦 下載
- 未知 | 8113次下載 | 免費
- 8《LED驅(qū)動電路設(shè)計》 溫德爾著
- 0.00 MB | 6656次下載 | 免費
總榜
- 1matlab軟件下載入口
- 未知 | 935054次下載 | 免費
- 2protel99se軟件下載(可英文版轉(zhuǎn)中文版)
- 78.1 MB | 537798次下載 | 免費
- 3MATLAB 7.1 下載 (含軟件介紹)
- 未知 | 420027次下載 | 免費
- 4OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費
- 5Altium DXP2002下載入口
- 未知 | 233046次下載 | 免費
- 6電路仿真軟件multisim 10.0免費下載
- 340992 | 191187次下載 | 免費
- 7十天學會AVR單片機與C語言視頻教程 下載
- 158M | 183279次下載 | 免費
- 8proe5.0野火版下載(中文版免費下載)
- 未知 | 138040次下載 | 免費
評論
查看更多