Work in Progress
I've always had a soft spot for an old ZX Spectum game called 'Strontium Dog: The Killing'. Released in 1984, it was pretty much panned by all but one of the major magazines covering the Spectrum scene back then.
You play the role of bounty hunter, John Alpha, taking part in a last-man-standing, shoot-out competition where the contestants are made up from the usual scum of the galaxy. The action takes place in a deserted city represented by a 16x16 grid, split up into 4 mazes with each section leading you on to the next. The idea is to stay alive, dispatch all your fellow contestants and kill the flame-throwing psycho robot at the end (Mondays, eh!).
I'm going to learn as I go, but my intention for the moment is to retro it up a bit - blocky, chunky, crappy, etc.
We shall see.
Session 7 - The journey of a thousand rooms
Okay, well perhaps not a thousand, but I now need to create 256 of the so-and-so's all linked correctly to the next room. See you on the other side
(I think if I see this through, I'll make it to the end)
Session 6 - There's room for rooms
There must be a hundred ways to do room transitions within GameMaker. Luckily, the transitions I need are all standard: if you go right from a room, you always appear at the same place on the left of the next room, and the same can be said for rooms coming off of the left, up and down exits.
As the game starts, two variables are given start coords for the player to occupy on screen. In each room, the doors are all given the name of the next room they link into. When the player collides with a door, the right hand door for example, it reads the name of the room it links to and assigns the appropriate coords for the player's starting position in the new room. The new room is then called.
When each new room is started, its creation code positions the sprite at the coords assigned from the previous room's door collision ...I said this isn't meant to be a step-by-step tutorial.
In short: it works.
Session 5 - Run Forest, run
Original Johnny had a kind of blocky run to him; it wasn't pixel-smooth movement, so I'm shunting this player along in 10 pixel steps.
This is a clipped portion of the screen.
So as not to mess with the animation, I had to make sure only a single direction key was being pressed at a time in order to get the player moving. So, for moving left, the code also makes sure that right, up and down aren't being pressed at the same time.
Session 4 - Who da dude?
'dis da dude.
Left, right, up and down.
Session 3 - Setting the scene
I need to set up the dimensions of the play area and the character, and make sure he fits into all the places he's meant to. This is rather [cough] easy to do, as the original game moved in character spaces (i.e. not smooth pixel movement). So, if I can decide on the dimensions of my player, I can fill in the screen around him.
This is your player, in all his retro chunky black & white glory, and he measures a memory-hogging 32x48 pixels. Perfect.
The player, in the original game, occupied 1/16th of the width of the screen. So my screen must be 16x my player's width, which comes to ...hang on ...ah, 512 (which seems about right as the techies among you will know - 2 to the power of 8, or something!). This also means that my player must occuply 1/7th of the game screen height, or 336.
My game screen will be 512 x 336.
Session 2 - Environment
I haven't decided where this is going to run yet. Mobile devices are out as, in my humble opinion, gaming devices without tactile feedback are pants, and limiting it to a Windows executable will reduce the 30 or so people actually playing the game, down to about 15!
Browser game it is.
Session 1 - Let's start at the very beginning
It's January, and I'm determined to get at least one game finished this year. Yes, one.
I normally turn my nose up at design documents but I think, in this case, it might actually help, so here goes...
The player explores a city made up of 256 rooms. Scattered throughout the rooms are 90 aliens that the player must kill in order to win the game. The city is made up of three areas and access to each of these is secured by defeating the section's boss.
Short 'n sweet.