SetTimer with loop stops suddently

I have a TimeLine class with a SetTimer for ticking the timeline.

The UKTimelineObject is owned by a ACharacter

The Timer is initiated on the server. Suddently the callback function isn’t called anymore.

As you can see on the server log, the timer stops calling the function on position 30. It should normally goes till 100.

[2017.08.17-14.53.29:247][941]LogDamage:Verbose: AKBaseCharacter::AddCharacterAlteration_Implementation  -  Type=5   Value=0.200000   Role=ROLE_Authority
[2017.08.17-14.53.29:258][941]LogDamage:VeryVerbose: AKBaseCharacter::GetAlterationTimeline  -  Type=5    Data=0000000000000000   Role=ROLE_Authority
[2017.08.17-14.53.29:268][941]LogDamage:VeryVerbose: AKBaseCharacter::GetAlterationTimeline  -  KCA_PowerDecayRate    TemporaryUpDownCurve=0000015C0F6A8080
[2017.08.17-14.53.29:278][941]LogDamage:VeryVerbose: AKBaseCharacter::GetAlterationTimeline  -  bCreated = true   Data=0000015C0C5E43E8
[2017.08.17-14.53.29:289][941]LogDamage:Verbose: AKBaseCharacter::AddCharacterAlteration_Implementation  -  KCA_PowerDecayRate alteration is not running
[2017.08.17-14.53.29:299][941]LogDamage:Verbose: AKBaseCharacter::AddAlteration_Implementation  -  KCA_PowerDecayRate   Data->InitialValue=1.000000  Data->TempTargetValue=0.800000
[2017.08.17-14.53.29:310][941]LogDamage:Verbose: AKBaseCharacter::AddCharacterAlteration_Implementation  -  Add a new alteration in CharacterAlterations array  CharacterAlterations.Num=1   Value=0.200000   Duration=30.000000
[2017.08.17-14.53.29:320][941]LogDamage:Verbose: AKBaseCharacter::AddCharacterAlteration_Implementation  -  bValid   Duration=30.000000   length=100.000000   playrate=1.000000   delta=0.300000   CurrentTime=51.188900
[2017.08.17-14.53.29:331][941]LogDebug:VeryVerbose: UKTimelineObject::PlayFromStart
[2017.08.17-14.53.29:341][941]LogDebug:VeryVerbose: UKTimelineObject::Activate: DeltaTime=0.300000
[2017.08.17-14.53.29:352][941]LogDamage:VeryVerbose: AKBaseCharacter::GetAlterationTimeline  -  Type=5    Data=0000015C0C5E43E8   Role=ROLE_Authority
[2017.08.17-14.53.29:362][941]LogDamage:VeryVerbose: AKBaseCharacter::TempPowerDecayRateFactorTimelineTick  -  CurrentTime=51.188900   Position=0.000000  Length=100.000000   TempAttributes.SpeedFactor.Value=0.800000   Data->InitialValue=1.000000   Data->TempTargetValue=0.800000
[2017.08.17-14.53.29:372][941]LogDamage:VeryVerbose: AKBaseCharacter::PlayAlterationHit  -     Alterations.Num=1   Role=ROLE_Authority
[2017.08.17-14.53.29:383][941]LogDamage:VeryVerbose: AKBaseCharacter::PlayAlterationHit  -  OnServer  call ReplicateAlterationHit
[2017.08.17-14.53.29:393][941]LogDamage:VeryVerbose: AKBaseCharacter::ReplicateAlterationHit  -  Alterations.Num=1   Role=ROLE_Authority
[2017.08.17-14.53.29:404][941]LogDamage:VeryVerbose: AKBaseCharacter::ReplicateAlterationHit  -  Assign LastTakeAlterationHitInfo with   Alterations.Num=1
[2017.08.17-14.53.29:414][941]LogKSGMWeapon:Warning: AKSpell::TouchedGround  -  GroundTemplate is not set.
[2017.08.17-14.53.29:426][942]LogDebug:VeryVerbose: UKTimelineObject::TimerTimelineTick: GetTimelineLength=100.000000   GetPlayRate=1.000000   GetPosition=0.000000   DeltaTime=0.300000
[2017.08.17-14.53.29:435][942]LogDamage:VeryVerbose: AKBaseCharacter::GetAlterationTimeline  -  Type=5    Data=0000015C0C5E43E8   Role=ROLE_Authority
[2017.08.17-14.53.29:445][942]LogDamage:VeryVerbose: AKBaseCharacter::TempPowerDecayRateFactorTimelineTick  -  CurrentTime=51.588902   Position=1.000000  Length=100.000000   TempAttributes.SpeedFactor.Value=0.800000   Data->InitialValue=1.000000   Data->TempTargetValue=0.800000
[2017.08.17-14.53.29:455][942]LogDebug:VeryVerbose: UKTimelineObject::TimerTimelineTick: GetTimelineLength=100.000000   GetPlayRate=1.000000   GetPosition=1.000000   DeltaTime=0.300000
[2017.08.17-14.53.29:466][942]LogDamage:VeryVerbose: AKBaseCharacter::GetAlterationTimeline  -  Type=5    Data=0000015C0C5E43E8   Role=ROLE_Authority
[2017.08.17-14.53.29:477][942]LogDamage:VeryVerbose: AKBaseCharacter::TempPowerDecayRateFactorTimelineTick  -  CurrentTime=51.588902   Position=2.000000  Length=100.000000   TempAttributes.SpeedFactor.Value=0.800000   Data->InitialValue=1.000000   Data->TempTargetValue=0.800000
[2017.08.17-14.53.29:768][948]LogDebug:VeryVerbose: UKTimelineObject::TimerTimelineTick: GetTimelineLength=100.000000   GetPlayRate=1.000000   GetPosition=2.000000   DeltaTime=0.300000
[2017.08.17-14.53.29:778][948]LogDamage:VeryVerbose: AKBaseCharacter::GetAlterationTimeline  -  Type=5    Data=0000015C0C5E43E8   Role=ROLE_Authority
[2017.08.17-14.53.29:788][948]LogDamage:VeryVerbose: AKBaseCharacter::TempPowerDecayRateFactorTimelineTick  -  CurrentTime=51.798313   Position=3.000000  Length=100.000000   TempAttributes.SpeedFactor.Value=0.800000   Data->InitialValue=1.000000   Data->TempTargetValue=0.800000
[2017.08.17-14.53.30:094][952]LogDebug:VeryVerbose: UKTimelineObject::TimerTimelineTick: GetTimelineLength=100.000000   GetPlayRate=1.000000   GetPosition=3.000000   DeltaTime=0.300000
[2017.08.17-14.53.30:102][952]LogDamage:VeryVerbose: AKBaseCharacter::GetAlterationTimeline  -  Type=5    Data=0000015C0C5E43E8   Role=ROLE_Authority
[2017.08.17-14.53.30:113][952]LogDamage:VeryVerbose: AKBaseCharacter::TempPowerDecayRateFactorTimelineTick  -  CurrentTime=52.256607   Position=4.000000  Length=100.000000   TempAttributes.SpeedFactor.Value=0.800000   Data->InitialValue=1.000000   Data->TempTargetValue=0.800000
[2017.08.17-14.53.30:237][960]LogDebug:VeryVerbose: UKTimelineObject::TimerTimelineTick: GetTimelineLength=100.000000   GetPlayRate=1.000000   GetPosition=4.000000   DeltaTime=0.300000
[2017.08.17-14.53.30:247][960]LogDamage:VeryVerbose: AKBaseCharacter::GetAlterationTimeline  -  Type=5    Data=0000015C0C5E43E8   Role=ROLE_Authority
[2017.08.17-14.53.30:258][960]LogDamage:VeryVerbose: AKBaseCharacter::TempPowerDecayRateFactorTimelineTick  -  CurrentTime=52.400646   Position=5.000000  Length=100.000000   TempAttributes.SpeedFactor.Value=0.800000   Data->InitialValue=1.000000   Data->TempTargetValue=0.800000
[2017.08.17-14.53.30:535][977]LogDebug:VeryVerbose: UKTimelineObject::TimerTimelineTick: GetTimelineLength=100.000000   GetPlayRate=1.000000   GetPosition=5.000000   DeltaTime=0.300000
[2017.08.17-14.53.30:540][977]LogDamage:VeryVerbose: AKBaseCharacter::GetAlterationTimeline  -  Type=5    Data=0000015C0C5E43E8   Role=ROLE_Authority
[2017.08.17-14.53.30:551][977]LogDamage:VeryVerbose: AKBaseCharacter::TempPowerDecayRateFactorTimelineTick  -  CurrentTime=52.698093   Position=6.000000  Length=100.000000   TempAttributes.SpeedFactor.Value=0.800000   Data->InitialValue=1.000000   Data->TempTargetValue=0.800000
[2017.08.17-14.53.30:825][994]LogDebug:VeryVerbose: UKTimelineObject::TimerTimelineTick: GetTimelineLength=100.000000   GetPlayRate=1.000000   GetPosition=6.000000   DeltaTime=0.300000
[2017.08.17-14.53.30:828][994]LogDamage:VeryVerbose: AKBaseCharacter::GetAlterationTimeline  -  Type=5    Data=0000015C0C5E43E8   Role=ROLE_Authority
[2017.08.17-14.53.30:838][994]LogDamage:VeryVerbose: AKBaseCharacter::TempPowerDecayRateFactorTimelineTick  -  CurrentTime=52.989033   Position=7.000000  Length=100.000000   TempAttributes.SpeedFactor.Value=0.800000   Data->InitialValue=1.000000   Data->TempTargetValue=0.800000
[2017.08.17-14.53.31:131][ 12]LogDebug:VeryVerbose: UKTimelineObject::TimerTimelineTick: GetTimelineLength=100.000000   GetPlayRate=1.000000   GetPosition=7.000000   DeltaTime=0.300000
[2017.08.17-14.53.31:141][ 12]LogDamage:VeryVerbose: AKBaseCharacter::GetAlterationTimeline  -  Type=5    Data=0000015C0C5E43E8   Role=ROLE_Authority
[2017.08.17-14.53.31:151][ 12]LogDamage:VeryVerbose: AKBaseCharacter::TempPowerDecayRateFactorTimelineTick  -  CurrentTime=53.294807   Position=8.000000  Length=100.000000   TempAttributes.SpeedFactor.Value=0.800000   Data->InitialValue=1.000000   Data->TempTargetValue=0.800000
[2017.08.17-14.53.31:439][ 30]LogDebug:VeryVerbose: UKTimelineObject::TimerTimelineTick: GetTimelineLength=100.000000   GetPlayRate=1.000000   GetPosition=8.000000   DeltaTime=0.300000
[2017.08.17-14.53.31:441][ 30]LogDamage:VeryVerbose: AKBaseCharacter::GetAlterationTimeline  -  Type=5    Data=0000015C0C5E43E8   Role=ROLE_Authority
[2017.08.17-14.53.31:451][ 30]LogDamage:VeryVerbose: AKBaseCharacter::TempPowerDecayRateFactorTimelineTick  -  CurrentTime=53.602905   Position=9.000000  Length=100.000000   TempAttributes.SpeedFactor.Value=0.800000   Data->InitialValue=1.000000   Data->TempTargetValue=0.800000
[2017.08.17-14.53.31:727][ 47]LogDebug:VeryVerbose: UKTimelineObject::TimerTimelineTick: GetTimelineLength=100.000000   GetPlayRate=1.000000   GetPosition=9.000000   DeltaTime=0.300000
[2017.08.17-14.53.31:731][ 47]LogDamage:VeryVerbose: AKBaseCharacter::GetAlterationTimeline  -  Type=5    Data=0000015C0C5E43E8   Role=ROLE_Authority
[2017.08.17-14.53.31:742][ 47]LogDamage:VeryVerbose: AKBaseCharacter::TempPowerDecayRateFactorTimelineTick  -  CurrentTime=53.890377   Position=10.000000  Length=100.000000   TempAttributes.SpeedFactor.Value=0.800000   Data->InitialValue=1.000000   Data->TempTargetValue=0.800000
[2017.08.17-14.53.31:869][ 55]LogDebug: AKTeamInfo::UpdateTeamLeaders
[2017.08.17-14.53.31:875][ 55]LogDebug: AKTeamInfo::UpdateTeamLeaders
[2017.08.17-14.53.32:033][ 65]LogDebug:VeryVerbose: UKTimelineObject::TimerTimelineTick: GetTimelineLength=100.000000   GetPlayRate=1.000000   GetPosition=10.000000   DeltaTime=0.300000
[2017.08.17-14.53.32:041][ 65]LogDamage:VeryVerbose: AKBaseCharacter::GetAlterationTimeline  -  Type=5    Data=0000015C0C5E43E8   Role=ROLE_Authority
[2017.08.17-14.53.32:051][ 65]LogDamage:VeryVerbose: AKBaseCharacter::TempPowerDecayRateFactorTimelineTick  -  CurrentTime=54.197323   Position=11.000000  Length=100.000000   TempAttributes.SpeedFactor.Value=0.800000   Data->InitialValue=1.000000   Data->TempTargetValue=0.800000
[2017.08.17-14.53.32:341][ 83]LogDebug:VeryVerbose: UKTimelineObject::TimerTimelineTick: GetTimelineLength=100.000000   GetPlayRate=1.000000   GetPosition=11.000000   DeltaTime=0.300000
[2017.08.17-14.53.32:343][ 83]LogDamage:VeryVerbose: AKBaseCharacter::GetAlterationTimeline  -  Type=5    Data=0000015C0C5E43E8   Role=ROLE_Authority
[2017.08.17-14.53.32:354][ 83]LogDamage:VeryVerbose: AKBaseCharacter::TempPowerDecayRateFactorTimelineTick  -  CurrentTime=54.504402   Position=12.000000  Length=100.000000   TempAttributes.SpeedFactor.Value=0.800000   Data->InitialValue=1.000000   Data->TempTargetValue=0.800000
[2017.08.17-14.53.32:630][100]LogDebug:VeryVerbose: UKTimelineObject::TimerTimelineTick: GetTimelineLength=100.000000   GetPlayRate=1.000000   GetPosition=12.000000   DeltaTime=0.300000
[2017.08.17-14.53.32:632][100]LogDamage:VeryVerbose: AKBaseCharacter::GetAlterationTimeline  -  Type=5    Data=0000015C0C5E43E8   Role=ROLE_Authority
[2017.08.17-14.53.32:643][100]LogDamage:VeryVerbose: AKBaseCharacter::TempPowerDecayRateFactorTimelineTick  -  CurrentTime=54.793678   Position=13.000000  Length=100.000000   TempAttributes.SpeedFactor.Value=0.800000   Data->InitialValue=1.000000   Data->TempTargetValue=0.800000
[2017.08.17-14.53.32:937][118]LogDebug:VeryVerbose: UKTimelineObject::TimerTimelineTick: GetTimelineLength=100.000000   GetPlayRate=1.000000   GetPosition=13.000000   DeltaTime=0.300000
[2017.08.17-14.53.32:943][118]LogDamage:VeryVerbose: AKBaseCharacter::GetAlterationTimeline  -  Type=5    Data=0000015C0C5E43E8   Role=ROLE_Authority
[2017.08.17-14.53.32:954][118]LogDamage:VeryVerbose: AKBaseCharacter::TempPowerDecayRateFactorTimelineTick  -  CurrentTime=55.101429   Position=14.000000  Length=100.000000   TempAttributes.SpeedFactor.Value=0.800000   Data->InitialValue=1.000000   Data->TempTargetValue=0.800000
[2017.08.17-14.53.33:229][135]LogDebug:VeryVerbose: UKTimelineObject::TimerTimelineTick: GetTimelineLength=100.000000   GetPlayRate=1.000000   GetPosition=14.000000   DeltaTime=0.300000
[2017.08.17-14.53.33:234][135]LogDamage:VeryVerbose: AKBaseCharacter::GetAlterationTimeline  -  Type=5    Data=0000015C0C5E43E8   Role=ROLE_Authority
[2017.08.17-14.53.33:244][135]LogDamage:VeryVerbose: AKBaseCharacter::TempPowerDecayRateFactorTimelineTick  -  CurrentTime=55.392872   Position=15.000000  Length=100.000000   TempAttributes.SpeedFactor.Value=0.800000   Data->InitialValue=1.000000   Data->TempTargetValue=0.800000
[2017.08.17-14.53.33:535][153]LogDebug:VeryVerbose: UKTimelineObject::TimerTimelineTick: GetTimelineLength=100.000000   GetPlayRate=1.000000   GetPosition=15.000000   DeltaTime=0.300000
[2017.08.17-14.53.33:545][153]LogDamage:VeryVerbose: AKBaseCharacter::GetAlterationTimeline  -  Type=5    Data=0000015C0C5E43E8   Role=ROLE_Authority
[2017.08.17-14.53.33:555][153]LogDamage:VeryVerbose: AKBaseCharacter::TempPowerDecayRateFactorTimelineTick  -  CurrentTime=55.698639   Position=16.000000  Length=100.000000   TempAttributes.SpeedFactor.Value=0.800000   Data->InitialValue=1.000000   Data->TempTargetValue=0.800000
[2017.08.17-14.53.33:830][170]LogDebug:VeryVerbose: UKTimelineObject::TimerTimelineTick: GetTimelineLength=100.000000   GetPlayRate=1.000000   GetPosition=16.000000   DeltaTime=0.300000
[2017.08.17-14.53.33:836][170]LogDamage:VeryVerbose: AKBaseCharacter::GetAlterationTimeline  -  Type=5    Data=0000015C0C5E43E8   Role=ROLE_Authority
[2017.08.17-14.53.33:846][170]LogDamage:VeryVerbose: AKBaseCharacter::TempPowerDecayRateFactorTimelineTick  -  CurrentTime=55.993927   Position=17.000000  Length=100.000000   TempAttributes.SpeedFactor.Value=0.800000   Data->InitialValue=1.000000   Data->TempTargetValue=0.800000
[2017.08.17-14.53.34:138][188]LogDebug:VeryVerbose: UKTimelineObject::TimerTimelineTick: GetTimelineLength=100.000000   GetPlayRate=1.000000   GetPosition=17.000000   DeltaTime=0.300000
[2017.08.17-14.53.34:147][188]LogDamage:VeryVerbose: AKBaseCharacter::GetAlterationTimeline  -  Type=5    Data=0000015C0C5E43E8   Role=ROLE_Authority
[2017.08.17-14.53.34:158][188]LogDamage:VeryVerbose: AKBaseCharacter::TempPowerDecayRateFactorTimelineTick  -  CurrentTime=56.302006   Position=18.000000  Length=100.000000   TempAttributes.SpeedFactor.Value=0.800000   Data->InitialValue=1.000000   Data->TempTargetValue=0.800000
[2017.08.17-14.53.34:433][205]LogDebug:VeryVerbose: UKTimelineObject::TimerTimelineTick: GetTimelineLength=100.000000   GetPlayRate=1.000000   GetPosition=18.000000   DeltaTime=0.300000
[2017.08.17-14.53.34:438][205]LogDamage:VeryVerbose: AKBaseCharacter::GetAlterationTimeline  -  Type=5    Data=0000015C0C5E43E8   Role=ROLE_Authority
[2017.08.17-14.53.34:449][205]LogDamage:VeryVerbose: AKBaseCharacter::TempPowerDecayRateFactorTimelineTick  -  CurrentTime=56.596424   Position=19.000000  Length=100.000000   TempAttributes.SpeedFactor.Value=0.800000   Data->InitialValue=1.000000   Data->TempTargetValue=0.800000
[2017.08.17-14.53.34:738][223]LogDebug:VeryVerbose: UKTimelineObject::TimerTimelineTick: GetTimelineLength=100.000000   GetPlayRate=1.000000   GetPosition=19.000000   DeltaTime=0.300000
[2017.08.17-14.53.34:748][223]LogDamage:VeryVerbose: AKBaseCharacter::GetAlterationTimeline  -  Type=5    Data=0000015C0C5E43E8   Role=ROLE_Authority
[2017.08.17-14.53.34:759][223]LogDamage:VeryVerbose: AKBaseCharacter::TempPowerDecayRateFactorTimelineTick  -  CurrentTime=56.901604   Position=20.000000  Length=100.000000   TempAttributes.SpeedFactor.Value=0.800000   Data->InitialValue=1.000000   Data->TempTargetValue=0.800000
[2017.08.17-14.53.34:869][230]LogDebug: AKTeamInfo::UpdateTeamLeaders
[2017.08.17-14.53.34:874][230]LogDebug: AKTeamInfo::UpdateTeamLeaders
[2017.08.17-14.53.35:032][240]LogDebug:VeryVerbose: UKTimelineObject::TimerTimelineTick: GetTimelineLength=100.000000   GetPlayRate=1.000000   GetPosition=20.000000   DeltaTime=0.300000
[2017.08.17-14.53.35:041][240]LogDamage:VeryVerbose: AKBaseCharacter::GetAlterationTimeline  -  Type=5    Data=0000015C0C5E43E8   Role=ROLE_Authority
[2017.08.17-14.53.35:052][240]LogDamage:VeryVerbose: AKBaseCharacter::TempPowerDecayRateFactorTimelineTick  -  CurrentTime=57.196369   Position=21.000000  Length=100.000000   TempAttributes.SpeedFactor.Value=0.800000   Data->InitialValue=1.000000   Data->TempTargetValue=0.800000
[2017.08.17-14.53.35:339][258]LogDebug:VeryVerbose: UKTimelineObject::TimerTimelineTick: GetTimelineLength=100.000000   GetPlayRate=1.000000   GetPosition=21.000000   DeltaTime=0.300000
[2017.08.17-14.53.35:341][258]LogDamage:VeryVerbose: AKBaseCharacter::GetAlterationTimeline  -  Type=5    Data=0000015C0C5E43E8   Role=ROLE_Authority
[2017.08.17-14.53.35:352][258]LogDamage:VeryVerbose: AKBaseCharacter::TempPowerDecayRateFactorTimelineTick  -  CurrentTime=57.502361   Position=22.000000  Length=100.000000   TempAttributes.SpeedFactor.Value=0.800000   Data->InitialValue=1.000000   Data->TempTargetValue=0.800000
[2017.08.17-14.53.35:630][275]LogDebug:VeryVerbose: UKTimelineObject::TimerTimelineTick: GetTimelineLength=100.000000   GetPlayRate=1.000000   GetPosition=22.000000   DeltaTime=0.300000
[2017.08.17-14.53.35:631][275]LogDamage:VeryVerbose: AKBaseCharacter::GetAlterationTimeline  -  Type=5    Data=0000015C0C5E43E8   Role=ROLE_Authority
[2017.08.17-14.53.35:641][275]LogDamage:VeryVerbose: AKBaseCharacter::TempPowerDecayRateFactorTimelineTick  -  CurrentTime=57.792988   Position=23.000000  Length=100.000000   TempAttributes.SpeedFactor.Value=0.800000   Data->InitialValue=1.000000   Data->TempTargetValue=0.800000
[2017.08.17-14.53.35:932][293]LogDebug:VeryVerbose: UKTimelineObject::TimerTimelineTick: GetTimelineLength=100.000000   GetPlayRate=1.000000   GetPosition=23.000000   DeltaTime=0.300000
[2017.08.17-14.53.35:942][293]LogDamage:VeryVerbose: AKBaseCharacter::GetAlterationTimeline  -  Type=5    Data=0000015C0C5E43E8   Role=ROLE_Authority
[2017.08.17-14.53.35:953][293]LogDamage:VeryVerbose: AKBaseCharacter::TempPowerDecayRateFactorTimelineTick  -  CurrentTime=58.095749   Position=24.000000  Length=100.000000   TempAttributes.SpeedFactor.Value=0.800000   Data->InitialValue=1.000000   Data->TempTargetValue=0.800000
[2017.08.17-14.53.36:230][310]LogDebug:VeryVerbose: UKTimelineObject::TimerTimelineTick: GetTimelineLength=100.000000   GetPlayRate=1.000000   GetPosition=24.000000   DeltaTime=0.300000
[2017.08.17-14.53.36:235][310]LogDamage:VeryVerbose: AKBaseCharacter::GetAlterationTimeline  -  Type=5    Data=0000015C0C5E43E8   Role=ROLE_Authority
[2017.08.17-14.53.36:245][310]LogDamage:VeryVerbose: AKBaseCharacter::TempPowerDecayRateFactorTimelineTick  -  CurrentTime=58.393993   Position=25.000000  Length=100.000000   TempAttributes.SpeedFactor.Value=0.800000   Data->InitialValue=1.000000   Data->TempTargetValue=0.800000
[2017.08.17-14.53.36:535][328]LogDebug:VeryVerbose: UKTimelineObject::TimerTimelineTick: GetTimelineLength=100.000000   GetPlayRate=1.000000   GetPosition=25.000000   DeltaTime=0.300000
[2017.08.17-14.53.36:545][328]LogDamage:VeryVerbose: AKBaseCharacter::GetAlterationTimeline  -  Type=5    Data=0000015C0C5E43E8   Role=ROLE_Authority
[2017.08.17-14.53.36:555][328]LogDamage:VeryVerbose: AKBaseCharacter::TempPowerDecayRateFactorTimelineTick  -  CurrentTime=58.698933   Position=26.000000  Length=100.000000   TempAttributes.SpeedFactor.Value=0.800000   Data->InitialValue=1.000000   Data->TempTargetValue=0.800000
[2017.08.17-14.53.36:829][345]LogDebug:VeryVerbose: UKTimelineObject::TimerTimelineTick: GetTimelineLength=100.000000   GetPlayRate=1.000000   GetPosition=26.000000   DeltaTime=0.300000
[2017.08.17-14.53.36:835][345]LogDamage:VeryVerbose: AKBaseCharacter::GetAlterationTimeline  -  Type=5    Data=0000015C0C5E43E8   Role=ROLE_Authority
[2017.08.17-14.53.36:846][345]LogDamage:VeryVerbose: AKBaseCharacter::TempPowerDecayRateFactorTimelineTick  -  CurrentTime=58.993317   Position=27.000000  Length=100.000000   TempAttributes.SpeedFactor.Value=0.800000   Data->InitialValue=1.000000   Data->TempTargetValue=0.800000
[2017.08.17-14.53.37:133][363]LogDebug:VeryVerbose: UKTimelineObject::TimerTimelineTick: GetTimelineLength=100.000000   GetPlayRate=1.000000   GetPosition=27.000000   DeltaTime=0.300000
[2017.08.17-14.53.37:135][363]LogDamage:VeryVerbose: AKBaseCharacter::GetAlterationTimeline  -  Type=5    Data=0000015C0C5E43E8   Role=ROLE_Authority
[2017.08.17-14.53.37:146][363]LogDamage:VeryVerbose: AKBaseCharacter::TempPowerDecayRateFactorTimelineTick  -  CurrentTime=59.296795   Position=28.000000  Length=100.000000   TempAttributes.SpeedFactor.Value=0.800000   Data->InitialValue=1.000000   Data->TempTargetValue=0.800000
[2017.08.17-14.53.37:436][381]LogDebug:VeryVerbose: UKTimelineObject::TimerTimelineTick: GetTimelineLength=100.000000   GetPlayRate=1.000000   GetPosition=28.000000   DeltaTime=0.300000
[2017.08.17-14.53.37:438][381]LogDamage:VeryVerbose: AKBaseCharacter::GetAlterationTimeline  -  Type=5    Data=0000015C0C5E43E8   Role=ROLE_Authority
[2017.08.17-14.53.37:449][381]LogDamage:VeryVerbose: AKBaseCharacter::TempPowerDecayRateFactorTimelineTick  -  CurrentTime=59.598488   Position=29.000000  Length=100.000000   TempAttributes.SpeedFactor.Value=0.800000   Data->InitialValue=1.000000   Data->TempTargetValue=0.800000
[2017.08.17-14.53.37:735][399]LogDebug:VeryVerbose: UKTimelineObject::TimerTimelineTick: GetTimelineLength=100.000000   GetPlayRate=1.000000   GetPosition=29.000000   DeltaTime=0.300000
[2017.08.17-14.53.37:737][399]LogDamage:VeryVerbose: AKBaseCharacter::GetAlterationTimeline  -  Type=5    Data=0000015C0C5E43E8   Role=ROLE_Authority
[2017.08.17-14.53.37:747][399]LogDamage:VeryVerbose: AKBaseCharacter::TempPowerDecayRateFactorTimelineTick  -  CurrentTime=59.899078   Position=30.000000  Length=100.000000   TempAttributes.SpeedFactor.Value=0.800000   Data->InitialValue=1.000000   Data->TempTargetValue=0.800000
[2017.08.17-14.53.37:862][406]LogOnline:Verbose: AKGameSession::UpdateGameState
[2017.08.17-14.53.37:872][406]LogOnline:Verbose: AKGameSession::UpdateGameState    NM_DedicatedServer
[2017.08.17-14.53.37:883][406]LogOnline:Verbose: AKGameSession::UpdateGameState    SessionInterface.IsValid
[2017.08.17-14.53.37:893][406]LogOnline:Verbose: AKGameSession::UpdateGameState    UpdateSession FKOnlineSessionSettings
[2017.08.17-14.54.05:162][ 57]LogDebug:Verbose: AKPlayerController::ServerSuicide_Implementation  -  this=KPlayerController_0  GameMode=KDeathGameMode_0   Role=ROLE_Authority

