UMG – Game Programming Patterns

A fast-paced fighting game where players take control of unique gladiators, mastering combos and strategies to conquer their opponents in the arena. With an innovative combo system and a focus on scalability, UMG challenges players to create seamless combat sequences while maintaining fluid gameplay.


Making of – Ultimate Martial Gladiators:

Including implementations for every single programming pattern in the book Game Programming Patterns, UMG is a personal project, developed solo using Unity and C#, aimed at building a challenging, expandable codebase inspired by the book Game Programming Patterns and advanced C# courses. This project emphasizes clean code architecture and practical application of advanced programming concepts to deliver a polished and maintainable game.

UMG serves as both a technical learning journey and a platform to explore creative game mechanics, including a dynamic combo system built from scratch to empower game designers with easy editing tools.


Technical Highlights:

  • All Game Programming Patterns Applied: Each core system was built using different architectural patterns from Game Programming Patterns by Robert Nystrom, offering practical insights into scalable game development.

  • C# Code Architecture: Heavily focused on Clean Code and SOLID principles, ensuring maintainability and scalability for future updates.

  • Tree Node Combo System: Developed using a node tree data structure, allowing for dynamic and efficient combo creation. This system minimizes memory usage, speeds up combat sequences, and provides game designers with user-friendly tools to modify combos.

  • No Plugins Used: All systems were built from the ground up, emphasizing hands-on learning and deep technical understanding.

Explore the codebase on GitLab:
🔗 UMG Project GitLab Repository

 

contact

 

Let’s Get in Touch

I love to connect with fun and talented people! Please don’t hesitate to get in touch for a no obligations chat about yours or any other project.

Please enable JavaScript in your browser to complete this form.