Original game development diary


The following text is a diary of events concerning the development of the game, and was written in 1995. It is mostly un‐edited, and is written in a different tense, but I hope you enjoy reading it anyway. It starts about a week after I discovered it. There are references to two games by Mike Goldberg called Five Alive and Dickie Brickie, which were published in the June 1989 and March 1990 issues of The Micro User magazine respectively, plus my game Androidz, which can be viewed at my personal website.

19th April, 1995

I have hit a problem concerning the sprite collision routine, as used by Five Alive. Its routine pokes the screen memory, and magic numbers appear which are unique to each sprite. But some of my sprites do not work! I have found, however that this screen poking has something to do with colour, because only my sprites which actually fill most of their spaces, actually work. If there is too much black in the sprite, the magic number comes up as 0, which is the same as a blank space. Hence, this is useless for collision detection.

I will, therefore, have to find another way of detecting sprites. One probability is using the memory map array method I used in Androidz. The tricky part is converting the screen location address into normal x,y, coordinates. The solution is in the Five Alive listing, where normal x,y coordinates are picked at random for placing objects, before being converted to a memory location. In theory, all I have to do is reverse the operation. The disadvantage to this, is that it uses up memory, and makes the programming long‐winded. But this seems like bliss, compared to having to redraw the sprites.

21st April, 1995

In just two days, I have managed to sort out the main problems of the game. I now have multi‐frame animation for the man character, and the collision detection routines work. I have not added the code for collecting the objects yet, and this is probably the only remaining obstacle.

Once this is sorted, I only need to tidy up the game, and add the finishing touches. At the moment, the projected date of completion is April 30th.

23rd April, 1995

After a break of two days, I returned to redefine some of the monster sprites. Artistic talent can change a lot in three years, and the older sprites left a lot to be desired. They are now redefined and look a lot better, for monsters!

I must now start college, and concentrate on my final major project. This, of course, will affect the final date of completion. I won’t set a firm date, but I am looking at finishing the game before I finish college, which will be June 30th. I will show off my efforts to college, and see what they think. Its about time their Beebs were put to good use!

9th May, 1995

Its certainly been a while since I last wrote. I have been concerned with college work of late. I did, however, find time to redesign some of the game sprites. Some of them looked a little shabby.

I have now hit the thorny problem of collecting objects. I shall need to follow the Dickie Brickie code quite carefully. I must also cope with the problem of reprinting the objects when the monsters walk over them! This action was avoided in Dickie Brickie, possibly due to speed problems. If this is the case, then I am in trouble!

Some of the collectable sprites I have redesigned, are useless for detection, because they don’t use the top left segment, which is used for collision detection. The result is that you can walk through, or at least half through them! This cannot do. It will be interesting what happens, by the time I write my next entry.

15th May, 1995

Another week has passed by extremely quickly. I have to get this game finished by the end of June. This is because, along with Androidz, Headcase Hotel will be proudly displayed at my college end of year show. The fact that I am the only known games programmer on the course

will add that extra special something to my display of work.

I have now redefined the collectable sprites, so that they can now be detected by yourself. I have yet to sort out reprinting the objects when they are either collected, or deleted by the monsters.

I must also start work on some presentation screens, plus get the hang of Speech! I want my title to have some speech to set the scene. I also want some extra collectable objects, such as bonus lives or points etc.

Basically, I have a very long way to go, with only six weeks left until the show. Yike!

24th May, 1995

... I completed the main game code. The objects can now be collected and repositioned. All I need to add are the possible bonus symbols. These will be easier to handle, because they don’t need repositioning. Once they’re gone, they’re gone!

I came across an excellent mode 5 art package on one of my ‘Fast Access’ discs. Called Micro Draw, it has some very good features. This is the perfect program for my presentation screens.

6th June, 1995

Its been two weeks since my last entry. The deadline is only a few weeks away. But I have completed the loading screen, and very nice it is too! I am also working on some carpet sprites, to liven up the backgrounds. I am also looking at the possibility of organically designed levels.