The code for the UKTimelineObject. It is like the UTimelineComponent.

Header:

/**
 * @brief Interface of the UKTimelineObject class.
 *
 * @info Copyright (c) 2015 Kadeo. All rights reserved. 
 * 
 *         This source code is only intended as a supplement to the Kadeo User's Guide and
 *         related electronic documentation provided with the library. See these sources for
 *         detailed information regarding the Kadeo product.
 *
 * @author dominique.aigroz@kadeo.net
 * @date 16.05.2015
 *
 * @file D:\KadeoGames\UDK\KSGM\Source\KSGM\Helpers\UObjects\KTimelineObject.h
 */

#pragma once
#include "Components/TimelineComponent.h"
#include "KTimelineObject.generated.h"

/**
* UKTimelineObject holds a FTimeline.
* Events can be triggered at keyframes along the timeline.
* Floats, vectors, and colors are interpolated between keyframes along the timeline.
*/
UCLASS()
class UKTimelineObject : public UObject
{
	GENERATED_UCLASS_BODY()

public:

	/**
	 * @brief Initializes the timeline with a vector curve and set the tick and finish call-back functions.
	 *
	 * @param VectorCurve		   If non-null, the vector curve.
	 * @param TickFunc			   The function to call on every tick.
	 * @param FinishedFunc		   The finished function.
	 * @param InOwner			   The actor owner.
	 * @param InDeltaTime		   (Optional) the delta time between the play rate value. Default is 1.0
	 * @param InPlayRate		   (Optional) the play rate. Default is 1.0
	 * @param InLengthMode		   (Optional) the in length mode. Default is ETimelineLengthMode::TL_TimelineLength.
	 * @param InLength			   (Optional) the initial length. Default is 100.							   
	 * @param PropertyName		   (Optional) name of the property. Default is NAME_None.
	 */
	void Initialize(class UCurveVector* VectorCurve, FOnTimelineVector TickFunc, FOnTimelineEvent FinishedFunc, const AActor* InOwner, float InDeltaTime = 1.0f, float InPlayRate = 1.0f, ETimelineLengthMode InLengthMode = ETimelineLengthMode::TL_TimelineLength, const float InLength = 100.0f, FName PropertyName = NAME_None);

