Pillar Run
Made in Unity
Solo Project
3 Weeks long
June 6th, 2024 - June 27th, 2024
Major Role Focus: Programming, Game Design
Project Goals
This project was a personal project in which I challenged myself to make a 3D Endless Runner game using Unity Mobile.
Goal 1: Gain experience in the Unity Mobile and making mobile games
Goal 2: Have a functioning endless runner game that gets progressively faster
Goal 3: Motivate players through challenge and mastery
Game
Description
Pillar Run is a 3D Endless Runner where the player plays as a squirrel trying to climb up a pillar as far as they can, while collecting some acorns along the way. The player must avoid obstacles that can end their run if they get hit once.
Audience
Pillar run aims to attract a general audience. Through simple gameplay and a high skill ceiling, both casual and hardcore players can pickup the game.
What one run of Pillar Run looks like
In this project I…
Learned how to use Unity Mobile and learn how to make a mobile game
Researched endless runners to gain an understanding of the genre
Programmed all systems and mechanics that make the game work
Ideated and implemented design changes to improve quality of life
Made changes based on player feedback
More on my process below
Game Design
Research
Some of the most popular 3D endless runner games are Temple Run and Subway Surfers.
Commonalities that can be found in both games that can inspire my design:
Score and high score to encourage replayability and motivate players to aim for a higher score.
Obstacles to avoid to provide challenge for the player.
Gameplay progressively getting faster overtime which results in the game becoming more difficult.
The spin to my game
Pillar Run’s more unique take on the 3D endless runner genre uses spinning or running around a pillar as its main mechanic.
While still following the simple gameplay that most successful endless runners have, this twist allows pillar run to stand out more amongst games of the same genre.
Adding Conflict - Obstacles
A good endless runner involves avoiding obstacles. I added red obstacles for the player to avoid, and would end the game if they were hit.
To prevent players from going for as long as possible without getting bored, the game gets progressively faster.
To allow players to take a breather between runs, a game over screen was added and it also displays the player’s high score so they don’t have to keep track of it themselves.
I added a pause button if players ever wanted to take a break or gets distracted by something, they can pause the game. In this menu, they can also change the sensitivity, which affects how fast the pillar turns, which can help players find a more comfortable turn speed.
Speed at a lower score
“Why did I die here?”
NOTE: Skybox and music are free assets and not made by me.
QoL - Pausing & Sensitivity
Adding Challenge - Speed
Speed at a higher score
Solution - Plane Player & Thinner Obstacles
By making the player collider as thin as possible, and reducing the thickness of the obstacles, this problem doesn’t happen as often, and the player doesn’t die in an unfair way.
Solution - Spawn Obstacle when it gets Past Player
To make sure difficulty was getting harder as the game progressed, I made sure the gaps between obstacles were never too far apart by having spawning based on distance, not on time.
Once an obstacle touches the white object (unseen by player), a new obstacle is spawned
Solution - Scoring Upon Passing Obstacles
To make score feel more significant players are directly rewarded for successfully getting by an obstacle. Players also get more points by passing by an obstacle the longer they survive.
Adding Challenge - Optional Points
I added an acorn collectible that rewards the player the same amount of points as passing through an obstacle does. This causes players to consider risk/reward when going for the acorn. Due to the scoring change, this also gives the acorn more significance to the score, and is a stronger incentive to go for.
Final Touches
Playtesting Feedback
This was a personal project and testing was done among my peers and friends.
Due to the capsule collider and thickness of the obstacles, there were instances where players would feel like they passed by an obstacle and get hit on the side by moving in a horizontal direction.
“It doesn’t get that much harder.”
Due to the obstacle spawning being on a set timer, this means the faster they got, the more spaced out each obstacle would be. So despite each individual obstacle being faster, the player has plenty of time to react to it.
Adding Goal - Score
To incentivize players to replay the game, a score was added to show their progress and motivate them to aim for a higher score.
QoL - Game Over & High Score
Players get a really high score really quickly with the old scoring system. Players felt like they didn’t really deserve the score, as even at the earliest death possible, players score close to 1000 points.
Added Music, to make game feel less “empty”
Added Skybox, to make game feel less “empty”
Added sound effect to acorn collectible to have clearer feedback to it being collected.
“I don’t really like the score.”
Learning Outcomes
Learned how to program a mobile game in Unity.
Learned that connecting game elements more tightly with each other enhances gameplay experience.
e.g. connecting score with clearing an obstacle.
Learned how QoL features positively impacts the user experience.
e.g. sensitivity, pause menu, game over screen, etc.
UNDER CONSTRUCTION
UNDER CONSTRUCTION
This page is a WIP.
Look forward to:
Programming process
Coding insights and changes
Programming learning outcomes