Project Description
Project Description
Very early on I have been a fan of games blurring the line between cinema and player interaction. I set out on this project to further study how to effectively introduce these moments while maintaining good pacing to keep gameplay engaging throughout.
I drew a lot of inspiration from Uncharted 2 and their usage of cinematic moments to emphasize both a certain emotion and to heighten stakes of gameplay.
A GDC talk by Neil Druckmann and Bruce Straley details a concept which they call The Gap. In this Gap, you set up a scenario where the player originally starts at a point with a straight forward path towards their goal. We as designers subvert those expectations and block that path to make the player use their "heroic skills" to get around this Gap.
I found this idea very interesting and tried to exercise this technique throughout my level.
BELOW WILL BE A CHRONOLOGICAL ACCOUNT OF SCRIPTED MOMENTS THROUGHOUT MY LEVEL
1. Initiating Conflict
- Narrative Rationalizations
- - Player is coming to pick up money from a friend in a backroom casino to pay off cartel
- - Cartel decides to collect early and blows up a hole in the wall
- - There are no survivors after the blast except the player
- Design Rationalizations
- - Player is drawn forward by NPC
- - Setting tone for dialogue sequence
- - Wall explodes and enemies flood the room circumventing expectations for NPC interaction
Technical Explanation
1. Spawn fireball particle systems to signify explosion
2. Force player to crouch (later during polish, put the player in cover by animation) and destroy the wall
2. Rooftop Run
- Narrative Rationalizations
- - Ill-equipped enemy decides to book it and run to lure our player to a dangerous location
- Design Rationalizations
- - Breaks up pacing
- - Offers a chance to introduce the climbing mechanic in a fun way
- Obstacles offer a way to make the encounter more engaging and less sterile
- Separating the player and enemy AI introduces unpredictable elements to a seemingly otherwise straightforward chase
Technical Explanation
1. Check to see if player is keeping up with AI
2. If player is keeping up with AI then AI will continue to run through environment
3. If player is not keeping up with AI then AI will stop moving until player is within range
3. Creating "The Gap" and Setting Up A Payoff
- Narrative Rationalizations
- - Player thinks they have caught the enemy only to be confronted with even more danger.
- - Contextualizes how much resources the Cartel has access to
- Design Rationalizations
- - Player has sudden interest spike when flying cruiser destroys building
- - Instead of confronting AI and getting their money back the player now has an even muddier path towards safety
- - Foreshadowing a boss fight that will happen end of level
- This scene takes heavy influence from Uncharted 2's Helicopter scene
Technical Explanation
1. Add an impulse to AI to make them jump off building
2. Start timeline so that Flying Cruiser to traverse Spline replicating "flying" movement
3. Fire projectiles at the player and ground
4. Make sure the walkable angle is such that the player slides at a 45 degree angle
4. Resolving The Gap and Rewarding Payoff
- Narrative Rationalizations
- - Player needs to reach this landing pad to get off the planet and away from Cartel
- - Ship that gets blown up was your ride off the planet
- Design Rationalizations
- - Everything seems resolved until the flying cruiser from earlier in the level comes back to finish job
- - This is the climax of the level and will be biggest challenge for player to defeat cruiser
- - Player will get to vanguish a unique enemy type that almost destroyed them earlier in the level
Technical Explanation
The systems driving the Flying Cruiser are too large to fit into one image or even a few
The Flying Cruiser behavior was composed both of custom blueprint events and a custom Behavior Tree. This "flying" type of enemy was uniquely challenging because UE4 navmesh does not work in 3D which is why this enemy type is fully custom.