A unique elevator loader

One of the core features of my experimental first-person adventure puzzle game that I’m developing is a world loading mechanic that uses an elevator as the main hub. This is the first feature that I’ve implemented to test how it works since it’s quite central to the overall experience. A simple level loader may not seem that interesting or important at first, but this elevator is a bit different than the typical ones that you’d see in a game…

Controlled randomness in endless runners

I’ve been working on an endless runner in Unreal where the main control utilizes the rotation of a mouse scroll wheel or touch-drag movement to move platforms and bridge your character through the course. One thing I noticed right away through prototyping was that true randomness was not fun at all and just seemed hectic and frustrating while also being hard to calculate the possible paths that the player can accomplish. I’d never want the player to feel like there was no way to continue in their run because a block was impossibly far, that’s a great way to get…

Shimmerfall Springs postmortem

A postmortem of my Skyrim level, where I explore what went right and what went wrong, while thinking of solutions to do better next time. I get into utilizing NPCs to give character to the level, focusing on player choice from different class play styles to emergent choices, how I learned from Bethesda’s levels to improve my quality, and the various ways I achieved my storytelling goals. I then get into some challenges I faced, such as scripting the boss battle, optimization issues, and a frustrating one for the players: leaving the level on a cliffhanger.

Making of Tris

Tris is a forever-runner flash game created in collaboration with Nick Yonge. In Tris you control a shape changing “Tri” that can be pulled to become fast and streamlined or squished to expand like a parachute and slow down. You have to use this ability to survive and gain more points as you’re flying though a randomly generated world. My largest contribution to the project was creating the random block generator that can range from being difficult to easy while keeping a constant path for the player. My process was first creating a static one to see how complicated it…