windoom.doc
上传用户:xuyinpeng
上传日期:2021-05-12
资源大小:455k
文件大小:28k
源码类别:

射击游戏

开发平台:

Visual C++

  1. WinDoom - V0.95
  2. 16 Feb, 1998
  3. CONTENTS:
  4. i. foreword
  5. 1. What is WinDoom?
  6. 2. Program requirements
  7. 3. Setting up WinDoom
  8. 4. The console
  9. 5. Changing your controls
  10. 6. Using hi-res mode
  11. 7. Playing a network game
  12. a. Acknowledgments
  13. ---------------------------------------------------------------------
  14. i. Foreword - What's new with this version?
  15. 1.  You can now record, stop and playback demos from the console.
  16.     Unfortunately they get out of sync and won't play back properly.
  17.     I haven't been able to figure out what is out of whack with
  18.     this.  If I figure it out, I will post an update.  They work
  19.     but they don't work properly.
  20.     Originally, you could only record demos from the beginning of
  21.     a Doom level because the level (and player[s]) state information
  22.     was not part of the demo.  The demo was just a series of actions
  23.     the player took.
  24.     This version of WinDoom adds a new demo type and a new lump type,
  25.     "dem".  This new type of lump contains the saved game state at
  26.     the time the demo was started. All the players' weapons, health
  27.     ammo, etc. are saved as part of the demo.
  28.     There are three new commands for the console to handle these
  29.     demos and two new command line options: record, finish and play.
  30.     These commands record, stop recording and play back the new type
  31.     of demos.
  32.     There are also two new command line options: -playdemo2 and
  33.     -timedemo2. These commands are to play back and run timedemo
  34.     the new type of demos.
  35.     As with the original command line options there is no need to
  36.     put the file extension (.dem in this case) on the file name. It
  37.     will be added automatically.  This is true for both recording,
  38.     playback and timedemo2.
  39. 2.  Added a new command to the console to show the command list.
  40. 3.  Added linkage back for the paired keys (ctrl, alt and shift).
  41. 4.  Fixed bug that kept left shift key from working.
  42. ---------------------------------------------------------------------
  43. 1. What is WinDoom?
  44. Thanks go first to id Software for making a great game then releasing
  45. the source code to it so we could have something else to play with.
  46. I have changed no gameplay at all.  You CAN use some new cheat codes
  47. in the console but about all you can do now is get the backpack you
  48. couldn't get by cheating before.
  49. WinDoom is my version (so far) of a Win32 port of the Linux Doom
  50. source code released by id Software.  I have gotten most of the
  51. features of the original program working but it isn't quite finished
  52. yet.  It does odd things occasionally.
  53. Please DO E-Mail me with problems you've had with this especially if
  54. you can't get it working at all. I already know of most of the
  55. problems you may encounter and I am already addressing them.  But I
  56. want feedback about any problems you encounter.  There is a file
  57. generated in your game directory called windoom.dbg.  It contains
  58. some data that will probably be helpful to me in debugging whatever
  59. problem you've encountered. Screenshots may be helpful, too.
  60. I have several very different systems to test this on and a LAN as
  61. well but I couldn't possibly duplicate the variety of systems you
  62. all have. Running it on your systems is the best testing I can get.
  63. I know this is more like a public Alpha test but I did want to share
  64. what I have done so far, though.
  65. Also, please don't send me E-Mails asking for features or changes.
  66. There will be time enough for that after the game actually works
  67. properly. Please don't ask me to fix bugs in the original game. I'm
  68. just trying to make sure that changes I've made haven't introduced
  69. new bugs.
  70. New revisions will be forthcoming soon.
  71. Also, when I've got all the original Doom features working and the
  72. program stabilized, I will release my source code for the program.
  73. To anyone working on their own Win32 ports of Doom: If you want to
  74. share programming information then all you have to do is ask. I'll
  75. tell you whatever I know if it will help.  I AM going to release my
  76. modified source code when I get this stabilized.
  77. A few new things have been added along the way.
  78. 1. A print screen key is now always available by pressing
  79.    the (Print Screen/Sys Rq) key on your keyboard.  If you
  80.    aren't playing a game, no message will appear on the
  81.    screen but a print screen PCX file WILL be generated.
  82. 2. I have added a console similar to the Quake/Quake II
  83.    console.  It isn't as fancy and no doubt not as functional
  84.    as the Quake console but it works and any keyboard command
  85.    such as the cheats can be entered in the console.  Also,
  86.    all messages that appear on the screen briefly will be
  87.    displayed in the console.  The console key is the "`"
  88.    key.
  89. 3. As you see above, a CD player is now supported.  A number
  90.    of features are planned for this (playlists, directory,
  91.    naming, song naming, etc.)  Trying to play a CD with no
  92.    CD in the drive will do nothing.  Removing the CD from the
  93.    drive while playing will result in the MIDI song being
  94.    restarted.  The CD player will detect if the CD has been
  95.    changed and start playing on the first music track (if
  96.    there is one) and will not play if there are no music
  97.    tracks.
  98. 4. Midi file playing. Currently a single MIDI file will be played
  99.    (if it exists) in the game directory. The name of this file is
  100.    doomsong.mid.  It can be any valid MIDI file.  It will be played
  101.    ALL the time unless you turn on the CD player.
  102. 5. There is now an "always_run" key. I got this idea from Chi
  103.    Hoang and his DOSDoom. The always_run key is the <CAPS LOCK>
  104.    key and it toggles between on and off.
  105. 6. There is an "mvert" setting and an "mvert" key to toggle it on
  106.    and off.  It is persistent (gets saved and restored).
  107. 7. Keyboard bindings have been added.
  108. 8. Mouse and joystick bindings have been added.
  109. 9. The system uses keyboard scancodes exclusively for system
  110.    controls.  All other values in windoom.ini are true=1 and
  111.    false=0.  true=on, false=off
  112. 10.The ability to record, stop and play back demo from the console.
  113.    This is currently not working properly.  You can try it but it
  114.    probably won't work right.
  115. ---------------------------------------------------------------------
  116. 2. Program Requirements
  117. This program is a Win32 application and REQUIRES DirectX 5
  118. (available for NT).  It would not have been possible to do
  119. what was done with DirectX 3.  DirectX 5 will be supported in
  120. the 5.0 version of NT. If you have Windows95 and you don't have
  121. DirectX 5, you can get it here:
  122. http://www.microsoft.com/msdownload/directx5/directx5.htm
  123. If you have NT 4.0 and want DirectX 5 you'll have to look around
  124. for it.  It's there but I don't know a stable place you can
  125. download it from.
  126. If you want to run ANYTHING under Windows95 you really should
  127. have at least 16 Meg of RAM.  32 Meg is MUCH better. NT better
  128. have 32 to start with.
  129. You must have a functioning TCP/IP connection to play a
  130. network game using this program.  Internet play is not stable
  131. at all and not recommended.
  132. You CAN play with just the keyboard but both the mouse and
  133. a joystick (or other game controller) are supported.
  134. There is a way for people who use NT 4 to run this program.
  135. There is a version of DirectX 5 for NT 5 floating around the
  136. Internet.  I found it at www.op3dfx.com on the 15 Jan, 1998
  137. news page. It appears to be the DirectX 5 from the NT 5 beta.
  138. I don't know that this is supposed to be distributed but I
  139. downloaded it and installed it on my NT 4.0 Server and it
  140. works.
  141. As far as I can tell, no resolutions below 640x480 are supported
  142. by the DirectX 5 for NT drivers.
  143. ---------------------------------------------------------------------
  144. 3. Setting up WinDoom
  145. Create a directory and put the WinDoom.exe program in it
  146. along with the Doom IWAD of your choice  (I've tested this
  147. with all three of the Doom I wads (doom1.wad, doom.wad and
  148. doomu.wad) as well as doom2.wad, tnt.wad and plutonia.wad.
  149. The order of precedence in looking for an IWAD is this:
  150. doom2.wad    - retail Doom II wad file
  151. plutonia.wad - Another Doom II IWAD from id
  152. tnt.wad      - Another Doom II IWAD from id
  153. doomu.wad    - ultimate Doom I retail wad file
  154. doom.wad     - Doom I registered shareware wad
  155. doom1.wad    - Doom I unregistered shareware wad
  156. When the program is first run, it will create a section in
  157. the win.ini file for WINDOOM that stores the location of
  158. the WinDoom program.  If you move the program or change the
  159. name of the directory in which the program is installed you
  160. need to update this ini file entry or remove it.
  161. An ini file will be created (or updated) in the directory
  162. in which WinDoom is run with the configuration information
  163. for the program. Modifying this file is currently the only way
  164. to change some of the mouse/joystick mappings.
  165. A way to change your keyboard mappings and the values for your
  166. mouse and joystick has been added to the console in the program.
  167. Make sure your shortcut, if you create one, has the directory
  168. where you installed the program as the working directory.  It
  169. probably won't run otherwise.
  170. I have not tried some of the original command line options to see
  171. if they work or not.  I have spent most of my time writing code
  172. to get the program working.  I will be testing the rest of these soon.
  173. I have tested the following and know that they work:
  174. -nomonsters
  175. -deathmatch
  176. -altdeath
  177. -net
  178. -skill
  179. -warp
  180. -episode
  181. -playdemo
  182. -timedemo
  183. -record
  184. -file
  185. -width
  186. -height
  187. For information on how to use the options other than -net, -width
  188. and -height please see the official Doom FAQ.
  189. I don't know of any others that are normally usable.
  190. ----------------------------------------------------------------
  191. 4. The console
  192. This program does not currently support the original music from 
  193. the game. It is stored in a format called "MUS" and is not
  194. directly playable by the MCI midi sequencer in Windows.
  195. In order to still have music in the game, I wrote some routines
  196. to access and control the cd player that is found in most pc's
  197. today.
  198. I made a vain attempt to map the cd controls into unused keys
  199. in the Doom keyboard but no combination I could think of made
  200. any sense.  So I created a console where cd commands could be
  201. entered.
  202. While I was testing the code for controlling the cd player from
  203. the console, I remembered what an absolute pain it was to try 
  204. to enter cheat codes without being able to tell if the keys
  205. were entered properly.  I decided to allow cheat code entry
  206. into the console as well so I could see what I was typing.
  207. I then decided to add NEW cheat codes that were similar to
  208. the ones I had gotten used to in Quake and Quake II. It sort
  209. of ballooned from there...
  210. The console command key is "`".  This key both opens and closes
  211. the console.  The menu command key <ESC> also closes the console
  212. and starts the menu.  If the menu is up when you press the console
  213. command key, the menu will close and the console will open.
  214. Here is a list of the commands you can now enter on the command
  215. line of the console:
  216.    iddqd          - god mode
  217.    idfa           - full ammo
  218.    idkfa          - keys full ammo
  219.    idclev         - change level
  220.    idchoppers     - chainsaw and invulnerability
  221.    idclip         - no clipping toggle
  222.    idspispopd     - no clipping toggle
  223.    idbeholdi      - invisibility
  224.    idbeholdv      - invulnerability
  225.    idbeholds      - strength (berserk pack)
  226.    idbeholdr      - radiation/environment suit
  227.    idbeholdl      - light amplification goggles
  228.    idbeholda      - all map cheat
  229.    cd on          - starts your cd player (switches from midi)
  230.    cd off         - stops your cd player (switches to midi)
  231.    cd pause       - pause/resume cd music toggle
  232.    cd resume      - pause/resume cd music toggle
  233.    cd next        - play next song on cd
  234.    cd +           - play next song on cd
  235.    cd prev        - play previous song on cd
  236.    cd -           - play previous song on cd
  237.    cd XX          - plays song number specified in XX 00 to 99
  238.    midi pause     - pauses/resumes the midi playback (toggle)
  239.    midi resume    - pauses/resumes the midi playback (toggle)
  240.    quit           - quits the game (immediately)
  241.    god            - enable god mode (degreelessness?) toggle
  242.    map            - e?m? or map?? (Doom I or Doom II map names)
  243.    noclip         - no clipping toggle
  244.    give all       - gives full ammo,armor,health,weapons,keys
  245.    give ammo      - gives full ammo
  246.    give armor     - gives full armor
  247.    give health    - give 100% health
  248.    give weapons   - gives all weapons
  249.    give keys      - gives all keys
  250.    give backpack  - gives ammo backpack
  251.    always_run X   - toggles always run 0 = off, 1 = on
  252.    swap_stereo X  - toggles swap left/right 0 = off, 1 = on
  253.    bind           - binds a value to a cvar
  254.    record         - records a demo in new demo II format
  255.    finish         - stops recording a demo II format demo
  256.    play           - plays back a demo II format demo
  257.    cmdlist        - lists console commands
  258.    The map and idclev commands are disabled from the console
  259.    during a network game. It crashes the machine you do it
  260.    on and locks up the KEY player's machine.  The other players
  261.    can exit the game but their systems are VERY slow. (You
  262.    have to hold the keys longer.)
  263.    All the original cheat codes work EXACTLY as they did
  264.    originally.  No changes have been made to those. The
  265.    new MAP command works similarly to the MAP command in
  266.    Quake/QuakeII. If you want to select a Doom 1 or Doom
  267.    II level you type in MAP then the full name of the
  268.    map you want to load (E1M7 or MAP19).
  269.    All the cheats are disabled during network games, also.
  270.    Note: This does not include the game control commands,
  271.    just the "cheats".
  272.    A number of other commands are planned for this. Mostly
  273.    just game variables that you can set. (like always_run)
  274.    All game input is dead while the console is active, so
  275.    be warned! The <ESCAPE> key as well as the "`" key will
  276.    terminate the console.  Any command that you have not
  277.    pressed <ENTER> to complete will be thrown away.  The
  278.    menu and console shut each other down when you call
  279.    them up.  They are mutually exclusive.
  280. ----------------------------------------------------------------
  281. 5. Changing your controls
  282. With the "bind" command on the console, you can now change
  283. your keyboard mappings from the console.  Additional mappings
  284. and controls will be added later.
  285. The bind command works backwards from the Quake bind command.
  286. You enter the bind command, the cvar you want a keystroke bound
  287. to followed by the key or the keyname.
  288. Some keys are not printable and so are accessed through their
  289. keyname.  Other keys are printable and accessed directly by
  290. entering the actual key.
  291. The following are the keyboard control cvars that have been
  292. implemented so far:
  293. key_right       - the key to turn right - also used in menu
  294. key_left        - the key to turn left - also used in menu
  295. key_up          - the key to move forward - also used in menu
  296. key_down        - the key to move backward - also used in menu
  297. key_strafeleft  - key used to slide to the left
  298. key_straferight - key used to slide to the right
  299. key_fire        - key used to fire weapons
  300. key_use         - key used to open doors and flip switches
  301. key_strafe      - toggle key used to change turn to strafe
  302. key_speed       - key used to go faster (straight or turning)
  303. joyb1           - joystick button 1
  304. joyb2           - joystick button 2
  305. joyb3           - joystick button 3
  306. joyb4           - joystick button 4
  307. mouseb1         - left mouse button
  308. mouseb2         - right mouse button
  309. mouseb3         - middle mouse button
  310. These cvars can be set to any printable character or they
  311. can be set to any of the following key names:
  312. NULL        - do nothing
  313. BACK        - back-space
  314. ENTER       - normal enter key (may not function properly)
  315. LCTRL       - left control key
  316. LSHIFT      - left shift key
  317. RSHIFT      - right shift key
  318. LALT        - left alt key
  319. SPACE       - space bar
  320. CAPS        - caps lock key
  321. NUMLOCK     - numlock lock key
  322. SCROLL      - scroll lock key
  323. PAD7        - 7/home key on keypad
  324. PAD8        - 8/up arrow on keypad
  325. PAD9        - 9/page up on keypad
  326. PAD-        - the "-" key on keypad
  327. PAD4        - 4/left arrow on keypad
  328. PAD5        - 5 key on keypad
  329. PAD6        - 6/right arrow on keypad
  330. PAD+        - the "+" key on keypad
  331. PAD1        - 1/end key on keypad
  332. PAD2        - 2/down arrow on keypad
  333. PAD3        - 3/page down on keypad
  334. PAD0        - 0/insert on keypad
  335. PAD.        - ./delete on keypad
  336. PADENTER    - enter key on keypad
  337. RCTRL       - right control key
  338. PAD/        - the "/" key on keypad
  339. RALT        - right alt key
  340. HOME        - home key (grey)
  341. UP          - up key (grey)
  342. PAGEUP      - page up (grey)
  343. LEFT        - left arrow (grey)
  344. RIGHT       - right arrow (grey)
  345. END         - end key (grey)
  346. DOWN        - down key (grey)
  347. PAGEDOWN    - page down (grey)
  348. INSERT      - insert key (grey)
  349. DELETE      - delete key (grey)
  350. The bind command currently works backward from the bind command
  351. in Quake.  The Quake bind command binds commands to keys.  This
  352. bind command binds keys to commands.  A subtle but important
  353. difference. (and one that may change)
  354. Doom was designed with only a few customizable commands. The
  355. rest are set and unchangable.  Quake was designed with a very
  356. different idea about how the controls should work.
  357. Doom may, at a later date, be converted to use the type of
  358. command control that Quake uses.  For now I have stayed with
  359. the original command implementation.
  360. The commands in Doom are referred to as cvars.
  361. The bind command syntax works like this:
  362. BIND KEY_USE SPACE
  363. Which will bind the space bar to the use cvar. You will get a
  364. message if the bind command is successful telling you that the
  365. cvar is bound to the key you specified like this:
  366. CMD KEY_USE BOUND TO SCANCODE 57
  367. In this case the space bar has a keyboard scan code of 57.
  368. If the keyboard command you are trying to bind to a command
  369. cvar does not exist, you will get this error message:
  370. BIND ERROR: INVALID KEY VALUE
  371. If the keyboard command cvar you are trying to bind does
  372. not exist, you will get this error message:
  373. BIND ERROR: INVALID CVAR
  374. There is also another type of command you can issue at the
  375. console which is not listed above because it is used to
  376. set the value of some game control cvars.
  377. Control cvars are not the same as command cvars.  Command
  378. cvars are used to generate program input.  Control cvars
  379. are used to control the way the program behaves.
  380. The currently defined control cvars are:
  381. always_run     - you always run in the game
  382. swap_stereo    - reverses stereo sound "panning"
  383. usemouse       - is mouse input available
  384. mousebfire     - which mouse button is used to "fire"
  385. mousebstrafe   - which mouse button toggles "strafe"
  386. mousebforward  - which mouse button moves you forward
  387. usejoystick    - is joystick input available
  388. joybfire       - which joystick button is used to "fire"
  389. joybstrafe     - which joystick button toggles "strafe"
  390. joybuse        - which joystick button opens doors/flips switches
  391. joybspeed      - which joystick button makes you run
  392. mvert          - 0 = mouse normal, 1 = mouse left/right only
  393. The syntax for using these controls is simple. You enter the
  394. name of the cvar and the value you wish to assign to it like
  395. this:
  396. always_run 0
  397. If the cvar is valid and the value is within the acceptable
  398. limits, you will get a message like this:
  399. always_run SET TO 0
  400. If you enter an invalid cvar name, you will get this error
  401. message:
  402. ERROR: INVALID CVAR
  403. If you enter a valid cvar name but enter an invalid value for
  404. it, you will get this error message:
  405. ERROR: INVALID VALUE
  406. The usemouse and usejoystick cvars tell the program whether
  407. you want to use mouse and/or joystick input if either or both
  408. are available.
  409. The value of 0 for either of these turns off the support for
  410. that device.  A value of 1 turns it back on.
  411. The button numbers for the mouse and joystick start at 0 rather
  412. than 1. So a two button mouse has buttons 0 and 1. The left and
  413. right mouse buttons respectively. A joystick with two buttons
  414. also has buttons 0 and 1.  Which button is which usually depends
  415. on the joystick but the trigger is usually button 0 while the
  416. the other buttons are numbered starting at 1.  Some experimen-
  417. tation may be required before you get the buttons to work the
  418. way you expect them to.
  419. Remember that usemouse must be set to 1 to be able to use a
  420. mouse and usejoystick must be set to 1 to be able to use a
  421. joystick with the program.
  422. The functions defined in the cvars list are ALL the functions
  423. that could ever be assigned to mouse and joystick controls in
  424. Doom.  No other functions have ever been possible.
  425. The changes you make to your controls with this are immediate
  426. and persistent. (meaning that they are saved in the windoom.ini
  427. file and are used the next time you start the WinDoom)
  428. ----------------------------------------------------------------
  429. 6. Using hi-res mode
  430. Part of the reason for porting this code to Win32 was to be
  431. able to use high resolution video modes.
  432. This program supports all video 8 bit (256) color modes that are
  433. available with the DirectDraw drivers on your computer.  Some are
  434. not recommended.  Do NOT try to use video modes where the height
  435. value is greater than the width value. (i.e. 320x400)  You will
  436. NOT be happy with the result and the program will probably die.
  437. In order to know what video modes are available to you, you can
  438. look in the DirectX applet in your control panel or you can run
  439. the program once and look at the contents of the windoom.dbg
  440. file created in the directory where you installed the program.
  441. Once you have run WinDoom a video mode list will be written to
  442. the windoom.dbg file.  You can pick a mode from this list as
  443. long as the height does not exceed the width and the color bits
  444. value is 8.
  445. I have had some machines not give a picture when running in some
  446. of the high resolution modes even though the program was running.
  447. I could press escape, down, enter and "y" to exit the program
  448. but I never saw any output from the game.  I don't know what
  449. causes this.  I am investigating it.  If you have this problem
  450. please notify me and tell me what video setup you have.
  451. The syntax for high the resolution modes is:
  452. -width xxxx -height yyy
  453. where the xxxx is the width you want to use (like 320) and the
  454. yyy is the height you want to use (like 240).  So to start
  455. WinDoom and run the program at 640x480 resolution, you would
  456. put the following parameters on the command line of your WinDoom
  457. shortcut:
  458. -width 640 -height 480
  459. You can access the command line for your shortcut by right
  460. clicking the mouse on the shortcut then selecting the properties
  461. option then clicking on the properties tab in the dialog box.
  462. DISCLAIMER
  463. I make absolutely NO warrantees of any kind for this
  464. program.  I am not responsible for any consequences
  465. of anyone using this program.
  466. id Software owns the rights to Doom and to the source
  467. code they distributed.  This program was compiled from
  468. source code to that game that was modified by me. So
  469. don't bug id Software if you've got a problem with
  470. this program.  I'm the one who screwed up. Tell me.
  471. ---------------------------------------------------------------------
  472. 7. Playing a network game
  473. Okay, this is little different than a DOS Doom network game.
  474. It's just like the Linux parameters, though.
  475. What you want to do is create a shortcut to your game and
  476. then change the parameters of your shortcut to include the
  477. network commands on the command line.
  478. The parameter to start a network game is "-net" (without the
  479. quotes).  You then follow the -net command with the player
  480. number your machine is going to be (1 to 4) and the IP
  481. addresses or hostnames of the OTHER systems you will be
  482. playing with. The IP addresses MUST be preceded by a period
  483. ".". If you leave off the leading period, the game will
  484. think that the IP address is a hostname and try to resolve
  485. it into an IP address (and die on you).
  486. Sample command lines for two players would look like this:
  487. machine 1: (hostname: rimmer IP address: 192.168.1.5)
  488. windoom -net 1 holly -deathmatch -nomonsters
  489. OR
  490. windoom -net 1 .192.168.1.4 -deathmatch -nomonsters
  491. machine 2: (hostname: holly IP address: 192.168.1.4)
  492. windoom -net 2 rimmer -deathmatch -nomonsters
  493. OR
  494. windoom -net 2 .192.168.1.5 -deathmatch -nomonsters
  495. In order to use hostnames rather than IP addresses you
  496. must either have DNS setup or have a valid hosts file.
  497. If you add a third or fourth machine to the game you need
  498. to add the IP addresses of the OTHER machines to the
  499. command line on each machine. You do not put your own
  500. machine's IP address on the command line.  You also
  501. do not put how many machines are in the game after the
  502. -net command.  Only which player, out of the 4, you are.
  503. The player numbers must be contiguous.  You can't have
  504. players 1,2 and 4.  Also, one player MUST be player 1.
  505. Player 1 is the KEY player and that machine coordinates
  506. all the other systems.
  507. The number of players in the game is determined by how
  508. many IP addresses you put on the command line plus your
  509. machine.
  510. The command line on the KEY player's machine in a four
  511. player game might look like this:
  512. windoom -net 1 .192.168.1.3 .192.168.1.4 .192.168.1.5 -deathmatch -nomonsters
  513. OR
  514. windoom -net 1 cat holly rimmer -deathmatch -nomonsters
  515. The other player's command lines in the same game might
  516. look like this:
  517. windoom -net 2 lister holly rimmer -deathmatch -nomonsters
  518. OR
  519. windoom -net 2 .192.168.1.2 .192.168.1.4 .192.168.1.5 -deathmatch -nomonsters
  520. windoom -net 3 lister cat rimmer -deathmatch -nomonsters
  521. OR
  522. windoom -net 3 .192.168.1.2 .192.168.1.3 .192.168.1.5 -deathmatch -nomonsters
  523. windoom -net 4 lister cat holly -deathmatch -nomonsters
  524. OR
  525. windoom -net 4 .192.168.1.2 .192.168.1.3 .192.168.1.4 -deathmatch -nomonsters
  526. If you start a network game and the program appears to be
  527. "hung" (black screen only), press and hold the escape
  528. key for a few seconds.  The program will terminate. It
  529. generates an error when shutting down but it doesn't
  530. affect game play.  I should have that error figured out
  531. soon.
  532. I DO NOT know if the UDP datagrams used are robust enough
  533. to allow this to be played over the internet.  My assumption
  534. is that it would be but I don't know. I haven't tried it.
  535. I have started up a four player game on my network and
  536. played at all four stations. Response was good and play
  537. appeared to be smooth.
  538. I'd be interested to know if anyone is able to play this
  539. over the Internet with all the problems that entails. I can't
  540. because of my router.
  541. ---------------------------------------------------------------------
  542. a. Acknowledgements
  543. Thanks to all of you who have downloaded the program (I'm not
  544. calling it a game. The game part comes from id!).  Your feedback
  545. has been very helpful and has made this a better program.
  546. And to those of you who have had problems.  I thank you for
  547. your patience while I worked out the bugs you've reported.
  548. Thanks again to id Software for making Doom.
  549. Thanks to Chi Hoang, Andy Bay, and Bernd Kreimeier for the
  550. programming ideas.
  551. Thanks to the other members of Project Doom for their support
  552. and interest.
  553. Thanks to John Carmack, John Cash, Michael Abrash, Brian Hook
  554. for letting me peek over your shoulder (figuratively speaking)
  555. occasionally.  It's been very instructive.
  556. Microsoft(tm)(c) 1975-1998, Microsoft, Inc., All Rights Reserved.
  557. Quake(R)(c) 1996, id Software, Inc. All Rights Reserved.
  558. Quake II(R)(c)1997, id Software, Inc. All Rights Reserved.
  559. DOOM(R)(c) 1993, id Software, Inc. All Rights Reserved.
  560. DOOM(R) and the DOOM image are registered trademarks of
  561. id Software, Inc.
  562. ---------------------------------------------------------------------
  563. WARNINGS!
  564. This program is by no means ready for prime time but it does work
  565. mostly.  The original music was a large part of Doom for some of
  566. us and this game isn't complete without it. It IS being worked on.
  567. It may not be possible, however, to play against other versions of
  568. Doom with this code.  I DO have the specifications for the IPX
  569. protocol used by the original Doom and I will attempt to make that
  570. work as well.
  571. Supporting DOS Doom in network games is, therefore, doubtful but
  572. it may happen.  However if Chi and I can maintain the same message
  573. data for the networking, you should be able to play network games
  574. between the two.