ooooOOOO!OO!O!OOOOOOOOOooooO! brb im gunna do it now. * * * @'Growlith1223': > nono, you don't have to reset the GetTick, only the tmr variables within the Loop(both client and server), basically, that first if for GetTick < 0, create an End If and within that, just do HasRollBack = True. in the loop, around the beginning of the loop, check if HasRollback = True, if so, reset values and HasRollback = false So heres what i did. ``` Public Sub GameLoop() Dim FrameTime As Long Dim Tick As Long Dim TickFPS As Long Dim FPS As Long Dim i As Long Dim LoopI As Long Dim FogTmr As Long Dim ClockTmr As Long Dim Result As FMOD_RESULT MenuType = 1 ShadeOut = True If hasRollback = True Then ' reset timers FogTmr = 0 ClockTmr = 0 Menu_Alert_Timer = 0 TradeTimer = 0 LastUpdateTime_ElasticBars = 0 LastUpdateTime_GameInput = 0 LastUpdateTime_WalkTimer = 0 LastUpdateTime_MapAnim = 0 LastUpdateTime_Ping = 0 LastUpdateTime_TextureReset = 0 hasRollback = False End If ```Etc. Etc. then ``` Public Function GetTick() As Long GetTick = GetTickCount If GetTick < 0 Then hasRollback = True GetTick = GetTick + MAX_LONG End If End Function ``` Do I have to reset timer from data type recs and other places as well? like player(myindex).attackTimer ? or Just the timers from the loop?