Ducks in a Row

As previously announced, NEON STRUCT will be released early next year on Windows, Mac, and Linux. I don’t think I have specifically said so before, but the plan has always been to launch simultaneously on all three platforms. Like Eldritch, the Mac and Linux versions will be native ports, not Wine-wrapped Windows builds. Unlike Eldritch, I’m not waiting until the game is finished to start working on those versions.

The hardest parts of porting a Windows game to Mac and Linux—writing an OpenGL renderer parallel to the Direct3D one, and replacing certain low-level system calls with SDL—were already done from my work on Eldritch. I had written a few new file system utilities for NEON STRUCT that needed to be implemented with equivalent POSIX functions, but the most substantial thing left to do was simply to set up the workspaces and start compiling.

Another technical hurdle which I wanted to resolve sooner rather than later was Steamworks integration for achievements and stats tracking (and later, Steam Workshop—but probably as a post-release update). That process was mostly painless; the API is simple and fairly well documented, and the sample project provides everything needed to get started even before getting a Steam AppID.

To be clear, NEON STRUCT will not use Steamworks for DRM. As a player, I personally don’t mind Steam’s DRM. I think it is among the most painless, user-friendly implementations of DRM. But as we state in our “Plain English” EULA, Kyle and I believe there is no real value in choosing to use DRM. My intention is that, just like Eldritch, the Steam version of NEON STRUCT will work even if the user is not running Steam.

So, I didn’t get a lot of creative work done this week. But I got Steamworks-enabled builds running on every target platform, which clears up a considerable amount of uncertainty in the latter part of my schedule.