I agree with @glass harness in that the player should not be punished(no cargo drone spawn) for completing dreadnaught too quickly. I propose that the spawn probability of the cargo drone P(t) at any given time t should be related to the value of (X(t)-X(t0))/(t-t0). X(t) denotes the player's progress through the dreadnaught event(so it's between 0 and 100% and increasing) at time t, and t0 denotes the previous time a cargo drone spawned.
edit: upon further thoughts, the probability would be better given by P(t, X(t)) instead of P(t).