Teraphobia is a first-person asymmetric multiplayer game where up to 3 survivors battle against a player-controlled monster. Survivors complete tasks, craft items, and explore abandoned floors as they try to survive against an ever mutating monster with the sole purpose of ensuring the survivors do not discover its source.
Skills I Used
- C# Programming
- C++ Programming
- Project Management
- AI Design
- Netcode for GameObjects Programming
- Game Design
- Procedural Generation Programming
- Engine Tool Development
- 2D Art
- UI Design
- Usability
- Narrative Design
- Presentation Skills
- Sound Implementation
- Debugging
Tools I Used
- Unity
- Unreal Engine
- Photoshop
- ClickUp
- GitHub
- FMOD
- Shader Graph
- Figma
- Large Language Models
Project Media
Official Trailer — The official reveal trailer for Teraphobia.
Procedural Generation
I developed a custom procedural generation system to generate rooms, hallways, and interiors for Teraphobia. In terms of specifics, the generation process worked by first generating random rooms around the map. From there, it used A* to pathfind hallways between rooms. Once both the hallways and rooms were generated, the process then moved onto interior generation. Interior generation was guided through sets of rules/relationships between different furniture objects.
Procedural Generation Demo — Image showcasing Teraphobia's procedural generation.
Custom Editor Tool
To allow for procedurally generated interiors, I had to design a system to dictake how furniture should be placed. After implementing the system, I realized I needed a more intuitive interface to control the funiture data. As such, I designed an editor tool to speed up that design process.
Engine Tool — Image showcasing Teraphobia's procedural generation engine tool.
Monster AI
I implemented AI functionality for the monster in Teraphobia. The AI is capable of reproducing basic player functionality such as pathfinding, attacking, retreating, and using a limited number of mutations. To do this, it makes use of behaviour trees, goal oriented action planning (GOAP), and Unity's NavMesh system.
AI Implementation Demo — Gameplay footage demonstrating the monster AI in Teraphobia.
Game Analytics DLL
I created this game analytics dynamic linked library (DLL) in an effort to help with debugging networking related issues, however, it was also for the purpose of seperating the analytic reporting aspect from the Unity project so that I could use this same DLL for other projects. The DLL works by logging events to a CSV file by taking in an event name and series of labels & their data in the form of strings.
Game Analytics DLL — Image showcasing Teraphobia's game analytics DLL.