	/**
	* @brief Initializes the timeline with a float curve and set the tick and finish call-back functions.
	*
	* @param FloatCurve			   If non-null, the float curve.
	* @param TickFunc			   The function to call on every tick.
	* @param FinishedFunc		   The finished function.
	* @param InOwner			   The actor owner.
	* @param InDeltaTime		   (Optional) the delta time between the play rate value. Default is 1.0
	* @param InPlayRate			   (Optional) the play rate. Default is 1.0
	* @param InLengthMode		   (Optional) the in length mode. Default is ETimelineLengthMode::TL_TimelineLength.
	* @param InLength			   (Optional) the initial length. Default is 100.
	* @param PropertyName		   (Optional) name of the property. Default is NAME_None.
	*/
	void Initialize(class UCurveFloat* FloatCurve, FOnTimelineFloat TickFunc, FOnTimelineEvent FinishedFunc, const AActor* InOwner, float InDeltaTime = 1.0f, float InPlayRate = 1.0f, ETimelineLengthMode InLengthMode = ETimelineLengthMode::TL_TimelineLength, const float InLength = 100.0f, FName PropertyName = NAME_None);

	/**
	* @brief Initializes the timeline with a linear color curve and set the tick and finish call-back functions.
	*
	* @param LinearColorCurve	   If non-null, the linear color curve.
	* @param TickFunc			   The function to call on every tick.
	* @param FinishedFunc		   The finished function.
	* @param InOwner			   The actor owner.
	* @param InDeltaTime		   (Optional) the delta time between the play rate value. Default is 1.0
	* @param InPlayRate		       (Optional) the play rate. Default is 1.0
	* @param InLengthMode		   (Optional) the in length mode. Default is ETimelineLengthMode::TL_TimelineLength.
	* @param InLength			   (Optional) the initial length. Default is 100.
	* @param PropertyName		   (Optional) name of the property. Default is NAME_None.
	*/
	void Initialize(class UCurveLinearColor* LinearColorCurve, FOnTimelineLinearColor TickFunc, FOnTimelineEvent FinishedFunc, const AActor* InOwner, float InDeltaTime = 1.0f, float InPlayRate = 1.0f, ETimelineLengthMode InLengthMode = ETimelineLengthMode::TL_TimelineLength, const float InLength = 100.0f, FName PropertyName = NAME_None);

