WORDWARVI(6) Games WORDWARVI(6) NAME wordwarvi - Old school '80's style side scrolling space shoot'em up game. SYNOPSIS wordwarvi [ --bw ] [ --width w ] [ --height h ] [ --framerate f ] [ --fullscreen ] [ --joystick joystick-device ] [ --retrogreen ] [ --sounddevice n ] [ --brightsparks ] [ --version ] [ --blueprint ] DESCRIPTION wordwarvi, or "Word War vi", is an old school '80's style side scrolling space shoot'em up video game. You pilot your "vi-per" craft through core memory, trying to avoid OS defenses and wipe out the memory hogging emacs processes and rescue lost vi-per pilots (.swp files) stranded from crashed vi sessions before heading through the socket to the next node in the cluster to do it all over again. Options: --bw No color, just black and white. --blueprint Render the game to look like a blueprint. --brightsparks Enables a visual effect for sparks to be rendered bigger and brighter than usual, at the cost of some performance. It is a matter of personal preference whether it looks better or worse. --framerate f Sets the target frame rate to f frames per second. The default is 30 frames per second. If your computer is too slow to achieve the specified (or default) frame rate at the specified (or default) resolution, decreasing the frame rate may make the game respond better. Likewise, at lower resolutions, higher framerates may be possible, or lower resolutions may make the game perform better at a given frame rate. It should be noted that The game is designed (and tested) to be played at 30 frames per second. --fullscreen Expand the window to fill the screen. This option overrides the --width and --height options, if either of those are also speci- fied, and scales the graphics to the size of the screen. --height h Sets the window size to h pixels high, scaling all graphics as necessary. The default is 600 pixels. --joystick joystick-device Use the specified device node joystick-device to access the joy- stick. The default device if this option is not used is /dev/input/js0. If you have more than one joystick, or if your OS presents joysticks at device nodes other than /dev/input/js0, that's what this option is for. --nomusic Don't play music, or even decode the music files into memory. Cuts down considerably on memory usage. --nomissilealarm Don't sound an alarm when a missile locks on to your ship. Some people find the sound of the alarm incredibly annoying. (Alarms are supposed to be annoying.) The audio alarm can also be tog- gled on and off with the '1' key. --nostarfield Don't draw a starfield in the background. --randomize Uses the microseconds value of the clock as the random seed for generating terrain, enemy placement etc. If you get tired of the regular levels, and knowing where everything is, this will get you levels that you haven't seen before. --randomseed n Uses the specified value, n, as the random seed for generating terrain, enemy placement etc. This allows access to new levels which you may play again by specifying the same random seed value. The default random seed value the game uses if none is specified is 31415927. --retrogreen Does exactly what it sounds like. --sounddevice n Use alternate sound device n, where n is an integer. By default, wordwarvi uses the "default" sound device as estimated by the PortAudio library, which is 0. You can specify other numbers if you have other sound cards, or a multichannel sound card. --version Print the program's version number and exit. --width w Sets the window size to w pixels wide, scaling all graphics as necessary. The default is 800 pixels. Controls: Arrow keys control movement (or vi's hjkl keys will work too, of course.) Q puts in a quarter, and starts the game. Z fires a laser C drops chaff (to confuse heat seeking missiles). B drops bombs. G drops a gravity bomb, of which you start with 3. Additionally, a game pad or joystick may be used. I have only tried using a Logitech Dual Action Rumble USB gamepad. On this, the first (left) joystick controls your ship, and the top right trigger button fires the laser, while the bottom right trigger button drops bombs. (Just press all the buttons to see what they do.) m toggles music on/off. s toggles sound effects on/off. 1 toggles the audio missile lock-on alarm on/off. ENEMIES AND OTHER THINGS YOU MAY ENCOUNTER Rockets. Avoid hitting them. Jets, which fire heat seeking missiles. Avoid the missiles. Heat seeking SAMs. Avoid. Octo-viruses and tentacles. Shoot lightning. Avoid. Blimps (representing emacs). Will shoot heat seeking missiles. Will leak LISP code. GDB processes. Will attempt to ptrace you with heat seeking probes. Avoid and/or kill. Cron Jobs. Will shoot projectiles at you. Will attempt to collect the vi .swp files and carry them to caldera of the volcano, Mount /dev/null. Fuel tanks. Refuel by hovering over the fuel tanks momentarily. Laser cannons. They will shoot laser bolts at you (obviously). WINE bottles. Bill Gates's finest warship is outfitted with a giant WINE bottle to enable it to travel through the linux CORE. Beware of viruses which may be living inside. FILES /dev/input/js0, the joystick device node. /usr/share/wordwarvi/sounds/*.ogg contain the audio data used by the game. ~/.wordwarvi/.exrc This file can be used to customize default settings for the game. Each line of the file controls one aspect of the game. The following commands are understood. set bw Render in black and white. set blueprint Render in the style of a blueprint. set brightsparks Render sparks brighter than usual. set framerate=n Attempt to render the game at n frames per second. set fullscreen Render the game in full screen mode. set height y Render the game y pixels high. set joystick=dev Use joystick input device dev. set levelwarp=n Warp ahead n levels (if compiled in). set nomusic Do not play, or even decode music data. set nomissilealarm Do not sound alarm for missile lock on. set nostarfield Do not render the background starfield. set retrogreen Render in the manner of a vector display from the '70's. set randomize Use a clock generated random seed to initialize levels. set randomseed=n Use the specified random seed to initialize levels. set sounddevice=n Use the nth sound device for audio output. set width=x Render the game x pixels wide. map key action valid actions are: soundeffect down up left right missilealarm bomb chaff quarter pause 2x 3x 4x 5x 6x 7x 8x suicide thrust music fullscreen quit laser none reverse Valid keys are: a-z, A-Z, 0-9, and most printable characters. Keypad numerals 0-9 may be specified as kp_0 through kp_9, and function keys f1 through f12 can be specified f1 through f12 (obviously). In addition the following strings may be used to specify the corresponding keys: space enter return backspace delete pause scrolllock escape sysreq left right up down kp_home kp_down kp_up kp_left kp_right kp_end kp_delete kp_insert home down end delete insert map button n action maps joystick button n (where 0 <= n <= 9) to the specified action. Actions are the same as describe above, with the excep- tion of left, right, up and down, which are not yet implemented due to laziness on my part. set joystick-[xy]-axis=n. Allows specifying different axes for control of the players ship for multi axis joysticks. By default, the first x and first y axes are used (n = 0, for both.) The 2nd axis may be specified by a value of 1. A value of -1 disables control of an axis. See example .exrc file to find out why you might want to do that. Example .exrc file: set fullscreen set retrogreen map z chaff map x bomb map c laser # # to set up "Defender" style joystick # controls, vertical motion controlled # by joystick axis, horizontal motion # controlled only by "reverse", and # "thrust" buttons, with x axis joystick # control disabled. # set joystick-x-axis=-1 set joystick-y-axis=0 map button 0 thrust map button 1 reverse GOOD LUCK You'll need it. AUTHOR Written by Stephen M. Cameron wordwarvi Jun 2008 WORDWARVI(6)