Diary of a Game
Let's Make a Monster Part 7
More monsters! More music! More colour! More animation! More levels! The game that promises to be THE C64 release is growing faster than Dave's waistline. The Boyz creating Mayhem In Monsterland fill you in on the latest developments.
The Story So Far
Mild-mannered John and Steve Rowlands, known to the world at large as the Mighty Apex and, er, the other half of Apex, have embarked on a mission to create the greatest C64 game the world has ever known - Mayhem in Monsterland. And if anyone can do it, these boyz can - they were the team that brought you Creatures 1 and 2. In last month's thrilling installment, the boyz started to introduce some baddies into the game and started work on a new level, Spottyland...
Here is the Mayhem news for February. Bong! More monster routines mean that the nasties in the game gain the ability to inflict pain on poor Mayhem (boo!) and Mayhem gains the ability to inflict pain on them (hooray!). Bong! On the graphics side a brand new level called Rockland surfaces out of the pool of inspiration. Bong! Steve produces some dead funky interactive music. Bong! Details to follow.
JOHN: We've had an abundance of white flakes this month, and we're not talking about Steve's dandruff. Yep. It's been snowing! The last time we had snow was two years ago, and it inspired us to write the snow torture screens in Creatures 2... but this year it just froze our bits off.
Those of you who read last month's diary (thanks mum) will know that I started work on the monster routines. These included the splitting routines (enabling us to have more than eight sprites on screen), movement routines and animation routines. Most of this week was spent getting these routines to work properly. Once they were, I added another major routine that allows me to dictate each monster's colour. Obviously every sprite can have a different colour but now it can also have colour patterns. If we want an explosion to fade as it dies out, we can change its colour in time with its animation.
As with our background graphics we wanted more than the C64's 16 colours for sprites. However, we can't use the same method of colour mixing that we're using for the level graphics (see CF28) because we haven't got enough sprite colours. So I added a different colour mixing routine for the sprites. This rapidly flashes between two colours (of equal brightness) to create new shades. Believe it or not, Mayhem In Monsterland looks even more colourful.
STEVE: Late last month I came up with the idea of putting some dark forest sections into Spottyland. Now I think that some sort of brighter background would be better, just to drive home the message that you've done the business (converting the level from sad to happy). Therefore, I'm starting to put some diamond caverns in the level, which have holes on top that act like roof lights. The sky above the roof lights is cyan while the insides of the caverns are black, so there is a beam of light that shades from the cyan to the black where the light enters the hole. Although I removed the big bushes from this level there are still some trees and vegetation left to keep the place looking interesting. These trees have incorporated the idea that I mentioned last month of having smiley faces in the levels, which does actually add that extra bit of atmosphere - all at no extra cost.
JOHN: The next bit of monster code to be written is the direction routine. This detects the positions of all on-screen monsters and compares them to Mayhem's position. Basically, if a monster invades your space either you die or it does. I've written the core of the routine (called UTHEM) and it simply flashes a sprites colour if it touches you. Next, UTHEM has to decide whether you kill the monster or not; this depends on where Mayhem is and what he's doing. If he's above the monster and falling down (what other way can you fall?) then the nasty will die. Otherwise, Mayhem will die. (Well, he doesn't die at the moment, he just changes colour, which is a lot less painful.)
Leaving UTHEM for a day or two, I decided to write some miscellaneous routines for Mayhem. The first one fades Mayhem from white to normal colours and will be used when he picks up a bonus. The second one is the invincibility shield routine which makes Mayhem pulse and leave a trail of little stars behind him as he charges (until his shield runs out). The third one uses the smoke animations that appears behind Mayhem when he skids, making them appear at his feet when he starts charging (giving the effect of dust getting kicked up from his feet, like in Road Runner cartoons).
STEVE: Today I thought it was time to start the graphics for a sad version of a level and, as Pipeland has the most complete Happy section of all the levels, I chose to convert that level to sad first. Before I start the sad character set I will have to load up the latest version of the happy character set. This is because of the method I'll be using to do the sad version; I'll have all the happy level graphics loaded up in the block/character editor, change all the bright multi-colours to greys, and then just work my way through the character set changing the character definitions to make them look sad (ie. put cracks in platforms and make smiley faces grouchy).
The blocks in the level have to be the same in sad mode as in happy, mainly because of the memory it would take to store two different sets of 145 4x4 blocks. The graphics would look better if we did use the two block sets but the results I've got so far warrant the decision not to add the 2320 bytes (2.25K) for the extra set.
JOHN: I expanded UTHEM this week, writing the monster death code which explodes a monster into a cloud of stars when Mayhem kills it. We thought that a range of different explosions would be better than just one throughout the game, so each level can now have up to four types of explosion. After certain types of monster have exploded a bonus will be left behind (each bonus will have a different colour animation). These won't simply give Mayhem bonus points (which is boring) but will give him a whole range of goodies, such as extra stars, shields, score multipliers, etc.
The most important bonus is the charge icon. At the beginning of the game Mayhem can only walk, so he has to find the monster that leaves behind the 'Charge' icon. When he picks it up he'll be able to run at extremely high speed, killing virtually everything in his path. The only monsters he won't be able to kill in charge mode are indestructible ones - instead of killing them he'll bounce off them. So the rest of this week saw the creation of the bonus appear routines, invinci-bounce routines, etc. The feel of the gameplay is definitely beginning to take shape.
STEVE: It seems ages ago I last did some music for the game, but now I'll go through the latest versions I have on disk to see where I was up to. I'm now going to try to find an old bit of funky music - and I know the perfect tune for the job (it used to be the Creatures 2 title music don't you know).
By the end of the day I have created two different tunes from that old bit of music. The actual tunes sound similar but are in different moods, the first being the normal jolly 'jumping around the level' tune, the second being a faster 'go forth and maim' type of tune. The notes are in a lower key, as well as being faster than the other tune, to give a more tense atmosphere.
JOHN: The first thing I did this week was to tweak my monster explosion routine. As well as having different types of explosion, with different colour patterns, they can now be expanded to twice the size as well. We'll use them for the large dinosaurs that will roam around Monsterland - watch out for these mean mothers.
So having spent most of this month writing in-game routines I felt like doing a bit of presentation. I've started a screen appearance routine which - wait for it - makes the screen appear (wow!). Once you press fire from Get Ready, the screen blanks and Mayhem charges on, skidding to a halt in the middle. Monsterland then appears behind him, zooming out in an ever-increasing box. Once I'd written this, I had to modify it to cope with different starting heights.
Obviously Mayhem won't start each level at the same height so neither does the appearance routine. As Monsterland is six blocks high (see last month's diary) Mayhem can start at five different heights (if he started at the top of the highest block he'd be off the screen). So now the appearance code copes with five different start positions, always appearing from behind our cute, baby dinosaur.
STEVE: On day one of this week I did a third tune for the interactive level music. This one - to compliment both the normal and pacey tunes - is a slow echoey affair, again with the same sort of melody but a different mood.
I was having a play with Mayhem in Monsterland using the level editor, jumping around the platforms and slopes. The level was the first one I designed and was influenced by the Cubist school of art (see issue 27). To refresh your memory it has long green platforms with triangular edges and brown triangular rocks underneath. I was looking carefully at these and thought they would look good upside down, like mountains or something. So after standing on my head for 10 minutes I had a new level idea (and a headache).
This new level would have really big mountains (those platforms, upside down, but much bigger - the height of the screen, in fact). I could place small platforms (about 4x4 characters) around the screen for the dexterity sections, but also put in the long slopes and platform sections for speedy parts in the level. This new level now has a working name of Rockland... erm, because of the rocky bits.
PIC: John is seen here practising his sumo wrestling techniques. Steve's hobby, meanwhile, is escapology. Can he get out of that straight jacket in lime to write the rest of the music?
PIC: Smiley trees show Mayhem has managed to convert this section of the level.
PIC: Pipeland is transformed from its colourful self (above) to this grim-looking version.
Fancy finding fascinating facts for further fun-filled features, frantic freaks? Wondering what worlds will wield when we work warily? More mad monsters might mingle morbidly! Screen scrolling should slide smoothly. Perfect parallax presides precariously! Erm... we think you know what we're trying to say. (No - Ed.)
If you have any idea what should go in this box, please let me know! :)