Hi, I am planning to make a old strategy game, in the red alert style. I am planing to use C++, pure Win32API and OpenGL(though maybe even allegro or SDL would be enough, i wont learn those when OpenGL can do the same).

I havent developed a game which is this big before, and I am wondering: Where should I update the world database
(Like what is happening, where is all the units placed, shall there be a hole in the ground after a certain explosion, update the infantry-troops positions since they are moving, etc..)?

Should I update it in the WinMain?
Or in WM_TIMER messages?

The answer is probably in WinMain, but that means I have to some time-management. So if you mean WM_TIMER isnt good enough, could you get me started, finding a good libary and function set for dealing with accurate, low-value,millisecond management, so I can compute when a update of worlddatabase would be okay or not?