Introduction
Hey, remember that time when I released a game? It was 12 years ago. I released Keyboard Hero V7.5 on GameJolt back on October 31, 2013. The game died very quickly after its release. The primary reason is because we lost the derpg.net domain, which the game relied on for updates and DLC packages. The second reason is because I lost the source code, which meant I couldn't just redirect the server request to our new derpg.xyz domain.
As the game's creator, I have everything except for the source code. That is on a failed hard drive. Unfortunately, to prevent decompilation, I used some obfuscation tools on the EXE. So it isn't very easy to recover the source code. That being said, I do have access to the archived DERPG Wiki, which has details on how file formats worked. I also have the DLC assets, which means it is still possible to play official DLC in the game. And I'm going to explain how.
DLC
Let's dive into DLC first. These were official releases by DERPG which had multitrack audio. We had direct contact with most artists to make the releases possible. We were originally going to release a DLC pack that was with tracker music from 1994-1995 but we never got the artist's permission to actually release it. Two DLC packs were released: Cell Pack by LuigiBlood, and Timaeus Pack by Timaeus222, mVelocityHD (KrisRandomHero), and AngelCityOutlaw. Both packs contained 5 songs each.
How it worked
The game had a repository system set up where it would pull a file from derpg.net. That file would contain all DLC information such as song name, artist, genre, year, etc. It would also contain a direct download link to the song file. The file was an XDLC file. XDLC is vX DownLoadable Content, as the game was powered by what we called DERPG VX Engine at the time. The XDLC file had 2 separate configurations: Encrypted or Decrypted. Here's the details of both:
|
Encrypted
|
Decrypted
|
The ogg.mz are just renamed OGG Vorbis files. Though
khm (Keyboard Hero Media) were encrypted via the FMOD DLL
extension for Game Maker 8. The game came with a
xdlc_extract.exe which extracts the contents of an XDLC
file, including all multitrack audio. However, it does not decrypt
KHM files. During the release cycle of Keyboard Hero, there hasn't been
a single encrypted DLC. So you should be able to extract all DLC files
and listen to multitrack audio via Audacity.
The song.chart file used standard chart format that Frets
on Fire used. The chart editor of choice was
Feedback Chart Editor.
Once the song XDLC file was downloaded, it was placed in the
./songs/DLC/ directory. The game would extract the contents
on-demand to a temporary directory.
DLC Downloads
The DERPG server did not host the files for the downloadable content. So even though we lost derpg.net, the files were never lost. Instead, we used Dropbox because it was the only file uploading service at the time that allowed for a direct download via URL modification. So Agro wrote a DLL to allow for threaded downloads and the game would access Dropbox, download the file, and put it in the appropriate directory automatically.
I guess that DLC was considered lost media until this blog post. Here are the 10 downloadable XDLC files for the game that were officially released:
| Title | Album | Artist | Year | Length | Genre | Download | |
|---|---|---|---|---|---|---|---|
|
Flashback CD Intro Theme | n/a | LuigiBlood | 2011 | 4:36 | Rock | DL |
|
Mega Move | n/a | LuigiBlood | 2011 | 2:14 | Rock | DL |
|
In The Room (BN5 Extended Mix) | n/a | LuigiBlood | 2011 | 2:44 | Game | DL |
|
Flashback - The Return | n/a | LuigiBlood | 2012 | 6:45 | Rock | DL |
|
Reconstructing More Science (Seru Remix) | n/a | LuigiBlood | 2012 | 3:33 | Rock | DL |
|
Drop to Eventide | Acidophilus | Timaeus, mVelocityHD | 2011 | 2:56 | Heavy Metal | DL |
|
Shreddin' the Shredder | Acidophilus | Timaeus | 2011 | 2:42 | Metal | DL |
|
Engulfed | Timaeus's Remixes | Timaeus | 2011 | 2:53 | Metal | DL |
|
The Death Of King Desmond | Composimixes | Timaeus | 2012 | 2:58 | Metal | DL |
|
Let's Upset a 'Troid! | Composimixes | Timaeus, AngelCityOutlaw | 2013 | 3:51 | Drum 'n Bass | DL |
Should be noted, these are the initial releases of the DLC. The very first versions. In 2014's "Keyboard Hero DLC Drums (And remastering) Project", I reached out to LuigiBlood and Timaeus222 for improved song stems so drums would have more immersive gameplay. The thing is, Keyboard Hero V7.5 never supported drums. It was planned to be added in an update but it never happened. In these multitracks, drums only have one stereo audio file. I believe most of them do have playable drum charts too, so if you threw them into modern rhythm games like Clone Hero, they should work. But don't quote me on that.
Anyway, put the XDLC files in ./songs/DLC/ and Keyboard Hero
V7.5 will detect them the moment the song selection menu is opened. From
there, you can play the songs!
|
Song Listing
|
Song Information
|
It was nice seeing the game work again. I had a feeling that I wouldn't be able to pay for web hosting back in 2013. So I built in this alternate way to have the game detect the DLC. It also allows for custom DLC to be put in if you have the tools for it.
Why didn't I just include these songs?
With the songs already out on the game's launch, why didn't I just make the game come with the songs so the user can play them stock? Well the answer is simple. GameJolt only allowed for 100 MB uploads for games at the time. It seems like the limit has been drastically increased now. Anyway, the DLC for the game is over 200 MB. The game itself without any songs is 78+ MB.
Unreleased Content
As I stated earlier, there was some tracker music that was to be released too. This was known as the Hysteria Pack. It had 4 songs and was meant to be released shortly after Keyboard Hero V7.5's release. However, contacting the original artists is difficult. Some of the songs even have unspecified names, leaving the DERPG team to guess them based on the information stored in the tracker file. The most notable is Kosmic (Unreleased 4) by Floss/Norg. Norg, Sirio, if you're both out there on the Internet, feel free to shoot me an email.
Both DERPG and my personal YouTube channels have preview videos for some of the tracks in the Hysteria pack. Yes, some of the songs were charted.
|
Kosmic
|
Unreleased 6
|
Baygle (Party Mix)
|
Lastly, there was a single submission on TREZ (The Rockman EXE Zone) from a user named MegaMettaurX who had a remix of Overloaded from Mega Man ZX Advent. I have no idea why this didn't make it into the game. It had one hell of an awesome drum track.
| Title | Album | Artist | Year | Length | Genre | Download | |
|---|---|---|---|---|---|---|---|
|
Overloaded (Model RmX) | n/a | MegaMettaurX | 2011 | 2:21 | Game | n/a |
Custom Songs
Custom songs were a bit more esoteric. For some reason, people thought the game was capable of auto-charting songs so they only had to toss in an MP3 or something. This was not the case. Instead, it followed the same convention as Frets on Fire and FoFiX where you had to supply both the audio and a chart for a song. So if you wanted your music in the game, you had to chart it yourself.
At minimum, each song required a song.ogg, along with a
song.chart. You can use Feedback Chart Editor to chart the
music itself. Each song had to be in its own directory in the
./songs/songs directory. An optional album art could be added,
as well as a KBH_INFO.INI which stores the difficulty
information. The game will automatically detect whether a chart for a
specific difficulty exists.
What's next?
Keyboard Hero V7.5 actually had a successor planned, called Project RX. This game had active development in 2017 and featured even more artists, such as FEWZ, Polkadott, Skaven252, WillRock, and even myself! You can see the trailer for it, as well as gameplay here:
|
Trailer
|
Gameplay
|
Teaser
|
Project RX sadly entered development hell and I wanted to remake it in C/C++ to break out of using Game Maker 8. By the time, I was advanced enough in those languages to make a game in it. I got tired of making DLLs for Game Maker 8 to support more advanced features that Game Maker just didn't have at the time.
The plan was to be inspired by Beatmania IIDX. So content from Keyboard Hero V7.5 would be carried over. And successive rhythm games I make would include content from all previous games. So the library of songs would continuously increase.
Conclusion
It felt nice going back 12 years to something I released and give it some life again. To close this blog post out, I am announcing that the derpg.net domain was up for sale again as of writing this, so I purchased a 10 year ownership of it. Once I figure out the server repository information, I'll put the files back in their original places and the game should theoretically function again, just like if it were 2013. Ironically, this means I'm basically reverse-engineering my game (hence the tag for this blog post).
Looking back at the game, I was surprised at some things. Like, I even implemented ultrawide support and resolution scaling so it'll never look wacky. No surround sound or HDR though. Oh well. I really doubt HDR is possible in Game Maker 8. It's been a very long time. But I wanted to make sure the game got the love and support it needed.