MAELSTROM(6)

NAME
Maelstrom - Enhanced Asteroids-like game

SYNOPSIS
Maelstrom [-netscores] -printscores

Maelstrom [options]

Maelstrom-netd
(see NETWORKING, below, for a description of Maelstrom-netd)

DESCRIPTION
Maelstrom is a game based on Asteroids, but with several gameplay enhancements:

- High-resolution color graphics
- Digital audio
- Powerups
- Networked multiplayer/deathmatch mode (up to 3 players)
- World-wide high score server

Game storyline:
You pilot your ship through the dreaded "Maelstrom" asteroid belt -- suddenly your best friend thrusts towards you and fires, directly at your cockpit. You raise your shields just in time, and the battle is joined.

The deadliest stretch of space known to mankind has just gotten deadlier. Everywhere massive asteroids jostle for a chance to crush your ship, and deadly shinobi fighter patrols pursue you across the asteroid belt. But the deadliest of them all is your sister ship, assigned to you on patrol. The pilot, trained by your own Navy, battle hardened by months in the Maelstrom, is equipped with a twin of your own ship and intimate knowledge of your tactics.

The lovely Stratocaster R&R facility never sounded so good, but as you fire full thrusters to dodge the latest barrage you begin to think you'll never get home...

OPTIONS

-fullscreen
    Run Maelstrom in full-screen mode. You may also press Alt-Enter while Maelstrom is running, to toggle full-screen.

-gamma [0-8]
    Set the gamma correction

-volume [0-8]
    Set the sound volume

-netscores
    Use the world-wide network score server

-player N[@host][:port]
    Designate player N (at host and/or port). N must be an integer, 1 to 3.

-server N@host[:port]
    Play with N players using server at host. N must be an integer, 1 to 3.

-deathmatch [N]
    Play deathmatch to N frags (default = 8)

CONTROLS
The game may be played with either the keyboard or a joystick. The game controls may be remapped by pressing C at the main menu. The default keyboard controls are:

Tab, Joystick Button 1
    Fire

Up Arrow, Joystick Up
    Thrust

Space, Joystick Button 2
    Shield

Right Arrow, Joystick Right
    Turn Clockwise

Left Arrow, Joystick Left
    Turn Counter-clockwise

P   Pause

Escape
    Abort Game

Alt-Enter
    Toggle between fullscreen and windowed modes. This keystroke may not be remapped.

No special configuration must be done to play with a joystick, provided the joystick is supported by the SDL library on your OS. There is no way to remap the joystick controls.

NETWORKING

  Netplay Without a Server
Networking has been tested on Linux, SGI and DEC. It is known to work between SGI and DEC systems (cross-platform), and between systems of the same type.

Up to three players can play, and the syntax is as follows:

(On machine 1)
Maelstrom -player 1 -player 2@machine2 -player 3@machine3

(On machine 2)
Maelstrom -player 1@machine1 -player 2 -player 3@machine3

(On machine 3)
Maelstrom -player 1@machine1 -player 2@machine2 -player 3

  Netplay With a Server
You can also use a network address server that handles the difficulties of getting all the players and addresses right. The address server is installed as Maelstrom-netd, and if run on say "servhost", the syntax for a three player game would be:

(On machine A)
Maelstrom -player 1 -server 3@servhost

(On machine B)
Maelstrom -player 2 -server 3@servhost

(On machine C)
Maelstrom -player 3 -server 3@servhost

The address server will let players know if they have conflicting player numbers, and will set up the proper addresses for all players. It can field multiple games, and can be a "game hub" where a bunch of players can get together for romping network games. :)

NOTE: Maelstrom-netd will not run correctly on 64-bit hosts, and Maelstrom running on a 64-bit host cannot successfully play in a mutiplayer game with the -server option. Use non-server networked play mode instead.

  Network Ports
By default, Maelstrom uses UDP ports 44718 to 44720 for networked games, where the port number is the player number plus 44717. (these may be overridden with the :port syntax, above).

Maelstrom-netd listens on TCP port 44717.

The global high-score server listens on the host devolution.com, TCP port 4444.

ADD-ONS
Maelstrom add-ons consist of replacement sounds, replacement sprites, or both. Typically, the add-on content is distributed as a zip file.

There is a collection of Maelstrom add-on content at
http://www.devolution.com/~slouken/Maelstrom/add-ons.html

  Automated Installation (Preferred)
Use maelstrom_addon_package.pl to convert the zip file to a Slackware package, then use installpkg to install the add-on. Run maelstrom_addon_package.pl --help for more information.

  Manual Installation
Look within the zip file for files named %Maelstrom_Sprites and/or %Maelstrom_Sounds or similar (the % may be missing, the _ may be a space, and/or the filenames may end with .bin). Copy these files to

/usr/share/games/Maelstrom/%Maelstrom_Sprites
and/or
/usr/share/games/Maelstrom/%Maelstrom_Sounds

NOTE: The % is important!

  Add-On Limitations
There is no way to install more than one add-on at a time, or to disable the installed add-on without uninstalling it. There is also no way to install add-ons in a user's home directory, or any other place than the system-wide game data directory.

FILES

/usr/share/games/Maelstrom/
    game data (images, music, sound)

$HOME/.Maelstrom-data
    per-user settings and high-score records

AUTHORS
The original version of this game was written for the Macintosh by Andrew Welch, of Ambrosia Software. It was ported to Linux and then to the Simple DirectMedia Layer library by Sam Lantinga.

Man page created by B. Watson for SlackBuilds.org project (but others are free to use it)

COPYRIGHT
The source code to Maelstrom 3.0 and higher has been released under the GNU General Public License which can be found in COPYING.GPL.

The artwork and sounds used by Maelstrom are copyright Ambrosia Software (http://www.ambrosiasw.com) and may not be redistributed separately from the Maelstrom GPL source code.