Getting ready for LD25. I’m using GameMaker again for this one.
Most of my GM projects tend to have some similar things in them. In order to get something more out of my LD experience, I don’t want to continually re-write the same sort of code from scratch with each project.
Compo rules say that you can use “all publicly available libraries and middleware”, so I’m considering bundling up some useful things and creating a “stub project”, that will be like the equivalent of library/middleware in GameMaker-speak, so that I don’t waste precious minutes during the compo writing the same sort of code I always write in any GameMaker game, and can put as much of my 48hrs into creativity and design. Conveniently, this will also serve as my Warmup project this time around. Now, granted, I can only get some much done in the next couple days leading up to LD25, but over time if I continue to maintain this project it could turn into something pretty cool.
I’ll probably maintain this and add to it for future LD48 (and other game jams). So my first question is: What to throw into this thing?
- A system of rooms that provides a generic Title Screen, Instructions Screen, and Game World, along with navigational objects and such that switch between them.
- Scripts for handling keyboard input (or other controls, such as mouse or gamepad or whatever).
- Handy math functions that aren’t built into GameMaker already (such as ???)
- A hierarchy of pseudo-abstract classes to facilitate implementation of common design patterns for Player, Enemy, Terrain, and Pickup objects. For example, a common way of implementing a Player is to have a parent Player object, and separate objects for the Player_dead, Player_hurt, and other states. These would be empty, or mostly-empty, to facilitate development of *whatever* type of game you wanted to make with GameMaker, but would help by providing a little bit of structure to the project.
- Code that supports cool visual effects (as I come up with them, over time), such as motion blur, typewriter text, or who knows what.
- “Engine” code for platforms, physics, or whatever.
- I’m open to ideas.
What would you like to see? Drop a comment, be specific.