文章網址:http://bbs.wow8.org/thread-112964-1-8.html 開始一個簡單的人工智能 其實這東西本來是隨便看看的。。。 。。。但是沒想到人家把1大段翻譯出那麼多拉。。。所以就全部中文上來吧 MB下 u9翻譯組的米小粒姐姐55 由於很多都是自己翻+猜譯的所以完全不保證準確率。 不過也沒啥技術含量。。。用來做ai編輯器的入門吧 By moyack 來源:http://www.wc3c.net/showthread.php?t=92915 導言 由於被人要求,我決定開始AI編輯器的教程。我會盡我所能,使之盡可能容易,反正如果您有任何問題,我會在這裡回答。 本文將參考此教程:http://www.wc3c.net/showthread.php?t=89199 開始吧。 進入AI編輯器 要啟動AI編輯器,你需要打開WE並且按F8或點上方的AI編輯器按鈕。這個編輯器並不像觸發或物體編輯器需要一個編輯中的地圖,相反,你用AI編輯器創建,編輯的AI是獨立於地圖的。但是,如果你正在編輯一個地圖,你可以注入地圖的信息,使AI可以使用你的自定義單位。此選項將隨後解釋。 當你打開AI編輯器以後你會看到界面: AI編輯器-普通標籤 此界面顯示了普通標籤的內容,我們將用它來設置基本的智能和全局條件。當然我們希望盡快開始我們的AI,恩。。。我們先要建立的基本框架。 首先,我們需要確定要做什麼樣的AI。如果我們要作出自定義地圖AI,我們應該選擇在對戰中各自的種族組合,或自定義。如果我們選擇普通的對戰,我們將無法使用其他地圖的單位。在另一方面,自定義AI輸入使我們能夠選擇有任何單位設置的物體編輯器。 開始一個新AI 學習的過程中,模仿典例是個很好的開端,所以我們來倣傚一個著名的人類戰術:女巫流。這個戰術靠的是快速升2本生產女巫,接著升3本訓練大師級,然後這個戰術就無敵了()。那麼我們需要什麼呢?除了女巫,還需要一些兵營出的單位:1.主要是一本時期的步兵,三本的時候可以換成騎士 2.迫擊炮小隊,作為攻城的主力 3.一些特殊的兵種比如牧師 4.一個對部隊有用的英雄,在這種情況下就是有水元素以及輝煌光環的大法了。我見過幾次這種戰術第二英雄出血法的(因為能提供傷害和減速),所以我會加到這個戰術裡。 我們的第一次~ 現在已經確定戰術了,在普通標籤裡我選了人族,然後給AI起名為「綿羊控」。這些設置好了,我們直接來到建築標籤。 我們看到了什麼?主要由兩個相似的界面組成,左邊是用來定義建築列表的,右邊用來定義採集資源列表。 建築標籤 為什麼被稱作建築列表?那是什麼東西? AI會按照列表的順序來依次建造單位,但是如果之前的單位或者建築被KO了,AI會根據列表順序重新補上那個被KO的單位。 既然知道了列表這個概念是怎樣運作的,我們開始往表裡加一些單位。如你所見,列表裡預先給出了主基地和5個農民,這幾個單位是遊戲開始就有的,有了他們我們就能造建築了。首先,我們要造兵營,農場和國王祭壇。於是我們選擇列表裡最後一個單位,鼠標右擊,出現了一個有很多選項的菜單。我們選添加設置,然後彈出一個單位類型的對話框 增加新建造單位 單位類型對話框 這裡有兩個部分: 城鎮:在這裡選擇在哪個主基地造建築或單位。選項分別是:任何(默認的,建議這個),主基地(出生點的那個),分基地#(有基地的礦點),金礦#(指的是那個礦,不一定要有基地) 建造:在這裡選要訓練(建造)什麼單位。選項分別是:第一英雄,第二英雄,第三英雄(這個稍後解釋),分基地,指定的單位和指定升級 在例子裡,我們要讓AI造一個兵營,然後一個農場,然後國王祭壇,然後我們就必須讓AI再造幾個農民,讓他們伐木。於是我們選擇城鎮為任何,選擇建造為指定單位,然後選擇兵營,點確定。用同樣的方式設置好其它的建築和單位。 我們的第一個建築 如你所見,我們想造個單位或者升級就必須把這些做一遍。問題是,有沒有更快的方式?答案當然是有。以農民為例,我只選最後一個農民,然後按CTRL+C(或者右擊選複製),然後按CTRL+V複製。做十遍就有10個農民了。 現在我看看你做的對不對。如果你加了10個農民,你會看見一樣的顯示,但是如果你粘貼了十次(或者更多,比如18個~牙哈哈哈 ),你就會顯示那樣 加入農民直到10個 生產農民超過了人口上限 如你所見,最後一個農民顯示為紅色,為什麼?因為界面指示說現在的食物上限不夠生產這個單位了,如果你讓這個列表在這個單位之前去造提供食物的建築,他就會重新被標記為黑色。 因為我們在這個時期不需要那麼多農民,我們刪掉一些,10個就夠了。之後我們擴張的時候會增加更多的農民。 OK,我想是時候給AI增加攻擊性單位了,讓我們增加3個步兵和第一英雄吧。首先增加一個農場,然後右擊列表裡最後一個單位,選擇添加設置,在單位設置對話框裡選擇建造為第一英雄,然後點進去。在那之後增加步兵,我建議三個就夠了。做完了以後,全列表應該看上去像那樣。 AI的第一個戰鬥單位 我們的第一次測試 有了這個小的進展,我們可以測試這個AI了。你可以按CTRL + F9或測試按鈕。在人工智能的編輯對話框。此命令默認用我們的AI運行掠奪島地圖。當AI啟動時,你會看到序列的建設進程: 首先將開始兵營,然後一個農場,然後再國王祭壇。好。 基地不會訓練任何農民,直到它已開始之前的所有建築物(按優先次序),一旦國王祭壇開始建造,AI就會造農民。這種情況可能不利於AI,因為是時間浪費很大,AI可以在這時可以訓練軍隊。我們稍後會討論如何解決這個問題。 國王祭壇完成後,AI開始訓練一個隨機英雄。 當英雄的培訓時,它會嘗試開新的基地。如果AI不能戰勝敵人,它會撤退,並等待戰鬥力恢復,之後它將再試一次,再次,再次,再次,直到打敗這一目標(然後去打下一個 )。 現在,我們必須解決幾個問題:我們應該如何控制隨機選擇一個英雄,並控制英雄學習技能? ?如何消除這些「時間死區」 ,使AI更快的培訓單位/建築? ?如何控制AI的進攻? ?正如Spellbreaker所說:觀賞和學習。 英雄設置 眾所周知,在WC3的英雄是一個非常重要的組成部分,一張地圖,他們的技能和屬性使它們獨一無二,影響了整個遊戲是好還是壞。英雄在遊戲中的效果取決於以下因素: 英雄的選擇和次序(英雄的培訓有三個) 所有英雄的技能選擇 對於AI而言,英雄有其他的作用:他們是攻擊隊伍的首領。如果沒有AI英雄,有很多時候AI不會攻擊而是保持不動,直到它被攻擊(不包括相關的反應)。 現在,我們瞭解英雄的AI設置是如何重要了,我們要檢查英雄的界面。選擇英雄標籤,你會看到這個 : 英雄標籤 列舉下這些選項的作用: 「使用英雄」選項,在這裡選到的英雄可以被AI培訓。 「訓練命令」部分,我們有不同的英雄組合,我們可以設置每種組合在遊戲中出現的概率大小。 最終在「技能選擇」一節,我們確定其中英雄技能的學習順序。如你所見,每個英雄的技能,可以根據不同的等級學習,一目瞭然。 現在,我們如何才能配置出我們想要的例子?你記得,我們只需要2個英雄。我們可以將指定的使用英雄一節的第三英雄設置成無。當你這麼做,編輯器會自動禁用某些選項(很方便 )。在那之後,選擇在第一英雄大法師,第二英雄血法師。然後設定100 %機會讓AI先訓練大法師,然後血法師。你會發現第二個選項(第一血法第二大法的順序 )自動設置為0 %了。現在的界面看起來應該 : -設置英雄的例子第1步 最後我們確定每個英雄的技能學習順序。選擇英雄:選擇框的英雄(大法),我們要修改的技能順序,使用選擇和修改其位置的上移和下移按鈕。例如對我們的AI例子,我將修改大法師的技能順序,如: 設置英雄的例子第2步 在這種情況下,我認為血法師的技能順序還不錯,但如果你想改變它們也可以繼續 現在,我們知道如何為我們的AI設置英雄了,我們還要處理其他重要的AI編輯功能:條件句。 條件 條件句是AI編輯器中最重要的功能之一。它們可以用來幫助人工智能採取正確的決定,根據情況在某些時候,更「聰明」 。 在哪裡可以套用條件?它們可用於: 普通選項卡: 條件 建築標籤: 建造列表 採集列表 攻擊標籤: 當前單位組 目標設置 如何在句子中添加條件?"只要選擇所需的項目,並用鼠標右鍵單擊它,你會看到修改條件... 選項。當你點擊它,你會看到對話框。 有條件的菜單 條件對話框 設置條件對話框,默認情況下,此對話框中設置為無。要創建一個新的條件,我們必須單擊列表框,並選擇自定義,這將使設置條件按鈕變得可點擊。現在,你可以按下它,一個新的對話框出現。在這你可能覺得有點熟悉,它的類似於觸發編輯器的條件選擇,唯一的區別是什麼樣的數據比較,你可以選擇它。比較分為: 設置條件對話框 布爾值比較 整數比較 And 和 Or 或 最後二種比較And和Or,可以連接兩個比較,所以用他們組合你能夠製作出比較複雜的條件。完整的條件類別可以參考Av3n的AI編輯教程。 我認為這是時候為我們的例子增加條件了。以前,系統直到已建立10個農民和一個農場後才會製造第一英雄,如你所見,把AI等到這是浪費時間,如果一旦祭壇國王建立,我們的英雄就開始訓練會更好。因此,我們必須改變英雄在列表的位置在第六個農民以前。但是如果我們就這樣完了,其他5農民將無法訓練,直到英雄開始在國王祭壇上訓練。所以我們要設置AI一旦國王祭壇建設完成後就訓練第一英雄,如果還沒,它將跳過英雄先建造其他單位和建築物。 首先,我們必須把第一英雄的順序放在祭壇之後,然後我們選中它,用鼠標右鍵單擊這個選項並修改條件... 在選擇條件以後,我們改變條件列表框到自定義。我們會看到,按鈕設置條件已啟用。 在「設置條件」的彈出窗口上在這一點,我們選擇整數 ,我們會看到一個文本鏈接顯示0 等於 0 。我們點擊第一個0 。 用點開整數對話框時,我們瀏覽下整數的選擇項目,選擇單位-已完成單位總數然後按確定。 現在我們已經選擇了判斷的項目,我們必須確定用來判斷的單位類型。在這種情況下,我們要檢查國王祭壇的個數。我們點鏈接文字,這將打開此窗口。 好了,我們選定了單位類型,我們將看到填充後的對話框。在這之後按確定。就有了這個我們所要的第一個比較元素。 現在讓我們來確定比較操作符。選擇操作符的連接。打開此對話框。再選擇適當的比較操作符(在此情況下選大於),確定~ 因為我們需要做的比較大於0 就可以了,所以我們沒有修改第二個對比對象的價值。但是,如果你需要更改該值,只需按一下並改變他的值就好。設定完了條件按確定。 恭喜!你的第一個條件完成了!現在是時候將它保存了,所以請條件對話框按下確定吧。 . . |
暴雪英霸是未來很看好的遊戲! 站長最近都玩 英雄聯盟 或 Mstar 。 以前站長擅長幫熱門的 魔獸3 地圖加入 AI, 可以和電腦英雄對戰,電腦懂的和人對話。
##EasyReadMore##
2009年12月21日 星期一
某ai編輯器教程
訂閱:
張貼留言 (Atom)
沒有留言:
張貼留言