Cooldowns seem to take twice as long as listed, eg. the yellow ball starts at 10 seconds, but I've counted 20!
You're right, I think I goofed something in the code. It only gets worse the longer the time is, at lower times it's more accurate.
hope you used delta time if you made your own timer function :D