top of page

Encounter: Skill & AI

An Analysis about the Boss Cerberus in Dragon Nest, Summer 2020

Dragon Nest is an MMORPG with Action Element that I played since I was 15.
The Boss Cerberus In the LV 32 Raid is an unforgettable memory to me. I used this Boss as an example to practice the Behavior Designer, Encounter Design, Analyze Player Feel, etc.

This document includes:
Main skills of Cerberus and how they influence players' experience. 
How to implement these skills, any re-usable functionalities in a
game editor design aspect.
Basic
Behavior Tree of this Boss's AI.

Overview of Main Skills

Cerberus has 7 different skills. The seven skills include the commonly used "Slap" and "Sweep"
"Roar" will knock back the surrounding characters and make them fly away.
"Leap" is used to approach the player, this will be cast when the highest aggro unit is far away.
Cerberus’s 3 heads present fire, thunder, and ice and are able to cast 3 different kinds of magic including
"Fire Balls", "Ice Cone", and "Black Thunder"

Final Behavior Tree

Cerberus_BehaviorTree.png

Whole AI & Implementation Logic

AI Behavior Sketch:

#1: Boss has the concept of the aggro value and will be affected by various factors such as players’ DPS, players’ taunting skills, players’ distance.
#2: The Boss will not always follow the highest-aggro-player to move and turn --> an attack action must be performed at regular time intervals.
#3: Since the "Fire Balls" and "Ice Cone" must be released one after another, but which one is the first one is random. Use a Queue for these two skills to ensure that there will be no other attacks interspersed between these two attacks. (The "Black Thunder" and "Leap" are exceptions. "Black Thunder" is cast based on HP, it is a powerful ultimate skill that needs to be cast while below fixed HP percentage during the fight. "Leap" is for approaching the players.)
#4: During the time interval between the attacking actions, the position & rotation of the Boss will be adjusted to face the highest-aggro-player by its rotation speed and moving speed.
#5: When it is time to make an attack decision, I concluded the following conditions:
      #5a: When the highest-aggro-player is near and in front of the Boss, cast"Slap" or"Sweep".
      #5b: When the highest-aggro-player is near the Boss, but not in front of the Boss (using "Roar").
      #5c: According to the cooldown time of the special skills ("Fire Balls", "Ice Cone" skills, these two share the same cooldown. The order is random, but if one is cast, the next attack action will cast another skill.).
      #5d: If the highest-aggro-player is too far away, "Leap" towards the player.
      #5e: If HP is too low, cast "Black Thunder".
      #5f: If Super Armor Value is too low, current action will be interrupted and turn into Stun Status.

Extra AI & Skill Logic Related Parameters: 

#1: "Leap""Slap", and "Sweep" require the location of the highest aggro target in that frame.
#2: Bullet: a hitbox that can keep moving. After the caster cast it, it has nothing to do with the caster.
      Can choose fixed-direction or target-tracking feature. Can customize
Offset, Rotation, TargetIf Tracking, Move Speed, Acceleration, Hit-Back-Type, Hit-Sound-Index, Hit-VFX-Index, Hit-Buff-Index, etc. 
#3: The "Fire Balls" needs the location of the highest aggro player in that frame. It is also a Bullet.
#4: The "Ice Cone" has a tracking feature, which requires real-time player positions. It is also a Bullet.
#5: "Roar" will generate multiple
elliptical-cylinder-shaped hitboxes which contain both damage and hit-fly-away feature.
#6: The random distribution of "Black Thunder" cannot be completely random, it needs to have a certain pattern.

 

Main Skills Detail & Implementation:

WeChat Screenshot_20220220192248.png
cerberus.png

#1 "Roar":
Description: 
Cerberus slaps its two front claws separately and will turn its head down. Maintain the gesture for a while, and then will turn its head up, start roaring and keep knocking the surrounding enemies into the air and make them fly away.
Type: 
Strong-Control skill with Slight-Damage, but hard to dodge.
Player Experience:
Preparation state: Animation, sound, and VFX are not as apparent as other skills, players need to be patient to recognize this skill. This skill is hard to dodge but only light punishment, which will slow down the player’s speed to clean this level. 
Implementation Note:
Multiple elliptical-cylinder-shaped hitboxes with a larger and larger radius.

WeChat Screenshot_20220221100219.png
WeChat Screenshot_20220221100238.png

#2 "Fire Balls":
Description: 
Cerberus’s left head will swing from left to right, and shoot multiple fireballs from the left head’s mouth continuously during the skill time. Fireballs will not track the player, fix direction as it is generated, the speed is slightly faster than the player's moving speed.
Type: 
High-Damage skill with the Burning-Debuff, medium to dodge.


