Yeah lol, that is some old code there.You pass in a wchar_t* returned by a std::wstring::c_str() function, which to me seems kind of silly since you need the string's length inside the function. Inside the function you call wstrlen, but if you were to pass the wstring to instead, you'd already of the length of the string using std::wstring::size() or std::wstring::length().
Ive just pushed an update that handles saved players alot better. I agree the mechanics are difficult and i need to address that.
The current update also has end of level spots that transition the player to the next level.
Another thing i added was a D2DLayer to render on in full screen mode (Direct3DWindow.h) so it will be a 800x600 window . A viewport for D2D. I tried the D3D viewport but the changes didn't do a thing to the D2D rendering.
Anyways, thanks for having a look