The Muncher's Labyrinth

Started by
8 comments, last by mewse 16 years, 2 months ago
I've been experimenting with following the "Experimental Gameplay" development model on and off for a little while, as a creative exercise; effectively, randomly selecting a topic at the start of the week, and completing a game on that topic by the end of the same week. It's produced some interesting results, but this is the first one that I've really felt like telling people about. The topic for this one was simply "Muncher". Produced in two marathon 12 hour sessions over a 30 hour period (and finished within five minutes of the self-imposed deadline), "The Muncher's Labyrinth" is a maze game where you play as the invincible denizen of a subterranean maze, protecting your hoarde from a band of virtuous knights, and is rendered almost entirely in classic vector graphics. "The Muncher's Labyrinth" (along with most other things on the site) is entirely free, binaries are available for Windows and MacOSX, the code is cross-platform and available under the GPL, the subversion repository where I work is publicly readable, and the data is available under various Creative Commons licenses. For those who care about such things. Obviously there are a number of sharp corners that could be polished off, but for what was effectively a day-and-a-half effort, I think it's looking pretty good. :) Download "The Muncher's Labyrinth" mewse
Advertisement
I'd like to try this (I'm using OS X), but it looks like it needs the GLEW framework.

Do you know if the framework is available online in binary form? Or do I need to build it? I Googled, but the only binaries I found were libraries (.a, .dylib).
Hm.. I'll have to double-check; I thought I'd set up the glew framework to be copied into the OS X app bundle.

I do have a build of the framework that I can put up for download. I'll investigate tonight and put up a fix or a link to a prebuilt universal glew framework (or both).

[Edited by - mewse on January 31, 2008 5:46:54 PM]
FYI, here's the crash log:

**********Host Name:      jyk-Dual-G4Date/Time:      2008-01-31 15:33:49.807 -0600OS Version:     10.4.11 (Build 8S165)Report Version: 4Command: MunchersPath:    /Volumes/Muncher-1.0.3-OSX/Munchers.app/Contents/MacOS/MunchersParent:  WindowServer [60]Version: VectorStorm version 0.1 (1.0)PID:    2131Thread: UnknownLink (dyld) error:Library not loaded: /Users/trevor/Library/Frameworks/Glew.framework/Versions/A/Glew  Referenced from: /Volumes/Muncher-1.0.3-OSX/Munchers.app/Contents/MacOS/Munchers  Reason: image not found**********Host Name:      jyk-Dual-G4Date/Time:      2008-01-31 15:33:59.244 -0600OS Version:     10.4.11 (Build 8S165)Report Version: 4Command: MunchersPath:    /Volumes/Muncher-1.0.3-OSX/Munchers.app/Contents/MacOS/MunchersParent:  WindowServer [60]Version: VectorStorm version 0.1 (1.0)PID:    2134Thread: UnknownLink (dyld) error:Library not loaded: /Users/trevor/Library/Frameworks/Glew.framework/Versions/A/Glew  Referenced from: /Volumes/Muncher-1.0.3-OSX/Munchers.app/Contents/MacOS/Munchers  Reason: image not found**********Host Name:      jyk-Dual-G4Date/Time:      2008-01-31 15:34:02.977 -0600OS Version:     10.4.11 (Build 8S165)Report Version: 4Command: MunchersPath:    /Volumes/Muncher-1.0.3-OSX/Munchers.app/Contents/MacOS/MunchersParent:  WindowServer [60]Version: VectorStorm version 0.1 (1.0)PID:    2136Thread: UnknownLink (dyld) error:Library not loaded: /Users/trevor/Library/Frameworks/Glew.framework/Versions/A/Glew  Referenced from: /Volumes/Muncher-1.0.3-OSX/Munchers.app/Contents/MacOS/Munchers  Reason: image not found**********Host Name:      jyk-Dual-G4Date/Time:      2008-01-31 15:34:18.355 -0600OS Version:     10.4.11 (Build 8S165)Report Version: 4Command: MunchersPath:    /Volumes/Muncher-1.0.3-OSX/Munchers.app/Contents/MacOS/MunchersParent:  WindowServer [60]Version: VectorStorm version 0.1 (1.0)PID:    2143Thread: UnknownLink (dyld) error:Library not loaded: /Users/trevor/Library/Frameworks/Glew.framework/Versions/A/Glew  Referenced from: /Volumes/Muncher-1.0.3-OSX/Munchers.app/Contents/MacOS/Munchers  Reason: image not found
Ok, I got it to run :) The framework is in Contents->Frameworks - it just looks like it's not linked in correctly. I moved it to my Library->Frameworks folder, and that fixed it.

I'll post back once I've tried it out...
I got it to run, but you might try it on some other OS X machines (if you can), because of the aforementioned framework issue, and also because it seems to looking for the options file in the wrong place (I had to move it to the folder where the app resides).

My experience is that you have to take some special steps when distributing your app to get it to look in your resources/data folders. I've handled this by modifying SDL_main.m, but there may be other ways to solve the problem...

Anyway, I couldn't seem to modify the sound settings (I could change them in the options menu, but the sound effect volume stayed the same). The graphics are very nice though, and the game plays very smoothly :)
Thanks for the feedback, jyk! I'll have to go searching around in the SDL_Main.m file and figure out what's going wrong there.
Just FYI, I've uploaded a fixed OSX build, which correctly runs using the embedded Glew framework, and is properly set up to load data resources from inside the application bundle (previously it had trouble if you changed the name of the application bundle). Finally, I located the cross-platform bug that changing the sound effect volume level didn't do anything, except in very limited circumstances.

While I've done my best to test it, I'd be very grateful if someone else would download it and test the new 1.0.3.1 OSX build and verify that it runs happily on a Mac that isn't mine! :)


I actually had it changing the volume level only of sound effect channels that had already been used during that run of the game, which meant that if you set the option immediately after launching the game (or if the preferences system itself set it from a saved preferences file), then it wouldn't actually change the volume level of any sound channels.
I still had to move the preferences file into the folder where the app was, but otherwise everything seemed to work (including changing the sound effect volume).
The code's pretty clearly trying to read and write the global.prefs file into Resources/Data/Preferences/, inside the application bundle..

I wonder whether the problem is one of permissions; can you check whether once you removed the existing global.prefs file from that directory, the game just created a new one in that position, and has been updating the new one? I can't see any way that it'd be accessing the file from the same directory with the app bundle; the game will assert if it can't change its working directory into the app bundle.

This topic is closed to new replies.

Advertisement