CPSC 4170 – Descent Into Verdite
Landon Arneson
Game Description
Descent into Verdite is a third person action RPG built in Unity, inspired by the Dark Souls series. Players control an armored knight exploring a dark, enemy-filled dungeon, engaging in melee combat against skeletons and culminating in a boss encounter against a giant spider.
TThe game challenges players to push through a dangerous dungeon patrolled by intelligent enemy AI. Combat demands careful resource management: every attack and dodge consumes stamina, healing flasks are limited, and mistimed rolls leave the player vulnerable.
Success requires mastering the timing of invincibility frames during dodges, using the lock-on system to maintain pressure on enemies, and knowing when to heal versus when to press the attack.
Game Mechanics
Combat is built around a stamina system that gates both attacks and rolls. Each sword swing costs stamina, and when depleted the player can no longer attack or dodge, creating high risk moments that demand strategic pacing.
Rolls grant invincibility frames the player is immune to damage through the middle portion of the animation, rewarding precise dodge timing and punishing panic rolls.
A lock on system allows players to orbit enemies and keep attacks targeted.
Healing is managed through a limited flask system that replenishes on respawn, encouraging cautious play.
Technical Description
Descent into Verdite is developed in Unity (2022+) using C#. Player movement is driven by a Rigidbody-based controller with a custom step-up system and grounded Y-velocity clamping to prevent physics jitter on complex geometry.
Enemy AI uses a custom state machine pattern with Idle, Chase, and Attack states driven by NavMesh pathfinding. Detection combines a configurable field-of-view cone with a hearing radius.
Damage detection uses Physics.OverlapBox sampling across a configurable time window per swing, with a shared HashSet ensuring each target is hit at most once per attack. Unity's new Input System handles all player input through a PlayerControls action map.
Controls
Movement: WASD
Roll/Dodge: Space
Attack: Left Mouse Button
Heal: E
Lock-On / Unlock: Tab
Camera: Mouse
Game Limitations
Future Work
Future development would expand the world with additional levels, enemy types, and weapon varieties. A proper bonfire/checkpoint system similar to Dark Souls would replace the current simple respawn screen, allowing players to rest, refill flasks, and reset enemies at specific rest points.
A full audio system with spatial sound, ambient music, and boss-specific tracks would greatly improve immersion. The UI could be extended with a proper inventory system, equipment slots, and character stat progression to deepen the RPG elements already present in the stamina and health systems.
Game objective
Game Screenshots
The lock-on system snaps the camera to the nearest enemy within a configurable view angle, and the player automatically faces locked targets when attacking. The roll input is consumed and blocked while stamina is empty, and the system prevents re-rolling until the current animation fully exits to avoid spam exploitation.
Currently the game features a single level and two enemy types
The NavMesh must be manually rebaked after any geometry changes. Enemy animations are limited by the imported asset's available clips.
There is no audio.