Around the start of July, one of my colleagues mentioned that there is a Hungarian group for 1GAM (One Game A Month) called HEJ (Havi Egy Játék = 1GAM in Hungarian :)). I asked to join the group out of curiosity, and they already had the theme for July: DESCENT. I had been experiencing “writer’s” block with the Ian Stokesworth project and I immediately had an idea for this theme. So as practice I joined and started to design and then put together the basis for a new small game. Though I recycled many elements from the Autumn Special and Ian, I also had to create a bunch of new code for things I had never done before. I managed to stop the character on the middle of tiles without snapping, so after releasing the direction keys it still walks until it reaches the tile’s middle. And I had never programmed a timer before. I also enjoyed making some simple cinematic-like screen effects and (sort of) cutscenes.
The game itself is about an archeologist (I draw the guy a derp with shorts, white socks in sandals and a jackhammer :)) who wants to find the black lamp. He can drill in 8 directions, but cannot jump, so he can move only left and right or fall down. There are doors on every level, and to open them the player has to collect treasures. On the GUI there is a treasure icon and an X / Y counter to show how many treasures the player has collected out of how many. As indicated in the tutorial and on the screen, not every treasure has to be collected: 1 treasure can be left behind out of every 6, so if the GUI reads there are 6 treasures, only 5 has to be collected, and the 6th can be picked up for extra score. I set the hardness of a level by how many treasures are on the level, eg. out of 11 treasures the player can only leave 1 treasure behind. But out of 12 treasures, 2 can be left behind, and so on.
The game puts a pre-set amount of treasures on the levels randomly and deletes tiles randomly. This gives some replay value, and also the possibilty that a level cannot be completed without dying. Of course, I check whether the player can collect enough treasures to open the door, but to check for the possibility of failure beforehand exceeds my programming skills. Still, there is a small chance to this (well, randomization is a cruel mistress) and on restart, treasures and holes appear in different positions.
I implemented a type of enemy with a very simple AI. It walks from wall to wall, stops idle if it falls in a hole and walks faster if the player is on one tile above it. It also kills the character if it touches him from the side. But if the character falls on top of the enemy it dies.
I didn’t plan to draw big tiles and put too much time into graphic elements whatsoever (well, tell it to the main screen and the title graphic… I LOVE to draw titles :)). I spent the available time with coding mostly and I finished 1 day before the meetup. Some people asked why the tiles are so dark. This is because of the short time and the fact that the game’s events take place in the darkest night and under the ground.
I made 10 levels total and an outro/credits scene. My darling girlfriend Allegra was so kind and helped me with testing and a little level design and a little with how the boss could work. We talked about implementing more levels and new features (like pause and a non ALT-F4 quit from the game :D), but some things may not change. No need for saving progress, no real need for a menu. This was a gamejam idea, a fun one, but I really don’t want to put extra time I don’t have into it.
Vincenzo provided some amazing tracks for the game again from his vast library of music collection. I also tried to use Attribution licensed free sounds and I gave credit to the people ingame and in a separate file.
I made a boss fight! Well it’s not a fight as the player has to run and drill for dear life, but still it’s something. 🙂 And at the very bottom of the last level there awaits the big prize: THE BLACK LAMP!