Re: [問題] 單機版遊戲如何寫電腦人工智慧
※ 引述《iamflashman (沒有暱稱)》之銘言:
: 各位前輩好:
: 我自修JAVA的目標是想要寫一個單機版的遊戲,
: 目前的進度已經把富饒之城,桌上型遊戲的遊戲流程已經撰寫完成了。
: 也就是說,能夠讓真實玩家選擇牌組->執行玩家該回合可執行動作->
: 結束玩家執行回合->換下一位玩家執行動作->所有玩家執行完畢結束該局遊戲。
: 目前我遇到有二個問題:
: 1.開發單機版遊戲,不曉得電腦的AI要如何撰寫?我Google了一些關鍵字後,
: 發現自己的知識不足,對網路的文章理解力不夠,
: 因此想請教前輩們給予建議的單機版遊戲人工智慧的學習方向,
: 或者推薦學習的書藉。
我狗了一下富饒之城的介紹
喵的,光角色卡就好複雜
我建議你可以從簡單的遊戲開始寫起
例如井字遊戲或是踩地雷 [奸笑]
規則越簡單 or 越容易判斷局面的遊戲,AI 基本上會越好寫
圍棋 AI(據說)始終下不贏人腦,就是因為局面太難判斷
但是收官(因為比較好判斷?)所以可以跟人腦匹敵
另外,我記得 PTT 上頭有討論遊戲開發的版面
可是我忘記版名叫啥了
遊戲 AI 的部份可能去那裡問會比較實在
: 2.因單機版卡關,就轉個方向去研究線上版遊戲的連線,
: 後來我就從最基本的多人聊天室開始練習,
: 但發現利用socket只能傳遞文字內容,
: 但是遊戲中client端的所發出的請求,必需要由server端執行方法後回傳數值,
: 才能繼續執行遊戲控制流程,若是利用socket是無法執行server端的方法,
: 所以我又開始研究RMI的遠端呼叫模式,研讀後覺得很不踏實,
: 感覺好像是弄錯方向似的。
: 所以想請教一下前輩們線上版遊戲要如何從基礎開始學習起。
資訊領域第一(唬爛)法則:There is no spoon.
如果你從最原始的角度
其實電腦也沒有文字、也沒有數字
有的只是一堆 1 跟 0(喔不,是高電位跟低電位?)
網路傳輸基本上最後也是如此
不管內容是美女圖還是木馬程式
要說 RMI 只是超級進化版的 socket 程式
應該也不會太離譜
AJAX / websocket 好像很厲害,其實也還是 socket 程式
或著這麼說,如果踩地雷當中,player1 踩下 (3,5) 的位置
會有「踩到」or「落空」兩種結果
那麼 socket 傳輸內容可以是這樣:
request: nextStep=play1,3,5
response: true
當然,用原始的方法你就必須得要處理很多細節
而且沒辦法很 OO
那麼要用什麼 framework 還是 library 就又是另外一回事情
但是請記得本質
====
糟糕,我完全沒有提到 Java [死]
--
錢鍾書: 說出來的話
http://www.psmonkey.org
比不上不說出來的話
Java 版 cookcomic 版
只影射著說不出來的話
and more......
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 114.25.10.218
→
07/24 22:22, , 1F
07/24 22:22, 1F
推
07/25 04:53, , 2F
07/25 04:53, 2F
→
07/25 06:43, , 3F
07/25 06:43, 3F
推
07/25 12:07, , 4F
07/25 12:07, 4F
→
07/25 12:53, , 5F
07/25 12:53, 5F
推
07/26 01:01, , 6F
07/26 01:01, 6F
推
07/26 17:12, , 7F
07/26 17:12, 7F
討論串 (同標題文章)
本文引述了以下文章的的內容:
完整討論串 (本文為第 2 之 3 篇):