Tonight I started a strange little project: I decided to build a vaguely Zelda-inspired RPG, somewhere in between Zelda and a Rogue-like mostly based on the simplicity of my goals. I have played around in Game Maker before, so I decided to use that.
I’ve spent a lot of time thinking about possible projects, possible environments to build them in, all possible. Today I decided to simply make a snap-decision, and just go with it. I know Game Maker can make top-down RPG type games, I know all the basic mechanics (in general, not in detail) and all I need is to just do it. I need to just build something, nothing that is going to change the world, but only going to change myself—I want to improve my skills.
So I did a bit of work tonight, just writing down a bunch of ideas, high level requirements for a game like this. For one, I decided to go with a grid-based design, even though Game Maker is advanced enough to handle a pretty fine resolution, and do collision detection in real time. I’m really focused on making the design tasks simple, and working in a grid, and in a turn-based concept just seems a bit simpler to manage.
I fired up Game Maker already—I’m probably not meant to actually even be working in the tools at this early stage, I should be working on a requirements document and game bible, but hey, who’s gonna tell me otherwise? I’ll have a bit more time over the next few days to write down some more mini goals for the project, to test concepts and thrash out a few fundamental mechanics before I start designing and building the world.
So what did I accomplish today?
I finished a super-basic tutorial that helped remind me how Game Maker works. That was great. I reset a few features and managed to create a grid system, with a player-character that I can control step-by-step with WASD keys. Since Game Maker has such nice collision detection, it was pretty simple to create the room and walls that the player-character can’t pass through.
After that I created a cherry object that when I walk across, I pick up and gain a point in the score. Yay, cherries!
I accomplished this stuff pretty quickly, so I set out to create the first set of mechanics to ‘act on the world’ (read: attack bad guys). So I knocked up a skeleton object, and set about creating some kind of attacking mechanism. I thought about this for a while, trying to decide how to represent the kind of ‘walk up to and bash’ style combat vaguely reminiscent of Diablo. It took me a while, but the concept I came up with was a mouse-click on the target enemy, which checks to make sure the p-c is in range before being destroyed. That way the player has to be close enough (next grid box over) to kill the skeleton, rather than just clicking on everything on the screen while hiding in the corner.
I definitely want to add a health system, which is basically built into Game Maker already, but I had about hit my limit of brain power for the evening, so couldn’t figure out how to make it take more than one click to kill the skeleton. Tomorrow!
I did jump on the forum and I downloaded an example RPG walker, and had something of a revelation, about how to build functions out of code instead of the drag and drop interface. I think, from tomorrow, I’ll get into the Game Maker language and avoid the drag and drop stuff entirely. I’d rather learn a little bit of programming, and this GML seems really basic introduction just to brush up my basic logic and scripting skills. So I need to find some documentation on the language, but that’s for another day.