精華區beta GameDesign 關於我們 聯絡資訊
※ 引述《mudgame (BAGA)》之銘言: :  努力嚐試寫了好幾年的GAME,不過一直沒有接觸 :  到人工AI的部份( 我設計的都是比較簡單的 RPG : 遊戲 ),直到最近玩遊戲王的東西,自己也試著 : 去撰寫,玩家之間對戰的部份算超滿複雜的,不 : 過只要能夠釐清各種牌的啟動方式,還是有辦法 : 寫出來,可是電腦AI的部份就完全沒輒了.. :  不知道有沒有大大是專寫人工AI的東西?可以給 :  人工AI初心者的我一點建議嗎?XD :  比如說可以看哪方面的書籍這樣.. : → LinaInverse:參考看看「有限狀態機」 Finite State Machine 01/28 23:01 : 推 ddavid:遊戲王以至MTG這種紙牌遊戲要寫出一般性的AI難度是很高的喔 01/29 00:27 : → ddavid:,你最好從針對操作單一牌組的AI下手,換一副牌就換一個AI 01/29 00:27 : → ddavid:,這樣會稍微簡單「一些」。無法簡單化的部分是,看出對手 01/29 00:28 : → ddavid:的牌組打法並決定怎麼應戰這點,這部分難度大概就跟拿到什 01/29 00:29 : → ddavid:麼套牌都能上手一樣難,這部分的建議則是忽視或者只針對一 01/29 00:30 : → ddavid:些一般化情況做固定應對就好。 01/29 00:31 : → mudgame:感謝大大的分享..只是我是AI超嫩咖,只會寫..HP太少用補血 01/29 00:40 : → mudgame:魔法,HP正常隨機用技能攻擊這種程度而已..囧 01/29 00:41 : → mudgame:連五子棋那種的AI也寫不出來..所以..可以介紹更簡單的學習 01/29 00:42 : → mudgame:方式嗎?或者從哪邊入門比較好呢? 01/29 00:43 基本上這種可自組Deck對戰紙牌遊戲的AI本來就是屬於難度極高的,你要做這個 可以說是跳關跳很大,八大都還沒打就要挑威利博士(哎,雖然威利也不見得比八大 強XD)。不過還是可以給你一些想法: 1.LinaInverse版友所說的Finite State Machine去看一看(這不是一台機器,而是 一套方法)。這東西概念算是很直觀好懂但也很實用。你所謂的「HP太少用補血魔 法,HP正常隨機用技能攻擊」這種經驗法則簡單AI,只要加強一點點概念就可以變 成Finite State Machine了,效果會出乎你意料地好。 2.然而很遺憾地,光用Finite State Machine是很難一般化地解對戰紙牌遊戲的。除 非你能讓電腦自己去分析每張牌能幹什麼、這副Deck能做什麼、對手對你做什麼時 該怎麼解等等,然後自己建出FSM來。這已經是Data Mining & Machine Learning 甚至以上的階段了。初學者就一口氣衝到這裡會哭出來XD 3.然而降低難度到「限定牌組、固定應對」的話就有用FSM做出來的可行性。基本上 就是靠你自己先去理解這個牌組,同時收集這牌組遇到什麼情況該怎麼反應等等經 驗法則,先行建好FSM讓電腦去跑這樣。 4.另外你提到五子棋的部分,那個寫法其實跟紙牌遊戲有一定程度的差異,參考一些 資料結構與演算法的書就可以了解初步。當然初步的資料結構跟演算法是各種領域 共通的東西,你也都應該去看一看就是。 -- 「珍貴的回憶?還不是跟夢一樣虛幻不實的東西?你想要什麼樣的回憶,我幫你 做出來啦!」 --艾蜜思,謊言事務所實現使者 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 118.167.2.43
yzugsr:棋類AI的話 從minimax和alpha-beta pruning入門吧 01/29 01:35
yzugsr:找本AI的英文書 應該都有這些演算法 01/29 01:35
cmcer:棋盤遊戲比較常用到decision tree 01/29 11:16
popfish:先看看「遊戲人工智慧」裡面提到的一些概念吧 01/29 12:07
popfish:前面變化不多的,可以用專家系統,後面變化多自己要先想好 01/29 12:08
popfish:才可以設定思考的函數或決策樹給你設計的AI 01/29 12:08
ddavid:主要是一開始就挑戰遊戲王或MTG這種「資訊非全公開、規則複 01/29 15:42
ddavid:雜、牌組可變」的遊戲太難了XD 01/29 15:43
mudgame:謝謝各位大大的指導,又上了一課,看到好多新的名詞..^^" 01/29 19:25
mudgame:想做好玩的遊戲,要學的東西果然還有很多..XD 01/29 19:26