Mayfly
Mayfly is a 3D first-person survival horror game set on the great lakes. After receiving a letter from his estranged sister telling him to come home, the man is pursued by otherworldly creatures, dredging up memories of why he was driven away from home, to begin with.
Mayfly
Mayfly is a first-person survival horror game that takes place on the great lakes. I developed this game in 9 months as part of my senior year thesis project at the Cleveland Institute of Arts. My goal with this project was to create an interactive short story about trauma, isolation, and family. Below is a playthrough video, the game can also be downloaded for Windows at: https://lmiller.itch.io/mayfly
Mayfly Thesis Proposal
Narrative Thesis
When life becomes chaotic and seemingly uncontrollable, isolating oneself, even from those you care about the most can be easy. It can seem easy to run from conflict and emotion, but in the end, it will always catch up, and when it does it is much easier to face with loved ones at your side
Logline
After receiving a letter from his estranged sister telling him to come home, the man is pursued by otherworldly creatures, dredging up memories of why he was driven away from home, to begin with.
Gameplay Synopsis
A 3D first-person survival game where the player must navigate their steamship around obstacles, making sure the engine stays fueled with coal. Monsters will accost the player, chasing them through the lake, latching on to the boat, and tearing it apart.
Developing the Visuals
Visual Development for me consisted of two main aspects, storyboarding and experimenting with Unity's HDRP. At the start the story looked a lot different, the broad strokes were there, isolated on a boat in the great lakes being chased by monsters. At first, the monsters were robotic and futuristic and the boat was a large freighter. It wasn't until I began introducing the idea of family conflict and exploring the character's motivations that the visuals such as the creature designs as well as the steamboat began falling into place. Most of the finalized designs came through iterations on the storyboards themselves. As for getting the general game aesthetic in Unity, I took some time to play with a few different styles and textures to see which one I liked the best. However, early on I became fairly hard to set on a more simplistic style that would allow me to focus less on detailed models and textures and more on the technical aspects of the game. The aspect of visual development that I found most useful was color scripting. I played with pushing some post-processing effects to get some extreme colors that I then used to map out the mood and progression of the story through color. This step helped me better understand the mood I was going for as I continued to develop the story.
Developing the Gameplay
The core gameplay idea was state management. The primary gameplay loop was akin to an infinite runner, the boat kept moving forward and the player had to avoid obstacles. However, the player would have to balance this with managing the coal in the engine, dealing with enemies, and making repairs when the boat took damage. The goal of this interplay between gameplay loops was to make it so the player would constantly be forced to run around the boat dealing with these various secondary loops while still making sure they could steer the boat out of the way of danger. This gameplay also plays into the narrative, the panicked isolation that the main character has put themselves into when choosing to cut off the ones that care about them the most is the same panicked isolation I want the player to feel as they are forced to juggle the varied systems of the boat. As soon as I had this general concept in mind I began grey boxing and playtesting both on my own and via others. I developed the ship mechanics first then began adding the monsters. Once all of the basic elements were in I began shifting and balancing until the game played how I wanted it to. Although the majority of this process took part in the first half of the nine-month period, I play-tested and tweaked throughout the entire development process.
Rigging
The monster was probably the most basic setup, the arms and legs had IK/FK switches and the ribs used set-driven keys to control. Due to the fact that the monster was often a great distance away from the player, It didn’t make much sense to get too detailed with the model or the rig. If I were to increase the scope of the project I would’ve liked to use LODs as the monster got closer to the ship. That being said, the low-resolution model and rig were still able to show the movement that I was looking for.
The first-person rig had to twist joints to get a smoother rotation as well as IK/FK controls. Though it was a basic set up I can’t really think of much else I would’ve wanted in the rig. I was going for something stylized but not overly exaggerated and the rig as well as the model by Bryan Ritzspikes were able to lend that look when it came to animating.
The Mayfly rig like the others built specifically for this project was fairly basic but accomplished exactly what it needed to. The legs only had Ik controls but I used world space switches to parent the feet to the body when it was in the air. The wings used set-driven keys and the smaller wings could be parented to the larger ones when I wasn’t animating them. The mayfly, which again was also modeled by Bryan Ritzspikes, was definitely one that I enjoyed animating the most, mainly because I really enjoy serpent or worm-like creatures and the mayfly is essentially that but with legs and wings. If there was one thing I would change about the rig it would probably be the placement of the root which I tried making at the back legs but it probably would’ve worked better at the section of the body where the wings are. I never ran into any major issues as a result of this placement but it would’ve made animating some motions slightly easier.
Finally, there was May. Late in the storyboarding process, I was advised by a professor to add some scenes with the sister at the end. Daunted by the scope of having to design, model, and rig a full human for what ended up being two scenes I decided to use a game rig that I had previously made using a model I had purchased from CGtrader by an artist named Malicki. Bryan Ritzspikes helped make some adjustments to the model mainly changing the clothing and hair a bit to better fit the character. The rig is stylized with ribbon controls, squash and stretch features in the limbs and on the spine, full ik fk support in the limbs, spine, and neck, and a basic joint-driven face. Though, due to the nature of the scenes the sister was in a lot of these features were overkill.
Visual Effects
For visual effects, I mainly used two tools, namely the Unity shader graph and Unity’s particle effect system. With these, I was able to create dynamic effects that helped bring life to both the game and the various cutscenes. To list a few specifically, the water was mainly achieved using tesselation via the Gerstner wave equation as well as panning normals and Voronoi noise for the shimmer. For things like fire smoke and water, I drew animated textures and used Unity's particle system in order to simulate them or used shaders. Lastly, for the mayfly swarm, I used vertex animation in order to add movement to the mesh that made up the mayfly particle.
Cutscenes
All of the cutscenes were done in the Unity engine after being storyboarded using a mix of 2D and 3D assets and then animated in Maya.
Credits and Thanks
Thanks to Bryan RitzSpikes for modeling and texturing the mayfly, modeling the player’s arms, modeling the boat interior set, and details on the May's model
May's model by Malicki
Stamp Clipart PNG Designed By Essie from https://pngtree.com/freepng/vintage-stamps_1158799.html?sol=downref&id=bef
May Voice Acting by Maggie Ross
Music by Kevin Macleod
"SCP-x1x (Gateway to Hell)" Kevin MacLeod (incompetech.com)
Licensed under Creative Commons: By Attribution 4.0 License
http://creativecommons.org/licenses/by/4.0/
"SCP-x4x (Mind Leech)" Kevin MacLeod (incompetech.com)
Licensed under Creative Commons: By Attribution 4.0 License
http://creativecommons.org/licenses/by/4.0/
"SCP-x5x (Outer Thoughts)" Kevin MacLeod (incompetech.com)
Licensed under Creative Commons: By Attribution 4.0 License
http://creativecommons.org/licenses/by/4.0/
Sound Effects and Water normals from CC 0
Thanks as well to my professors and committee members who helped throughout the entire process
Anthony Scalmato
Anthony Calabro
Crysta Frost
Gregory Leysens
Adrijana Nerone
Jared Bendis
Jeff Simonetta
And finally to my friends and family who helped playtest, and supported me not only through this process but through my entire college career
All models and textures not listed, as well as the rigs, animation, VFX, UI, scripts, gameplay, and story were created by me, Laith Miller.
Comments (0)
This project doesn't have any comments yet.