Game crashes 20-30 seconds in repeatedly for no apparent reason

!velocity.Contains.NaN() seems to be the error - means a velocity became “Not a Number”
any places in your project you may divide by zero around 20-30 seconds in relating to character movement?

perhaps a steadily decreasing number finally hits 0?