My bad, it should be
TWeakObjectPtr<MinionClass>
TSharedPtr are for non-UObject types, I misremembered. The text with the < > is a template. You say what type of thing the template is of inside the template marker things. So if it were pointing to an actor, you’d put
TWeakObjectPtr<AActor>
, whilst if it pointed at a static mesh you’d put
TWeakObjectPtr<UStaticMeshComponent>
. I suggest looking up C++ templates if you’re still confused (or maybe doing the project with blueprints if you can - they’re really powerful and may be less confusing)