1
2# OpenJazz - http://www.alister.eu/jazz/oj/
3
4## About
5
6### OpenJazz
7
8is a free, open-source version of the classic Jazz Jackrabbit™ games.
9
10OpenJazz can be compiled on a wide range of operating systems, including
11Windows, macOS, GNU/Linux and *BSD. Also ports are available for some
12homebrew platforms, for example Wii and PSP.
13
14To play, you will need the files from one of the original games.
15
16With the demise of DOS-based operating systems, it has become necessary to use
17emulators to play old DOS games. Jazz Jackrabbit™ deserves more - and would
18benefit greatly from new features.
19
20### Jazz Jackrabbit™
21
22is a PC platform game. Produced by Epic Games (then Epic MegaGames), it was
23first released in 1994. The fast-paced, colourful gameplay proved popular,
24and the game won PC Format's Arcade Game of the Year award.
25Many people still fondly recall the shareware versions.
26
27## History
28
29OpenJazz was started on the 23rd of August, 2005, by Alister Thomson.
30Academic pressures put the project on hold until late December 2005.
31The source code was released on the 25th, and the first version with a degree
32of playability was released on the 15th of January.
33Since then, a variety of ports have been released by other people.
34
35More academic pressures meant there were few updates over the following few
36years, but in 2009 a multiplayer version was released.
37
38## License
39
40OpenJazz is available under the GNU General Public License version 2 or later,
41see `licenses.txt` for additional information.
42
43## Controls
44
45`Enter` to choose a menu option, `Escape` to go back to the previous menu.
46`F9` to view in-game statistics, `P` to pause.
47`Alt` + `Enter` switches between full-screen and windowed mode.
48
49The other controls are configurable via the "setup options" menu.
50By default, the controls are as follows:
51
52- Left and right arrow keys to move left and right.
53- Under Windows, `Alt Gr (right Alt)` to jump and the `Space bar` to shoot.
54- Under Linux, the `Space bar` to jump and `left Alt` to shoot.
55- `Right Ctrl` to change weapon.
56
57Additionally, most game controllers and joysticks that SDL recognizes can be
58used. However, not all axes or buttons may be available.
59
60## Building
61
62Needed:
63- SDL 1.2.x library (https://libsdl.org/).
64
65Optional:
66- SDL_net 1.2.x library (https://www.libsdl.org/projects/SDL_net/)
67- xmp 4.x.x library (http://xmp.sourceforge.net/)
68- ModPlug library (http://modplug-xmms.sourceforge.net/)
69
70OpenJazz ships a basic Makefile that may be used and adapted to the specific
71needs of the user or platform where it shall run. For network play, you need a
72platform which natively provides sockets or use SDL_net, then either define
73`USE_SOCKETS` or `USE_SDL_NET` in the Makefile. On the Windows platform, the
74socket library (`-lws2_32`) is needed while linking. For music support, you
75either need ModPlug or xmp. Then define `USE_MODPLUG` or `USE_XMP` in the
76Makefile. ModPlug needs to be patched to properly support looping tracks,
77otherwise there will be a small gap in the playback, xmp does not have this
78problem (no patching needed).
79
80For UNIX systems also an autoconf script is provided, used like this:
81
82    ./configure # `--help` lists options
83    make [install]
84
85Further (partly outdated) instructions are available at:
86http://www.alister.eu/jazz/oj/build.php
87
88### other options
89
90- `DATAPATH` - use a fixed path for data files
91- `HOMEDIR` - use the user's home directory for data files
92- `SCALE` - enable scaling of the video output (i.e. Scale2X...)
93- `FULLSCREEN_ONLY` - disable window mode, useful for console ports
94
95## Running
96
97Execute `OpenJazz`, depending on the platform and compile time options, the
98data files are expected to be under different paths (see above). You can
99also specifiy a game folder as command line argument.
100
101## Author
102
103Alister Thomson (alister_j_t at yahoo dot com)
104