Create a Melee Combat System in Unity and C#
Create a Third-Person Melee Combat System in Unity and C# | Learn Gameplay Programming and Clean Coding Practices
Create a Third-Person Melee Combat System in Unity and C# | Learn Gameplay Programming and Clean Coding Practices
In this course, you’ll learn to create a third-person melee combat system in Unity with features like combos, counterattacks, intelligent enemy AI, etc. We'll design this system in a modular, data-driven, and scalable way using clean coding practices. So in this course, you’ll not only learn to build this system, but you’ll also learn lots of valuable game programming concepts that you can use throughout your career
So the combat system that we’re going to create will be a free-flow combat system. That means enemies won’t attack the player mindlessly; instead, they’ll attack in a coordinated way by circling the player and attacking one at a time. This is the type of combat used in modern-day games like Assassin's Creed, Batman Arkham series, Marvel’s Spider-Man, etc. This combat system will also be easily customizable, so if you want to use punch and kick attacks instead of sword attacks, you can do that easily without changing a single line of code
So we’ll be building all this step-by-step from scratch. We’ll start by making a basic third-person controller. We’ll not use any assets for it; we’ll build it from scratch because it’s a good way to learn the fundamentals of gameplay programming. And then we'll give our character the ability to attack. We’ll architect the attacks using scriptable objects in Unity so that the designer will be able to create and edit different attack combos without changing the code. Then we'll start building the enemy AI. We'll be architecting the enemy AI using a finite-state machine. It's a technique that’s been used for building AI in games for the last 25 years. It's used in popular games like Last of Us, the Batman Arkham series, and many more. So we'll build a Finite-State Machine from scratch and create our enemies using it. We'll start by creating simple enemy behaviors like Idling and Chasing the player, then we'll implement more advanced behaviors like circling the player and attacking him in a coordinated way. Once we're done with the Enemy AI, we'll implement the counterattacks.
Throughout this course, you’ll learn lots of game programming skills. You’ll learn lots of intermediate-level C# concepts like Generic Classes, Dictionary, LINQ, Inheritance, etc. You’ll also learn to use Mathematical concepts like Trigonometry, Dot Product, Cross Product, etc. So the skills and techniques that you learn from this course will be really helpful for you if want to pursue a career as a game programmer.
Khu vực Câu hỏi thường gặp trống
Perfoming Attack
Reacting to Attacks
Attack States
Combos & Architecting Attacks as Scriptable Objects
Different Attack Hitboxes
Enemy AI
Xem trướcChasing the Player
Combat Movement
Combat Movement || - Circling around the Player
Improving Circling
Attacking the Player One by One
Retreating after Attack
Performing Combos
Counter Attacks
Targeting System
Lock On / Combat Mode
Directional Attacks & Rotating while attacking
Controller Input Setup for Combat
Stunned After Taking Hit
Long Range Attacks
Moving To Target Improvements
Combat Improvements & Edge Case Fixes
Health, Taking Damages & Dying
Alerting nearby enemies when a target is spotted
More to come
You should know the basics of C# (if, loops etc)
You should know the basics of Unity
Create a third-person meele combat system in Unity
Learn to create scalable, modular and reusable gameplay systems in Unity
Learn to write clean & modular code in C#
Learn to architect data driven systems in Unity using Scriptable Objects
Learn important 3D gameplay programming concepts
1.0
4 Học viên
172 Khóa học
1252 Đánh giá
Xin chào các bạn, tôi là Nguyễn Đình Cường, một lập trình viên và giảng viên đam mê công nghệ với hơn 15 năm kinh nghiệm trong ngành công nghiệp phần mềm. Tôi tốt nghiệp từ Bưu Chính Viễn Thông và đã từng làm việc cho một số công ty công nghệ hàng đầu như FPT Software và VinGroup. Với chuyên môn chính là phát triển ứng dụng web, tôi đã làm việc với nhiều công nghệ như HTML, CSS, JavaScript, React cho front-end và Node.js, Express, MongoDB cho back-end. Không chỉ dừng lại ở việc viết mã, tôi còn yêu thích tìm hiểu sâu về thiết kế hệ thống và kiến trúc phần mềm. Tôi tin rằng quá trình học lập trình không chỉ đơn thuần là lý thuyết, mà còn là sự trải nghiệm thực tế và giải quyết vấn đề. Trong các khóa học của mình, tôi cố gắng cung cấp cho học viên những bài giảng thú vị và dễ hiểu, cùng với các bài tập thực hành giúp củng cố kiến thức. Tôi hy vọng rằng qua các khóa học của mình, bạn sẽ không chỉ học được cách viết mã, mà còn phát triển tư duy lập trình và kỹ năng giải quyết vấn đề. Hãy cùng nhau khám phá thế giới lập trình và biến ý tưởng của bạn thành hiện thực! Nếu bạn có bất kỳ câu hỏi nào, đừng ngần ngại liên hệ với tôi. Tôi rất vui được hỗ trợ bạn trong hành trình học tập của mình!
Xem chi tiết