Unreal Engine 5 - Gameplay Ability System - Top Down RPG

所在平台: Udemy

课程主页: https://www.udemy.com/course/unreal-engine-5-gas-top-down-rpg/

课程评论:没有评论

第一个写评论        关注课程

课程简介

课程名称:虚幻引擎5 - 游戏玩法能力系统 - 俯视角RPG 课程概述:这是虚幻引擎上最全面的课程之一。如果你希望学习如何构建一个完全功能的RPG游戏,这门课程将使你拥有这样的能力,利用可扩展的代码基础,遵循AAA质量代码的架构。本课程适合那些对C++和蓝图的界限感到好奇的开发者。如果你想创建一个包含属性系统、技能、升级、法术和菜单的RPG,同时保持代码基干净,并遵循最佳实践,这门课程将非常适合你。本课程将引领你提升虚幻引擎的开发能力,更好地理解引擎的内在工作机制。 在这个课程中,我们将创建一个俯视角的RPG游戏,涵盖使用虚幻引擎内置的游戏玩法能力系统(GAS)建立系统的方方面面。你将学习如何架构和编码能够轻松扩展和维护的游戏。本课程遵循SOLID编码原则,平衡了蓝图和C++的使用比例,类似于《堡垒之夜》这样的AAA游戏。 课程内容包括: 1. 从零开始设置俯视角项目。 2. 利用面向对象的编程和继承创建角色类层次结构。 3. 介绍游戏玩法能力系统及其核心类。 4. 自定义游戏玩法能力系统组件和属性集,并学习属性的复制。 5. 使用属性作为玩家统计数据,包括主要属性和次要属性的定义。 6. 介绍游戏UI的高效处理方法,以及如何实现复杂的用户界面。 7. 创建不同类型的游戏玩法能力,处理施法以及客户角色和敌对AI的重要功能。 8. 实现RPG式的战斗系统,包括不同的伤害类型和抵抗机制。 9. 敌人AI的实现,以及使用虚幻引擎的行为树和环境查询系统(EQS)进行自定义行为。 此外,课程还涵盖各种高级虚幻引擎主题、经验和升级系统的实现、保存进度、关卡过渡等内容。学习内容不局限于基础知识,而是深入各个方面,助力你在游戏开发领域取得重大进展。 此课程不是初学者课程,学员需具备C++编程语言的基本理解,并至少完成过一个虚幻引擎C++项目。加入课程,将为你的游戏开发生涯带来巨大的飞跃。

课程评论(0条)

课程详情

