Thanks! There is just this part of the Emitter.Update method that I am not understanding ... seems there is no way of having 1 particle emitted each 5 seconds f.e.
Local Mode:Int = (TParticleSystem.Cam.range_far / 10)
Local MM:Int = (Mode/(TParticleSystem.Cam.range_far/TParticleSystem.Cam.VectorDistance(Position) ))
If MM = 0 Then MM = 1
Local Diff:TVector = Position.Subtract(OldPosition)
Local Rate:Int = Max(Emitter_Rate/MM,1)
Diff = Diff.Divide(Rate)
If Emitter_Rate = 0 Then Rate = 0
'Print Emitter_Rate + ":" + Mode + "-->"+(Emitter_Rate/Max(Mode,1)) + " / " + (Mode/(TParticleSystem.Cam.range_far/TParticleSystem.Cam.VectorDistance(Position) ))
For Local I:Int = 0 To Rate-1
...
In fact what I am missing is how you keep track of time (I assume Rate is expressed in particles/second).