	/** Start playback of timeline */
	void Play();

	/** Start playback of timeline from the start */
	void PlayFromStart();

	/** Start playback of timeline in reverse */
	void Reverse();

	/** Start playback of timeline in reverse from the end */
	void ReverseFromEnd();

	/** Stop playback of timeline */
	void Stop();

	/** Get whether this timeline is playing or not. */
	bool IsPlaying() const;

	/** Get whether we are reversing or not */
	bool IsReversing() const;

	/** Jump to a position in the timeline. If bFireEvents is true, event functions will fire, otherwise will not. */
	void SetPlaybackPosition(float NewPosition, bool bFireEvents);

	/** Get the current playback position of the Timeline */
	float GetPlaybackPosition() const;

	/** true means we whould loop, false means we should not. */
	void SetLooping(bool bNewLooping);

	/** Get whether we are looping or not */
	bool IsLooping() const;

	/** Sets the new play rate for this timeline */
	void SetPlayRate(float NewRate);

	/** Get the current play rate for this timeline */
	float GetPlayRate() const;

	/**
	 * @brief Sets the delta time between play rate for this timeline.
	 * @param NewDeltaTime The new delta time.
	 */
	void SetDeltaTime(float NewDeltaTime);

	/** Get the current delta time between play rate for this timeline */
	float GetDeltaTime() const;

