Gameplay
Developed a tower defense game, a long-time dream project.
Managed to incorporate several envisioned features despite time constraints.
Drew upon prior experience with the game engine and insights from previous projects.
Game Mechanics
Building Placement
Upgradeable Mechanics
Wave Progression
Resource Management
AI Enemies
Phase-based Mechanics
Time-based Wave Progression
Challenges
Faced the risk of over-scoping due to numerous ideas and features planned for implementation.
Balancing ambition with time constraints was critical to meet project deadlines.
Encountered significant hurdles with AI development, particularly with the unfamiliar EQS (Environment Query System) system.
Time constraints necessitated a steep learning curve for mastering AI mechanics.
Leveraged connections with experienced developers and valuable resources to understand and implement the AI.
Learning Outcomes
Deeper Knowledge on the AI systems: Developed a deeper understanding of AI systems, including Behavior Tree and EQS, to create engaging and challenging enemy behavior.
Optimization and better code readability: This project predominantly relies on event triggers, minimizing or eliminating the need for updates on every frame. Furthermore, employing Actor Components and Subsystems significantly aids in enhancing the clarity of the codebase.
Enhanced my knowledge on C++: Gained knowledge on some of the advanced C++ concepts like templates and constexpr to enhance performance. Made use of Subsystems for better game flow whilst maintaining a de-coupled system
Debugging skills: Was introduced to new debugging tools and techniques for identifying and resolving bugs in the game, such as the Visual Logger, Profiler, and Widget Reflector.