Levels would be assembled using segments. These segments would be picked at random and printed side by side, producing a new level every time you played. I wrote a demo program to show the principle. Unfortunately, you end up with a level that in places is totally blocked off. I can either be very careful with my segment designs, or use a system of natural selection, where certain segments are far more important than others.

Either way it is a very interesting idea. I am trying to get a presentable version finished, because a friend who works where I work, wants to have a copy to look at over the week. I’m well on my way there.

12th June, 1995

Silly fool forgot the disc! I got worked up for nothing, because of his brain shutdown. Still, I have definitely completed the sprites. I scrapped the carpet idea. It would slow down the game, redrawing the carpet after each movement!

I tried out the random level idea, but it wasn’t successful. Some segments need more priority over others. Otherwise, you get inaccessible levels! It’s still an interesting idea, but I won’t use it for this particular game.

Headcase Hotel is now at version 0.2. Version 0.1 was the first playable version, with titles and game over bits and bobs. Basically the game shell was complete. Version 0.2 has the proper sprites, and so graphically, this is the full version. I am now going to add some VDU definitions for the bonus blocks. There is still the prospect of sound and music to look forward to, plus some more screens and presentation to sort out. I’ve only 2 weeks left to complete the game!

16th June, 1995

Yesterday I had a day off college, so I spent it on the game. The main task was defining some bonus icons. I scrapped using VDU definitions  ‐ they looked too dull compared with the multi‐coloured sprites. I made ten icons, some of which were based unashamedly on the Dickie Brickie game with which I used the code. My favourite is the lightning strike icon, which cycles the background colour of the level, making a groovy, psychedelic effect. I programmed the blocks in, and now I have an almost complete game. I still want to add some sort of bonus stage though.

I really need to think of an end sequence for the game too. I also think I need to add extra levels ‐ ten seems a bit limp. I want to do another ten, but is there room?

Basically, although I have got the main code sorted out, I also need to do a high score table, plus the presentation, and of course the sound.

With less than two weeks to go, this will be an interesting time in the development of the game. I can at least move my game up to version 0.3

14th and 18th August, 1995

Two months is a long time to miss out in a diary. I managed to get the game ready for the show, and I must say it went down really well, although I wish I added a joystick routine, because some people were really shy of the use of the keyboard. This was despite my admittedly limp efforts to put tape on the game keys.

During July and August, I rewrote the game, using machine code routines to draw the screen and plot the sprites. There was a point where I thought the collision detection had failed, but it turned out to be a simple case of wrongly named variables in the important routines. This was now version 1.09.

Version 1.10 would be the first version to appear on the 32‐bit machines.

20th August, 1995

I used my serial‐link transfer program to get the game across onto my Risc PC. Unfortunately, the game itself and the diary text file wouldn’t transfer. So I have spent today retyping them in on the PC. The trouble may be due to the fact that the serial‐link program is from 1988, and is showing signs of creaking. But I use it so rarely, that I find it unjustified to pay for an upgrade I may never use very often.

Having done this, I took a deep breath, and ran the game. I wasn’t surprised to find an error message staring at me in the face. Initially I thought it was just a typing error. But the message was ‘Too many FORs’. I suddenly thought of the restrictions imposed on !65Host regarding certain keywords. Being a software emulator, !65Host cannot cope with overly complex programs. I replaced the FOR loop with a REPEAT...UNTIL loop and managed to get the game running. The trouble was that it was running too fast! Well I do own a Risc PC!

The game was running so fast, certain objects wouldn’t redraw when deleted, either by my character, or the monsters. This would mean some extensive rewriting. The problem with this, is that any time delays I add would slow the game down to an acceptable speed on the Risc PC, but for older and slower machines, it would be slower than the original Beeb version.

21st August, 1995

I added a time delay to the main game loop, so the game runs at a more playable speed. I have also altered the random position functions to procedures, so I could get rid of the GOSUB calls sprinkled about the program. I have also altered the game keys to Z, X, P and L.

The game is now finished, and put up to version 1.11. As far as I know, everything works. And that concludes the diary.

Get Headcase Hotel