	/** Set the new playback position time to use */
	void SetNewTime(float NewTime);

	/** Get length of the timeline */
	float GetTimelineLength() const;

	/** Set length of the timeline */
	void SetTimelineLength(float NewLength);

	/** Sets the length mode of the timeline */
	void SetTimelineLengthMode(ETimelineLengthMode NewLengthMode);

	/** Get the initial length of the timeline */
	float GetInitialTimelineLength() const;

	/**
	 * @brief Sets initial timeline length.
	 * @param InLength The new initial time length.
	 */
	void SetInitialTimelineLength(const float InLength);

	/** @brief Sets back the timeline length to initial length. */
	void SetTimelineLengthToInitial();

	UFUNCTION()
	void OnRep_Timeline();

	/** Add a callback event to the timeline */
	void AddEvent(float Time, FOnTimelineEvent EventFunc);

	/** Add a vector interpolation to the timeline */
	void AddInterpVector(UCurveVector* VectorCurve, FOnTimelineVector InterpFunc, FName PropertyName = NAME_None);

	/** Add a float interpolation to the timeline */
	void AddInterpFloat(UCurveFloat* FloatCurve, FOnTimelineFloat InterpFunc, FName PropertyName = NAME_None);

	/** Add a linear color interpolation to the timeline */
	void AddInterpLinearColor(UCurveLinearColor* LinearColorCurve, FOnTimelineLinearColor InterpFunc, FName PropertyName = NAME_None);

