Hello, strangers.
I’ve somehow stumbled across Ludum Dare and wonder how I’ve missed it for this long. I hope to participate in the next LD but I’ll definitely be giving the mini a go as I’m sure I’ll need the practice.
I’ve been inspired by the likes of Praetor and dock and since I love Ogre myself, I’m going to try to follow in their footsteps. I tried making a game in 6 hours to get a feel for the process – I actually managed to make something “playable,” though there was no concept of reward or punishment or even score.
Since I haven’t been in the compo before, I’ll be making a framework as I go. I’ll probably use:
- Ogre (and the examples framework)
- C++ (MSVC 2005)
- Bullet and btOgre
- An Ogre DotScene loader I got from the Ogre wiki
- FMOD or maybe openAL
- Blender 3d
- The Gimp
So far, I have a VERY simple, sloppy framework down. It’s not really meant for public compilation, there’s hard-coded paths and whatnot right now. Still, you can see it here. You can load a scene and run and jump around in it, FPS-style.
So, Is there anything cool about what I’m doing? I think so!
My thinking for this is that I need to mini-mini-minimize development time. Generally, it can take 60 seconds or more from the time I press ctrl-F5 to when I actually have everything loaded, physics initialized and can see results on my screen. I need to minimize that! To do this, I invented a methodology just for Ludum Dare that I’m calling, “Keep it running, stupid.”
Each component (player, Level, Enemy1, Enemy2, etc) gets its own project and is built as a .dll file. The main app, which is rarely rebuilt, is always running.
When I build a component, like my player .dll, I have a pre-link event that tells my main app to unload the .dll. I implement this as an AutoHotkey script. The .dll can serialize it’s data upon unloading, if I want. Then I have a post-build event to reload the .dll and bring my game in focus.
I only have this implemented with two .dll’s at the moment, Player and Scenery. Time will tell how much this actually helps me in the long run but for now, it’s VERY rewarding to make a change in code and be playing it two seconds after I press F7!