This project involved everything I'd learnt previously in this games programming oriented unit, in order to create a fully functioning level, in which player must navigate obstacles and avoid/destroy patrolling enemy NPCs. We were to employ several scripting variables and functions which did specific things, as dictated by both our tutor and the criteria outlined in the project brief.
My functionally working level involved designing a first person dungeon crawler - influenced by Doom, Eye of the Beholder, Legend of Grimrock, and Dungeon Keeper's "Possession" spell - utilising a grid-based approach, with modular "room" prefabs that I could snap together. From there, I incorporated scripts provided to me, as well as my own extra programming, to achieve the scope of my final submission.
Pre-production - research and planning
Level design - environment, NPC and player placement
Programming - NPC behaviour, scripted level behaviour
Final build and submission
Pre-production and production
Level design
AI design
Player design
Programming
Writing (supplementary)
I was the sole developer on this project. While the primary focus was on programming in C# within Unity, I also dictated, planned, and designed the overall level design, level objective (collect gold sphere, quit the application), 3D assets, and minor animation for a player weapon.
I implemented a basic player controller;
NPC agent navmesh (node-based navigation);
AI patrolling, player detection, chase, return-to-patrol, and damage-dealing scripting;
Collider-based event triggers (doors opening/destroying);
Text strings (in Unity Editor) for certain actions (destroyed NPCs, doorways clearing, objective completion);
Player weapon damage, with basic "swinging" animation;
Player and NPC health values;
A "final boss" instantiated enemy;
Scripted moving platforms; and,
An end objective, which quits the game on completion.