I’ve seen in the migration docs at Unreal Engine 5 Migration Guide | Unreal Engine 5.0 Documentation that “Damage and Scoring Concepts” have been removed from the engine:
Built-In Damage and Score Concepts
UE5EA does not include the built-in data types and code functionality for the damage and scoring > models that existed in previous versions of the Unreal Engine. If your project used these, you can
recreate them in UE5EA, or look into other solutions, such as the Gameplay Ability System.
Does this mean the default GameState no longer has Score and we must also recreate ApplyDamage, etc? It’s very vague, I’m not sure as a C++ programmer if I need to manually change things or implement these concepts.
That’s strange, I still find them using ue5-main branch, I don’t even see any deprecation notice.
Score (In PlayerState), GetScore and SetScore are still here.
Regarding ApplyDamage and TakeDamage, I don’t use them so I’m not sure something changed, but they are still here, in AActor and GameplayStatics for example.
I’m wondering if they’re going to remove them later. I use them heavily (takedamage, damage classes). I didn’t like them when I started my game (a long time ago )but I wanted to follow Epic’s guidelines…
Actually PlayerStates in the Players array in GameState are all invalid for me. So that is kind of removing the score system.
They are removing it because they want to make Gameplay Ability System the main way of handling gameplay related interactions long term. Which is a change that I approve a lot. GAS is just superior
It’s also severely overkill for a lot of basic interactions.
If ability system is too much, I think the new “Game Feature Plugin” system can be used to replace what has been removed from core engine.
Looks like they can be built without c++ code.
I welcome any and all slimming of the low level actor classes. But I’d love for them to have a FGameplayTagContainer be part of AActor.
I don’t think so, you can just use it to the complexity you desire. It is always better to use a system that is extremely scalable even if it is a touch bit more complex to use. Otherwise you will end up with a system that if you want to extend if future, you will have a lot of trouble with.
Goal of game feature plugin is to allow packages to be loaded based on controllable scenerio’s, for example loading abilities, fx, assets when user enters a new map. It is not an alternative to GAS, it works in tandem with GAS.
It’s absolutely possible to build a simple skill system based on that if one is not willing to touch c++.