ok so i made a debug emitter
i made a scratch pad inside particle update. seems to be working.
EDIT: after further experimentation the problem is within the calculate random range float node. it seems to calculate a random value for each particle hence the distorted effect. using “Seeded Float Random” works just fine