假設我要給傳統的第一人稱射擊遊戲製作關卡,我新建了一個戰鬥區域,添加了一些怪物。因為我不希望玩家一開始遊戲就被怪物攻擊,我在一側加了一個走廊,讓玩家出生在那。

圖中“E”標記了區域內的怪物,而“P”標記了在走廊出生的玩家
這是一個非常簡單的關卡,但它能滿足我的需求,我找了一個朋友來測試。正如計劃一樣,我朋友沿著走廊進入了這個區域,驚動了這些怪物。接著事情就不對了。他沒有在區域裡和怪物作戰,而是退回了走廊,抵著門框殺掉了一個一個過來的怪物。一場本應是在炮火和飛咬之間來回躲避的精彩戰鬥,變成了靶場射擊:無趣、安全並且節奏緩慢。

這就是所謂的“門的問題”。具體來說,是射擊遊戲中遭遇戰設計的“門的問題”:如何將玩家引到遊玩區域裡,確保他們以精彩的方式遊玩這場遭遇戰。
如果“門”是問題的關鍵,那為何不把門做大以點,或者乾脆直接讓走廊直接聯通到戰鬥區域呢?其實問題並不在於門,而在於兩個空間的關係,這是一個只有當玩家跨越邊界時才會發生的問題,邊界通常以“門”的形式體現。
如果我們加寬門框讓走廊直接匯入區域,也是一樣的。有些情況這樣會好點,另一些則會更糟。即便入口更大,也沒有任何東西可以把玩家引進去,走廊裡也沒有東西把玩家推出去。

在聊解決這個問題的實際手段之前,我們先來探討一下問題出在哪裡。
問題的本質
我們要思考,在為傳統第一人稱射擊遊戲設計關卡時,我們究竟是在設計什麼?忽略掉關卡的主題包裝和敘事功能,這個關卡還剩下什麼?當我們要設計一個遭遇戰時,我們究竟關心什麼?
給這類遊戲設計關卡並不僅僅在於用酷炫的武器擊殺嚇人的怪物,儘管這是這類題材吸引人的地方之一。傳統射擊關卡也並非僅僅是“鑰匙和鎖”的邏輯結構。這些都是達到目的的手段,而目的是實現“地圖控制”。當玩家通過一個關卡時,他們其實是在佔領敵人的領地,並把關卡鎖定到一個確定的狀態。
對領地的佔領是地圖控制的一個方面,還有別的方面需要考慮。讓我們提煉一下,地圖控制實際是玩家發展自身手段的同時,限制對手的手段。手段取決於資源,它包含地圖上的位置,也包含血量、道具、子彈等。例如,如果玩家有足夠的血量和子彈,他們可以用這些資源將危險的戰局推進到有利的位置以換取其他資源。如果玩家沒有足夠的血量、子彈,就無法這樣做。
反過來說,玩家死亡部分原因就是他們輸掉了對地圖的控制並且沒有反制手段了。當然,第一人稱射擊也是關於玩家意識、目標優先級管理,以及玩家對遊戲模式內化的考驗。消耗和操作的不精確也會導致玩家的死亡。但是當玩家逐漸習慣這些基礎要素時,遊戲便越來越考驗地圖控制了。
對於一個遭遇戰來說,地圖控制意味著瞭解敵人、環境以及可用資源之間的關係。對玩家來說,地圖控制意味著減少敵人可以用來攻擊的方式,同時增加自己可以攻擊敵人的方式。
應用地圖控制的思路
那麼,對於我的關卡遇到的“門的問題”來說,地圖控制意味著什麼呢?
當我朋友第一次踏入區域時,他面臨著一個選擇:
1.他可以在這個區域裡到處橫跳來躲避敵人的攻擊。
2.他可以退回走廊,利用門作為掩體,並限制敵人攻擊他的有效角度。
這個選擇取決於若干未知因素。如果玩家在區域內戰鬥時,敵人的增援到了,玩家可能會感覺自己被壓制了,轉而退回門後作戰。又或者,如果怪物進攻過來時,玩家的火力不足以擊殺怪物,也沒有別的手段了,只能死在走廊裡。這個選擇取決於玩家對遊戲的理解以及這個關卡的特性。
我們可以將遊戲的地圖控制描述為以下這樣的點位連接圖,來標明玩家可以進攻的位置。

這裡玩家佔據點位2,完全控制了點位1,並且可以向點位3和4進攻。敵人佔據點位5,完全控制了點位6
我的關卡就可以簡化成這樣:

“P”標記玩家位置,“E”標記敵人位置,“?”表示隱藏信息
這張圖顯示了玩家踏入區域時,將被暴露在多種角度的進攻下以至於無力應對。為了能成功在這個區域裡作戰,他可能需要對AI行為、遊戲機制有深刻的理解。而大多玩家則會躲在門後戰鬥。
透過玩家的眼睛看這個問題
另一個診斷門的問題的方法是使用價值圖。這種工具可以將玩家如何認知關卡,賦上值抽象出來。

這是Aubrey Serr在2019年的GDC上使用的一個價值表示例,用於描述非線性關卡的設計
為了做一張這樣的價值表,我們需要考慮遊戲的機制,以及關卡結構會如何支撐或妨礙他們。對於射擊這種玩法,凸起的掩體是更強的掩體;他們提供了一種風險最小的策略,玩家可以走出去開一槍然後縮回來。其他形式的關卡結構,如死衚衕(Deadend)或者殺戮地帶(Killzone),則會讓玩家反感,因為他們限制了玩家,讓他們無法無傷地移動和射擊。
對於射擊這種品類,關卡結構的價值隨著玩家或敵人移動和戰鬥而改變。其價值也根據敵人類型以及玩法機制而決定。如果玩家看到一個能發射“彈跳手榴彈”的怪物,就要重新衡量這個關卡了;對付瞬發射擊很有用的掩體現在變得比開放地區更加危險。
Matthias Worch在2014年GDC的演講“遊戲關卡設計中的有意義選擇”中將這種動態命名為“優先選擇”。Worch將“優先選擇”定義為“在複雜的系統組合中,單個理解很容易,但是組合起來卻沒有一致、明顯的優勢策略”。這意味著玩家需要自己形成解決動態環境的最優策略。
也就是說,對於射擊玩法,一張價值表描述了玩家對關卡認知和評估的一個時刻。在另外的時刻,隨著戰鬥區域的變化,價值表就可能完全不同了,新的威脅會帶來新的優先級。
如果我們把這些表應用到我的關卡里,大概就能瞭解什麼出了問題。整個區域給玩家帶來脆弱和未知,然而走廊卻給玩家提供了可以安全攻擊這組敵人的掩體。

這張價值表告訴了我們一些我們已經知道了的信息。但是,通過從玩家的感知和評估來思考這個關卡,我們就得到了如何去解決門的問題的提示。如果我希望我的朋友留在這個區域戰鬥,我需要更改關卡的結構來讓這個空間本身比在門後射擊更有吸引力。
解決門的問題的手段
現在我們已經具備了地圖控制的概念以及價值表這個工具,用他們來理解玩家如何評估一個關卡,接著讓我們看看能解決門的問題的一些方法。這並不是一份全面的清單,但是應該足以作為起步點了。
掩體立足點
最簡單的解決方法是在進門後的位置添加一個掩體作為立足點。這是把玩家吸引到戰場的有效辦法。從這個立足點出發,玩家能夠更深入地推進到這個區域去作戰。玩家還會撤回走廊的唯一原因,可能是這個立足點讓玩家過於暴露,或者敵人能夠輕易地包圍這裡,把玩家推回去。

在這裡我添加的立足點是一個簡單的阻礙物,可以給玩家提供完全的掩護。玩家無法看到遠處或是阻礙物邊緣的敵人。

從地圖控制的角度而言,我們可以看到這個立足點的掩體如何限制敵人的攻擊角度,並讓整個區域對於玩家來說更容易掌控。

從價值表的角度,我們也可以看到這個掩體作為立足點,如何將玩家引到戰場區域。
給風險添加回報
我們也可以通過添加增益道具來影響玩家對關卡的評估。如果我們將一個強力的增益道具放在區域中間,也許能吸引玩家以身犯險。

然而,一旦玩家拿到增益道具,就失去了留在區域中的理由,他可能還是會退回走廊。增益道具的效果會影響到這個方法的效果,有可能仍然不足以解決門的問題。
另一個問題是我們一段時間內只能給玩家一個這樣的增益道具。如果在走廊的玩家仍然能受益於上一個區域的增益,新區域的增益道具就價值有限了。
隱藏信息
地圖控制這類遊戲中,有一種策略是分而治之。我們可以通過將區域分層來鼓勵這種策略。一旦區域被分隔開,再也不會有一個能看到一切的位置,玩家必須要持續移動來知曉敵人的位置。

這種隱藏了信息的牆也可以被當成吸引玩家進入區域的掩體島嶼。玩家驚動敵人,戰鬥開始時,這些掩體牆就成為了玩家可以在作戰使用的選擇。
在這樣的佈局中,信息變成了地圖控制的另一種資源。玩家可以花費時間或進行位置調整來獲得信息,也可以花費本可以得到信息的機會成本來停留在原地。即便是在一個佈局密集的分隔空間中沒有敵人,玩家也可能會對隱藏信息感到不安,有要去空間中瞭解這些信息的衝動。從價值圖的角度來看,可以看成是在大多負面空間中放置少數的正面空間來吸引玩家。

