Inversion
​Solo Project
Project Duration: 4 months
Software Used: Hammer Level Editor
Languages Used: Vscript
Inversion is a roller coaster themed King of the Hill map for Team Fortress 2 (TF2). It features a working rollercoaster created in-engine.
Level Design
Preliminary Level Design Document
Template from Steve Lee
Level Diagrams + Whiteboxing Kit

Level Flow Diagram uses red arrows to show possible paths the player can take to the control point. The blue arrow in the top left shows the path of the coaster.

Image Description: White and black grid of the map has Health Packs, and suggested sniper and sentry spots labeled.

Image Description: White boxing kit containing doorways, ramps, measured gaps, sentry ranges, and damage fall-off ranges.

Level Flow Diagram uses red arrows to show possible paths the player can take to the control point. The blue arrow in the top left shows the path of the coaster.
Playtesting Gifs

A scout weaves around the pillars of the control point, killing an enemy soldier and scout with his scattergun.

A sniper sees a scout coming to flank through his scope and switches to his SMG to watch the ramp behind him.

A sniper takes aim at the far away control point and kills an enemy soldier.

A scout weaves around the pillars of the control point, killing an enemy soldier and scout with his scattergun.
Process:
-
Organized a multiplayer playtest and requested in-game recordings from players.
-
Asked players to screenshot problem areas and describe experiences on different classes. In addition I watched their footage back.
Playtesting Revealed:
-
Playtesting revealed playing Sniper was too strong​
-
Sniper nest had a good view of the control point and any possible flank routes​
-
Many people avoided playing spy for this reason
-
-
Players wanted ammo + health to be closer to the control point
-
Demoman players could safely shoot sticky grenades onto the elevated control point​, this felt strong because it was hard to see coming.
-
Awkward spots and places where players could get stuck were found​
I responded by:
-
Introducing more buildings and expanded cover to block line of sight and better hide flank routes.
-
Lowered the control point to give better visibility of the area.
Level Scripting
Coaster Diagrams

Image Description: Rocket Minecart has a Scout model for attaching other objects and spark FX among other entities.

Image description: Rocket minecart with trigger boxes and other floating entities with icons. Rocket FX and audio components are included among them.

Image Description: Rocket Minecart has a Scout model for attaching other objects and spark FX among other entities.
-
Creating a working rollercoaster required many iterations
-
Integrated logic entities and custom Vscript logic
-
Set up logic for control point and item pickups
Post-Mortem
What went well:
-
Organizing friends for a playtest was fun!
-
I'm proud of how unique the level is.
​
What went wrong:
-
Due to time constraints and incomplete documentation, rollercoaster was not in in-time to get playtested.
-
Working with incomplete and sometimes inaccurate documentation was a frustrating experience.
-
Managing my own timeline was challenging.​
​
What I learned:
-
I learned how to make a better whiteboxing kit.
-
I gained experience going through a 3D level design process workflow.
-
I gained experience coordinating a multiplayer playtesting session, and I gleaned insights from player replays and direct feedback.​
