Could someone provide a small how-to for the first steps with GameplayAbilities?

Hello there.

So, I wanted to make a game, and I initially wanted to make a system for that game that’d allow me to make a variety of different spells. However, I did not want to make the spell system inheritance-based, because while I could probably just have one big spell class every other spell inherits from, I heard somewhere once that this would be a bad way to solve such a problem, and I figured that having one blueprint/whatever for each kind of spell would end with a few many blueprints and a lot of repeating code that could not be solved by just having more parent skill types to inherit from.

I initially wanted to make my own skill system(I’m actually halfway done with it, it’s supposed to use JSON to provide spells with a bunch of nested effect objects that define what the spells do to whom. I think it’s actually kinda neat, but it’s not really the topic of my thread), but I saw someone mention the GameplayAbilities module in the source once, and I actually really wanted to see how that works before I might just go and reinvent something I could probably take from the engine itself.

However, there’s barely any kind of step-by-steps or short guides or nicely laid out starting point to start from. I mean, I guess I got the gameplay tag editor to work, and you can create GameplayAbility and effects in the editor now, so I suppose I enabled the modules, but I do not quite understand where to go from there. There doesn’t seem to be a way to assign Abilities to a character in Blueprint unless I’m really dumb, and the abilities I try to give the character in C++ via, say, GiveAbility either don’t work or, at best, crash the engine.

I am assuming there’s got to be someone who works with it. I realize the system isn’t really intended(I guess?) for widespread use yet, but could someone more experienced with it nudge me in the right direction? Not a full-fledged guide, maybe just a small step-by-step that maybe gives a skill component on a character an ability that applies a minor gameplay effect or something. Or maybe someone could also just tell me that the system is completely unwieldy to use even in the case that you do have a rough grasp of its basics, and that I should just not bother until it’s a little more friendly and just continue with a self-made system. Works too.