top of page

GAME JAMS

I have completed 8 game jam submissions. I love the challenge of a very short development cycle, finding creativity through the limitation of the jam theme, and experimenting with game design in a low commitment project. You can visit my itch.io page to play through some. This page will highlight achievements from my favorite submissions.

portfolio secrets of the swan.png

Secrets of the Swan is a horror game developed in 1 month for Game Off 2024 with a team size of 10. I was responsible for the overall design: level design, systems design, puzzle design, and enemy design. I also helped on the technical side with implementing gameplay systems, the enemy AI, and the UI.

Once the team decided on the horror genre, I set up a meeting with our programmer/producer to establish a feature list. We discussed the necessary tasks for art and programming to achieve the vision for the project. We then took that feature list and posted it on a Trello board for the team to visualize the tasks. Having a checklist of tasks was crucial for staying on track to meet the deadline and solidify the game's scope so we wouldn't fall victim to feature creep.

​

Here is a link to the feature list document.

BlueSwan_Blueprints_F1.png
BlueSwan_Blueprints_F2.png

We decided to go for a horror game with a noir detective vibe, so I made the decision to set the level within an abandoned jazz club with an attached hotel. When brainstorming the core experience, I took inspiration from Amnesia: the Bunker and Alien: Isolation by pitting the player against a singular stalker enemy AI. The player would need to explore and solve puzzles while avoiding this enemy to escape and win the game.

​

The player had access to a handful of tools: a hand crank flashlight which provided the best visibility but created noise that could attract the enemy, a lighter which served as a silent light source in a radius but didn't cast light as far away, a magnifying glass which could see invisible notes in the environment, bottles which could be thrown to create noise and distract the enemy, and a gun which could not kill the enemy but could cause it to flee.

​

Bottle, ammo, and painkiller pickups scattered around the map randomly. I implemented the item spawn manager which held an array for each item type. It randomly selected items to destroy and deleted the corresponding elements from the array until the array size was equal to the target number of spawned items for that type.

Blue Swan Nav Zones.png
Blue Swan Nav Zones 2.png

With a stalker horror game, the enemy AI is the focal point of the gameplay and the way the AI traverses the level and hunts the player are a crucial aspect of that. So as I was designing the level, I decided to split the map into 8 zones. Each zone would have a number of nodes. The enemy would patrol to a random node within their current zone.

 

After reaching each patrol point, the enemy would check if the player was not within the enemy's zone. If so, there would be a random chance that the enemy would update their zone to equal the player's zone or remain patrolling within their zone and increase the chance to update it next time. This helped to ensure that the player felt hunted and that the enemy was never far behind. Additionally, I decided to increase how much the chance to update goes up as the player progresses through the game.

3 BP Enemy AI Visual Detection.PNG

I used blueprints to create the enemy AI behavior. This blueprint screenshot shows how I handled the enemy visually detecting the player. The enemy had 7 possible states: idle, patrol, investigate (seen or heard), chase, attack, and flee. In a stealth game, it's not ideal to have the player detected immediately, so I established a detection rate based on whether the player was crouched, walking, or sprinting. The faster the player moved, the quicker the enemy would give chase. This gave the player a chance to crouch and duck behind cover to avoid detection. During the enemy's investigation states, they would move towards the position where the player was last seen or the origin point of a sound.

I implemented the functionality for most of the player's tools: crank flashlight, bottle throwing, and shooting the gun. While I did not implement the magnifying glass, I established the concept and implemented the puzzles.

portfolio voice of the valley.png

Voice of the Valley is a game developed in 1 week with a team of 8 people. I was the level designer on this project. Due to the short deadline and the team's decision to lean more into narrative than gameplay, I designed the level to be more linear, moving from one story beat to the next. We wanted to utilize the technique of gating, so that the player must gather tools to progress. Eventually, the player would find a weapon and drive off the beast haunting the ghost town.

​

I designed the map to loop back on itself so that I could introduce and tease future objectives early on and reward them with that payoff when they return to the area.

map_v2.png
portfolio old bloodseeker banner.png

Bloodseeker is a metroidvania that I developed for the Metroidvania Month game jam. It won 1st place and received positive reviews from players. For this project, I did everything except the audio.

Bloodseeker Gif 3.gif

Exploration is core to the fantasy of a metroidvania game. Sense of discovery is a powerful and rewarding experience that the player can engage with by charting their own path through the sprawling nonlinear map.

 