Player Experience:
Preparation state: long time, animation and VFX are very conspicuous. The Cerberus’s head swing speed is not fast, the player can predict the direction of the fireball then run away, or use dodge skills directly to enter short-time-invincible status.
Implementation Note:
Use Bullet.

WeChat Screenshot_20220221100232.png
WeChat Screenshot_20220221100225.png

#3 "Ice Cone":
Description: 
After Cerberus’s right head turn up to the sky, Cerberus will shoot an ice cone from its mouth. 
The ice cone will track the random player, the movement speed is slightly faster than the player's movement speed, but the rotation speed of the cone to turn around is kinda slow.

#4 "Black Thunder": 
Description: 
Cerberus put its centroid down a little bit, the scene will be darker(change the skybox or post-processing), multiple black-color-thunder will hit random locations every 0.6 seconds for around 3 seconds.
Type: 
Hight-Damage skills with multiple hitboxes in random locations, hard to dodge all, cast based on the HP percentage so barely used.

Type: 
Medium Damage Skill with medium control - freezing debuff, easy to dodge.
Player Experience:
The preparation of this skill is long, the animation and VFX are very conspicuous. The process of the ice cone flying from Cerberus to the player needs a long time. This skill is easy to dodge, but if be hit, the punishment will be serious, the player will be frozen for a while.
Implementation Note:
Before the ice cone starts to move, there are about 1.5s of the special effect of ice in Cerberus’s mouth. Depending on the distance from Cerberus to the player, there is also a 1-2 second flight time. Players have enough time to react and use dodge skills to avoid it. Use Bullet.


 

Player Experience:
As an ultimate skill that will be cast when on low HP, this scene will be darker, giving players a sense of urgency. Players who are close to the boss will not be harmed by this skill. I personally think that it is a design that encourages players to get close to the boss and to be brave. Since thunder strikes randomly, if the players standstill within the range, they will get at most one time of damage. Once they flee in the range, it is easy to suffer multiple times of damage then die. Combined with the depressive scene of the sky turning darker, it will frustrate the players new to this level. But once the players become familiar and proficient, this skill can also bring players the feeling that "this skill is terrible but I am smart and lucky enough to be okay". They will stand still in the thunder and be brave, this increases the sense of accomplishment in defeating the boss.
Implementation Note:
Release when the HP is below a certain percentage, the percentage will vary depending on the difficulty.
Multiple black thunders will fall from a random location within a circle composed of two circles (n1-n2 meters) away from itself (n1-n2 meters), causing a lot of damage to the player. (The surrounding area (0-n1 meters) will not be hurt, n1 is extremely small, and n2 is extremely large. In most cases, only the area around the hellhound will not have thunder in the scene of the boss battle).

 

Overall Player Experience of Cerberus: 

#1 Each main skill except "Roar" has about 1-3 seconds for the player to react, and the player can easily dodge it after being familiar with this level. As an LV 32 raid, which is the second raid in Dragon Nest, this raid is not that hard, which will help build a good interest curve and learning curve for this game.
#2 In addition to the
"Roar", even the first encounter of these core skills can find obvious action preparation phases (such as the flame, frost, and lightning VFX near the head, big gesture changes of animation).
#3 "Roar" is more of a control skill (it will knock the player far away). Compared with other skills, "Roar" has very low damage and is more like a way to help with pacing(slow down the players' raiding speed, giving a chance of recovering & re-buffing). Its animation has no obvious special effects. Players can learn this only by repeated observation. Players who are good at micro-control & not greedy and observe carefully can avoid this skill better. It should be designed for hardcore action players.

Example of Implementation with Timeline & Nodes

"Roar":
0-3.2s Animation:
           0-1s: Cerberus’ two claws will hit the ground
           separately, also turn its head down.
           1-1.5s:
 Cerberus’s head goes back to the normal
           position quickly.

           1.5-3.2s: Cerberus will start roaring for a while then 
            back to normal.

1.5s, 2.0s, 2.5s, 3.0s  Generate HitBox: elliptical-cylinder shape, and the size will keep increasing time by time. The enemy is hit by that HitBox will be in hit-fly-away status, the direction is depending on its position related to Cerberus. 
0.3s, 0.6s Sound: Cerberus’ sound of hitting the ground.
1.5s Sound: Play a roaring sound.
1.5s VFX: Wave in the air comes from Cerberus’ mouth
1.5-3.0s Camera Shake

.…
Not Time Based Sound: The wind sound played when the player is hit by the air-wave of this skill
Not Time Based 
VFX: The VFX played when the player is hit by the air-wave of this skill
.…

WeChat Screenshot_20220221110330.png
WeChat Screenshot_20220221110330.png
WeChat Screenshot_20220221110330.png
bottom of page