Some more things to do:
-Trial Mode
-Saving is implemented, but not fully tested.
-Redo some bitmap fonts so they look better.
-Some small sections of music and FX need to be finished.
-"De-brown" the graphics in the first several levels.
-Redraw the exit doors for the later levels.
On another note, I squashed an annoying bug that's been bothering me for a while. Not long ago I noticed the game would drop a bunch of frames right after a load. My initial though was "obviously, the garbage collector." Profiling revealed no problem at all in the GC. Nothing but a stray string here and there was being allocated after loading all the assets. I decided to ignore it for as long as could and instead just focus on the game.
-Trial Mode
-Saving is implemented, but not fully tested.
-Redo some bitmap fonts so they look better.
-Some small sections of music and FX need to be finished.
-"De-brown" the graphics in the first several levels.
-Redraw the exit doors for the later levels.
On another note, I squashed an annoying bug that's been bothering me for a while. Not long ago I noticed the game would drop a bunch of frames right after a load. My initial though was "obviously, the garbage collector." Profiling revealed no problem at all in the GC. Nothing but a stray string here and there was being allocated after loading all the assets. I decided to ignore it for as long as could and instead just focus on the game.
Finally, taking a closer look revealed that the frame drop wasn't happening after a load at all, but only once, at almost the exact same time every time the game was run! I thought I'd test some other XNA games I'd written and sure enough, it happened to them too. Running the executables outside the debugger didn't help and it also happened on samples from the creator's club website as well. My thoughts moved to two possibilities: Update the video card driver or disable the virus scanner. I updated the card as it needed it anyway, but it turns out it wasn't the virus scan either. It was Adaware's Ad-Watch Live "realtime protection".
Sure enough, disabling this prevented the frame drops. Looking at the Task Manager, you could see several seconds after an XNA game is run, Ad-Watch more than doubles the amount of memory the game would normally use. The addition of the memory is when you'd see stutter. I suspect that this is the behavior it would take with any executable, but when playing a game it becomes really noticeable. So anyone out there with a similar occurrence remember, you sometimes may have to look outside the environment your in for a solution.