I continue to make progress on the Midnight Mansion port, and today reached an exciting milestone: gameplay is now (mostly) working! Jack is running and jumping, collecting items, and getting killed by monsters. There are still many unfinished parts that are left to do, but it’s an exciting milestone to have the actual gameplay functioning, complete with opening mansion files.
Archive for October, 2010
Midnight Mansion 2: The Haunted Hills, version 1.0.2 has been released. This version fixes problems in various mansions, including one in Jasperlone Mountains Hard that would prevent the game from being able to be completed on that difficulty. The mansions that contain fixes are:
- Dr. Cassiopus (Easy, Normal, Hard)
- Mt. Peril Hard
- Magma Peak Hard
- Jasperlone Mountains Hard
Apple has recently announced the Mac App Store, where developers can distribute Mac applications, just like the App store for iPhone and iPod Touch. Friends are already asking me if I’m going to distribute Midnight Mansion via the Mac App Store. Absolutely! However, I’m going to wait until the port is complete, so I can put the Universal Binary version on the store.
One thing of course is that I get only 70% of the proceeds from sales on the store, versus 97% or so from the sales on my own website. But with the increased market exposure the store will generate, I’m sure it’ll be worth it. Apple’s 70/30 cut is actually quite a bit better than many online portals, like BigFishGames, Steam, or RealArcade, at least from what I hear.
I’m still having a blast porting Midnight Mansion to the new engine. It’s really fun! One of the reasons is that, in addition to finally being on a modern compiler (XCode) where I have a functioning debugger again, the new port is also using OpenGL, which allows the game to use new features!
One great new feature is that, when full-screen, the graphics will be far better looking! Instead of pixelated, OpenGL’s filters will smooth it, and already, I can see that the results are going to be fantastic.
And, while I’ve not done it yet, it should be possible for a user to resize their window while the game is running, and the game will instantly adjust to the new window size. No more having to choose window size, or fullscreen vs. windowed mode, at start-up.
Additionally, while it will require a total rewrite, I should be able to make the Midnight Mansion in-game map system have smooth, realtime zooming in/out AND be much higher resolution than it is now — meaning that if you have the game running fullscreen on a 20″ display, each room in the map will be crystal-clear, instead of hard-to-see like it is now. Great for finding that missing key!
Good things are coming, folks!
I’ve really been enjoying porting Midnight Mansion to the new engine so far. And, while it’s a big project that will take some time, it’s fun to see each piece come into place.
The past few days I ported various screens: The Difficulty selection screen, the Select A Mansion screen, the Title screen, and the ActionSoft logo screen. There are still a number more to finish, from Game Over to High Scores, but each takes only an hour or two to port. Once those screens are done, I will begin porting the necessary pieces to get the gameplay itself up and running.
A few weeks ago I began the process of porting the Midnight Mansion codebase (which includes Midnight Mansion 2) over to a new platform that will let the game run natively on Intel Macs (true Universal Binary), as well as on Windows and iPhone / iPod Touch.
After a few days I had graphics loading working, with all sprites from the game up and running in a window, bouncing around, fully hardware accelerated.
The next week or two were spent messing with various open-source cross-platform libraries that let me do things like draw text using TrueType fonts, or display dialog boxes.
Today I began porting sounds. It’s surprising how much pleasure I had in hearing the first sound effect load and successfully play! It’s also funny though, how much has to be done… I first use a tool to export the System 7 sound files from the Resource fork, then load up a sound editor on my laptop under OS 9… individually open each sound effect, and export it as an AIFF sound, then repeat the same process on my desktop computer, except this time converting AIFF files to WAV files.
I then found certain souunds were causing the program to crash. Turns out they were set to a sample rate of 22255 rather than 22055, so now I’ve been opening each individual effect and manually fixing each one that is in the wrong sample rate.
Needless to say, it’s been a slow process, but it’s fun to see the sounds gradually getting up and running on my new, modern, fully cross-platform engine!