隱藏信息也減弱了玩家撤退的慾望。此處,如果玩家撤回走廊,就意味著他們將地圖控制讓給了未知的敵人們;也許區域內有玩家從門後戰鬥時也無法解決的強力怪物。
限制AI
還有一個問題是敵人會衝向玩家,限制玩家的移動。我們可以通過更改關卡結構來把敵人限制在島臺上,就像用狗鏈子將他們拴在柱子上一樣。這樣玩家必須主動進攻,而不是等敵人湧到門邊。

傳統射擊關卡中,最簡單的方式是將地板抬到不同高度。一些遊戲中,敵人AI可能沒有辦法從一階高的地方跳下或爬下,這會讓他們只能困在孤島上進行攻擊。現在大部分遊戲都能提供給我們一些工具通過AI空間區域、防守區域、刷路徑優先權重和寫一次性腳本等方式來影響AI。
正如給風險添加回報的手段,限制AI不足以解決門的問題。這種方法可能需要搭配其他方法一起使用。
單行通路
我們也可以使用更強制的辦法,例如要求玩家必須從高臺跳下進入這個區域,或者當玩家踏進這個區域我們就把門關死。也可以讓玩家通過一個單行方向的電梯進入這個區域,或者直接傳送。
對於現在的遊戲來說,我們可以播片來塑造角色、提醒玩家他們的目標,同時把他們和關卡的前一區域隔斷。但是,對於傳統的第一人稱射擊遊戲,人們總是期待探索能獲取秘密和獎勵。在這樣的情況下,單行通路的方式打破了慣例,剝奪了玩家的主控權。建議在使用這種方法時,可以設計一些能讓玩家走回頭路返回的新道路,或者在佈局中創建一些環形的道路。
彙總一下
在聊過這個問題以及所有可能解決它的手段以後,讓我們彙總一下。

在不更改敵人數量、或者巨幅增加戰鬥區域面積的情況下,我們可以使用以下手段來嘗試解決問題:
1.添加掩體作為立足點,吸引玩家進入,並提供給玩家位置控制局面。
2.將戰鬥區域分隔成不同的層次,通過隱藏信息或者控制好AI來讓玩家更容易戰鬥。
3.給玩家要遭遇的風險添加回報,用類似超級霰彈槍或者角落裡藏著的血量、子彈等獎勵來把玩家吸引進去。
4.添加需要跳下去的單行通路,讓玩家無法撤回門後,必須留在區域裡戰鬥。

總結
就我舉例的這個關卡而言,這聽上去恐怕像是個新人關卡策劃才會有的問題。你可能會說,戰鬥區域當然需要掩體!戰鬥區域當然需要被分隔成不同層次有隱藏信息!
但是門的問題依然存在。我最近為《雷神之錘》設計的地圖就遇到了這個問題,這也不是唯一一次。每製作一個新關卡,每設計一個新的戰鬥場景,我都會考慮如何將玩家吸引到戰鬥區域中,以及如何解決門的問題。
作為設計師,我希望玩家可以領略到遊戲裡地圖控制的精髓。我也希望給玩家提供優先選擇以及制定他們的策略和計劃的機會,而不是把這場戰鬥變成單純的靶場射擊。
希望這篇文章可以幫你應付你自己的作品中遇到的門的問題,也希望我在這篇文章羅列的手段能夠切實有效地解決這類問題。
謝謝觀覽,
安德魯
備註以及拓展閱讀
[1] 如果你想更多瞭解地圖控制的概念,我推薦觀看《雷神之錘》 Rapha versus Cooller 這場比賽的直播: https://youtu.be/XdkDjsBiO58?t=155 。它將一個看似是反應、注意力和精確度的遊戲,變成了戰術遊戲。雖然這是一個多人遊戲的例子,地圖控制的概念仍然適用。主要區別是我們要解決的是單人遊戲中的戰鬥遭遇戰的問題,就像在象棋棋局中解決象棋問題。
[2] 價值表的概念源於 Randy Smith 2006年的GDC演講 “Level Building for Stealth Games”。我第一次接觸到這些圖表是Robert Yang的“Dark Pasts (Part 4)”中分析沉浸式模擬遊戲關卡設計時使用的“Valence Theory”。更近的參考是,Aubrey Serr在他2019年的演講“Radically Nonlinear Level Design”中應用了Smith的圖表到動作遊戲設計中。
如果想了解更多玩家認知如何影響他們進入戰鬥區域,可以看看Blake Rebouche在2018年的GDC演講“Balancing Action and RPG in Horizon Zero Dawn Quests ”。尤其是他描述到遊戲地堡階段的時候,大概是前15分鐘的樣子。
[3] 想了解更多現在遊戲裡應用AI技術的遭遇戰設計,可以看看 Matthew Gallant 在2017年的GDC關於神海4中敵人AI的演講“ authored and systemic AI in Uncharted 4”。