This is the most comprehensive Unreal Engine course available. If you want to learn how to architect a fully-functional RPG game, this course will give you the ability to do so with an expandable code base, architected with AAA quality code. If you've ever wondered where to draw the line between C++ and Blueprints, this is the course for you. If you've ever wanted to create an RPG complete with a stats system, abilities, leveling up, spells, attributes, menus, all while keeping your code base clean and following best practices, this is the course for you. If you want to step up your Unreal Engine development capabilities and better understand the inner workings of the engine, this course is for you. If you have plans to make your own serious game with interconnecting systems, involving attributes, abilities, level ups, enemies and AI, and coded for multiplayer, this is the course for you!In this course, we will create a top-down RPG style game, filled with systems architected using Unreal Engine's built-in Gameplay Ability System (GAS). This is where you will learn how to architect a shipped game, and code it expertly so it can be easily expanded, upgraded, and maintained. We follow SOLID coding principles, and balance the Blueprint/C++ ratio in a way that AAA shipped games do, such as Fortnite. My experience with AAA shipped game code, as well as consultations with industry veteran developers has allowed me to reveal to you the way a real shipped game's code base looks like. If you've ever wondered how much of a game can be kept in Blueprint versus C++, look no further. This course is the answer.NOTE: This course involves programming in C++, which involves the use of an Integrated Development Environment (IDE) such as Visual Studio, Rider, or VSCode. The IDE used in this course by me will be Rider, but this IDE is not a requirement for students to follow the course. You can use any IDE of your choice.The assets in this game project were made specifically for this course, and will be provided in an asset pack. This includes:Characters, including Aura, the main character, as well as enemy characters including Goblin Warriors, Goblin Rangers, a Goblin Shaman, Red and Black Demons, the Ghoul, and a Shroom.A modular dungeon pack that can be pieced together to make basic dungeonsA waypoint shrine and obelisksParticle Niagara System Effects, including explosions, level up effects, slingshot rocks, hit impacts, electricity beams, fireballs, fire bolts, flames, stars for stun effects, and more!Sound effects for enemies, footsteps, spells, and more!Textures for the HUD, including high-quality buttons, frames, dynamically-animated spell globes, progress bars, XP bar, and more!Full animation sets for Aura and all enemiesMuch more!In this course, we will be covering the following topics:Setting up a Top-Down Project from scratchEnemy and item selection with outline effectsProper use of OOP and inheritance to create a character class hierarchyIntro to the Gameplay Ability System and the core classes that comprise itCustom Gameplay Ability System Components and Attribute Sets, and how to replicate AttributesAll important settings for all GAS classes and componentsHow to use Attributes for player stats, including Primary Attributes:Strength (increases physical damage)Intelligence (increases magical damage)Resilience (increases Armor and Armor Penetration)Vigor (increases Max Health)Secondary Attributes, based off of primary attributes and other custom variables:Armor (reduces damage taken, improves Block Chance)Armor Penetration (ignores percentage of enemy Armor, increases Critical Hit Chance)Block Chance (change to cut incoming damage in half)Critical Hit Chance (chance to double damage plus critical hit bonus)Critical Hit Damage (bonus damage added when a critical hit is scored)Critical Hit Resistance (reduces critical hit chance of attacking enemies)Health Regeneration (amount of Health restored every 1 second)Mana Regeneration (amount of Mana restored every 1 second)Max Health (maximum amount of Health obtainable)Max Mana (maximum amount of Mana obtainable)Vital Attributes - things like Health and Mana, which are dependent on all the other attributesGameplay Effects - classes in the GAS system used to apply changes to attributesGameplay Tags - an essential part of GAS, which allows us to identify qualities, attributes, abilities, character classes, and any other thing we can imagineGame UI - how to handle complex UI in an RPG game efficiently, in an organized, modular, and scalable manner. We cover different UI paradigms, from MVC (Model View Controller) and MVVM (Model View ViewModel, using Unreal Engine's new ViewModel feature)Full Attribute and Spell Menus, with upgrade abilities, spell trees, locked spell levels, spell upgrades by ability level, and moreAttributes - how to use Gameplay Attributes to represent player stats, and incorporate them into the gameplay mechanics by creating an Effect Application pipeline, allowing for calculations and results caused by phenomena in the game, such as combat damageGameplay Abilities - the heart of GAS. We create all manner of types of gameplay abilities to handle the casting of spells, handling important capabilities of the player character and enemy AI, and how to configure different abilities to suit your needs. Different RPG Classes - we implement different character RPG classes including the Ranger, Warrior, and Elementalist, and do so in an easily-scalable manner so you can have any number of character class types in your gameDamage and Combat - we implement a full RPG style combat system with different damage types, damage resistances, and debuffs corresponding to damage types, and encode these calculations into our damage pipeline. All attributes, damage types, resistances and debuffs are functional in this game. All combat mechanics are displayed in some form of visual feedback to the player. This includes floating text for damage, changing color based on custom criteria, floating text to inform of critical hits, blocked hits, and critical blocked hits. We also implement knockback and stun mechanics in response to lightning damage, incapacitating the character/enemy, as well as fire debuffs, where characters are set ablaze and take fire damage while burning.Enemy AI - We implement the enemy behavior using Unreal Engine Behavior Trees and the Environment Query system (EQS) to provide customized behavior for the Ranged, Warrior, and Elementalist enemy types. Enemies can cast spells and summon AI minionsFading geometry when it gets in the way of the camera for a top-down gameAbility Cost and Cooldown (spells spend Attribute resources - in this game, spells cost Mana)Fully functional HUD with Equipped Spells, displaying spell cooldown timers, and experience (XP)The ability to assign Abilities to different inputs in the spell menu (assign FireBolt to the 1 key and Electrocute to the Left Mouse Button, swap them back, etc.)Experience and Level-Up System - We craft an experience system, awarding XP for eliminating enemies, and leveling up when reaching XP thresholds for various abilities. XP and Level are displayed in the HUD, and Level Up messages and effects are as well. Leveling up is associated with gaining Attribute Points and Spell Points, which can be used to upgrade Attributes and Spell abilities in the Attribute and Spell Menus respectively, as well as topping off Health and Mana upon Leveling Up. (Basically, you will see enough examples of how to use this system that you'll be able to expand it with any functionality you want for your own games)Passive Spells - Spells that you can equip which remain active while they are equipped.A variety of Offensive Spells, showcasing different examples and features of GAS, including FireBolt, Electrocute, Arcane Shards, and FireBlast.Saving Progress and Level TransitionsIntermediate/Advanced Unreal Engine topics, including custom Async Tasks, Ability Tasks, Blueprint Function Libraries, Asset Managers, Singletons (and why these are only good for a VERY select few cases), custom Gameplay Effect Contexts, Net Serialization, Struct Ops Type Traits, C++ Lambdas, game mechanics algorithms, and oh, so much more.How to choose which functionality should go into C++ versus Blueprint - This is one of the most valuable lessons, and is taught all throughout the course. Students often ask me "which functionality should go in C++ versus in Blueprint?" This course is my answer. This is a serious-scale project foundation with over 100 hours of video, and no filler. The project is architected with approximately 50% Blueprints and 50% C++. I show you which functionality should be on the C++ side, which functionality is more appropriate for Blueprints, and why. SOLID Coding Principles and code architecture - We keep our code base clean in this project. Another question I often get is "Is this best coding practice?" This course is my answer to this question. This is an example of code you would see in a AAA game, shipped to millions of players. Maintaining clean and modular code is essential to a serious game project that needs to be scalable, expandable, modular, maintainable, testable, performant, and efficient. This course will show you how.This is not a beginner course. I expect you to already understand the C++ programming language and have at least created one Unreal Engine C++ project.This course is my best course yet, and I'm very proud to bring you the Unreal Engine 5 - Gameplay Ability System - Top Down RPG course, the result of nearly a year of painstaking development, research, consultation with professionals, and asset creation. After taking this course, you will understand Unreal Engine far better than the average developer, and you'll be empowered to create your own well-architected projects, large and small, and you'll bring value to your team, your company, your solo venture, and anyone/anything else you grace with your skillset.Join the course, and invest in the biggest leap of your game development career.Stephen Ulibarri, founder of the Druid Mechanics Game Developer Community This course project is created in Unreal Engine version 5.2. Updates are periodically added to ensure compatibility with newer engine versions.

课程标签

0人关注该课程

主题相关的课程