Helpfile: --------- The following options are allowed: [-blocks n] Specifies the number of blocks. [-delay n] Specifies a delay; 0 <= n <= 10 [-tanks n] Specifies the number of tanks. [-missiles n] Specifies the number of missiles. [-salvos n] Specifies the number of salvos that the player receives. The default is the maximum of ntanks or nmissiles. [-landers n] Specifies the number of landers. [-original] Sets defaults to the original arcade version. This option overrides all options other than [-quiet] [-delay n]. [-scores] Prints out the scores. [-version] Prints out the version. [-coptersonly] A practice mode involving only helicopters. [-nooutput] Game will generally not produce text output to a tty. Useful when running the game from a menu. [-quiet] Do not ring the bell during the game. [-cursor] A cursor is provided. Typically only useful if extreme pointer motion will take you out of the window. This circumstance can occur w/ multiple displays or virtual root windows. Newer versions of the game will attempt to confine the cursor to the game window. [-mono] Run the game in mono, even on a color screen. This option really runs the game in white on black. There are methods for running two-tone games w/ various bg's and fg's....see XResources below. [-defaultcolormap] On color displays, use the default color map. The game will still try to use as many colors as possible, but will not allocate a private colormap to do so. [-nofullscreen] Run the game in a window just large enough to play in. This option works well under some conditions, such as playing in mono or when using the default color map. Otherwise, when using a private colormap, the border tends to change to some unintended color (probably yellow). [-help] Prints this message. Keyboard commands: 'p' - pause 'c' - continue 'i' - pause and iconify (also spacebar) Only under R4 or later. Window managers are free to ignore this. 'q' - quit (also ^C, also 1st and 3rd button down simultaneously) 'r' - redraw General Information ------------------- Cbzone is a version of Battlezone derived from the Fortran sources written by Justin S. Revenaugh. This version is more flexible in that the number of opponents is user selectable. Input to the the game is primarily through the mouse, although some keyboard commands are accepted. Mouse left button will fire a salvo; mouse right button will switch between low/high sensitivity (sensitivity determines how sensitive the joystick is to pointer motion). On a three button mouse, the middle button will center the joystick and stop your tank. This facility can be done ona two button mouse by hitting both buttons at the same time. Directional control of the tank is by moving the mouse to different portions of the screen. The joystick in the lower right hand of the screen will correspond to your tanks current movement and rotation. Scores are only eligible for the high score list if they are played with the default options with the exceptions that the delay can be 0-5 and quiet mode can be on. Options settable via XResources ------------------------------- The following resources can be modified to control the game. These changes can be made via xrdb or on the command line using "-xrm". The game class is "Cbzone". Resource Resource Resource name subclass Argument Default -------- -------- -------- ------- delay Delay int 5 tanks Tanks int 2 missiles Missiles int 1 blocks Blocks int 8 landers Landers int 4 salvos Salvos int 2 coptersonly Coptersonly Bool False quiet Quiet Bool False scores Scores Bool False original Original Bool False version Version Bool False help Help Bool False output Output Bool True mono Mono Bool False bgcolor BgColor colorname black fgcolor FgColor colorname skyblue textcolor TextColor colorname red esalvocolor SalvoColor colorname red psalvocolor SalvoColor colorname skyblue joystickcolor JoystickColor colorname red scannercolor ScannerColor colorname green horizoncolor HorizonColor colorname gray50 mooncolor MoonColor colorname gray50 xhaircolor XHairColor colorname gray50 cursorcolor CursorColor colorname skyblue crackcolor CrackColor colorname skyblue tankcolor EnemyColor colorname green supercolor EnemyColor colorname green missilecolor EnemyColor colorname green coptercolor EnemyColor colorname green landercolor LanderColor colorname green cubecolor BlockColor colorname yellow pyramidcolor BlockColor colorname yellow maxcolors MaxColors int 0 (all) fadingcolors FadingColors int True cursor Cursor Bool False defaultcolormap DefaultColormap Bool False fullscreen Fullscreen Bool True reports Reports Bool False Example Use of Resources ------------------------ In general, the following commands will do something useful only a color screen. % cbzone -tanks 3 -xrm "*EnemyColor: magenta" this command would make all enemies (tanks, supertanks, missiles, and copters) magenta. Additionally, there would be 3 tanks or supertanks in the game. % cbzone -xrm "*tankcolor: black" -xrm "*supercolor: black" this is stealth mode, assuming a black background. All tanks and supertanks are black. However, they will still show up on the scanner. % cbzone -xrm "*fadingcolors: 5" For the objects which fade (blocks, landers, or enemies), there will be this many shades of a particular color. The default is as many as possible. For no fading colors, use -xrm "*fadingcolors: 1" % cbzone -xrm "*maxcolors: 20" Use only 20 colors. The game would generally try to obtain as many colors as it can either from the default colormap or by making its own colormap. If there are not enough color cells available, the game will reduce the number of different colors. The steps taken to reduce the number of colors is to first try and reduce the number of fading colors; if this is not sufficient, the game then starts changing groups of objects to the same color. % cbzone -xrm "*maxcolors: 2" -xrm "*fgcolor: skyblue" This command would run the game w/ a black (default) background; everything else would be skyblue. Environment variables --------------------- PAGER - which pager to use to read the message-of-the-day and the helpfile. Bugs ---- Tanks currently move through one another, consider it a feature. Anything else is probably really a bug and should be reported. Author ------ Justin S Revenaugh, MIT, wrote the original Fortran version. Todd W Mummert, mummert+@cs.cmu.edu, CMU, translated to C, added variable number of objects and greater color support.