Intermediate-level game development

I started out on game development thanks to LazyFoo’s tutorials. From there I’ve tried to program an RPG. Yes, I know it’s not the best type of game to start out on, but I didn’t want to create yet another Tetris clone. Plus, this way I’m more motivated to work on it, as it’s something I want to make.

I’ve run into problems, though. There is very, very little information on game development that isn’t for beginners or advanced developers. When it comes to creating an RPG, you find a lot of message board threads, but no answers at all.

What I currently have is a character walking around on a generated (read from a file) tiled map with two NPCs randomly walking around. Collision detection and handling has been implemented.

Things I struggle with:

  • A kind of event system for my game. I need to detect when the main character talks to a NPC, when it tries to enter a house, etc. Currently the first is just a block of code after all the collision detection and handling. I haven’t implemented anything else, not even a house.

  • A caterpillar system for a party of more than one person. I had this implemented using a linked list of the main character’s coordinates of each frame that the second character would start using once the distance between the two was more than 16 pixels. But the distance between the two once this behaviour had kicked in always varied, probably due to the variable frame rate.

  • I have no idea how to even start work on a battle system with menus, and the like. If I could at least know how you start doing this, that’d be helpful.
    Just pointing me to a register/dispatch event model doesn’t cut it, as a game is something wildly different than some business application. Which is part of the reason why I struggle with all this in the first place.