Rutabaga
Afp
Page contents
Introduction
Rutabaga's
Rogue of the Lavender is a rogue-like game developed in Haskell and GTK by the Rutabaga group. It boasts features such as field of vision, random level generation, saving & loading games and exciting battles between players and monsters. The game remains suspenseful throughout as monsters become more and more challenging throughout the levels.
Challenge your friends by sharing game seeds and learn tactics to avoid getting hurt by monsters. Turnips and lavenders can be picked up in the game, raising or restoring your maximum health.
The goal of the game is to survive as long as possible. Share your highest level and game seed and see how other players compare!
Installation
Prerequisites
The programs listed below are required; make sure that they have been properly installed before you get started.
The mandatory Data.Binary package has been included in the source directory; if you wish to place your import directory elsewhere, move this package to that location.
Download
The game source can be downloaded below:
A precompiled version for Windows and Ubuntu is also available if you want to play the game without all the hassle:
- rutabaga_bin.zip: Rutabaga's Rogue of the Lavender binaries (for Windows and Ubuntu)
Compiling
Unpack the source files to a desired location. From there, run GHC's compiler as follows:
ghc --make Rutabaga.hs -XFlexibleContexts
Execution
Run the generated executable, or extract and run the precompiled binary delivered in the package.
The source code may be interpreted instead, but a significant drop in performance may be observed. In order to do this, run GHCi as follows:
ghci Rutabaga.hs -XFlexibleContexts
Game details
Interface
Rutabaga's Rogue of the Lavender consists of two main screens:
- Startup screen
- Main screen
Startup screen
A new game can be created at any time, and is selected by default in this screen. If the player desires, a game seed can be specified. Filling in this seed will result in the exact same dungeon regardless of previous saves or the platform upon which
Rogue of the Lavender is run.
In order to resume a previously saved game, select the desired game and press "Play".
Main screen
When a game is opened, the main screen displays the current level. One should bear in mind that the player has a limited field of vision, and therefore initially, the contents of the display window will be fairly small.
Navigation is done using the keyboard, which is discussed in the next section.
In order to save the game, simply press the "Save game" button. Beware of dying, however, because your saved game will be lost also!
A new game can be made at any time by pressing the "New game" button. Just as with closing, the previous game is ended. If it has not yet been saved, the user is prompted to save the game first.
Navigation
The player can navigate his or her way through the dungeon using the keyboard. The various key bindings are shown in the table below.
| Key | Action |
| ← | Move left |
| h |
| → | Move right |
| l |
| ↑ | Move up |
| k |
| ↓ | Move down |
| j |
| y | Move left and up |
| b | Move left and down |
| u | Move right and up |
| n | Move right and down |
| PageUp | Walk up staircase |
| < |
| PageDn | Walk down staircase |
| > |
| v | Change viewing mode |
The viewing mode (changed by the
v key) allows the user to "cheat", displaying various degrees of visual data on the screen. Pressing the key cycles through the following viewing modes:
- Normal mode shows only that area of the map within the field of vision
- Full map mode displays the entire map
- Monster mode displays all monsters, including those outside the field of vision
- Smell mode displays the trail of smell left behind by the player
Demonstration
Here is a series of images to demonstrate how a player may navigate through the dungeon. In the course of a short period, the player explores three chambers. A fourth chamber is being entered in the final frame after slaying a monster. A fifth chamber has become partially visible, because the player was able to peek through a darkened corridor.
In order to play this game, please select game seed #180.
Known issues
There are two platform-dependent issues concerning
Rogue of the Lavender.
Save/load file problems
On some Windows machines difficulties have been experienced loading saved games. The systems affected were runing Windows XP SP2 or Vista. The cause of this corruption is related to the way
readFile is performed on Windows; the saved game is opened without problems on other platforms.
Thread errors in compiled code
Two hyperthreaded machines, one running Windows XP and the other Ubuntu, seemingly at random gave thread errors upon execution of the compiled code. If you experience these difficulties, please attempt running the source code via the GHC interpreter instead.
Authors
Rutabaga consists of the following four Haskell developers:
- Mathijs Lagerberg
- Paul Lammertsma
- Jos van der Maas
- Paul Visschers