I’ve been on something of a Touhou bent lately, as anyone who has seen my KDE and GNOME desktops can assume. I’d first come across the series due to the massive number of doujin on Gaku Gaku Animal Land’s site a few years ago, and after getting tired of being in utter confusion over where the heck to start with this, I finally settled on the games (not that that has cleared it up any, but at least it’s something). Now I usually get my Touhou doujin fix from solelo, but whatever.
And well, in all of that, I was testing out some of the games to see if my computer could handle them. The first 5 PC-98 games yeah, that was easy, but I started hitting snags with the Windows-based games. I’m not quite sure in which game it occurs, but the switch from 16 to 32 bit color is what I pinned the behavior down to. I can play Embodiment of Scarlet Devil just fine if I set my display down to 16 bit High Color first, but if I try firing up Subterranean Animism, it crashes with a Direct3D error. This also occurs with MegaMari, one of the spinoff games from Twilight Frontier. The issue, of course, is that my display options only go up to 24 bpp True Color, not 32 bpp True Color. Now, if that’s anything like the difference between RGB24 and RGB32, it’s just junk data or transparency info (although the latter generally goes by RGBA).
Speaking of MegaMari, I absolutely love the game, as I’ve always loved playing Mega Man games (Original and X series mostly, although I have all the Zero entries and both ZX games too; haven’t played Mega Man 9* yet, though). Is it just a little bit sad that the best Mega Man game I’ve played in years isn’t even a Mega Man game? Seriously, it’s that good – I really hope there’ll be a sequel.
*I do mean Mega Man 9, not a mislabelled Rockman & Forte SNES ROM, although I have played Rockman & Forte also. IMO I think the items system in R&F was far better than the one in Mega Man 8, although I generally prefer the more traditional approach the regular series took in regard to choosing which enemy to fight. Those King levels are murder.
Anyway, MegaMari plays fine over at my grandparents’ house, which makes sense because their display has the option for 32 bit color. At first though I wasn’t sure if I simply had DirectX-related problems. I went and tried to run the DirectX 9c installer, which told me everything was already installed, and I even allowed the installer on Subterranean Animism to add the extra DirectX stuff it had the option for. Neither solution worked.
As a last-ditch effort, I wanted to see if maybe I could play the games through Wine on my Ubuntu setup. So I copied EoSD and MegaMari over to an external drive and booted into the other side of my computer. I moved the games back over to a storage partition that’s nearly empty (I had to create it because of the 137GB limit situation, and because I barely ever do work with huge files in Linux, it tends to sit empty), and attempted to run them from there. Lo and behold, even though I have X11 set to 24 bit display depth, both games ran. Of course, the performance was absolutely abysmal – EoSD on Windows under 16 bpp would average 29-48fps, but when I tried on Linux under 24bpp I was lucky to get 2fps; MegaMari was even slower – but they ran (slightly better under KDE, I might add, but still horrible). I haven’t tried setting xorg.conf to 16bpp to see if that would help any, or if I even could safely set it to 32bpp with my hardware, but it at least gives me the assurance that *something* works.
EDIT 23 August 2009: It seems setting X11 to 16bpp does improve performance somewhat; on EoSD I got between 10-20fps, and was actually able to more or less get to the level selection screen in MegaMari, so take that as you will.
On a slightly more humorous note, I couldn’t believe I found this on the U.S. Amazon storefront: