Tennix 1.3.4
[tennix.git] / README
blob433c07dcd8f1549553308a9da8ccee567fe2004f
4                  thp.io presents...
6                  ****** *****  **   **  **   **  **  **   **
7                    **   **     ***  **  ***  **  **  *** ***
8                    ==   ====   == = ==  == = ==  ==    ===
9                    ##   ##     ##  ###  ##  ###  ##  ### ###
10                    ##   #####  ##   ##  ##   ##  ##  ##   ##
11                          Classic Championship Tour 2011
13 Copyright (C) 2003, 2007-2011, 2013, 2017, 2019-2020, 2023 Thomas Perl <thp.io>
17 LICENSE
18 =======
20     This program is free software; you can redistribute it and/or
21     modify it under the terms of the GNU General Public License
22     as published by the Free Software Foundation; either version 2
23     of the License, or (at your option) any later version.
24     
25     This program is distributed in the hope that it will be useful,
26     but WITHOUT ANY WARRANTY; without even the implied warranty of
27     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
28     GNU General Public License for more details.
29     
30     You should have received a copy of the GNU General Public License
31     along with this program; if not, write to the Free Software
32     Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, 
33     MA  02110-1301, USA.
36 ABOUT
37 =====
39    This is the SDL2 (Simple DirectMedia Layer) port of Tennix!, a 
40    game written by Thomas Perl in 2003. This version has been up-
41    scaled to a resolution of 640x480 in comparison to the 320x200 
42    format used in the original game.
44    Changes from the original Tennix to the first SDL release include
45    a new shadow, advanced alpha blending and the removal of the 
46    previously-included pseudo-advertisements.
48    For all changes, please see the ChangeLog file.
50    This port has been written on the 10th of May 2007 and is now 
51    being improved and updated since then.
54 INSTALLATION AND BUILD INSTRUCTIONS
55 ===================================
57    To build tennix, simply run "make" (on Unix-like systems) or 
58    follow the instructions for your platform in the README.* files.
59    Be sure to install all the dependencies listed below and check out the
60    makefile for instructions on what you can enable/disable with the help
61    of environment variables (e.g. USE_PYTHON, NONFREE_LOCATIONS, DEBUG, ...)
63    Tennix was known to build on Debian GNU/Linux 4.0, Ubuntu 8.10, Windows XP
64    and Windows Vista (using MSYS/mingw32 - see README.win32), Mac OS X 10.4
65    and Mac OS X 10.5 (using XCode Tools - see README.MacOSX), the Maemo 4.0
66    and Maemo 4.1 SDKs (Chinook/Diablo - see README.Maemo).
68    The current version should work on modern machines (Linux, Windows, macOS)
69    with up-to-date SDL2 ports available, and has been tested on Ubuntu 23.04.
71    Dependencies:
72      · SDL2       >= 2.26.3 (https://www.libsdl.org)
73      · SDL2_image >= 2.6.3  (https://github.com/libsdl-org/SDL_image)
74      · SDL2_mixer >= 2.6.2  (https://github.com/libsdl-org/SDL_mixer)
75      · SDL2_ttf   >= 2.20.1 (https://github.com/libsdl-org/SDL_ttf)
76      · SDL2_net   >= 2.2.0  (https://github.com/libsdl-org/SDL_net)
77      · SDL2_gfx   >= 1.0.4  (https://www.ferzkopp.net/Software/SDL2_gfx/Docs/html/)
79    (Tennix might compile and work with earlier versions of the respective
80    libraries, but the versions here have been the ones that I've tested it
81    with, so if there are problems, try to use the versions specified here)
83    Optional dependencies:
84      · Python    >=  3.8.x  (www.python.org)
85        => If you don't want to use the Python integration, set the variable
86           USE_PYTHON to a value other than 1 by specifying it on the "make"
87           command line like this:      make USE_PYTHON=0
89    On a Debian-based system, you can get all dependencies with the following
90    command line:
92     apt install libsdl2-dev \
93                 libsdl2-image-dev libsdl2-mixer-dev \
94                 libsdl2-ttf-dev libsdl2-net-dev \
95                 libsdl2-gfx-dev python3-dev
98 PLAYING TENNIX
99 ==============
101    You can play in either single-player or multi-player mode. You can even
102    let two AI players play against each other. This can be configured in
103    the controls screen.
105    THE POWERBAR
107    You have to keep your "hit" key pressed, so that your powerbar (on the
108    bottom of the screen) "fills up". The more power you have, the stronger
109    you will hit the ball (and the higher and longer it will fly). Too much
110    power could make the ball go into the OUT, so be sure to use it wisely.
112    CONTROLS
114    Select the controller you like from the input selection menu. Be sure
115    to connect gamepads and joysticks BEFORE starting Tennix, so they are
116    enumerated and detected correctly.
118    FUNCTION KEYS
120    V  .... Toggle fullscreen (X11 only)
121    P  .... Pause game
124 NETWORK MULTIPLAYER
125 ===================
127    This is done using two computers, the first is the faster one and the second
128    one is the slower one. If both computers are equally powerful, just chose
129    the faster one randomly.
131    On the faster computer, use:
132      ./tennix -m REMOTEHOST
134    On the slower computer, use:
135      ./tennix -s REMOTEHOST
137    So, if your faster computer is called "fast.lan" and the slower computer is
138    called "slow.lan", you could use the following setup:
140      user@fast:~$ ./tennix -m slow.lan
141      user@slow:~$ ./tennix -s fast.lan
143    You have to configure each opponent in the input device selection screen
144    using "Network player" as input device. Make sure that you do the reverse
145    on the opposite computer.
148 DEVELOPMENT/DEBUGGING
149 =====================
151    If you want to compile a debugging version of "tennix", you
152    have to set the environment variable "DEBUG" to "1", either by
153    using "DEBUG=1 make" or exporting the environment variable for
154    the current session, as in "export DEBUG=1" followed by "make".
156    See the HACKING and TODO files for more development information.
159 CREDITS
160 =======
162    Some sound effects are based on data from the Freesound Project.
164    Thanks to Esad Hajdarevic and Stefan Doesinger for some optimizations
165    done during the Effiziente Programme course in January 2009 :)
167    Public domain artwork (stadium photos) by
168    http://en.wikipedia.org/wiki/User:Ivan
169    http://fr.wikipedia.org/wiki/Utilisateur:Arnaud_25
170    http://en.wikipedia.org/wiki/User:Aleksmot
171    http://commons.wikimedia.org/wiki/User:Alexisrael
172    http://commons.wikimedia.org/wiki/User:Vardion
174    Additional artwork by
175    Martin Third (http://flickr.com/photos/mthird3rd/471720012/)
177    See data/COPYING and credits.h for more information about the data files.
179 CONTACT
180 =======
182     E-Mail: Thomas Perl <m//thp.io>
183     URL: http://icculus.org/tennix/