Rift Shot - In Progress FPS Prototype
Shield Prototype Level Playthrough
3D Modeling Examples
Description: Rift Shot is a First-Person Shooter prototype designed to combine the arena-style movement mechanics of games like Doom with satisfying precision aiming and abilities from games like Destiny 2. The inspiration for Rift Shot originated from a desire to exercise my game design skills while learning about the First-Person Shooter genre. Development on Rift Shot is ongoing so expect more updates in the future.
Design: As per the Design Goals for Rift Shot, I wanted to design gunplay that gave players an appreciable sense of control and impact. Each gun has its own fire rate, damage, recoil, accuracy, speed impact, scope visibility, animations, and sounds. Guns will also leave a visual and physical impact on enemies, including special sound effects, damage number indicators, UI flourishes, and movement force when damage is large enough.
So far, I've implemented three enemy designs to help fulfill the movement and strategy goals for Rift Shot:
A slow-moving flyer that can effortlessly chase the player across any environment. Once a Seedling gets close enough to a player, it initiates a devastating self-destruct sequence. Boom Seedlings keep players from staying in one place while also offering an opportunity to take down other enemies/objects with their destructive power.
An enemy capable of teleporting anywhere necessary to fire its projectiles at players. The Mage Sprite's small size and added vulnerability on its head make it a prime target for higher accuracy weapons. If a player escapes its vision for too long, it will teleport to a new location where it can see the player once again. The Mage Sprite's movement script is designed to keep players from camping or hiding within an environment.
The first "Boss" enemy designed in the game. The Slayer can slash, smash, and fire at the player. Slashing prevents players from reaching the Slayer's weak spot too easily, as the attack triggers whenever a player gets too close. Smashing has a similar effect as the Slayer ripples a wave across the ground- pushing players to seek elevation and run. The Slayer fires large projectiles that can be parried back for a "stun" opportunity.
Scripting: This project has allowed me to fully implement an adaptable First-Person Shooter engine inside of Unity that can function as a modular base for testing new designs. My scripting accomplishments include a first-person camera, controls, combat, animation, collision, UI, and enemy AI.
3D Modeling: Multiple game assets, including the Assault Rifle, Shotgun, Shield, Boom Seedling, and Boom Seedling Spawner, were modeled by me using Autodesk Maya LT. The Level Blockout for the Shield Prototype was also modeled entirely in Maya.
Team Size: 1
Attributions: Some assets, 3D models, animations, and sound effects were purchased or taken from free resources online for testing purposes.
Project Length: 3 Months (Ongoing)
Tools: Unity Engine, Autodesk Maya LT, and Adobe Illustrator
A Link to the Past - Dungeon Expansion
Description: I started by taking a closer look at A Link to the Past's dungeon design to develop a list of principles that make memorable and exciting dungeon experiences. I wrote an article detailing these findings and how game designers might use them to make a successful Zelda Dungeon.
Using what I learned, I iterated through multiple dungeon designs, gathering feedback from friends and family whenever possible. I then constructed my own A Link to the Past engine in Unity to implement a playable version of my dungeon.
The result is an entirely new dungeon with unique puzzles, items, and enemy designs.
Team Size: 1
Attributions: The majority of the art and sound assets were taken from Nintendo's The Legend of Zelda: A Link to the Past purely for experimental design purposes.
Project Length: 3 Months
Tools: Unity Engine and Adobe Photoshop
Description: Natural Perfection was the result of a company-sponsored Game Jam where I got the opportunity to pair alongside a handful of friends to tackle the theme of "evolution."
The idea was to create a local multiplayer game where it would be difficult to die the same way twice. By carefully tracking how each player died, we would give them a power-up on the next round that would help prevent that same death in the future. So if a player was shot in the back, they would start again with a shield on their rear.
My role on the team was to devise and script the power-ups for each player evolution.
Team Size: 4
Project Length: 1 Week
Tools: Unity and GitHub
Friends 'til the End
Description: Friends 'til the End is perhaps the most confusingly named game I've ever worked on considering it's not about friendship. As the final project for my Senior Design course, Friends 'til the End represents months of iteration, resulting in a Battle Royale style experience years before the days of Apex Legend and Fortnite.
The goal was to try and offer players powerful and time-sensitive decisions while being hunted by their enemies. Spending time fishing might give you more items, but you'll find that your attack power will be less than a player who spent their time-fighting mobs of enemies. These decisions were inspired by the skilling mechanics in RuneScape.
I designed and scripted the combat, controls, UI, camera, and fishing mechanics. I also curated the project documentation from the initial gameplay pitch to the final showcase presentation.
Team Size: 3
Project Length: 2 Months
Tools: Unity, Dropbox, Google Drive, and Pyxel Edit
Advanced Directed Study
Description: Due to a strong relationship I had built with the "game professor" at the University of Michigan, I was offered the opportunity to spend a semester studying the Unreal Engine to help determine its validity as an educational tool for the university. Specifically, the Blueprints visual scripting language, as it was believed that it could be easier to learn for students than the already established Unity engine.
Most of the projects I worked on resembled experimental vignettes into what's possible with Unreal, and so I, unfortunately, don't have much footage of those projects. Unlit represented our research group's "final" for the course as it tasked us with combining our efforts into an educational showcase.
Inspired by the idea of only having light when the player shoots, we designed Metroid Prime inspired prototype that experiments with light to guide the player.
Team Size: 4
Project Length: 3 Months (Length of the entire study including multiple game projects)
Tools: Unreal Engine
Simon Says Kinect
Description: As a senior development project, I partnered with a local organization to solve a user problem through software engineering. I chose to aid the University of Michigan Hospital in their pursuit of making physical therapy more accessible and enjoyable for their physically disabled patients.
Along with a group of three other students, we decided the best way to go about doing this was to make a game that the patients could play. Utilizing the Microsoft Kinect, we tracked the patient's movements without the need for them to hold a controller. Our efforts resulted in a highly adaptable gameplay experience that could successfully be used to encourage physical movement despite a variety of potential injuries.
Team Size: 4
Project Length: 1 Month
Tools: Unity, GitHub, Google Drive, and Microsoft Kinect
Draw Battles (Pictionary)
Description: OK this might not be an entirely original game idea, but the focus for this school project was actually on the User Interface instead of the overall gameplay experience.
The core design challenges here came from appropriately conveying the game status through the UI without the need for additional instructions or overwhelming text.
Team Size: 3
Project Length: 2-3 Weeks
Tools: Unity Engine and Google Drive
Description: Some of the smaller game projects I've worked on in the past include a FPS prototype where the player can curve bullets after shooting them (Unity), a 2-player Tetris Attack deviation that incorporates a moba leveling system (Unity), a Space Invaders Remake (Monogame/XNA), and a Pokémon clone (Python).
Team Size: 1
Project Length: N/A
Tools: Unity, MonoGame/Xna, Python