舉例闡述游戲戰(zhàn)斗系統(tǒng)設計的基本規(guī)則
設計戰(zhàn)斗系統(tǒng)是游戲設計師在他們的職業(yè)生涯中經(jīng)常遇到的工作。許多年前,當我第一次設計戰(zhàn)斗系統(tǒng)時,我過得很艱難。不只是因為我很難得到好的設計結(jié)果,還因為很難找到解釋如何實現(xiàn)有趣的戰(zhàn)斗機制的基本規(guī)則。
策略計劃案例(from gamasutra)
在其他設計師的幫助下,我決定收集和歸納一些關于設計戰(zhàn)斗系統(tǒng)的基本規(guī)則。本文正是我的研究成果。
當我們設計游戲玩法機制時,我們心里想到的主要目標是,促使玩家做出明智的選擇,然后在恰當?shù)臅r間使用合適的技能。我們希望玩家能夠預料到他的下一步行動,并且能在戰(zhàn)斗期間想出應對策略。
要達到這個目標有許多方法,但有兩條非常重要的原則可以幫助設計對應戰(zhàn)斗系統(tǒng)的玩家技能:
1、各種技能都有獨特的作用,比如命中特定的區(qū)域、暈眩敵人……
2、各種技能在回報和風險之間實現(xiàn)平衡。
技能策略
記住以上兩條原則后,以下是出自軍事射擊類游戲《使命召喚》的一些經(jīng)典技能的分析案例:
1、各種技能都有獨特的作用
設計技能時可以把它當作玩家使用的一種工具。
下圖顯示的是《使命召喚》中的技能面板,和受各種技能的影響區(qū)域:
《使命召喚》案例(from gamasutra)
近攻:覆蓋了與玩家接近的前方區(qū)域。玩家只能近距離使用,但可以做到一擊必殺。
正常射擊:這是玩家在任何時候都可以使用的基本攻擊。但只有在中等距離時才實現(xiàn)最佳效果。
狙擊:能準確擊中站在遠處的敵人,如爆頭。但使用風險大,因為玩家的周邊視野受阻。
手榴彈:最適合攻擊躲在掩蔽物或角落里的敵人。它對敵人也是一擊必殺。但因為它是易消耗品,所以玩家必須盯準時機謹慎使用。
現(xiàn)在想象一下,如果玩家可以立即使用以上所有技能,我們就可以實現(xiàn)有趣的挑戰(zhàn)了,也就是“在恰當?shù)臅r間按下正確的按鍵。”
但這還不夠。正如之前提到的,當我們設計戰(zhàn)斗系統(tǒng)時,我們的目標是挑戰(zhàn)玩家的聰明才智,和玩家能夠在戰(zhàn)斗中運用的策略。所以基本上,我們需要的是帶有多種選擇的系統(tǒng),但玩家在這種系統(tǒng)中必須根據(jù)不同情況評估和做出最佳選擇。
2、策略層面:各種技能的風險和回報
各種技能不只是允許玩家以某種方式攻擊,還各自具有優(yōu)勢和需要權衡的地方。以下是出自《街頭霸王2》的案例。
《街頭霸王2》案例(from gamasutra)
設計師可以運用的優(yōu)勢和權衡類型有很多種。以下是在動作游戲中最常見的幾種:
優(yōu)勢:傷害輸出、暈眩、抵抗、傷害持續(xù)時間、失明、命值恢復
權衡:消耗點數(shù)、冷卻、釋放時間、恢復時間
即使各種技能在風險和回報之間實現(xiàn)完美的平衡,給玩家提供不同的風險比回報系數(shù)總是好的。
例如,玩家角色的某些技能會對敵人產(chǎn)生小傷害,但使用起來并不冒險,因為速度快。在極端相反的情況下,特殊的攻擊可能產(chǎn)生強大的傷害,但往往有使用風險,因為釋放或恢復時間長。
各種戰(zhàn)斗系統(tǒng)的風險與回報(from gamasutra)
(各種戰(zhàn)斗系統(tǒng)提供了帶有風險比回報的不同系數(shù)的技能選擇。)
技能也是對抗敵人的工具。記住,有時候技能不只是讓玩家進攻敵人,也可以用來反攻。所以,如果玩家在錯誤的時間使用某種技能,他可能會錯失命中敵人的時機,更糟的是,他會損失命值,因為他沒有打中敵人。這就是為什么玩家進行反攻也有風險。
三個挑戰(zhàn)
動作游戲的實時方面使玩家必須頻繁地評估情況的某些參數(shù),然后決定使用何種技能。
評估距離
1、為了選擇使用的技能,要評估敵人的距離
2、評估玩家角色釋放技能后的結(jié)果
因為所有事都是實時發(fā)生的。
評估時間
1、評估施展技能需要的時間
2、估計技能將持續(xù)多少時間
因為所有事都是實時變化的。
明智和預料
1、預料在不同的情形下應該使用的技能組合
2、知道反抗敵人的攻擊時應該使用哪種技能
因為所有技能都是玩家的戰(zhàn)略工具。
同樣地,設計匹配玩家技能的敵人具有許多優(yōu)勢。確實,在游戲中增加敵人的主要目的之一是創(chuàng)造一種有趣的挑戰(zhàn),從而循序漸進地教會玩家游戲的機制。
一個敵人就是一次挑戰(zhàn)
當我們設計AI行為時,我們往往試圖將AI設計盡量像真人一樣聰明。例如,為了創(chuàng)造有沉浸感的體驗,我們可能希望將多個敵人編成小隊,或執(zhí)行玩家覺得算是聰明的活動。
然而,我們經(jīng)常忘記,無論AI敵人表現(xiàn)得多么聰明,當玩家反擊敵人時,敵人創(chuàng)造的挑戰(zhàn)恰恰最影響游戲體驗。這意味著作為設計師,我們必須返回設計挑戰(zhàn)的基本原則,準確理解為了讓AI提供我們所期望的正確的挑戰(zhàn),什么才是它最重要的屬性。
為各種敵人定義明確的挑戰(zhàn)。因為敵人的主要作用是進攻玩家,又因為大多數(shù)時候玩家可以打死敵人,所以當設計敵人的行為時,通常我要問自己兩個重要的問題:
1、玩家可以怎么攻擊和消滅敵人?
2、玩家可以怎么防御敵人?
確實,當我們設計所有敵人時,我們通常會創(chuàng)造多種多樣的方式來擊敗各種敵人。以下是出自《蜘蛛俠:蜘蛛人》的兩個案例。如圖所示:
玩家如何防御忍者(from gamasutra)
玩家如何防御神風轟炸者(from gamasutra)
如以上二圖所示,當玩家防御自己時,忍者和神風轟炸者分別向玩家提供了不同的挑戰(zhàn):
玩家防御忍者的最佳技能是閃避技能。
玩家防御忍者的挑戰(zhàn)是時限。
玩家防御神風轟炸者的最佳技能是網(wǎng)射。
玩家防御神風轟炸者的挑戰(zhàn)是距離評估。
挑戰(zhàn)玩家的技能
作為設計各種敵人的不同挑戰(zhàn)的補充,給敵人設計針對各種技能/武器的不同弱點值也是很有趣的。換句話說,對抗各種敵人時,給武器設計不同程度的有效性是很有意義的。
這促使玩家使用他具有的所有技能?這幫助玩家學習各種武器的特性?這還促使玩家思考策略和在恰當?shù)臅r間使用合適的技能。
以下是出自《光暈》的案例,分析了武器對敵人的效力:
7
因為這些屬性,在對抗多種類敵人的戰(zhàn)斗中,為了實現(xiàn)更大效力,玩家可能會從一種技能切換到另一種。
動作游戲中的常見敵人原型
因為所有游戲都試圖將敵人與玩家的技能匹配起來,所以我們常??吹皆谠S多不同的動作游戲中出現(xiàn)了類似的敵人。確實,使用這些常見原型具有許多優(yōu)點:
1、他們提供了容易理解的挑戰(zhàn)
2、他們具有可識別的、不同的形態(tài)
3、玩家不需要教程就可能已經(jīng)知道如何對付這些敵人
以下列舉了動作游戲中常見的敵人原型和他們在游戲中常用的功能。
1、防護型敵人:挑戰(zhàn)玩家基本攻擊的準確度
防護型敵人(from gamasutra)
2、重擊型敵人:需要重型攻擊才能消滅的敵人
重擊型敵人(from gamaustra)
3、狙擊手:玩家遠程進攻才能消滅的敵人
狙擊手(from gamaustra)
4、投彈手:反抗玩家近攻的敵人
原型的亞類和變體
即使我們想將敵人分類和組織成幾種原型,我們也希望引入變體來增加游戲的挑戰(zhàn)。
亞類的作用是將玩家逼到戰(zhàn)斗系統(tǒng)的極限,不得不采取他已經(jīng)學會的那一套攻擊模式,但設計師為這類敵人增加了新技能。例如,減少進攻機會或挑戰(zhàn)玩家的攻擊準確度。
當我們設計敵人時,我們可以通過分析各類敵人的優(yōu)勢和復雜屬性來創(chuàng)造挑戰(zhàn)。
優(yōu)勢屬性:允許玩家利用它進攻其他敵人。
復雜屬性:讓玩家擊敗它的挑戰(zhàn)更復雜。
以下是出自《馬里奧》的亞類概念:
初始敵人原型
koopa(from gamasutra)
1、這個敵人只是在一條巡邏路徑上朝玩家移動
2、玩家跳到它身上就可以消滅它
3、它縮進殼后可以用來消滅其他敵人
亞類敵人原型
parakoopa(from gamasutra)
1、這個敵人朝玩家移動
2、這個亞類的新的復雜屬性是:飛在天上
3、龜殼仍然可以用來消滅其他敵人
設計亞類是提高或降低游戲難度的一個好辦法,同時不會破壞類別的明確定義原則。
風險和回報管理的案例:
為了引入戰(zhàn)斗中的另一層面的策略,我們還使用亞類來增加相同敵人的優(yōu)勢和復雜屬性:
高級敵人(from gamasutra)
給敵人增加一層防護盾使它更難被消滅,因為玩家得繞著它射擊才能傷害到它。但我們還在它的背后留下弱點,使玩家有新的戰(zhàn)略機遇。正常情況下,玩家會首先消滅最弱的敵人,以盡快減少存活敵人的總數(shù),但在這個情況下……
利用敵人弱點(from gamasutra)
如果玩家企圖先殺掉高級敵人,留著其他敵人后面打,這就更有風險了;但同時,玩這可以利用敵人的弱點,更快地消滅全部敵人。這決取于玩家如何平衡風險和他想取得的回報。
結(jié)論
本文的要點如下:
*設計良好的戰(zhàn)斗系統(tǒng)可以讓玩家愉快地玩上數(shù)小時。如果戰(zhàn)斗系統(tǒng)的構(gòu)思良好,游戲的戰(zhàn)斗類型應該是多種多樣的。
*設計出這種戰(zhàn)斗系統(tǒng)的好方法是,首先給玩家角色設計非常不同技能。
*玩家技能可以通過許多方式來分化。例如,設計師可以給某些技能增加特殊的屬性:暈眩、重生、傷害持續(xù)時間、擊退……
*設計出的敵人應該與玩家的技能相匹配。各種敵人都必須提供特定的挑戰(zhàn),促使玩家使用某類技能擊敗敵人。
作為本文的結(jié)尾,我個人認為,玩家在電子游戲中能體驗到的最吸引人的感覺之一就是,覺得自己很聰明,為自己的聰明感到驕傲。戰(zhàn)斗系統(tǒng)就是讓玩家體驗到這種感覺的強大工具。
#p#
The Fundamental Pillars of a Combat System
by Sébastien Lambottin
Designing a combat system is a recurrent exercise many designers will have to do in their career. When I had to do this for the first time many years ago, I had a hard time. Not only was it hard to obtain good results in my designs, but it was also hard to find information which would explain the overall basic rules experienced combat designers use to achieve interesting combat mechanics.
With the help of other designers, I have decided to gather and formalize what knowledge I can on the fundamental rules in designing a combat system. This article is the result of that exercise.
The main objective we have in mind when we design the gameplay mechanics of a combat system is to push the player to make clever choices and use the right ability at the right time. We want the player to be able to anticipate the next action he’ll perform and also to develop a tactical plan during the combat.
There are many ways to reach this result, but here are two very important characteristics which help to design the player’s abilities for a combat system:
Each ability has a unique function: hit a specific area, stun an enemy…
Each ability is balanced with the reward vs. the risk of using it.
The Tactics of Abilities
With those characteristics in mind, here are some analytical examples of some classical abilities in a military shooter such as Call of Duty:
1. Each ability has a unique function
Another way to think about the design of these abilities is to consider each one as a tool for the player.
The following schematic presents a panel of abilities in Call of Duty, and the area affected by each of them:
Melee attack. Covers an area in front of the player at close range. The player can only use it at close range, but it kills an enemy in one hit.
Normal shot. This is the basic attack the player can use at any time. It is the optimal attack at middle range only.
Iron sight shot. Perfect for performing a very precise shot to an enemy standing far away, e.g. a headshot. Very dangerous to use because of the loss of peripheral vision.
Grenade. Perfect to hit enemies behind a cover or in a corner. It also kills enemies in one hit. But it’s consumable, so the player must be careful to spend it at the right time.
Now imagine if every one of those abilities could be instantly performed by the player. We would achieve an interesting challenge, which is “press the right button at the right time”.
But this isn’t enough. As mentioned earlier, when we design a combat system, we are really aiming to challenge the cleverness of the player, and the tactics he’ll be able to apply during the battle. So basically we want a system with multiple choices, but in which the player has to evaluate and choose the best option for each situation.
2. The tactical layer: the risk versus reward trade-off for each ability
Not only does each ability allow the player to attack a certain way, but they each have advantages and trade-offs. Here’s a detailed example from Street Fighter II.
There are plenty of different types of advantages and trade-offs a designer can create for an ability. Here are some of the most commonly used ones in action games:
Advantages. Damage Output, Stun, Repel, Damage Over Time, Blindness, HP Regeneration
Trade-Offs. Consumable points, Cooldown, Time to Activate, Recovery Time
Even if each of these abilities is perfectly balanced between risk and reward, it is always good to offer the player a panel of abilities with different coefficients of risk vs. reward.
Some abilities of the player character will, for example, do small damage to enemies, but are not risky to use because they are quick. On the extreme opposite end, special attacks can do a lot of damage, but are often very risky to perform, due to startup or recovery times.
Each combat system offers a selection of abilities with different coefficients of risk vs. reward.
An ability is also a tool to counter the enemy. Keep in mind that sometimes abilities not only allow the player to attack enemies, but can also be used to counterattack them. Therefore if the player uses an ability at the wrong time, he could either miss an opportunity to hit an enemy or worse, he’ll lose HP because he could not counter the enemy. This is why performing a counterattack is also part of the risk taken by the player when he performs an ability.
The Three Challenges
The real-time aspect of an action game increases the frequency at which the player has to evaluate some parameters of a situation, and then decide which ability to use.
Evaluate the distance
Evaluate the distance to an enemy in order to choose which ability to perform
Evaluate where your character will end up once the ability is performed
Because everything moves in real time
Evaluate the time
Evaluate the time it takes to perform an ability
Anticipate how much time your ability will last
Because everything evolves in time
Cleverness and anticipation
Anticipate a combination of actions to perform in different situations
Know which ability to use to counter the attack of an enemy
Because each ability is a tactical tool for the player
In parallel, there are many advantages to designing enemies which match the player’s abilities. Indeed, one of the main purposes of adding enemies to a game is to create an interesting challenge to teach the player, little by little, the mechanics of the game.
An Enemy is a Challenge For the Player
When we have to design an AI behavior, a common tendency is to try to make the AI seem as clever as possible and feel human. For example, to create an immersive experience, we might want to have multiple enemies behave as a squad, or perform actions the player would interpret as clever ones.
However, we tend to forget that no matter how clever an AI enemy behaves, the challenge created by an enemy when the player encounters him is what will impact the game experience the most. This means that as designers we need to go back to what is fundamental in designing a challenge, and understand precisely what are the most important properties of an AI to offer the right challenge we are aiming for.
Define a precise challenge for each enemy. Because the main function of an enemy is to attack the player, and because most of the time the player can destroy the enemies, there are usually two important questions I ask myself when designing the behavior of an enemy:
How can the player attack and destroy an enemy?
How can the player defend himself against an enemy?
Indeed, when we design an entire panel of enemies, we usually try to create very diverse ways to beat each of the enemies.Here are two examples from Spider-Man: Shattered Dimensions, to illustrate this point:
As shown by those schematics, the ninja and the kamikaze bomber each offer a different challenge to the player when he has to defend himself against them:
The best ability of the player to defend himself against the Ninja is the dodge ability.
The challenge of the player to defend himself against the Ninja is a timing challenge.
The best ability of the player to defend himself against the Kamikaze bomber is the web shot.
The challenge of the player to defend himself against the Kamikaze bomber is a distance evaluation challenge.
Challenge the Player’s Abilities
As a complement to designing a different challenge for each enemy, it’s also interesting to design the enemies with different values of weakness for each ability/weapon. In other words, it is interesting to design each weapon to be more or less efficient against each enemy.
- This pushes the player to use all the abilities he has?- This helps the player to learn the specifics of each weapon?- This also pushes the player to be tactical and to use the right ability at the right time.
To illustrate this point, here’s an example analysis of weapon efficiency on the enemies in Halo:
Because of these properties, during a combat against multiple types of enemies the player might switch from one ability to another in order to be more efficient in battle.
Common enemy archetypes in action games
Since everyone is attempting to have enemies that match with the player’s abilities, we often see the same kinds of enemies in many different action games. Indeed, there are a lot of advantages to use these common archetypes:
they offer an easily understandable challenge
they have a recognizable and dissimilar shape
the player may already have an idea of how to deal with them without the need of a tutorial.
Here’s a list of the the most common archetypes in action games, with the functionality they usually have in the game.
Shield enemy: challenge the precision of the basic attack
Heavy enemy: require a heavy attack to destroy
Sniper: ranged attack to hit
Bomber: close combat attack to counter
Archetype subclasses and variations
Even though we want to classify and organize enemies into a few archetypes, we also want to introduce variety and increase the challenge throughout the game.
The role of subclasses is to push the player to the limit of the combat system by playing with the same rules he has already learned but adding new abilities to the enemy which, for example, reduce windows of opportunity, or challenge the player on his precision.
When we design an enemy we can consider the challenge by analyzing the advantageous and complicating properties of each enemies.
The advantageous properties of an enemy will let the player use him to damage other enemies.
The complicating properties of an enemy will make the challenge to beat him more complex.
Here’s an example in a Mario game of the sub-classes concept:
Original enemy archetype
This enemy simply moves toward the player on a patrol path
The player has to jump on the enemy to eliminate him
The resultant turtle shell can be used to kill other enemies
Sub-class enemy archetype
This enemy moves toward the player
New complicating property of this sub-class: this enemy moves in the air
The turtle shell can (again) be used to kill the enemies
Designing subclasses is a very good way to increase or decrease the difficulty of a class without breaking the defining rules of a class.
Risk and reward management example:
To introduce another layer of strategy in the battle we can also use subclasses to add both advantageous and complicating properties on a same enemy.
Here’s an advanced enemy with a shield and a weak point in his back which make him explode if the player hits the weak point several times:
Adding a shield to an enemy makes it harder to kill, because the player has to shoot around it to damage it. But we’ve also added a weak point in the back to give a new tactical opportunity to the player. Normally, a player would try to kill the easiest enemy first in order to reduce the number of living enemies as fast as possible, but in this case…
It’s riskier for the player to try to kill the advanced enemy while the other enemies are still alive; at the same time, the player can take advantage of the weak point and kill the entire group faster. It’s up to him to manage the risk and the amount of reward he wants to achieve.
Conclusion
Here are the main points to keep in mind from this article:
A combat system well designed is a system which can entertain a player for hours. If the combat system is well conceived, the game will feature a large variety of combat.
A good way to obtain a such combat system is first to design very different abilities for the player’s character.
The player’s abilities can be differentiated in many ways. For example, designers can add special attributes to some of them: stun, regen, damage over time, repel…
The second point to keep in mind is to design enemies that match the player’s abilities. Each enemy has to offer a specific challenge which will push the player to use a certain type of ability to defeat him.
To finish this article, from my point of view, one of the most engaging feelings a player can experience with a video game is to feel smart and proud of his or her cleverness. And a combat system is a great tool to let the player experience this feeling.(source:gamasutra)