分析玩家的戰(zhàn)斗行為
《光環(huán):無(wú)限》的開(kāi)發(fā)團(tuán)隊(duì)提出“《光環(huán)》中的戰(zhàn)斗行為是一種參與的動(dòng)態(tài)節(jié)奏,是一種反應(yīng)性和精神性的舞蹈,感覺(jué)就像一部交響樂(lè)”。演講者延續(xù)了這一思路,認(rèn)為玩家的戰(zhàn)斗行為可以分為五種技能:掃射、瞄準(zhǔn)、投擲手榴彈、近戰(zhàn)、掌握時(shí)間繼續(xù)戰(zhàn)斗或逃跑。
全勝
掃射的基本運(yùn)動(dòng)方式有四種:相對(duì)于目標(biāo)的水平運(yùn)動(dòng),以跳躍和下蹲的形式移動(dòng)或躲避攻擊,根據(jù)敵人的動(dòng)作確定己方動(dòng)作的時(shí)間,各種動(dòng)作的復(fù)雜組合。
那么不同等級(jí)玩家的掃射行為是怎樣的呢?新手玩家通常只會(huì)往前沖,他們很難同時(shí)控制射擊和移動(dòng)按鈕;二級(jí)玩家可以水平移動(dòng),控制與對(duì)手的距離,兩者可以同時(shí)進(jìn)行;三級(jí)玩家可以在水平移動(dòng)的基礎(chǔ)上增加跳躍操作;最高級(jí)別玩家的動(dòng)作非常復(fù)雜,因?yàn)檫@種類(lèi)型的玩家適應(yīng)的是操作水平高的對(duì)手。他們需要更高難度的操作來(lái)保證自己的生存和擊敗對(duì)手,并能在短時(shí)間內(nèi)做出各種動(dòng)作的組合。
目標(biāo)
遵循與掃射相同的過(guò)程,演講者分析了不同水平玩家的瞄準(zhǔn)行為。新隊(duì)員瞄準(zhǔn)射擊水平低,對(duì)武器的使用和射擊距離的把握不熟悉;二級(jí)玩家可以更精準(zhǔn)的瞄準(zhǔn)目標(biāo),可以考慮在對(duì)方盾值較低的情況下射擊頭部;3級(jí)玩家可以輕松瞄準(zhǔn)敵人,瞄準(zhǔn)時(shí)開(kāi)始考慮武器的后坐力;最高水平的玩家即使在比賽進(jìn)行得如火如荼的時(shí)候也不會(huì)出現(xiàn)任何瞄準(zhǔn)失誤。
通過(guò)分析,演講者認(rèn)為瞄準(zhǔn)的要點(diǎn)包括:瞄準(zhǔn)精度(即下圖中的綠色圓圈)、瞄準(zhǔn)器與目標(biāo)的距離、瞄準(zhǔn)目標(biāo)的速度、跟蹤目標(biāo)移動(dòng)方向變化的反應(yīng)能力、高水平選手對(duì)目標(biāo)位置的預(yù)判和瞄準(zhǔn)能力。
扔手榴彈。
當(dāng)游戲開(kāi)始時(shí),玩家的庫(kù)存中會(huì)有手榴彈,這會(huì)造成大范圍的傷害。低級(jí)玩家在游戲中往往不會(huì)使用手雷,因?yàn)槊闇?zhǔn)、移動(dòng)、射擊對(duì)他們來(lái)說(shuō)已經(jīng)夠復(fù)雜了;更有經(jīng)驗(yàn)的玩家會(huì)在近戰(zhàn)或者戰(zhàn)斗結(jié)束時(shí)使用,以便對(duì)失去視力的對(duì)手造成致命傷害;最高級(jí)別的玩家往往會(huì)花大量時(shí)間使用手榴彈來(lái)控制對(duì)手在戰(zhàn)場(chǎng)上的移動(dòng)位置,而不是直接扔向目標(biāo)。
總結(jié)一下,投擲手榴彈的技巧包括:投擲的準(zhǔn)確性,根據(jù)手榴彈的種類(lèi)確定投擲的位置,根據(jù)目標(biāo)盾牌的狀態(tài)改變手榴彈的投擲時(shí)間,在你想阻止對(duì)手去的地圖區(qū)域投擲手榴彈,在預(yù)計(jì)對(duì)手會(huì)出現(xiàn)的位置投擲手榴彈。海嘯
近戰(zhàn)可以產(chǎn)生巨大的傷害,是快速結(jié)束戰(zhàn)斗的好方法。新手玩家很難同時(shí)跟蹤敵人的位置和按下近戰(zhàn)按鈕。等級(jí)較高的玩家,能夠判斷雙方的戰(zhàn)斗狀態(tài),當(dāng)觀察到對(duì)手處于失利狀態(tài)時(shí),就會(huì)開(kāi)始近戰(zhàn);最高等級(jí)的玩家,已經(jīng)完全掌握了每一類(lèi)武器可以造成的傷害值,通過(guò)近戰(zhàn)打擊會(huì)獲得極大的殺傷力。當(dāng)這些玩家覺(jué)得有信心在不危及自身的情況下殺死對(duì)手時(shí),就會(huì)拉近與對(duì)手的距離,進(jìn)行近戰(zhàn)。因?yàn)榻鼞?zhàn)時(shí)間短,玩家最需要考慮的是對(duì)方的護(hù)盾狀態(tài)和預(yù)估傷害值。
總結(jié)一下,近戰(zhàn)技能的要點(diǎn)包括:一般瞄準(zhǔn)技能;根據(jù)敵人盾牌的狀態(tài)確定近身戰(zhàn)的時(shí)間;當(dāng)你處于優(yōu)勢(shì)時(shí),拉近與對(duì)手的距離,進(jìn)行近身肉搏。
選擇繼續(xù)還是結(jié)束戰(zhàn)斗。
演講者和他的團(tuán)隊(duì)對(duì)有經(jīng)驗(yàn)的玩家做了大量的采訪,總結(jié)出決定游戲結(jié)局的因素包括:玩家和對(duì)手的距離,玩家的彈藥狀況,玩家和對(duì)手的護(hù)盾狀況,地理位置。同時(shí)玩家在做決定之前需要掌握兩點(diǎn):一是盾牌、彈藥、射擊距離等概念的重要性。如果玩家沒(méi)有盾牌,那么再多的彈藥也沒(méi)用;第二,玩家需要對(duì)自己和對(duì)手的技術(shù)水平有清醒的認(rèn)識(shí)。
四。AI機(jī)器人戰(zhàn)斗行為的例子
在總結(jié)了不同級(jí)別玩家的行為模式后,團(tuán)隊(duì)接下來(lái)需要考慮的是如何在機(jī)器人設(shè)計(jì)中重現(xiàn)這些行為。
機(jī)器人行為設(shè)計(jì)的過(guò)程包括:觀察人類(lèi)行為;與優(yōu)秀的工程團(tuán)隊(duì)合作,在現(xiàn)有的人工智能代碼庫(kù)中創(chuàng)建觀察到的行為模式;確定機(jī)器人發(fā)射的大概時(shí)間;并對(duì)機(jī)器人動(dòng)作進(jìn)行隨機(jī)更改,以確保它們始終是動(dòng)態(tài)的。演講者以掃射和選擇繼續(xù)或結(jié)束戰(zhàn)斗的行為為例,解釋了他的團(tuán)隊(duì)是如何設(shè)計(jì)機(jī)器人的。
機(jī)器人掃射行為
前面已經(jīng)確定了人類(lèi)玩家掃射的基本運(yùn)動(dòng)模式,所以只需要機(jī)器人學(xué)會(huì)同樣的行為:當(dāng)感覺(jué)到在敵人的火力下時(shí),機(jī)器人會(huì)相對(duì)于目標(biāo)前后移動(dòng),也會(huì)跳躍和下蹲來(lái)躲避對(duì)方的攻擊。
然而,掃射技能是基本運(yùn)動(dòng)模式的高度復(fù)雜的組合,因此在設(shè)計(jì)中需要一些額外的參數(shù)調(diào)整。演講者和他的團(tuán)隊(duì)開(kāi)發(fā)了一套程序,可以重現(xiàn)不同技能水平的球員的投籃模式。一些最重要的參數(shù)是:在改變方向之前向某個(gè)方向射擊的時(shí)間,射擊期間的暫停,暫停的長(zhǎng)度,跳躍的時(shí)間,下蹲的時(shí)間,以及保持下蹲的時(shí)間。以各種方式組合這些不同的變量,直到機(jī)器人的最終表現(xiàn)與不同水平的人類(lèi)玩家相匹配。機(jī)器人選擇逃跑或者繼續(xù)戰(zhàn)斗。
首先,機(jī)器人可以讀取玩家生命值和護(hù)盾狀態(tài)的數(shù)據(jù),需要不同數(shù)值的重量分析,比如護(hù)盾狀態(tài)比彈藥更重要。然后根據(jù)讀取的數(shù)據(jù),分析輸出一個(gè)數(shù)值,這個(gè)數(shù)值代表機(jī)器人的自信程度。如果數(shù)值高,它應(yīng)該選擇繼續(xù)戰(zhàn)斗;如果數(shù)值低,說(shuō)明需要退。這時(shí)候機(jī)器人會(huì)想辦法擾亂對(duì)方的視線。
下圖是機(jī)器人置信度的計(jì)算公式。將對(duì)手的護(hù)盾狀態(tài)、己方護(hù)盾狀態(tài)、目標(biāo)距離、己方武器狀態(tài)和對(duì)手與機(jī)器人的距離差五個(gè)值歸一化,并賦予這些值不同的權(quán)重。最后將它們相加得到的值歸一化,輸出0-1范圍內(nèi)的自信值,作為選擇是逃跑還是繼續(xù)戰(zhàn)斗的依據(jù)。
摘要
演講者通過(guò)觀察和分析人類(lèi)玩家的戰(zhàn)斗行為,確定了《光環(huán):無(wú)限》機(jī)器人需要執(zhí)行的核心操作和行為。通過(guò)模擬人類(lèi)玩家的行為,AI機(jī)器人提供了一種有效的學(xué)習(xí)工具,可以幫助玩家在多人游戲中提高水平。雖然很多動(dòng)作是《光環(huán):無(wú)限》游戲獨(dú)有的,但是識(shí)別和模擬人類(lèi)游戲行為的過(guò)程同樣適用于其他游戲中構(gòu)建類(lèi)似人工智能的團(tuán)隊(duì)。