The world is structured around obstacles which require the player to find new abilities to overcome them so they can explore new locations.

Bloodseeker featured 6 areas and over 100 rooms to explore. Players could easily get overwhelmed if given access to the full map right from the start, so I locked the player in smaller sections of the map and slowly opened up the world as they progressed. Importantly, I also locked the previous section behind them, allowing players to initially focus all of their attention on their current area. Eventually, the player will come full circle, returning to the first area. Upon their return, all of the locks are removed and the player is free to explore the entirety of the map.​

BS_forest.PNG
BS_map.PNG

Requiring the player to navigate an expansive 2D space and remember which obstacles can and can't be overcome can easily become taxing and frustrating.

​

To mitigate this frustration, I implemented an auto-mapping system that players could reference. I also created a fast travel mechanic that the player can acquire when they've explored most of the map to reduce tedious backtracking.

To fully encourage and empower the player to explore, they can sequence break the game. This allows them to tackle obstacles in nearly any order they desire, if they can find the road less traveled.

Bloodseeker Gif 2.gif

The player takes on the role of a vampire lord on a quest to regain his lost power. Enemies which begin challenging but can be easily defeated later help to fulfill this fantasy.​

 

Skill-based combat focused on mastery over the game's systems offers near-endless engagement and more depth for players to sink their teeth into.

A key ingredient to combat that remains fresh after hours of play is variety in the cast of enemies and encounters.

I designed the enemies of Bloodseeker like pieces on a chess board, each serving a role in combat.

​

An example is the Revenant and Bile Bat. The Revenant is a tough melee enemy that tests the players timing. The Bile Bat flies away from the player and spits projectiles. Combining these enemies into a singular encounter results in a unique problem for the player to solve.

BS_enemy encounter.PNG
BS_Frank.PNG

During development, most of my focus in combat design was devoted to the 9 bosses the player could face.

Each boss was designed to present new and unique challenges as well as build upon previous enemies to test the player's mastery over defeating them.

​

Scroll down to the Boss Design section of this page for a detailed example of how I design bosses for Bloodseeker.

BS_menu.PNG

Progression is another key facet of a metroidvania game. Throughout the game, the player will acquire items and abilities which enhance their exploration capabilities or their combat prowess.

​

I balanced the progress of Bloodseeker to be more difficult towards the beginning, with the hardest challenge at the midpoint, and slightly easier fights towards the end. This was to capture the feeling that the vampire lord was becoming the most powerful monster in the castle again.

For Bloodseeker, I locked progression behind the most challenging parts of combat and exploration: bosses and secrets.

​

The power ups were designed to feed back into either combat, exploration, or preferably both. A good example of this is the Bat Dash. The dash enhances their horizontal movement capabilities and gives a brief period of invincibility. These properties make the dash a valuable tool for the player in both exploration and combat.

bat dash.png

Boss Design: Weaver

BS_weaver caught in a web.PNG

The Weaver is one of the 9 bosses in the game. Located in The Web area, which is designed to instill fear and flip the power fantasy on its head by making the player feel weak and vulnerable. Because my goal was to maintain the emotional theming, the Weaver is designed to be the most intimidating boss in the game. The Weaver is massive compared to the player and constantly creeps towards them throughout the fight to make the player feel claustrophobic.​

​

Being the halfway point of the game, the Weaver is the most difficult mandatory skill test. The Weaver will spit webs and venom projectiles at the player and stab at them with its front leg. In addition to the Weaver itself, there are 3 egg sacks that will spawn Weaverlings if the player does not destroy them every so often. This forces the player to juggle dodging projectiles, jumping to attack the Weaver's head, and destroying the eggs while avoiding the legs.

portfolio neon eon.png

Neon Eon is a wave based shooter I developed in 2 weeks. The core concept revolves around pickups altering the arena resulting in an emphasis on tactical positioning. If the player got ammo or health, that floor tile would fall into the abyss. To reward skillful play, reaching a certain kill threshold without taking damage would reinstate fallen tiles.

portfolio bushido.png

Bushido is a minimalistic 2 button fighting game I made in 2 days. My objective was to create the most simplistic fighting game possible while retaining the RPS design (rock, paper, scissors). In fighting games, the RPS options are attack, block, and grab. Attack beats grab, block beats attack, and grab beats block. I decided to forego jumping but kept forward and backward dashing.

Play My Games

  • Twitter
  • LinkedIn
bottom of page