	/** Optionally provide an object to automatically update properties on */
	void SetPropertySetObject(UObject* NewPropertySetObject);

	/** Set the delegate to call after each timeline tick */
	void SetTimelinePostUpdateFunc(FOnTimelineEvent NewTimelinePostUpdateFunc);

	/** Set the delegate to call when timeline is finished */
	void SetTimelineFinishedFunc(FOnTimelineEvent NewTimelineFinishedFunc);

	/** Set the delegate to call when timeline is finished */
	void SetDirectionPropertyName(FName DirectionPropertyName);

	/** Get all curves used by the Timeline 
	void GetAllCurves(TSet<class UCurveBase*>& InOutCurves) const;
	*/

private:

	/**
	* @brief Activates the timer for ticking the timeline.
	*/
	void Activate();

	/**
	* @brief Deactivates the timer for ticking the timeline.
	*/
	void Deactivate();

	/**
	 * @brief Timer timeline on tick call-back.
	 */
	void TimerTimelineTick();

private:
	/** The actual timeline structure */
	UPROPERTY(ReplicatedUsing = OnRep_Timeline)
	FTimeline	TheTimeline;
	/** @brief The initial timeline length. */
	float InitialTimelineLength;
	/** @brief The delta time used for ticking the timeline. */
	float DeltaTime;
	/** @brief Handle of the timer for ticking the timeline. */
	FTimerHandle TimerTimelineHandle;
	/** @brief The actor owning this timeline object. Needed to access the GetWorlTimerManager(). */
	const AActor* TheActor;

};

/**
// End of D:\KadeoGames\UDK\KSGM\Source\KSGM\Helpers\UObjects\KTimelineObject.h
 */

Source:

/**
 * @brief Implementation of the UKTimelineObject class.
 *
 * @info Copyright (c) 2015 Kadeo. All rights reserved. 
 * 
 *         This source code is only intended as a supplement to the Kadeo User's Guide and
 *         related electronic documentation provided with the library. See these sources for
 *         detailed information regarding the Kadeo product.
 *
 * @author dominique.aigroz@kadeo.net
 * @date 16.05.2015
 *
 * @file D:\KadeoGames\UDK\KSGM\Source\KSGM\Helpers\UObjects\KTimelineObject.cpp
 */

#include "KSGM.h"
#include "Components/TimelineComponent.h"
#include "KTimelineObject.h"


UKTimelineObject::UKTimelineObject(const FObjectInitializer& ObjectInitializer)
	: Super(ObjectInitializer)
	, InitialTimelineLength(5.0f)
	, DeltaTime(0.2f)
	, TheActor(nullptr)
{
}

void UKTimelineObject::Initialize(UCurveVector* VectorCurve, FOnTimelineVector TickFunc, FOnTimelineEvent FinishedFunc, const AActor* InOwner, float InDeltaTime, float InPlayRate, ETimelineLengthMode InLengthMode, const float InLength, FName PropertyName)
{
	TheTimeline.AddInterpVector(VectorCurve, TickFunc, PropertyName);
	TheTimeline.SetTimelineFinishedFunc(FinishedFunc);
	TheTimeline.SetTimelineLengthMode(InLengthMode);

	DeltaTime = InDeltaTime;
	SetPlayRate(InPlayRate);
	TheActor = InOwner;
	SetInitialTimelineLength(InLength);
}

void UKTimelineObject::Initialize(UCurveFloat* FloatCurve, FOnTimelineFloat TickFunc, FOnTimelineEvent FinishedFunc, const AActor* InOwner, float InDeltaTime, float InPlayRate, ETimelineLengthMode InLengthMode, const float InLength, FName PropertyName)
{
	TheTimeline.AddInterpFloat(FloatCurve, TickFunc, PropertyName);
	TheTimeline.SetTimelineFinishedFunc(FinishedFunc);
	TheTimeline.SetTimelineLengthMode(InLengthMode);

	DeltaTime = InDeltaTime;
	SetPlayRate(InPlayRate);
	TheActor = InOwner;
	SetInitialTimelineLength(InLength);
}

void UKTimelineObject::Initialize(UCurveLinearColor* LinearColorCurve, FOnTimelineLinearColor TickFunc, FOnTimelineEvent FinishedFunc, const AActor* InOwner, float InDeltaTime, float InPlayRate, ETimelineLengthMode InLengthMode, const float InLength, FName PropertyName)
{
	TheTimeline.AddInterpLinearColor(LinearColorCurve, TickFunc, PropertyName);
	TheTimeline.SetTimelineFinishedFunc(FinishedFunc);
	TheTimeline.SetTimelineLengthMode(InLengthMode);

	DeltaTime = InDeltaTime;
	SetPlayRate(InPlayRate);
	TheActor = InOwner;
	SetInitialTimelineLength(InLength);
}


void UKTimelineObject::Activate()
{
	UE_LOG(LogDebug, VeryVerbose, TEXT("UKTimelineObject::Activate: DeltaTime=%f"), DeltaTime);
	if (TheActor && !TimerTimelineHandle.IsValid())
		TheActor->GetWorldTimerManager().SetTimer(TimerTimelineHandle, this, &UKTimelineObject::TimerTimelineTick, DeltaTime, true, 0.0f);
	else
	{
		UE_LOG(LogDebug, Warning, TEXT("UKTimelineObject::Activate: TimerTimelineHandle is already running"));
	}
}

void UKTimelineObject::Deactivate()
{
	UE_LOG(LogDebug, VeryVerbose, TEXT("UKTimelineObject::Deactivate: ClearTimer"));
	if (TheActor)
	{
		TheActor->GetWorldTimerManager().ClearTimer(TimerTimelineHandle);
	}
	TimerTimelineHandle.Invalidate();
}

void UKTimelineObject::TimerTimelineTick()
{
	if (TheTimeline.IsPlaying())
	{
		UE_LOG(LogDebug, VeryVerbose, TEXT("UKTimelineObject::TimerTimelineTick: GetTimelineLength=%f   GetPlayRate=%f   GetPosition=%f   DeltaTime=%f"), GetTimelineLength(), GetPlayRate(), GetPlaybackPosition(), GetDeltaTime());
		TheTimeline.TickTimeline(GetPlayRate());
	}
	else
	{
		UE_LOG(LogDebug, VeryVerbose, TEXT("UKTimelineObject::TimerTimelineTick: Deactivate"));
		Deactivate();
	}
}

