In this module, I was presented with a brief to design a mechanic / level for an expansion to Ubisoft's The Division 2. For this module, I chose to create a mechanic for three new drone types.
These drone types include:
Fire Barrier - to prevent enemies from moving location or flanking player position
Smoke Screen - allow the player to relocate and flank enemies without being easily spotted and targeted during combat
Ground Drone - A player-manned drone that can be used to sow chaos to distract and disrupt the enemy A.I
The firebarrier aims to provide the player with the ability to prevent enemy movements and flanking. It can be used to stop the enemy from leaving cover and giving the player time to change their own position. It could also be used to stop groups of enemies from flanking whilst the player is already engaging with enemies in another direction.
The drone moves along a timeline whilst firing line traces. When the line trace makes contact with a solid object, it will spawn a blueprint actor that contains an emitter, for the fire, a collsion box, that sets fire to characters that step into it, and a navmesh modifier, that makes the A.I avoid that area unless absolutely necessary.
This mechanic allows the player to move unseen by the enemy - although they may still fire blindly into the smoke - and flank enemy positions or avoid mounted machine guns.
The Smoke Screen drone uses the same timeline mechanism to move and also fires line traces. These line traces then spawn a blueprint actor for the Smoke Screen. Like the fire barrier, this actor contains an emitter, for the smoke, and a collision box. The collison box has a custom collision preset that ignores all default collision types, except for Visibility Trace Responses. This means all physical objects can pass through the actor, but prevents the Pawn Sensing component in the Enemy A.I from sensing the player.
The Ground Drone aims to offer the player a distinctly different way to approach combat. Unlike previous drone types, it can be fully manned by the player. When the drone timer ends, the player re-takes control over their character whilst the drone begins to fire ordinance in random intervals whilst spinning in a circle. The purpose of this is to create a distraction for the Enemy A.I.
When activated, the player controller possess the drone and deactivates control of the player character. When the drone timer ends, the player controller repossesses the player character. Then, using a timeline and a projectile actor, the drone begins to rotate on the Z axis and fires a custom event that spawns a projectile actor every 0.3s. Once completed, the drone returns to the player.
Known Issues:
Firebarrier - even after the actor responsible for the barrier spawning is removed, the navmesh modifier remains
Smokescreen / Firebarrier drone - they are very linear and spawn based on the forward vector of the player
Ground Drone - Indiscriminate, can be used against friendly players thus risks abuse
Possible Solutions:
Smokescreen / Firebarrier drone - instead of spawning based on the forward vector of the player, the player could possibly throw two flare like objects that determine the start and end point of the drone. This makes the drone more versatile.
Ground Drone - Instead of random, indiscriminate firing, the drone could target the enemies specifically with missile-like ordinance.