I don’t quite understand your setup. You have multiple classes which inherit from a parent class for your units - correct? As long as your child classes have an Able Ability Component on them - they can run Abilities. Running it on 1 vs 200 shouldn’t matter. I will point out that, by default, Able SHARES the same Ability object for everyone running that Ability. So, you should treat Abilities as “Read-only” during execution (meaning don’t have Blueprint variables on it - store those on the actors you’re dealing with, or set the instance policy to allocate a new instance for each execution).
If I had to guess, I imagine you likely have some casting operation happening that is failing (which is why it works for one sub class and not the other). If you post the callstack from the Crash, I can try and point you in the right direction.
Able shouldn’t be touching your mesh changes either, so I’d need a screenshot to know what you’re talking about.