void UKTimelineObject::Play()
{
	UE_LOG(LogDebug, VeryVerbose, TEXT("UKTimelineObject::Play"));
	Activate();
	TheTimeline.Play();
}

void UKTimelineObject::PlayFromStart()
{
	UE_LOG(LogDebug, VeryVerbose, TEXT("UKTimelineObject::PlayFromStart"));
	Activate();
	TheTimeline.PlayFromStart();
}

void UKTimelineObject::Reverse()
{
	UE_LOG(LogDebug, VeryVerbose, TEXT("UKTimelineObject::Reverse"));
	Activate();
	TheTimeline.Reverse();
}

void UKTimelineObject::ReverseFromEnd()
{
	UE_LOG(LogDebug, VeryVerbose, TEXT("UKTimelineObject::ReverseFromEnd"));
	Activate();
	TheTimeline.ReverseFromEnd();
}

void UKTimelineObject::Stop()
{
	UE_LOG(LogDebug, VeryVerbose, TEXT("UKTimelineObject::Stop"));
	TheTimeline.Stop();
}

bool UKTimelineObject::IsPlaying() const
{
	return TheTimeline.IsPlaying();
}

void UKTimelineObject::AddEvent(float Time, FOnTimelineEvent Event)
{
	TheTimeline.AddEvent(Time, Event);
}

void UKTimelineObject::AddInterpVector(UCurveVector* VectorCurve, FOnTimelineVector InterpFunc, FName PropertyName)
{
	TheTimeline.AddInterpVector(VectorCurve, InterpFunc, PropertyName);
}

void UKTimelineObject::AddInterpFloat(UCurveFloat* FloatCurve, FOnTimelineFloat InterpFunc, FName PropertyName)
{
	TheTimeline.AddInterpFloat(FloatCurve, InterpFunc, PropertyName);
}

void UKTimelineObject::AddInterpLinearColor(UCurveLinearColor* LinearColorCurve, FOnTimelineLinearColor InterpFunc, FName PropertyName)
{
	TheTimeline.AddInterpLinearColor(LinearColorCurve, InterpFunc, PropertyName);
}

void UKTimelineObject::SetPlaybackPosition(float NewPosition, bool bFireEvents)
{
	TheTimeline.SetPlaybackPosition(NewPosition, bFireEvents);
}

float UKTimelineObject::GetPlaybackPosition() const
{
	return TheTimeline.GetPlaybackPosition();
}

void UKTimelineObject::SetLooping(bool bNewLooping)
{
	TheTimeline.SetLooping(bNewLooping);
}

bool UKTimelineObject::IsLooping() const
{
	return TheTimeline.IsLooping();
}

bool UKTimelineObject::IsReversing() const
{
	return TheTimeline.IsReversing();
}

void UKTimelineObject::SetPlayRate(float NewRate)
{
	TheTimeline.SetPlayRate(NewRate);
}

float UKTimelineObject::GetPlayRate() const
{
	return TheTimeline.GetPlayRate();
}

void UKTimelineObject::SetDeltaTime(float NewDeltaTime)
{
	DeltaTime = NewDeltaTime;
}

float UKTimelineObject::GetDeltaTime() const
{
	return DeltaTime;
}

void UKTimelineObject::SetNewTime(float NewTime)
{
	TheTimeline.SetNewTime(NewTime);
}


float UKTimelineObject::GetTimelineLength() const
{
	return TheTimeline.GetTimelineLength();
}

void UKTimelineObject::SetTimelineLength(float NewLength)
{
	return TheTimeline.SetTimelineLength(NewLength);
}

void UKTimelineObject::SetTimelineLengthMode(ETimelineLengthMode NewLengthMode)
{
	TheTimeline.SetTimelineLengthMode(NewLengthMode);
}

float UKTimelineObject::GetInitialTimelineLength() const
{
	return InitialTimelineLength;
}

void UKTimelineObject::SetInitialTimelineLength(const float InLength)
{
	InitialTimelineLength = InLength;
	SetTimelineLengthToInitial();
}

void UKTimelineObject::SetTimelineLengthToInitial()
{
	SetTimelineLength(InitialTimelineLength);
}


void UKTimelineObject::SetPropertySetObject(UObject* NewPropertySetObject)
{
	TheTimeline.SetPropertySetObject(NewPropertySetObject);
}

void UKTimelineObject::SetTimelinePostUpdateFunc(FOnTimelineEvent NewTimelinePostUpdateFunc)
{
	TheTimeline.SetTimelinePostUpdateFunc(NewTimelinePostUpdateFunc);
}

void UKTimelineObject::SetTimelineFinishedFunc(FOnTimelineEvent NewTimelineFinishedFunc)
{
	TheTimeline.SetTimelineFinishedFunc(NewTimelineFinishedFunc);
}

void UKTimelineObject::SetDirectionPropertyName(FName DirectionPropertyName)
{
	TheTimeline.SetDirectionPropertyName(DirectionPropertyName);
}

/* Linker error. Can't find TheTimeline.GetAllCurves.
void UKTimelineObject::GetAllCurves(TSet& InOutCurves) const
{
	TheTimeline.GetAllCurves(InOutCurves);
}
*/

void UKTimelineObject::OnRep_Timeline()
{
	UE_LOG(LogDebug, VeryVerbose, TEXT("UKTimelineObject::OnRep_Timeline"));

}

void UKTimelineObject::GetLifetimeReplicatedProps(TArray & OutLifetimeProps) const
{
	Super::GetLifetimeReplicatedProps(OutLifetimeProps);

	DOREPLIFETIME(UKTimelineObject, TheTimeline);
}


/**
// End of D:\KadeoGames\UDK\KSGM\Source\KSGM\Helpers\UObjects\KTimelineObject.cpp
 */

I have no idea why the timer stops. Is there is a way to debug this ?

Finally I change the class to use UTimelineComponent and it solved the problem.

/**
 * @brief Interface of the UKTimelineObject class.
 *
 * @info Copyright (c) 2015 Kadeo. All rights reserved. 
 * 
 *         This source code is only intended as a supplement to the Kadeo User's Guide and
 *         related electronic documentation provided with the library. See these sources for
 *         detailed information regarding the Kadeo product.
 *
 * @author dominique.aigroz@kadeo.net
 * @date 16.05.2015
 *
 * @file D:\KadeoGames\UDK\KSGM\Source\KSGM\Helpers\UObjects\KTimelineObject.h
 */

#pragma once
#include "Components/TimelineComponent.h"
#include "KTimelineObject.generated.h"

/**
* UKTimelineObject implements a UTimelineComponent.
* Events can be triggered at keyframes along the timeline.
* Floats, vectors, and colors are interpolated between keyframes along the timeline.
*/
UCLASS()
class UKTimelineObject : public UTimelineComponent
{
	GENERATED_UCLASS_BODY()

public:

