Particle start time

I'm sure there must be an easy solution that I seem to be overlooking. I want my particle system (in this case a pImageEmitter) to start generating particles at a different time than 0. Can anyone help me with this? thanx
https://forum.blackmagicdesign.com/
https://forum.blackmagicdesign.com/viewtopic.php?f=22&t=91824
{
Tools = ordered() {
BrightnessContrast1 = BrightnessContrast {
CtrlWZoom = false,
Inputs = {
Alpha = Input { Value = 1, },
Gain = Input {
SourceOp = "BrightnessContrast1Gain",
Source = "Value",
},
Input = Input {
SourceOp = "FastNoise1",
Source = "Output",
},
},
ViewInfo = OperatorInfo { Pos = { 616, -9.60607 } },
},
BrightnessContrast1Gain = BezierSpline {
SplineColor = { Red = 104, Green = 144, Blue = 233 },
NameSet = true,
KeyFrames = {
[17] = { 0, RH = { 17.3333333333333, 0.333333333333333 }, Flags = { Linear = true } },
[18] = { 1, LH = { 17.6666666666667, 0.666666666666667 }, RH = { 18.3333333333333, 0.666666666666667 }, Flags = { Linear = true } },
[19] = { 0, LH = { 18.6666666666667, 0.333333333333333 }, Flags = { Linear = true } }
}
},
pImageEmitter1 = pImageEmitter {
ID = 25,
Inputs = {
XDensity = Input { Value = 0.1, },
YDensity = Input { Value = 0.1, },
AlphaThreshold = Input { Value = 0.001, },
LockParticleColorToInitialFrame = Input { Value = 1, },
CreateParticlesEveryFrame = Input { Value = 1, },
Input = Input {
SourceOp = "BrightnessContrast1",
Source = "Output",
},
["ParticleStyle.SizeOverLife"] = Input {
SourceOp = "pImageEmitter1SizeOverLife",
Source = "Value",
},
["ParticleStyle.BlurOverLife"] = Input {
SourceOp = "pImageEmitter1BlurOverLife2D",
Source = "Value",
},
},
ViewInfo = OperatorInfo { Pos = { 732.667, -0.515148 } },
},
pImageEmitter1SizeOverLife = LUTBezier {
KeyColorSplines = {
[0] = {
[0] = { 0.5, RH = { 0.3, 0.5 }, Flags = { Linear = true } },
[1] = { 0.5, LH = { 0.7, 0.5 }, Flags = { Linear = true } }
}
},
SplineColor = { Red = 0, Green = 0, Blue = 0 },
NameSet = true,
},
pImageEmitter1BlurOverLife2D = LUTBezier {
KeyColorSplines = {
[0] = {
[0] = { 0.5, RH = { 0.3, 0.5 }, Flags = { Linear = true } },
[1] = { 0.5, LH = { 0.7, 0.5 }, Flags = { Linear = true } }
}
},
SplineColor = { Red = 0, Green = 0, Blue = 0 },
NameSet = true,
},
pTurbulence1 = pTurbulence {
ID = 29,
Inputs = {
XStrength = Input { Value = 0, },
YStrength = Input { Value = 0, },
ZStrength = Input { Value = 0.5, },
StrengthOverLifeLUT = Input {
SourceOp = "pTurbulence1StrengthOverLifeLUT",
Source = "Value",
},
Input = Input {
SourceOp = "pImageEmitter1",
Source = "Output",
},
},
ViewInfo = OperatorInfo { Pos = { 842.667, -0.515148 } },
},
pTurbulence1StrengthOverLifeLUT = LUTBezier {
KeyColorSplines = {
[0] = {
[0] = { 0.5, RH = { 0.3, 0.5 }, Flags = { Linear = true } },
[1] = { 0.5, LH = { 0.7, 0.5 }, Flags = { Linear = true } }
}
},
SplineColor = { Red = 192, Green = 128, Blue = 64 },
NameSet = true,
},
FastNoise1 = FastNoise {
Inputs = {
Width = Input { Value = 1920, },
Height = Input { Value = 1080, },
["Gamut.SLogVersion"] = Input { Value = FuID { "SLog2" }, },
},
ViewInfo = OperatorInfo { Pos = { 506, -9.60607 } },
},
pRender1 = pRender {
Inputs = {
_MotionBlurWarning = Input { Disabled = true, },
Width = Input { Value = 1920, },
Height = Input { Value = 1080, },
["Gamut.SLogVersion"] = Input { Value = FuID { "SLog2" }, },
["MaterialID.MaterialID"] = Input { Value = 1, },
["ObjectID.ObjectID"] = Input { Value = 1, },
Input = Input {
SourceOp = "pTurbulence1",
Source = "Output",
},
},
ViewInfo = OperatorInfo { Pos = { 962, -5.96969 } },
}
}
}
{
Tools = ordered() {
Text1 = TextPlus {
Inputs = {
Width = Input { Value = 1920, },
Height = Input { Value = 1080, },
["Gamut.SLogVersion"] = Input { Value = FuID { "SLog2" }, },
Size = Input { Value = 1, },
Font = Input { Value = "Open Sans", },
StyledText = Input {
Value = "2",
Expression = "Text(floor(time/30))",
},
Style = Input { Value = "Bold", },
ManualFontKerningPlacement = Input {
Value = StyledText {
Array = {
},
Value = ""
},
},
Red1 = Input {
Value = 0.5,
Expression = ":randomseed(floor(time/30)); return random(0.,10)/10;",
},
Green1 = Input {
Value = 0.8,
Expression = ":randomseed(floor((time+1000)/30)); return random(0.,10)/10;",
},
},
ViewInfo = OperatorInfo { Pos = { 166, 214 } },
},
pImageEmitter1 = pImageEmitter {
ID = 2,
Inputs = {
XDensity = Input {
Value = 0.1,
Expression = "iif(time%30==0,0.1,0)",
},
YDensity = Input {
Value = 0.1,
Expression = "XDensity",
},
LockParticleColorToInitialFrame = Input { Value = 1, },
CreateParticlesEveryFrame = Input { Value = 1, },
Lifespan = Input { Value = 500, },
Input = Input {
SourceOp = "Text1",
Source = "Output",
},
["ParticleStyle.SizeOverLife"] = Input {
SourceOp = "pImageEmitter1SizeoverLife",
Source = "Value",
},
["ParticleStyle.BlurOverLife"] = Input {
SourceOp = "pImageEmitter1BluroverLife2D",
Source = "Value",
},
},
ViewInfo = OperatorInfo { Pos = { 309, 214 } },
},
pImageEmitter1SizeoverLife = LUTBezier {
KeyColorSplines = {
[0] = {
[0] = { 0.5, RH = { 0.3, 0.5 }, Flags = { Linear = true } },
[1] = { 0.5, LH = { 0.7, 0.5 }, Flags = { Linear = true } }
}
},
SplineColor = { Red = 0, Green = 0, Blue = 0 },
NameSet = true,
},
pImageEmitter1BluroverLife2D = LUTBezier {
KeyColorSplines = {
[0] = {
[0] = { 0.5, RH = { 0.3, 0.5 }, Flags = { Linear = true } },
[1] = { 0.5, LH = { 0.7, 0.5 }, Flags = { Linear = true } }
}
},
SplineColor = { Red = 0, Green = 0, Blue = 0 },
NameSet = true,
},
pTurbulence1 = pTurbulence {
ID = 6,
Inputs = {
StrengthOverLifeLUT = Input {
SourceOp = "pTurbulence1StrengthoverLifeLUT",
Source = "Value",
},
Input = Input {
SourceOp = "pImageEmitter1",
Source = "Output",
},
},
ViewInfo = OperatorInfo { Pos = { 419, 214 } },
},
pTurbulence1StrengthoverLifeLUT = LUTBezier {
KeyColorSplines = {
[0] = {
[0] = { 0.5, RH = { 0.3, 0.5 }, Flags = { Linear = true } },
[1] = { 0.5, LH = { 0.7, 0.5 }, Flags = { Linear = true } }
}
},
SplineColor = { Red = 192, Green = 128, Blue = 64 },
NameSet = true,
},
pRender1 = pRender {
CtrlWZoom = false,
Inputs = {
_MotionBlurWarning = Input { Disabled = true, },
Width = Input { Value = 1920, },
Height = Input { Value = 1080, },
["Gamut.SLogVersion"] = Input { Value = FuID { "SLog2" }, },
IntegrationMethod = Input { Value = FuID { "RK4" }, },
["MaterialID.MaterialID"] = Input { Value = 1, },
["ObjectID.ObjectID"] = Input { Value = 1, },
Input = Input {
SourceOp = "pTurbulence1",
Source = "Output",
},
},
ViewInfo = OperatorInfo { Pos = { 690, 215 } },
}
},
ActiveTool = "pRender1"
}
{
Tools = ordered() {
Text1 = TextPlus {
Inputs = {
Width = Input { Value = 1920, },
Height = Input { Value = 1080, },
["Gamut.SLogVersion"] = Input { Value = FuID { "SLog2" }, },
Size = Input { Value = 1, },
Font = Input { Value = "Open Sans", },
StyledText = Input {
Value = "0",
Expression = "Text(floor(time/30))",
},
Style = Input { Value = "Bold", },
ManualFontKerningPlacement = Input {
Value = StyledText {
Array = {
},
Value = ""
},
},
Red1 = Input {
Value = 0.8,
Expression = ":randomseed(floor(time/30)); return random(0.,10)/10;",
},
Green1 = Input {
Value = 0.5,
Expression = ":randomseed(floor((time+1000)/30)); return random(0.,10)/10;",
},
},
ViewInfo = OperatorInfo { Pos = { 166, 214 } },
},
pImageEmitter1 = pImageEmitter {
ID = 2,
CtrlWZoom = false,
Inputs = {
XDensity = Input {
Value = 0.1,
Expression = "iif(time%30==0,0.1,0)",
},
YDensity = Input {
Value = 0.1,
Expression = "XDensity",
},
LockParticleColorToInitialFrame = Input { Value = 1, },
CreateParticlesEveryFrame = Input { Value = 1, },
Lifespan = Input { Value = 200, },
Input = Input {
SourceOp = "Text1",
Source = "Output",
},
["ParticleStyle.SizeOverLife"] = Input {
SourceOp = "pImageEmitter1SizeoverLife",
Source = "Value",
},
["ParticleStyle.FadeControls"] = Input { Value = 1, },
["ParticleStyle.FadeIn"] = Input { Value = 0.046, },
["ParticleStyle.FadeOut"] = Input { Value = 0.805, },
["ParticleStyle.BlurOverLife"] = Input {
SourceOp = "pImageEmitter1BluroverLife2D",
Source = "Value",
},
},
ViewInfo = OperatorInfo { Pos = { 309, 214 } },
},
pImageEmitter1SizeoverLife = LUTBezier {
KeyColorSplines = {
[0] = {
[0] = { 0.5, RH = { 0.3, 0.5 }, Flags = { Linear = true } },
[1] = { 0.5, LH = { 0.7, 0.5 }, Flags = { Linear = true } }
}
},
SplineColor = { Red = 192, Green = 128, Blue = 64 },
NameSet = true,
},
pImageEmitter1BluroverLife2D = LUTBezier {
KeyColorSplines = {
[0] = {
[0] = { 0.5, RH = { 0.3, 0.5 }, Flags = { Linear = true } },
[1] = { 0.5, LH = { 0.7, 0.5 }, Flags = { Linear = true } }
}
},
SplineColor = { Red = 192, Green = 128, Blue = 64 },
NameSet = true,
},
pTurbulence1 = pTurbulence {
ID = 6,
Inputs = {
StrengthOverLifeLUT = Input {
SourceOp = "pTurbulence1StrengthoverLifeLUT",
Source = "Value",
},
Input = Input {
SourceOp = "pImageEmitter1",
Source = "Output",
},
},
ViewInfo = OperatorInfo { Pos = { 419, 214 } },
},
pTurbulence1StrengthoverLifeLUT = LUTBezier {
KeyColorSplines = {
[0] = {
[0] = { 0.5, RH = { 0.3, 0.5 }, Flags = { Linear = true } },
[1] = { 0.5, LH = { 0.7, 0.5 }, Flags = { Linear = true } }
}
},
SplineColor = { Red = 192, Green = 128, Blue = 64 },
NameSet = true,
},
pRender1 = pRender {
Inputs = {
_MotionBlurWarning = Input { Disabled = true, },
Width = Input { Value = 1920, },
Height = Input { Value = 1080, },
["Gamut.SLogVersion"] = Input { Value = FuID { "SLog2" }, },
IntegrationMethod = Input { Value = FuID { "RK4" }, },
["MaterialID.MaterialID"] = Input { Value = 1, },
["ObjectID.ObjectID"] = Input { Value = 1, },
Input = Input {
SourceOp = "pTurbulence1",
Source = "Output",
},
},
ViewInfo = OperatorInfo { Pos = { 690, 215 } },
}
}
}
iif(time > 30,0.1,0)
iif(time == 30,0.1,0)
iif(time == ControlCenter.ParticleStartFrame, 1, 0)
iif(time<ControlCenter.ParticleStartFrame,0,comp.RenderEnd-ControlCenter.ParticleStartFrame)
iif(time < ControlCenter.ParticleStartFrame, 1, 0)