Slide Puzzle Panic
Platforms: Windows, Linux
Year: 2001 (Windows), 2003 (Linux)
Languages/API's (Windows): DarkBASIC
Languages/API's (Linux): C, OpenGL, GLUT
Inspired by a combination of Nintendo's Tetris Attack and the classic 15 Puzzle, Slide Puzzle Panic is an experimental prototype implementation of an original puzzle game in which the player must move a cursor through blocks in order to swap them into different positions. The objective is to arrange blocks into horizontal or vertical lines of three or more, such that they are then removed from the grid.
The player cursor can only be moved towards adjacent blocks and not into empty space. The player cursor acts as the "anchor" for all other blocks, thus any group of blocks that becomes physically detatched from the player cursor will fall until the group is either reatached or is removed from play via the bottom of the screen.
The game features 3D graphics, as well as dynamically moving camera to keep the remaining blocks centered on the screen, as well as to always make full use of the screen area via movement close and further from the action.
The first version of Slide Puzzle Panic was written using DarkBASIC for Windows. This version features two game modes: random mode and puzzle mode. In random mode, the objective is to remove as many blocks as possible from a random starting arrangement. In puzzle mode, each level is loaded from a file and therefore has a predetermined layout. The puzzle is cleared when all coloured blocks are removed from the grid.
Additionally, puzzle mode features new block types; the neutral block (cannot be removed) and the fixed block (cannot be swapped with the player cursor). The wall block may also be combined with standard colour blocks to create blocks that must be removed, but are fixed in one position.
Finally, a simple level editor is available for the creation of puzzle mode stages.
The Windows version was discontinued as I became more interested in Linux and cross-platform development.
The second version of Slide Puzzle Panic was written in C, using OpenGL and GLUT for graphics and input respectively. This version was created primarily as a simple exercise in OpenGL on Linux, which was a new library to me at the time of this project.
The Linux version of Slide Puzzle Panic features improved graphics and music, as well as improvements to the gameplay. However, the editor and the puzzle mode are not present in this version. The random game now begins with a smaller arrangement of blocks, and new blocks will float in from the sides of the arrangement and attach themselves to the existing arrangement. The objective is to remove as many blocks as possible whilst preventing the blocks from extending beyond the boundaries of the dotted rectangular area. When a block attaches outside this area, the game ends.
After experimentation with the gameplay idea, Slide Puzzle Panic was discontinued due to the difficulty of balancing the gameplay concept and mechanics.