Red Pixel

A violent game.



Table of Contents

1. Preliminary stuff
1.1. Disclaimer
1.2. System requirements
1.3. What's new?
1.4. Compiling from source
2. The Game
2.1. Starting the game
2.2. Connecting via a serial cable
2.3. Connecting via Berkeley sockets or Winsock
2.4. Playing the computer (CPU)
2.5. Controls
2.6. Items
2.7. Options
2.8. Stats
2.9. Demos
2.10. Performance
2.11. Tips
3. The Map Editor
3.1. Map editor keys
3.2. Custom maps
4. Other stuff
4.1. Game history
4.2. Known bugs
4.3. Copyright
4.4. Contacting Psyk Software



1. Preliminary stuff


1.1. Disclaimer

     #include <std_disclaimer.h>

      "I do not accept responsibility for any effects, adverse or otherwise,
      that this code may have on you, your computer, your sanity, your dog,
      and anything else that you can think of. Use it at your own risk."

1.2. System requirements


1.3. What's new?


1.3.1. New in 1.0:


1.3.2. New in 0.11:


1.3.3. New in 0.9:


1.4. Compiling from source

This is only for the people wanting to compile the source for themselves. If you downloaded an installer or precompiled binary, you can skip this part.

The three platforms supported are djgpp under DOS, gcc under Linux, and mingw32 under Windows. You will also need to install the Allegro game programming library, version 4.0. Once those prerequisites are installed and working, simply type `make' in the game's root directory.

Under Linux console you will need to run the binary with root permissions. See `readme.lnx' in the Allegro distribution for more information.


1.4.1. Relevant links:




2. The Game

Red Pixel is a platform deathmatch game. You run around a tile-based map, picking up various items and shooting your opponent. The aim is to kill your opponent as many times as possible, until you both get bored. Isn't simplicity wonderful?


2.1. Starting the game

Simply run the executable to start. If you used the Windows installer, you can click on the item in the Start menu.

Optionally, you can pass the following command line arguments. Note that they are case sensitive.

-e -- Start the map editor

-q -- Skip introduction.

-v -- Display version number.


2.2. Connecting via a serial cable

[Note: serial connection is currently not implemented in the Windows version.]

Link two computers via a serial cable and start the game. Select Start --> Serial, and then the correct COM port. Enter your name, then wait for the computers to connect.

If an error occurs, check to make sure you used the right command line option. If you're are running a DOS executable under Windows, try running under pure DOS. (If you have a Logitech mouse you could also also try what I did, and get updated mouse drivers (MouseWare) for it from their web site.)

From here on, you will be shown a map selection screen. Only the maps existing on both computers will be displayed. Please make sure the maps are identical, otherwise your games will be unsynchronised. Press the up and down arrow keys to select a map. When you are ready to play, press `F10'.

If your game become unsynchronised, quit the level and restart. If it ever says SYNC PROBLEM, then you'd better restart from the serial connection procedure.


2.3. Connecting via Berkeley sockets or Winsock

One machine must first select `Listen' then wait. The other machine then selects `Connect'. The connecting machine will need to enter the name or the IP address of the listening machine.

After connection, the game acts as it would with a serial connection.

Note: as this driver simply emulates a perfect serial link via a network, you can still only play two player games. Also, you need a fast connection (e.g. LAN) between the machines, since the game runs synchronously.


2.4. Playing the computer (CPU)

Thanks to Erno Kuusela, Red Pixel now has a CPU controlled player to play against. It's not too smart, but it's better than nothing. It can be used for target practice, or if you take sick pleasure in killing stupid animals. And as you might expect, it's very accurate in its shooting :-)

You can press F2 or F3 while playing to decrease and increase the computer player's aggressiveness.


2.5. Controls


2.6. Items


2.7. Options

There are a few things you can do in the options screen.

Under DESIRED RESOLUTION, you can pick a screen mode you want to use. Be aware that not all of them may work on your system. Higher resolutions are only recommended when the lower resolutions do not work. You will NOT receive higher quality graphics, but rather a 320x200 image will be stretched up. The video mode is changed when you push ACCEPT.

If the SCANLINES option is enabled and you are in a high resolution video mode (either 640x400 or 640x480), then the game will try to create a ``scanline'' effect for you, where every second line is black. This does not always work (in particular windowed modes often do not work).

If the FILTERED option is enabled, you will get slightly blurred image, which you may or may not like (nice for demos, in my opinion). This requires a fast machine.

If the "FAMILY" MODE option is enabled, there will be less blood on screen. You may want to switch this on if the game jerks when a player is shot.

