Coding design patterns can be found at Assets/_Project/Scripts/Patterns -> https://github.com/gabrielgborges/UMG---Fight-Game-/tree/main/UMG%20-%20Ultimate%20Mind%20Games/Assets/_Project/Scripts/Patterns
Explore the trailer: https://www.youtube.com/watch?v=ag30bykzXjU
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.
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.
The folders in this project are specially divided by programming pattern in order to clarify and specify the knowledge you are looking for.
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 gameplay systems were built from the ground up, emphasizing hands-on learning and deep technical understanding.
Joystick controls:
R2 - Defense
Left Joystick - movement
Square / X - Standard hit
Triangle / Y - Hard hit
Circle / B - Long hit
Keyboard controls:
I - Defense
R2 - Defense
W,A,S,D - movement
J - Standard hit
K - Hard hit
L - Long hit
Feel free to contact me if you want to make part of this project or have any comments/suggestions