Recently, I’ve had the bug to get back into modding again. I’ve messed around with modifying games in the past, but wanted to dive into something a little more deeply. I’ve always enjoyed level design (so much so it was my undergraduate thesis), so I thought I’d try my hand at making a short campaign for a FPS. Which game though? Well, that could only be Blake Stone.
Released on December 3rd, 1993, Blake Stone was an FPS game developed by Jam Productions (Mike Maynard, Jim Row, & Jerry Jones) and published by Apogee. Using the Wolfenstein 3D engine, the game added features such as ceiling textures and non-player characters. In fact, Blake Stone holds the distinction for being the first 3D shooter to even have NPCs.
I played this game a ton as a kid, and it’s always held a special place in my heart. But what to do with it? Well, because it’s using a modified Wolfenstein engine, the map files have to be compatible, right? So with that idea, I sent out to create Wolf-Stone, in which I’ll be attempting to port over the levels from Wolfenstein 3D into Blake Stone.
After some finagling, I managed to port the first eight levels from Wolfenstein into Blake, and successfully played through the first two levels with only some minor editing. But, when loading level three, I was greeted with:
Unit: $83 Error: $04, what does that mean? Did I corrupt something in the map file? Are these maps actually incompatible? This is where I decided to reach out to 3D Realms (formerly Apogee). Keep in mind this game is 23 years old at this point, so there’s no way they’ll know what this means, right? Either way, it’s worth shooting off an email to them in the off-chance they do.
In a way, I was right. Joe Siegler got back to me, and while they have older help for Blake Stone available, the specific error code I encountered unfortunately isn’t one of the ones listed. But, happily enough, Joe said he’d be willing to ask the original programmer if I’d like, though he doubted the programmer would remember after all this time.
If he’s around and he remembers that’d be great haha. If not, I’ll just keep plugging away at it!
But, lo-and-behold, they figured it out! 83-04 means “too many concession machines in the level” and 83-03 means “too many doors in the level”.
Fantastic! Exactly what I wanted. In the Wolfenstein Engine, each tile has an alphanumeric identifier. However, these identifiers don’t match up when porting maps over to Blake Stone, as Blake uses different art assets. Basically, while an identifier may place a keycard in Wolfenstein, this same identifier may be used to place a light fixture in Blake Stone. And, this is exactly what’s happened to cause “too many concession machines in the level”. Something in Wolfenstein uses the same identifier that Blake does to place a vending machine, and thus too many were created when porting the level over. Is it a weird error? Yes. Can I tell you why there’s a hard limit on concession machines? No, not really.
At this point, Joe Siegler and 3D Realms had gone above and beyond what I’d expect. Providing support for a 23 year old game, and taking the time to figure out why it’s behaving the way it is for someone modding it is completely unexpected. But they didn’t stop there.
Two hour later, I received a follow-up email in which Joe said:
We found an old document that might be of use to you. It’s a list of all the Blake Stone error codes, so if you run into any in the future, you can consult this.
Have fun with Blake Stone!
I’ve added the Blake Stone documentation here.
You can also buy Blake Stone from 3D Realms.