Shattered Peak

Gameplay Video

Golden Path playthrough where the player interacts with more enemies, encounters close-quarters combat and can acquire the shotgun

Alternative Path playthrough where the player uses the wall run mechanic to traverse moving obstacles, acquire collectibles and enter the final room in an advantageous spot for longer range combat

Project Type: Personal

Shattered Peak is a first-person level with high-speed wall running mechanics that mixes the classic shooter genre with a more freeing style of play similar to Titan Fall. The main goal for this experience was to create a whitebox environment in Maya that was easily distinguishable to the player. Additionally, I used this project to hone my blueprint scripting abilities and to further my understanding of more complex blueprinting. Finally, as a designer who always considers the desired player experience, I used my design understandings of games with higher levels of movement to increase the overall gameplay flow within this level so that the player doesn’t lose momentum.

Responsibilities:

  • Developed a reference board to outline specific gameplay elements, level design techniques, and architecture which facilitated intense, fast-paced Sci-Fi gameplay
  • Designed the initial layout of the map on paper and then transitioned to Illustrator for further iteration and development
  • Created 35 detailed proxy assets in Maya to support a more detailed level of whitebox construction
  • Built and iterated on the whitebox using Maya to construct the entire geometry and UE4 to test the gameplay

  • Scripted trigger events throughout the level to increase player engagement and thematic perception
  • Assembled 15 interactive Blueprints using UE4, including displaying information to the UI
  • Altered an existing FPS controller to create the ability for players to wall run

Software Utilized:

  • Maya
  • Unreal Engine 4
  • Blueprints
  • Adobe Illustrator

Inspiration:

  • TitanFall: Player mechanics, enemy encounters, additional explorable areas, Sci-Fi aesthetic and themes, and collectibles
  • Mirrors Edge: Keeping the momentum through movement, balanced spaces between several obstacles/interactables to ensure freeing movement and available resources
  • Halo: Combat situations, aesthetic inspiration, and large combat spaces

Preproduction and Design Principles

Research and Prototyping:

From the start of this project, I had a good idea of exactly which player mechanics I wanted to build my level around. The largest obstacle to overcome at this stage was creating a TitanFall style wall run since there was nothing like it on the UE4 Marketplace. After scouring the internet, I found some tutorials on exactly how to create a character component that allowed wall running to be possible on nearly every surface. Naturally, I attached the character movement component to an existing basic FPS controller, which gave me enemies and the ability to shoot them. From there, it just needed to be refined, but I now knew this mechanic would work in-game so I could move on to the design phase.

Creating a Reference Board:

Now that I knew the player could navigate walls and fire at enemies, I began to gather references from games and other pop culture, which best-expressed elements I wanted to include in my whitebox. Taking the time to set a strong foundation early on increased the overall strength of this project, and having so many ideas connected on one sheet helped solidify those design pillars. By creating this reference, I was able to understand which mechanical elements worked well together, and this allowed me to create the desired player interactions. Keeping the momentum moving forward was a great example of this, which allows me to ensure an enjoyable and smooth player experience as they traversed the indoor and outdoor spaces. In order to keep the momentum moving forward, I had to ensure there were plenty of large flat walls for the player to run on, while also encouraging such fast-paced movement with explosive moments and environmental hazards. Although the player didn’t need to use cover to complete the game, because it is an FPS, I viewed this as an essential part of the formula to make sure the player had the opportunity to be strategic in their movements.

Layout Design:

The Layout was designed to be a mixture of indoor and outdoor areas built in a linear capacity, but with several different paths leading to the same ending. The map itself consists of multiple areas, all of which combine to resemble a Sci-Fi mountain base. Using a mechanic like wall-running, I knew that using verticality would be the best way to encourage the player to engage with the mechanic in new and exciting ways. Because of this, in the larger rooms of the level, I added platforms at various heights (like roofs) that the player could get onto from wall running. The goal of the space was to showcase replayability by giving the player a wide range of routes to take through the space with varying gameplay experiences. This also assisted in allowing me to give the player multiple options for engaging with the enemies; they could attack from afar, get up close by wall-running next to them, or hide behind cover placed throughout the level.

Production

Building the Whitebox Using Maya and UE4:

The next step was to begin laying the foundation for my entire level. For this, I began by building the basic dimensions of each room and connecting areas, and then followed that with a pass using custom props. For scale, I imported an FBX file I keep on hand of the UE4 Mannequin to compare to the size of each object constructed in Maya, ensuring correct consistency of the assets scale.

The process of building the space took several iterations. I exported the mesh frequently and imported it into UE4, double-checking the scale and testing the gameplay before going back to Maya to repeat the process as needed.

