A few bugs to report:
- On the "are you sure?" screens, if you press the button twice quickly you can choose "yes" twice. Which doesn't do anything bad, but makes the text start to fade out, then start over and fade out again.
- The front part of the player ship seems to lag behind the rest of the ship by 1 frame or so when moving. Dunno if on purpose.
- You need to make the game change the working directory to the game folder when it opens. If you try running the game from command line like this:
C:\Users\Reikooters>"C:\Program Files (x86)\Danmaku Unlimited 2 Demo\DU2.exe"
It will complain that the game can't find any of its assets. This is because the working directory isn't the game's folder. Running from the shortcut in start menu/desktop only works because the working directory is set in the shortcut. But the proper practice would be to make the game do it.
Don't know with what language you are writing the game, but this is how I do it in C++. This code is platform-specific and will work on windows only. If you plan to release on Mac and Linux, you'll have to work out how to do it on those, probably using wcs_chdir() from unistd.h instead of _wchdir().
Code: Select all
void Application::setCurrentWorkingDirectory() const
{
#ifdef _MSC_VER
int pathLen;
int bufferLen = MAX_PATH;
DWORD lastError = 0;
wchar_t *pathBuffer = NULL;
do
{
// Create a buffer for the program directory
pathBuffer = new wchar_t[bufferLen + 1];
memset(pathBuffer, '\0', sizeof(wchar_t) * (bufferLen + 1));
// Put the full path + executable filename into the buffer
pathLen = GetModuleFileNameW(NULL, pathBuffer, bufferLen);
// Check if an error occurred
lastError = GetLastError();
if (lastError == ERROR_INSUFFICIENT_BUFFER)
{
// Free memory allocated for the buffer
delete [] pathBuffer;
pathBuffer = NULL;
// Double the size of the buffer
bufferLen *= 2;
}
}
// Keep trying until GetModuleFileNameW() is successful
while (lastError == ERROR_INSUFFICIENT_BUFFER);
if (pathBuffer)
{
/* Backtrack from the end of the buffer, truncating off one character
* at a time, until the start of the filename is found, so that we are
* left with only the program path */
for (int i = pathLen - 1; i >= 0; --i)
{
if (pathBuffer[i] == L'\\' || pathBuffer[i] == L'/')
break;
pathBuffer[i] = L'\0';
}
// Change working directory to point to this directory.
_wchdir(pathBuffer);
// Free memory allocated for the buffer
delete [] pathBuffer;
}
#endif
}
Anyways, looking forward to the finished version

Made a quick video of each mode on youtube.
Burst:
http://www.youtube.com/watch?v=TJzUu0AOV5U
Classic:
http://www.youtube.com/watch?v=veowSBaH8qM