I’ve begun producing a series of tutorials on how to write a 2D sidescrolling platform game using Blitz Basic. These should work fine in either BlitzPlus or Blitz3D (or Blitz Basic 2d if you want).
So far we’ve got a basic tile map editor and a character who can run left and right and jump.
I’ve got some ideas for what features to add, this has mainly been by looking at major platform games that have come out over the last 20 years and picking out the common features. So we’ll be trying to add the following:
slopes, lift, floating platforms, doors, animated tiles, treasure chests, enemies to be jumped on, breakable tiles, flying sections, powerups and what ever else I can think of.
I’ve already had a number of mails showing interest in this series, so I’ll try to make it a good one. I’ll try to get a general level structure working first, then each tutorial after that will look at adding in more features.
Aside from that, there’s the level editor tutorials. These will have to tie in with the platform game videos. So for instance, I’ll produce a level editor video which adds doors onto the level, the type of doors you get in mario which basically transport you from one area of the level to another. So obviously we then have to add the code to the game engine to handle these doors. The ordering of the videos will be a new level editor video, followed by a game video when adding new features in. Sometimes you’ll see a new game video without a level editor one for when I’m updating the game engine but not affecting the level structure. Level editor’s are very closely tied in with the game engine, but not totally.
The ultimate goal with these videos really is to build a generic platform game engine, that can be used for any type of platformer. So whether you want to write a mario style game, a megaman or a sonic game, you’ll be able to use this code.
The next step will be to use this code as a base for an overhead RPG tutorial series, but that’s a long way off yet, and will involve much more complex functionality such as conversation code for speaking to characters, quests surrounding a storyline and a complex inventory system.
Anyway, here’s the link, go enjoy yourself: Click Here!