For gameplay, I searched through every available FPS mechanics pack on the Unreal Marketplace to find the one with the most stable enemy AI and overall FPS functionality. After choosing the best asset pack for the desired gameplay, I began to implement the knowledge I learned using a tutorial to create the Titanfall style wall run component that, when attached to a player character, allowed them to wall run on every flat (or nearly flat) surface while simultaneously being able to utilize all basic FPS mechanics. Additionally, learning to work with the character controller proved to be a valuable tool in improving my confidence and abilities with Blueprints, in addition to greatly expanding my understanding of components, functions, and macros.

 Using detailed proxy models made in Maya, I set up 15 blueprints that were utilized throughout the level. These included a checkpoint system, alarm lights, custom UI, and moveable platforms. The checkpoint system worked with custom kill volumes within the world, and its respawn system allowing the player to restart at the closest checkpoint to which they had died. The alarm lights were used for player conveyance and to increase immersion through added urgency. The UI that I built had a counter for collectible objects and updated quest objectives based on tasks completed, showing to the player how far along in the level they were and what they had to do next. The moving platforms would activate when shot by a raycast that extended from the gun and then extend outward for 10 seconds before retreating to its starting position and changing the light color above the door. All of these were created from scratch using UE4 Blueprints.

Once the initial whitebox had been completed and I had created my arsenal of blueprints to use within the level, I began populating it with encounters. These included multiple enemy encounters throughout each section of the space, emphasizing player engagement by pulling the player through the space. Additionally, explosive moments where bombs would detonate based on trigger box overlaps lined outdoor spaces to mimic the intensity of wartime explosions, pushing the player further into the level. I encouraged multiple forms of combat by ensuring that the player had different routes to take each time they faced an encounter, as well as several unique weapons placed around the map near areas where those weapons would thrive to encourage player engagement. For example, the shotgun is presented in a close-quarters area where enemies are near the player with an abundance of cover to hide behind, encouraging the player to rush the enemy using the shotgun. The player could hide behind various covers and shoot from afar. They could attack brazenly and run along the walls or simply walk through the level to their destination, wall running only when necessary for a more straightforward experience. It is up to the player how they want to traverse the level, and I gave them the tools to do so.

The last missing piece of the puzzle for this was adding objects within the world that would make it come alive. One of the objects that I decided to create to bring the space to life was a computer station that directly mimicked the one used in Titanfall and Doom Eternal. It had screens that changed color depending on the status of the hanger door and would be activated by the player and would move the hanger door pieces, turn on a light to draw the player toward the opened door, and play an activation sound. Another element that really brought the space to life was creating an operational factory using sequencers to change the level’s layout slightly in real-time. I created several sequencer events that began on play and would loop through its animation of building a shipping box, or large walls piece by piece and, once complete, sending it off-screen deeper into the factory and out of sight to begin again. The more pieces of the box/wall are assembled, the easier the obstacle is to traverse; crossing the building boxes using the wall run and optimal timing allows the player to begin an alternative path that encourages a different style of gameplay than the golden path.

BLUEPRINT EXAMPLES

These are a few examples of the Blueprints that I created for the level. I only included a few that would be easily viewable using the Blueprint Pastebin. One of the important things that I learned while creating these Blueprints was the functionality and importance of Macros and Functions within Blueprints. I included these below, please make sure to read the captions to understand where the code was used and how they are linked together.

Interactive Computer Console

On BeginPlay this BP sets values, but after interacting with the user it moves the doors, turns on a rotating light, and activates sounds

Checkpoint System

Sets player location on overlap, checks collision, and activates the respawn event which sets the player’s current location to be where the checkpoint initially saved it.

Macro to Accompany Checkpoint System

Activate Wall Platform

When hit by the player ‘fire’ input the platform moves outward for a set time, changes light and material colors, then reverses the entire process, until shot again

Function inside of Activation Platform that changes light colors, and materials

Lessons Learned

Improving Maya Skills:

This was my second time building a whole level in Maya, so I am significantly improving in every aspect of using the software. Pushing myself to learn different tools within the software has improved the quality and speed at which I can create architecture and proxy assets. By the end of this project, I became incredibly comfortable working in Maya to quickly construct stairs, computer consoles, cover, and unique gameplay assets.

UE4 Blueprints:

For this level, I prototyped several versions of each blueprint to ensure that I understood how and why things worked the way they did. In nearly every instance, I improved the design of the blueprint through iteration and a greater understanding of the system as a whole. More specifically, this project reinforced the importance of macros and functions to organize and break up blueprints into more readable chunks, which were easier to digest. Additionally, during this experience, I was able to experiment and iterate on using the UI to express vital information to the player.

Combat Design for Large Multi-directional Spaces:

One of the trickier elements of this project was designing large-scale combat interactions that could be approached from many angles. Through the abundance of diverse cover and precisely placed enemy clusters/patrols, I successfully created diverse encounters with different enemies within the same area. Striking the right balance was tough at first, but once I was able to test the gameplay, iteration became simple, and creating a balanced interaction seemed to come naturally