I was a big fan of the game Tetris! This game didn't have great graphics, it didn't offer a complex gameplay, it didn't have lots of different stages and you couldn't even win it - but nevertheless this game was really addictive. Millions of other Tetris players can surely confirm this.
A view into the nuclear reactor of my Tetris clone
Mirrorsoft had already done a Tetris conversion for the CPC, but since I wanted to save the money I thought I could do my own Tetris version. It was supposed to become my second CPC game after Ghosthunters (well and after Arlesberg, but I don't really count that as a full game, it was just a big joke). It was mostly created in BASIC with a few Assembler routines for the display of the different shapes.
I created a nice menu to define the keys and select the 9 difficulty levels. All the different Tetris shapes had a pseudo 3D look and were created at the start of the program (you can see how the different shapes are being created when you start the program). But the problem with this program was that I didn't know how to test where the falling Tetris shapes hit the floor or other shapes already lying on the floor.
I wasn't aware that I could do all this testing in the memory. Instead I tried to do this collision test on the screen by checking the bytes that lay in the way of the falling shape directly on the screen and decide on base of this test, whether the falling shape would stop and the next shape would appear or whether it would continue to fall. This test was especially problematic since the shapes had this pseudo 3D look and had additional gray points on two sides. Besides that I had created this yellow and orange flashing background (that's the reason why I called this game “Reaktor” (reactor), because I thought this yello-orange background looked like the inside of a nuclear plant...) to make it look like the Amiga Tetris version I knew and the collision detection needed to ignore these colors as well. You can imagine that this didn't work correctly all the time. Sometimes shapes just dropped dead in mid-air and the next piece showed up. I wasn't able to figure out a flawless testing routine and thus I didn't continue to write this game, even though it was already 80% completed or so. But I figured that since I already had problems detecting a collision between two shapes it would be even more problematic to find out if a line was completed and had to disappear.
The German menue of my game.|
Some options are non functional though!
A couple of years later I created a working Tetris version called Chaotris. I didn't release it though, because I had added some extra shapes besides the original five shapes which made the game unplayable. For the planned bonus game Deadris for Rex and my unreleased game Rigor Mortis I didn't even start to program - somehow I wasn't very fortunate with converting Tetris to the CPC.