Best way to implement a buff/debuff system

well you want them to be modular since your using inheritance. so you may create 2 events in the base, activate and deactivate.

in the child you could start the timer on activate and destroy itself on deactivate. or dont destroy it, just go inactive, this may be more performant.

you could have a few generic variables, level, strength, time, maxstacks etc.