There are three options for music playback. You can have NO MUSIC, which is the classic way to play Red Pixel. You can also put some .mod, .s3m and .xm files into the `music' directory, and select PLAY MODULES. The game will select songs to play at random. Or, you can put a music CD into your CD drive and select PLAY CD.

The RECORD DEMOS option is explained in the demo section

The MOUSE SPEED option adjusts the speed of the mouse's movement. Note that this does not work in all environments (e.g. it might not work in windowed environments).

In the bottom left corner there is a button (usually labelled ``default.st'' or similar). This is explained in the next section .


2.8. Stats

``Stats'' are various little numbers that change how the game works, e.g. how much damage each gun can bring about and how fast it reloads, how much health you can have, etc.

You can select different stats from the Options menu, using the button in the bottom left corner. Once you select a stats file, the name of the stats file will be displayed in the lower right corner of the main menu. To play with a network or serial game with another player, you must both select the same stats file (or you will receive an error message).

Included with the game are four stats files. `default.st' is the more up to date version, providing more powerful weapons with quicker reload and respawn rates than previous versions. `red07.st' and `red09.st' provide values from older versions, kept only for historic reasons. See inside `quick.st' for details about that (it's quite fun).

You can create your own stats by copying one of them, and editing it with a text editor.


2.9. Demos

You can record your deathmatches into demo files. To do this, switch on the RECORD DEMOS option in the Options screen.

When you start a new game, it will automatically save a demo into the current directory, named `demoXXXX.rec'. Under Linux it will also try your home directory.

To play a demo, simply choose the PLAY DEMO menu item under START, then select a demo recording file.

Special keys available only in demo playback mode:

Please note that if you exit a demo before its completion, it will display the frag count as of the time you quit. (Sorry about that.)

If you record a cool demo, whether a demostration of a cool move in solo mode, or a nice, bloody deathmatch, please send it to me!

If a demo does not play back properly, sent it to me for debugging. I won't be able to save the demo, but it may help me track down bugs to prevent this sort of thing in the future. If you really hate losing demos, try recording on both machines. Chances are, one of the recordings will be correct.


2.10. Performance

If the game is running too slowly, there are a few things you can try.


2.11. Tips




3. The Map Editor


3.1. Map editor keys

After starting the map editor (with the -e command line option) you will be presented with a blank screen. On the bottom there is a palette and on the top there is a description of the current map, showing the top-left map coordinates and size.

Select an item or tile with the left mouse button, place it on the map with the left mouse button. Right mouse button clears.

There is a set maximum of 24 starting locations on a single map. These appear as white flags (edit mode 3).


3.2. Custom maps

If you wish to play your custom maps, make sure that you have exactly the same file on both machines! And make sure you send them to me so I can put them up on my web page.

For compatibility reasons, filenames MUST be all lowercase on case-sensitive operating systems (i.e. Linux), and everyone should stick to the DOS 8.3 filename limits.




4. Other stuff


4.1. Game history

August 1999:

I originally thought of the idea for this game about half a year before I developed it (Jan 1999). At the time I was trying to write a top-down shooter called `Raid II' (dropped about 5 times!) so I delayed it, while my brother worked on the tiny little sprites.

The development (starting June that year) took three months. The basic engine was working in a week, the rest of the time was used getting the serial connection to go, and to tweak things a little. It has been a year since.

Yesterday I fixed some really annoying bugs (see log.txt), and tweaked the stats to increase the frag counts. Now I am writing this SGML manual to learn SGML. It has been a successful project.

But the code sucks. :-)

June 2000

The code has been cleaned up a lot, so is better now. It's still not worth a 1.0 though. :-)

December 2001

I've had a change of heart and labelled it 1.0, just to "finish" it.


4.2. Known bugs


4.3. Copyright

The source code, art and other materials that make up Red Pixel are subject to the following copyright, with some except as noted afterwards.


4.3.1. Red Pixel

Copyright (C) 2001 Peter Wang and contributing authors.

This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages arising from the use of this software.

Permission is granted to anyone to use this software for any purpose, including commercial applications, and to alter it and redistribute it freely, subject to the following restrictions:

1. The origin of this software must not be misrepresented; you must not claim that you wrote the original software. If you use this software in a product, an acknowledgment in the product documentation would be appreciated but is not required.

2. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software.

3. This notice may not be removed or altered from any source distribution.

[For informational purposes, this is the zlib licence.]


4.3.2. Exceptions

Brennan Underwood's `fastsqrt' routines (in the src/fastsqrt directory) do not fall under the licence above. (I don't know what licence it falls under, but it's free software of some sort.)

The slightly modified random number generator `rg_rand.c' was taken from the Snippets collection, and remains in the public domain.

`getopt.c' was taken from some mailing archive somewhere. It retains its license and copyright.

Other libraries used are libnet, JGMOD, libcda and AGUP. Although they are included in the Red Pixel's source tree for convenience, they retain their own copyrights (of course).


4.4. Contacting Psyk Software

Email: tjaden@users.sf.net

WWW: http://www.alphalink.com.au/~tjaden/

Red Pixel: http://redpixel.sf.net/