The K Desktop Environment

KSlide

Copyright © 1998 by Marco G"otze, 2001 by Eric Coquelle
Version 0.81, August 23, 2001




Introduction

KSlide is a simple puzzle game compatible with the K Desktop Environment. I wrote it to become familiar with programming both KDE and the Qt GUI Library. Originally, I didn't intend to ever release it but eventually changed my mind, just in case anyone out there even basically enjoys it.


Requirements

Being a KDE application, KSlide of course requires the KDE2 libraries as well as Qt, version 2.x or above, to be installed. Furthermore, it requires X running in HiColor mode (15bit or above), and a screen resolution of at least 800x600 is highly recommended.


How to play

The playing principle of KSlide is very simple. From a square set of tiles, one is removed, allowing at least two adjacent tiles to be shifted. This way, the puzzle is scrambled by the program, and the player's goal is to restore the original order. A tile can be moved by simply clicking on it, as there's never more than one direction a tile can move. Nevertheless, the direction a tile will move is indicated by the mouse cursor while pointing at it.

KSlide offers four basic playing modes, confronting the player with puzzles consisting of either 3x3, 4x4, 5x5, or 6x6 tiles. Moreover, there are several special modes in which of a basic set of 6x6 tiles, certain ones are blocked. These modes can be selected via the menu as well, and are sorted by their (subjective) difficulty.

The option "Random missing tile" defines whether when the scrambling of the puzzle is started, a tile from a randomly chosen corner is removed. If the option is toggled off, the program always removes the piece in the lowest right-hand side corner.


Custom images

Besides the default image, custom ones can be loaded via the respective menu option. These images have to be exactly 480x480 pixels in size. KSlide inherits its support of image formats from Qt, so custom images can be in any format supported by Qt's default configuration


Further Development

I'm practically finished with this program, even though I'm well aware of things worth being implemented, such as support of KDE's session management and saving of current settings. But I lack both ambition and time to do so, hence there won't be any further improvements unless people request them. So if you should indeed like KSlide and want to see certain features implemented, feel free to mail me, I'll see what I can do.


Credits

KSlide was created using a variety of tools and applications, such as:

  • VIM 5, the ultimate syntax-highlighting multi-purpose editor
  • POVRay, for rendering the wooden tile and puzzle borders
  • The GIMP, to postprocess POVRay's output
  • plain old "bitmap", to create the context-dependent mouse cursors
  • "autoconf", "automake", and companions, to set up a portable source package
  • In the process of its creation, KSlide was compiled and tested with various versions of KDE (Beta3, Beta4, 1.0), Qt (1.33, 1.40), and GCC (2.7.2.8, 2.8.1).
  • The default image was taken from a collection of copyright-free images.