I’d also recommend using the sine behavior. Maybe assign multiple sine behaviors, then, instead of setting the behaviors random property, just script a system condition to change the magnitude and speed every X seconds, for random(x,x) magnitude and random(x,x) speed.