This is the documentation file of the billiards game ANOTHER POOL GL (0.99). [ copyright (c) by Gerrit Jahn, (http://www.planetjahn.de) ] pre20 there will be a complete new version of this file in one of the next releases.... ------------------------------------------------------------------------- Contents: 1. General Informations 2. 2.1 The Keys 2.2 Command Line Options 2.3 The File "konst.dat" 3. Rules -------------------------------------------------------------------------- 1. General Informations "Another Pool GL" tries to simulate a classical pool game like 8-Ball with 16 Balls, (white, black, 7 striped, 7 filled balls (here: red and yellow)) on a 8 feet-table. The (original) rules have been slightly modified to be easier implemented. Another Pool GL was developed using gcc-2.95.X and gcc.3.2 under Linux (also tested under Win32). Since the game came out in 1995 as 2D-MS-DOS-release many changes have been introduced till now ;-) The underlying graphics-library is now SDL (http://www.libsdl.org). The OpenGL Documentation can be obtained at http://www.opengl.org. As mentioned above, Another pool tries to simulates billiards as realistic as possible. It is possible to put spin on the white ball and change the angle between cue and table. Therefore you should be able to play curve-balls. The balls will roll in an allmost natural way. On "normal shots" (that is shots with no spin), the balls will slide in the beginning and then start continuosly to roll after some time left until the speed of the surface matches the speed of the center of the ball. Therefore the balls won't do simple elastic shots but for instance one ball will roll in his direction after hitting another ball at his center after a short acceleration-period. At the moment the table is a bit so slippery in my opinien. The underlying physics enginge has to be modified a bit... If you want to start the game, the file konst.dat must (!) be in the same directory as apool-binary. For the Win32-release the SDL.dll must either be located in the Windows System directory or in the apoolGL-directory. The old MS-DOS release was developed on an 486DX2/66 in 1995. Since we now use OpenGL the pc has to be a bit faster now ;-) But since the timer is now used in a more effective way, ApoolGL should work on everey system. The frame rate will decrease if the system is slow but it should be playable. Try to use the F4/F5-keys since they switch from low to high detail and turn display of textures on and off and the other way around. ------------------------------------------------------------------------- 2. 2.1 The Keys During the game the following keys will cause an action: SPACE: in menu mode activates free look mode. You can rotate the table using the mouse. A click on the left mouse button stops free look mode. The center of the rotation is the center of the table for now...(will be changeable in one of the next releases. CURSOR KEYS: move table up/down/left/right. PAGE UP/DOWN: Zoom in and out. c: computer plays for current player (until you press any key if the computer plays or "c" again if you are playing (not the computer). e: press "e" and move mouse to change the "hit-point" on the white ball, which causes spin (back-, top, side-spin). If you have a mouse with three buttons, you may press the middle button instead. ( '+' or '-': change angle between cue and table. If you do this and change the hitpoint (--> 'e'), too, you will perhaps play a "curve-ball". If you use a three-button-mouse you may hold the middle button then press the right button to do the same... If you have a wheel mouse, you may use the mouse-wheel to change the angle. not implemented in the OpenGL-release for now. ) f: toggle display of frames per second x: computer plays only one shot for current player d: start computer-demo (in demo-mode: press SPACE stop demo immediately) u: undo last shot (no redo implemented!) und works fine now h: simulation mode. Using the current values for spin, speed and cue direction the end position will be calculated. The trace of the balls will be marked by triangles. z: in play mode: the end position of the balls will be calculated immediately w: toggle special target mode. The white ball will be centered and the tables rotates with the white ball in the centre. Just give it a try, looks cool. still some bugs... t: rotate table to top view s: rotate table to side view (short edge of the table) l: rotate table to last view. F1: help, show keys. F2: credits F3: toggle table texture on/off. F4: toggle display of textures on and of. F5: change gemetric detail level from very low to low to med to high to very high to very low and so on... very low has graphics errors! F6: change shadow mode. Default is planar, next level is stencil1 followd by stencil2 (slow). Stencil2 has wrong colors. Next level is off followed by planar again. F7: toggle texture detail level (high/low) F8: Environment Textures for the metal caps on top of the edges. F9: change ball environment mapping. Default is off. F9 changes to dynamically rendered cube mapping (slow) followed by static spherical mapping (fast) and off again. F11: changes table theme. Default ist blue/marble, F11 changes via red/leather to green/wood. F12: shows statistics screen. n: new game ESC: quit game Some keys only cause an action in menu mode. During shot: mouse motion changes the angle of the "camera" right mouse button and motion changes zoom level. SPACE and "z" calculates the final position of the balls. ESC quits as allmost everywhere. 2.2 Command Line Options see apool -h for full set of command line options. The most important ones are described below: "apool -F" starts apool in full screen mode. "apool -x -y " stats apool inside a window of the size x*y or full screen with the resolution next to x*y if available by your Windows-System. "apool -g " starts apool with gemoetric detail level set to glevel. Default is 3 for Linux and 2 for Windows. 5 is highest. "apool -d 0" starts apool with textures disabled. "apool -h" shows the help message. default is 1024x768 Window-Mode, and textures enabled. 2.3 The File "konst.dat" This file contains all the "physical" constants the game needs. you can easily change them and see what happens... konst.dat has the following structure (DOS-Options for example): 0.0000001 alpha transformation gliding <---> rolling (-> spin) 0.0001 beta friction that decreases z-spin 0.2 gamma decrease of Spin when ball hits a side 0.000000025 delta rolling- / gliding-friction 0.75 eta 1-loss of spin by transf. from spin -> speed 0.4 bandes intersection z-spin <--> sides --> speed 0.9 banderef decrease of speed when hitting a side 0.75 bandez bandes