	/**
	 * @brief Initializes the timeline with a vector curve and set the tick and finish call-back functions.
	 *
	 * @param VectorCurve		   If non-null, the vector curve.
	 * @param TickFunc			   The function to call on every tick.
	 * @param FinishedFunc		   The finished function.
	 * @param InOwner			   The actor owner.
	 * @param InPlayRate		   (Optional) the play rate. Default is 1.0
	 * @param InLengthMode		   (Optional) the in length mode. Default is ETimelineLengthMode::TL_TimelineLength.
	 * @param InLength			   (Optional) the initial length. Default is 100.							   
	 * @param PropertyName		   (Optional) name of the property. Default is NAME_None.
	 */
	void Initialize(class UCurveVector* VectorCurve, FOnTimelineVector TickFunc, FOnTimelineEvent FinishedFunc, const AActor* InOwner, float InPlayRate = 1.0f, ETimelineLengthMode InLengthMode = ETimelineLengthMode::TL_TimelineLength, const float InLength = 100.0f, FName PropertyName = NAME_None);

	/**
	* @brief Initializes the timeline with a float curve and set the tick and finish call-back functions.
	*
	* @param FloatCurve			   If non-null, the float curve.
	* @param TickFunc			   The function to call on every tick.
	* @param FinishedFunc		   The finished function.
	* @param InOwner			   The actor owner.
	* @param InPlayRate			   (Optional) the play rate. Default is 1.0
	* @param InLengthMode		   (Optional) the in length mode. Default is ETimelineLengthMode::TL_TimelineLength.
	* @param InLength			   (Optional) the initial length. Default is 100.
	* @param PropertyName		   (Optional) name of the property. Default is NAME_None.
	*/
	void Initialize(class UCurveFloat* FloatCurve, FOnTimelineFloat TickFunc, FOnTimelineEvent FinishedFunc, const AActor* InOwner, float InPlayRate = 1.0f, ETimelineLengthMode InLengthMode = ETimelineLengthMode::TL_TimelineLength, const float InLength = 100.0f, FName PropertyName = NAME_None);

	/**
	* @brief Initializes the timeline with a linear color curve and set the tick and finish call-back functions.
	*
	* @param LinearColorCurve	   If non-null, the linear color curve.
	* @param TickFunc			   The function to call on every tick.
	* @param FinishedFunc		   The finished function.
	* @param InOwner			   The actor owner.
	* @param InPlayRate		       (Optional) the play rate. Default is 1.0
	* @param InLengthMode		   (Optional) the in length mode. Default is ETimelineLengthMode::TL_TimelineLength.
	* @param InLength			   (Optional) the initial length. Default is 100.
	* @param PropertyName		   (Optional) name of the property. Default is NAME_None.
	*/
	void Initialize(class UCurveLinearColor* LinearColorCurve, FOnTimelineLinearColor TickFunc, FOnTimelineEvent FinishedFunc, const AActor* InOwner, float InPlayRate = 1.0f, ETimelineLengthMode InLengthMode = ETimelineLengthMode::TL_TimelineLength, const float InLength = 100.0f, FName PropertyName = NAME_None);


	/** Get the initial length of the timeline */
	float GetInitialTimelineLength() const;

	/**
	 * @brief Sets initial timeline length.
	 * @param InLength The new initial time length.
	 */
	void SetInitialTimelineLength(const float InLength);

	/** @brief Sets back the timeline length to initial length. */
	void SetTimelineLengthToInitial();


	//~ Begin UTimelineComponent Interface.
	virtual void TickComponent(float InDeltaTime, enum ELevelTick TickType, FActorComponentTickFunction *ThisTickFunction) override;
	//~ End ActorComponent Interface.

private:
	/** @brief The initial timeline length. */
	float InitialTimelineLength;
};

/**
// End of D:\KadeoGames\UDK\KSGM\Source\KSGM\Helpers\UObjects\KTimelineObject.h
 */

And the source

/**
 * @brief Implementation of the UKTimelineObject class.
 *
 * @info Copyright (c) 2015 Kadeo. All rights reserved. 
 * 
 *         This source code is only intended as a supplement to the Kadeo User's Guide and
 *         related electronic documentation provided with the library. See these sources for
 *         detailed information regarding the Kadeo product.
 *
 * @author dominique.aigroz@kadeo.net
 * @date 16.05.2015
 *
 * @file D:\KadeoGames\UDK\KSGM\Source\KSGM\Helpers\UObjects\KTimelineObject.cpp
 */

#include "KSGM.h"
#include "KTimelineObject.h"


UKTimelineObject::UKTimelineObject(const FObjectInitializer& ObjectInitializer)
	: UTimelineComponent(ObjectInitializer)
	, InitialTimelineLength(5.0f)
{
}

void UKTimelineObject::Initialize(UCurveVector* VectorCurve, FOnTimelineVector TickFunc, FOnTimelineEvent FinishedFunc, const AActor* InOwner, float InPlayRate, ETimelineLengthMode InLengthMode, const float InLength, FName PropertyName)
{
	AddInterpVector(VectorCurve, TickFunc, PropertyName);
	SetTimelineFinishedFunc(FinishedFunc);
	SetTimelineLengthMode(InLengthMode);

	SetPlayRate(InPlayRate);
	SetInitialTimelineLength(InLength);
	// Don't forget to register the component for ticking
	RegisterComponent();

}

void UKTimelineObject::Initialize(UCurveFloat* FloatCurve, FOnTimelineFloat TickFunc, FOnTimelineEvent FinishedFunc, const AActor* InOwner, float InPlayRate, ETimelineLengthMode InLengthMode, const float InLength, FName PropertyName)
{
	AddInterpFloat(FloatCurve, TickFunc, PropertyName);
	SetTimelineFinishedFunc(FinishedFunc);
	SetTimelineLengthMode(InLengthMode);

	SetPlayRate(InPlayRate);
	SetInitialTimelineLength(InLength);
	RegisterComponent();
}

void UKTimelineObject::Initialize(UCurveLinearColor* LinearColorCurve, FOnTimelineLinearColor TickFunc, FOnTimelineEvent FinishedFunc, const AActor* InOwner, float InPlayRate, ETimelineLengthMode InLengthMode, const float InLength, FName PropertyName)
{
	AddInterpLinearColor(LinearColorCurve, TickFunc, PropertyName);
	SetTimelineFinishedFunc(FinishedFunc);
	SetTimelineLengthMode(InLengthMode);

	SetPlayRate(InPlayRate);
	SetInitialTimelineLength(InLength);
	RegisterComponent();
}


void UKTimelineObject::TickComponent(float InDeltaTime, enum ELevelTick TickType, FActorComponentTickFunction *ThisTickFunction)
{
	UE_LOG(LogDebug, VeryVerbose, TEXT("UKTimelineObject::TickComponent  -  DeltaTime=%f"), InDeltaTime);
	UTimelineComponent::TickComponent(InDeltaTime, TickType, ThisTickFunction);

}

float UKTimelineObject::GetInitialTimelineLength() const
{
	return InitialTimelineLength;
}

void UKTimelineObject::SetInitialTimelineLength(const float InLength)
{
	InitialTimelineLength = InLength;
	SetTimelineLengthToInitial();
}

void UKTimelineObject::SetTimelineLengthToInitial()
{
	SetTimelineLength(InitialTimelineLength);
}



/**
// End of D:\KadeoGames\UDK\KSGM\Source\KSGM\Helpers\UObjects\KTimelineObject.cpp
 */

And it works. The timeline is played till the end.