Tutorial Level Design!
​
The problem : Players had no idea how to play the game so we needed to create a tutorial that informed them!
​
My solution : Work with lead to create a tutorial that showcases and iterates on mechanics. It needed to be simple and focus on teaching mechanics, so guiding principles are fairly overt, so as to not confuse players.
Mechanics are taught, repeated and then iterated on as more complex mechanics are introduced.
Cosmetic systems design!
​
The problem : There was a rough idea for a cosmetic system, players should collect currency that they can spend on cosmetics in the level hub.
​
My solution : Create a system, from saving currency count, to the UI for purchasing and equipping the cosmetics. It's user friendly and functional, designed to be accessible for younger audiences.
Camera systems design!
​
The problem : Players constantly had to adjust their view by using the right thumbstick, the camera systems were relatively nonexistent.
​
My solution : Creating a state based camera system that predicts where you're intending to go, and shows you what you need to see, relevant to what you're trying to do.
For example, dashing makes the camera snap behind the player, and moving left pans to show you more of the left side of the screen.
TUTORIAL BLOCKOUT
Worked directly with the Director to plan out the design for the Tutorial level.
​
-
Plotted out the main mechanics that we needed to teach to players.
-
Separated the mechanics into buckets for related mechanics. (all movement mechanics together)
-
Distributed buckets to rooms. (movement, adv movement, collection, base mechanics)
​
Director and I worked on separate rooms in the tutorial level, where I eventually was handed control over the entire area to tune and polish all the spaces in the tutorial level.
TUTORIAL REFINED
Implemented camera sequences, used Dolly Zoom and Rule of Thirds to create dynamic feeling sequences that helped convey different emotions, ex: Dolly Zoom indicated confusion for a particular character.
​
Added final area that explained the game's Lock and Key system for major areas. Designed the sub branches to use a new mechanic in a simple way to help pace the addition of these mechanics.
​
The tutorial level was showcased at a local convention, and South By Southwest, with great public reception.
Ad
MECHANICS
​
Camera Systems
The old camera systems required constant input from the user, if they wanted to look around at all, using the right stick was mandatory, this was untenable as the target audience was young kids, and they needed a friendly solution.
​
After a few days of working with the camera system, I produced a tool that reacted to player intention and the player's current movement state. So if the player is moving left, or right, it will pan over to the direction they're moving, and if the player moves towards the camera, it will dip down to show the space in front of them, and then slowly pan to be behind the player, the slow speed ensures that the player still feels in control.
​
Level Design Tools
During the course of the level development, it was quickly apparent that we needed new tools. The existing methods would require significant rework on the artist's end, and dropped frames from 60 to 22fps before much of the level had even been made.
​
I'd built a tool to solve similar problems a few months prior on a personal project (Heroes call! Also talked about here, go check it out!) I went about creating a tool using UE4's instanced static mesh system, which significantly improves performance for the game. This is done by reducing the number of draw calls.
​
Saving / Loading Collectibles
Another pipeline issue was the way we were handling saving and loading of collectibles, for the cosmetic system I built, we needed to know how many of an item had been collected, and also ensure that it could not be recollected.
​
To achieve this, my first attempt was to simply get a reference to all the collectibles on start, and then store them in a save file, or check to see if a save file for that level already existed, in which case I would simply load it. The first issue that I ran into was that UE4 really hates trying to save actor references, which super created an issue for this. The second issue was that the save files weren't the smallest, only around 30mb, but still not optimal.
​
The solution I used was instead to create a new script that simply collects all the collectibles during edit time and stores them in a serialized list. This means no awful slow collection operations at runtime, and because the list order of collectibles will never change, all I needed to do for saving was map a bool array to the list! This means that the save files were also 1-2kb, much better! All Level Designers need to do to use this tool is simply drag it onto the map, and press a single refresh button once all collectibles have been put in place.
​