MANUAL: remove Neverputt section, needs work
[neverball] / doc / MANUAL
1
2                             * Neverball *
3
4
5 Tilt the  floor to roll a  ball through an obstacle  course within the
6 given  time.  If  the  ball falls  or time  expires, a ball is lost.
7
8 Collect coins to unlock the exit  and earn extra balls.  Red coins are
9 worth 5.  Blue coins are worth 10.  A ball is awarded for 100 coins.
10
11
12 * INSTRUCTIONS
13
14 Click Play  to begin.   Mouse motion tilts  the floor.   Mouse buttons
15 rotate the viewpoint.  The following  keyboard controls are defined by
16 default; most  of them can  be changed  in a configuration  file.  See
17 below for details.
18
19     ESC    Pause and resume / Exit
20     SHIFT  Fast camera rotation
21
22     F1     Default Camera
23     F2     Lazy Camera
24     F3     Static Camera
25
26     F6     Hide HUD
27     F8     Toggle nice mode
28     F9     Toggle frame counter
29     F10    Snap a screenshot
30
31     UP     Tilt the floor forward
32     DOWN   Tilt the floor backward
33     LEFT   Tilt the floor left
34     RIGHT  Tilt the floor right
35
36     D      Rotate the view right
37     S      Rotate the view left
38
39     R      Restart the current level
40
41     TAB    Cycle through scores in high-score table
42
43
44 * LEVEL PROGRESSION
45
46 Neverball levels are grouped in  level sets.  All sets are immediately
47 accessible to the player, and track of progress is kept separately for
48 each set.  The player starts out  at the first level and must complete
49 each level in turn to unlock subsequent levels until all levels in the
50 set are completed.   A level is "unlocked" by  completing the previous
51 level in the  progression or if it  is the first level of  the set.  A
52 level  is "completed"  by collecing  the required  amount of  coins to
53 activate the goal in the level and reaching said goal.
54
55 There are  two game  modes or  ways of  progressing through  levels in
56 Neverball.  Each  mode is essentially  a subset  of the single  way of
57 playing present in Neverball 1.4.0.
58
59 In 1.4.0, the game keeps track of "lives" or balls, preventing a level
60 from being retried once the balls run out, however, unlocked/completed
61 levels remain accessible in the menu at all times.  As a special case,
62 1.4.0  also records  a set  high-score (see  below for  information on
63 high-scores)  when all  levels  of a  set are  played  through in  one
64 attempt, with  the condition  that no successfully-completed  level be
65 restarted during the run.
66
67 To  address  some of  the  problems  with  this  mode of  playing,  in
68 Neverball 1.5.0  it was  split into two  separate modes:  the "normal"
69 mode and the challenge mode.
70
71 In   the   normal  mode,   no   track   of   balls  is   kept.    Each
72 unlocked/completed level is immediately  accessible and can be retried
73 and restarted mid-game as often as desired.
74
75 In the challenge  mode, the player is given a  limited number of balls
76 and starts  out at the  first level of the  set with all  other levels
77 locked.  The game ends once the balls run out or all levels in the set
78 are completed.  A set score is  recorded for a successful run.  Levels
79 cannot be restarted, but can be retried.
80
81 In addition to regular  1.4.0-style levels, Neverball 1.5.0 introduces
82 bonus levels: extra levels awarded  for playing challenge mode.  Bonus
83 levels can only  be unlocked by completing all the  levels before them
84 in  challenge  mode,  however,  bonus levels  themselves  are  skipped
85 challenge mode; after  they have been unlocked, they can  be played in
86 the normal mode as any regular level.
87
88
89 * USER DATA FILES
90
91 Neverball  creates a  directory in  which it  stores user  data files.
92 These files include high scores, replays, and configurations.
93
94 Under Unix, Linux,  and OSX this directory is  called ".neverball" and
95 is created in  the user's home directory,  specifically, the directory
96 set in the HOME environment variable.
97
98 Under Windows  it is called "Neverball"  and is created in  the user's
99 application  data  directory the  location  of  which is  obtained  by
100 inspecting the  APPDATA environment variable.   An easy way  to access
101 this directory is by typing  %APPDATA% in the Windows Explorer address
102 bar.  If the location could not  be determined, it is assumed that the
103 user has permission to write to  the game data directory, and the user
104 data directory is created within.
105
106
107 * HIGH SCORES
108
109 The top  three fastest times  through each  level, the top  three coin
110 scores and the top three goal  unlock scores for each level are stored
111 in files named neverballhs-* in the user data directory.
112
113 The top  three fastest  times and  most coins scores  for each  set of
114 levels are also stored.  To achieve  a set score, the player must play
115 through all levels of a set in challenge mode.
116
117 The total set time will  include time spent during both successful and
118 unsuccesful level  plays, thus  time-outs and fall-outs  count against
119 the total time.
120
121 The  total  set  coin  count  will include  only  coins  collected  on
122 successful  level plays.   This  prevents unbounded  coin scores  from
123 being collected on levels with more than 100 coins.
124
125
126 * REPLAYS
127
128 Neverball  includes a  mechanism for  recording and  replaying levels.
129 The player may enter  a name for each replay at the  end of the level.
130 By default, the most recent unsaved  level will be saved to the replay
131 file named "Last.nbr".
132
133 Replay  files are  stored in  the user  data directory.   They  may be
134 copied freely.  To  view a replay you have  downloaded, simply move it
135 to  the user  data directory  and it  will appear  in the  Replay menu
136 in-game.
137
138
139 * CONFIGURATION
140
141 Game  settings are stored  in the  file neverballrc  in the  user data
142 directory.  This file is created  when the game exits.  It consists of
143 key /  value pairs.  Some of  these values are  configurable using the
144 in-game  options  screen.  Other  meaningful  keys  and their  default
145 values follow.
146
147     mouse_sense 300
148
149         This  key controls  mouse  sensitivity.  The  value gives  the
150         number of screen pixels the  mouse pointer must move to rotate
151         the floor  through its entire  range.  A smaller  number means
152         more sensitive.
153
154     mouse_invert 0
155
156         This key inverts the vertical mouse axis if set to 1.
157
158     key_camera_1 f1
159     key_camera_2 f2
160     key_camera_3 f3
161     key_camera_l left
162     key_camera_r right
163
164         These keys  define keyboard mappings for  camera selection and
165         rotation.  Key  names are specified using  SDL's canonical key
166         naming convention.  The three camera behaviors are as follows:
167
168         1 - Strict  camera stays behind the ball by  cueing off of the
169         velocity of the  ball.  It is very  responsive,  but sometimes
170         confusing.
171
172         2 - Lazy  camera chases a point a set  distance from the ball.
173         It is seldom  surprising, but at times it  is not sufficiently
174         responsive.
175
176         3 - Locked camera  does not rotate  except by  player command.
177
178     view_fov 50
179     view_dp  75
180     view_dc  25
181     view_dz  200
182
183         These keys  define the view of the ball.  They give  the field
184         of view in degrees,  the height of the view point,  the height
185         of the view center,  and the horizontal distance from the ball
186         in centimeters, respectively.  (The ball is  50 centimeters in
187         diameter in most levels.)
188
189         The default values  for these keys changed with version 1.2.6.
190         Some players may be interested in using the  old values.  They
191         were as follows:
192
193             view_fov 40
194             view_dp  400
195             view_dc  0
196             view_dz  600
197
198     rotate_fast 200
199     rotate_slow 100
200
201         These keys control the rate of camera rotation.  Roughly, they
202         give  the rate  of lateral  camera motion  in  centimeters per
203         seconds,  so the  actual rotation  rate depends  upon view_dz,
204         above.  The fast rate is used when the Shift key is held down.
205
206     fps 0
207
208         This key enables an on-screen frames-per-second counter. Press
209         F9 to toggle this flag in-game.
210
211     nice 1
212
213         This  key  enables  a  delay  function  after  each  frame  is
214         rendered, forcing a context  switch and ensuring that the game
215         does not utilize 100% of the CPU.  0 is off, 1 is on.
216
217         If the  frame rate is not  fast enough for you,  or you simply
218         want to  test the  performance of the  game on  your hardware,
219         disable it.
220
221         Press F8 to toggle this flag in-game.
222
223     coin png/coin.png
224     ball png/ball.png
225
226         These keys determine the texture image applied to the coin and
227         ball.  If  you prefer collecting euros  to collecting dollars,
228         set:
229
230             coin png/euro_coin.png
231
232     stereo 0
233
234         This key  enables quad-buffered stereo viewing  for those with
235         the hardware to support it.  It gives an angle in degrees that
236         determines the  interocular distance.  0  is normal non-stereo
237         viewing.  2 gives  a  good  stereo effect.   If  the eyes  are
238         swapped, give a negative value, like -2.
239
240     joystick 0
241
242         This key  enables joystick control.  0  is off, 1  is on.  The
243         game may still be controlled with the mouse even while gamepad
244         control  is enabled.   However,  random noise  from an  analog
245         controller at rest can disrupt normal mouse input.
246
247     joystick_device 0
248
249         This  number selects  which joystick  to use if  more than one
250         joystick is  found. 0 is the first  joystick, 1 is the  second
251         and so on.
252
253     joystick_axis_x 0
254
255         Joystick horizontal axis number
256
257     joystick_axis_y 1
258
259         Joystick vertical axis number
260
261     joystick_button_a 0
262
263         Joystick menu select button
264
265     joystick_button_b 1
266
267         Joystick menu cancel button
268
269     joystick_button_r 2
270
271         Joystick counter-clockwise camera rotation button
272
273     joystick_button_l 3
274
275         Joystick clockwise camera rotation button
276
277     joystick_button_exit 4
278
279         Joystick exit button
280
281
282
283 Contact: <robert.kooima@gmail.com>