@WretchedSid,
Yes, that's kind of what I was afraid of.

Every time I think I've figured out the cause, it turns out I'm wrong.

The annoying thing is that you have to play for quite some time for the problem to appear, so for a long time I thought it was working fine. I tested it and it worked, so hey, I kept adding new features etc...

Now that I have actual players, playing the game, the problem shows up.

Can you think of anything that might cause a local variable to be assigned strange numbers that I am not assigning to them? I'm thinking it might be some kind of memory leak, that kicks in after playing for some time...