Slick 2D - Path to glory

Hi, my name is Tiago “Spiegel” Costa, a pseudo-game developer located in Portugal, main programmer/designer/audio engineer and basically the only guy in the office of foxholestudios, and welcome to Slick2d PATH to glory. In these tutorials I will try to show you how to develop several types of 2D Games using the Slick2D library. Ill try to use just a couple of things in each game so I wont overwhelm the reader with information. Feel free to argue with my explanations, code, attitude and everything else, I'll be happy if by the end of the day these tutorials helped a fellow game developer with the difficult task of making games.

Why these tutorials? Well because I need to learn Slick2D myself and there is no better way to learn than to try and teach someone else, also I didn't find any tutorial beyond these wiki documents and the test classes that would teach me how to work with this fabulous tool, so I decided that since there were people kind enough to give their time creating this library the least I could do would be to contribute as well.

See how I said library, that's because Slick2D is not a regular game engine sure you can use anything Slick throws at you to make a game but you can also use all OpenGL commands provided by LWJGL. Since this is a Slick tutorial I will try and stick to slick commands only, for LWJGL/OpenGL commands see the NEHE lessons and of course the OpenGL Red Book (which I recommend… a lot).

Tutorials Overview
But why these games?

To understand why I choose this development path, please read this (http://www.gamedev.net/reference/design/features/makegames/default.asp). After I read this a a this article a couple of years ago I always make a tetris or arkanoid clone when developing in a new game engine, it gives me insight about the design of the engine.

The secret to win at almost anything is to make small steps and building on what you learned before. So we will use this here as well.

Also, the logic of every game will be presented to you in these tutorials which may give you the wrong idea about making games. Making games is HARD!!! Not just hard but HARD!!! Even small games like a falling brick tetris clone takes time, especially if you like to polish it. Do not try and fool yourself, you cannot make the next MMO <insert game genre here> alone, but you can make lots of smaller but still great games by yourself. Whenever you can, BEFORE looking at the way I implemented the logic behind the game try and think how you would have done it, and if possible use your logic solution instead of mine, even something as simple as a defining a tetris piece like a piece or like a collection of blocks is a challenge.

Tutorials

Note: These tutorials are meant for instructional purposes and may no longer be in a 100% working state. However, the main theory behind programming in Slick is covered. The code in these tutorials are best read as pseudo-code.

Tutorial 01 - A Basic Slick Game

In this tutorial we will create a small game so you can learn the basics around Slick2D. I choose this because its a simple prototype of a game and uses the basic concepts of Slick.

After this tutorial you will learn:

Tutorial 02 - SlickBlocks (released)

After this tutorial you will learn:

Tutorial 03 - Slickout

Tutorial 04 - Slickman

Tutorial 05 - SlickBros

Spiegel