Short: V0.8 Beta(!) 4. Fast doom port. Author: dontthinkhewantsspam@georg.stegerATrolmail.net (Georg Steger) Type: game/shoot Version: 0.8 Requires: OS 3.0, 68020, some fast memory, AGA or Gfx-Board, a WAD file Architecture: m68k-amigaos This is a re-upload. It miraculously disappeared from Aminet with all of the other Doom ports. *************************************************************************** * * * D O O M A T T A C K 0 . 8 B E T A 4 * * * *************************************************************************** INTRODUCTION ============ This is not the final version 0.8. Several things are missing such as the installation script, several new translations for the prefs program, graffiti support, etc. The program might and probably will be buggy, as I have converted many new routines to assembly but without doing many tests. INSTALLATION ============ Copy the files in the "data" directory to your Doom directory. Be sure to copy everything (with the exception of the exe versions you are not going to use) and not to change the directory structure. It's probably a good idea making a backup of the old executable first. Example: Installation with the Workbench (for BEGINNERs) ŻŻŻŻŻŻŻŻ 1) Open the "data" drawer 2) Delete the executable versions you are *not* going to use 3) Rename the executable version you are going to use to "DoomAttack" 4) Open your "doom" drawer 5) Activate the "data" drawer window and do a "Select All" (Workbench menu). 6) Hold down SHIFT, click on one of the entries in the "data" drawer window (don't release mouse button) and drag everything into the "doom" drawer window. Now you can release both SHIFT and the left mouse button. 7) In the requester saying "... already exists. Do you want ..." you can select "Replace All" CHANGES SINCE V 0.8 BETA 3 ========================== o Support for highres screenmodes upto 640 x 512. Not tested very much as it is terribly slow on my computer. Actually only the following c2p routines support highres screenmodes (standard Amiga screenmodes are too slow for this, anyway): c2p_akiko c2p_akiko2 c2p_020_blitter c2p_040+ o Support for Graffiti. Not tested and therefore very probably not even working. To activate it you must select "GRAFFIT: NTSC" or "GRAFFITI: PAL" from the screenmode requester and use the c2p routine "c2p_graffiti". (DoomAttackPrefs/Video). If it does not work then it would be cool if someone could help me with the graffiti routines. If you want to have a look at the source code of the c2p_graffiti plugin just let me know. BTW: the routines are based on the graffiti.lib from Aaron Digulla. o Nullmodem plugin should now work over modems, too, but this has not been tested. The prefs window has now gadgets for modem init and exit strings. If your telephone line still uses PULSE dialing open the modem config file ("DoomAttackSupport/config/DANet_Nullmodem.config") with an editor and add "PULSE" at the end of the line. Usage: player 1: doomattack -net 1 -dial ŻŻŻŻŻŻ player 2: doomattack -net 2 -answer If you want to connect to a PC you must use "-forceversion" and "-pcchecksum". See notes below. o IPX plugin. Based on routines from Steffen Häuser (author of ZhaDoom). Not tested. You need amipx.library from G.J.Peltenburg. The library can be found on Aminet. Usage for all players: doomattack -net ŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻ For more information on how to get this to work either have a look at the docs of ADoom which seems to support IPX since a long time or contact Steffen Häuser o Akiko c2p routines did not work correctly. Hope they finally do, now ... o Possibility to turn always run mode on/off with an user defined key (DoomAttackPrefs/Keys 2) o Possibility to define the key used to change crosshair look in Doom- AttackPrefs/Keys 2. It's also possible to change the color of the crosshair by holding down SHIFT while pressing the crosshair key. o Possibility to define a key which forces looking. This allows you for example to use the mouse for running and at the same time for looking (when force look key (DoomAttackPrefs/Keys 2) is hold down). o Various new actions can be assigned to mouse and joystick buttons: JUMPING, FORCE LOOK and CHANGE WEAPON. This might not yet work very well with CD32 joypads as some of the buttons are reserved for ESC and RETURN. o Possibility to invert looking (DoomAttackPrefs/Mouse) o It's possible to have the look autocentered when the force look key or button is released (ATTENTION: this disables the look up and look down keys!!): DoomAttackPrefs/Video o Possibility to set the speed of look autocentering: DoomAttackPrefs/Video o Possibility to activate a window patch in DoomAttackPrefs/Program which should allow you to jump through most windows (normally not possible). Do not use this in multiplayer games unless all players have switched this option on (meaning that all players must use DoomAttack). o Some secret options which can only be used by editing the config file (.doomrc) with an editor. Don't change this options unless you know what you do. If you are using a patch WAD file, where you see some strange graphic errors or disappearing sprites/monsters/objects try increasing maxdrawsegs (and maybe maxvisplanes) in the first case and maxvissprites in the second case. maxvissprites: max. number of visible sprites maxvisplanes : max. number of "visplanes" maxdrawsegs : max. number of draw segments special : set this to 1 to switch the end message (when quitting Doom) off. o Some bug fixes: - Some options could not be used in DoomAttackPrefs/Program/Start Options - Replaced a very stupid check in d_main.c/D_ProcessEvents which slowed down Doom II. - The music plugin using the doomsound.library had a bug with the volume. You could hear the music only when the volume slider in Doom was at certain positions. - ... o Improved the prefs program: - Better (less flickering) refresh. I'm using a layer trick which unfor- tunately slows down speed a little bit and might also be incompatible with some commodities/hacks/etc. You can switch this feature off by using the cli argument/wb tooltype "UNCOOLREFRESH" - GADGETFIX is now by default turned on (it prevents the page listview slider gadget from making the background pattern shine through). To turn it off (in case of problems with GADTOOLS look improvers) use the cli argument/wb tooltype "NOGADGETFIX". - Possibility to specify another font for the GUI. When the window does not fit on the screen then DoomAttackPrefs opens a screen of its own. One user told me that on his computer this screen did not close when DoomAttackPrefs was quit. Did this happen to someone else, too? By specifying another font (possibly a proportional one) the window might become smaller and as result fit on the Workbench screen (--> no screen close problems): cli argument/wb tooltype "FONT". For example: FONT=topaz/8 FONT=helvetica.font/11 CHANGES SINCE V 0.8 BETA 2 ========================== o Possibility to look up and down. Based on DosDoom. It might not look perfect, as it uses a rather simple trick but it's always better than nothing. Related options (DoomAttackPrefs): Game/No auto aiming: ŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻ Usually the vertical aiming is done automatically as there was no up and down looking implemented in the original (PC) Doom. With this option switched on you have to do the vertical aiming by looking up and down which can be done with the keyboard and the mouse (set Mouse/Vertical mouse movements to Look). To make aiming easier you can activate a crosshair by pressing during game. Actually there are four different crosshairs. Press again to switch between them. WARNING: "No auto aiming" must not be activated if you want to do ======== a multiplayer game. You will get consistency errors if you do so. Keys 2: ŻŻŻŻŻŻŻ In this page you can set the keys for looking up/down and for centering the look. Further you can specify the look "speed". Mouse/Look speed: ŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻ Speed of "Mouse Look" (set "vertical mouse movements" to "Look", first) Video/Sky stretch factor: ŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻ In order to make up/down looking work correctly, the sky must be stretched vertically, otherwise you would see a wrap around effect. If you are not going to use up/down lookings you can set this to "1". The stretched sky does not look very nice, I know, but I'm planning to make a tool with which you can change the different sky textures with a paint program. Video/Auto look centering: ŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻ Automatically centers the look angle when you start walking/running. It is still possible to do small steps withouth having the look angle changed. o Possibility to jump. Set the key (jumping with joystick or mouse is not yet possible) in DoomAttackPrefs/Keys 2. The jump power can be set in DoomAttackPrefs/Game/Jump Power. Note : You will not be able to jump through every window, because of the WADs usually marking walls with a window as not traversable. Warning: You should not jump if you are doing a multiplayer game, al- though it should theoretically work if both players are running DoomAttack with the same jump power. Might also work with Dos- Doom - the jump routines are based on this program. o Possibility to change the gravity (DoomAttackPrefs/Game/Gravity). You must specify it in fixed point format (like the jump power): - Fixed point to floating point conversion: divide by 65536 - Floating point to fixed point conversion: multiply by 65536. So 65536 means 1.0, 32768 is 0.5, etc. Try 10400 for moon feelings. Warning: You should not change the gravity if you are doing a multiplayer game, although it should theoretically work if both players are running DoomAttack with the same gravity. o New 060 version of doomsound.library (from Joe Fenton). The old one was buggy. o Fixed long outstanding bug in error requesters, when DoomAttack was started from WB. You should not get cryptic error messages (like "Error: $ß%i not found") anymore. o It's possible to select a vertical resolution of 240 in DoomAttackPrefs. o Changed DoomAttackPrefs to auto set vertical resolution after having selected a new screenmode. CHANGES SINCE V 0.8 BETA 1 ========================== o Nullmodem Plugin should now work with the 060 version, too. The problem was, that the plugins, which were written with the MaxonC Compiler (InitModules() function) changed the rounding mode of the FPU. DoomAttack needs the rounding mode of the FPU to be set to "round toward smallest number" to work correctly. o Bug fix: Demo recording did not work correctly. Now it should. Example on how to record a demo: DoomAttack -record mydemo -maxdemo 50 This will create a file called "mydemo.lmp" in the Doom directory. The maximum file size will be 50 KBytes (not Bytes!). The default maximum file size is 128 KBytes. It's possible to stop demo recording by pressing 'q' in the game. If you do not stop demo recording with 'q' then recording will stop automatically when the maximum file size is reached. To replay the demo type in: DoomAttack -playdemo mydemo o New option to lock mouse running. By switching the relative option on in DoomAttackPrefs -> "Mouse", moving the mouse will be limited to let the player turn left or right (and strafe). o MIDI routines from Joe Fenton are now in a library (doomsound.library). You don't need to copy the library to "LIBS:" It can aswell be in the Doom directory or in a subdirectory "libs" inside the Doom directory. Note that there's also a 060 version of the library. So if you ara a 060 user then delete "doomsound.library" and rename "doomsound.library.060" to "doomsound.library"! The old doom sound server files aren't needed anymore. You can delete the following files: DoomAttackSupport/plugin/DAMusic_ADoomSndServer.plugin DoomAttackSupport/prefs/ADoomSndServerPrefs DoomAttackSupport/config/DAMusic_ADoomSndServer.config You can also delete "ADoom_SndSrvr" in the doom directory, but if you are using ADoom you probably should not. I don't know if the most recent ver= sion is already using the library instead of this file. o ASL requesters for screen mode selection and screenshot saving are now centered on the screen. Another change for the screenmode requester is that the "window on screen" modes appear in the list. o Possibility to specify start options with DoomAttackPrefs: Some of Doom- Attacks' options cannot be configured directly in DoomAttackPrefs. Now you can specify the options (for example "-fps" or "-forcedemo") you want to use permanently in DoomAttackPrefs -> "Program" -> "Start Options". o Possibility to set default configuration file for DoomAttackPrefs by setting it's file comment to: "#filename". For example: filenote DoomAttackPrefs "#DoomAttack.config" tells DoomAttackPrefs to use "DoomAttack.config" as default configuration file (you should of course do the same thing with DoomAttack). This can be overridden by using the CLI argument or Workbench tooltype "CONFIGFILE" CHANGES SINCE V 0.7 =================== o SOME BUG FIXES o SUPPORT FOR ANALOG JOYSTICKS (routines from Piotr Pawlow) To activate it set "Controller Type" (DoomAttackPrefs -> "Joystick") to "Analog Joystick". o SUPPORT FOR MEDRES RESOLUTIONS Now DoomAttack supports some higher resolutions such as 320 x 256, 320 x 400, 320 x 480, 320 x 512. There are no 640 x ? screenmodes, because from what I have heard ADoom, which supports this, in such high resolutions isn't playable even if one has an 68060 with 66 Mhz. To activate the new medres resolutions select an appropriate screenmode (DoomAttackPrefs -> "Video" -> "Screenmode") and set the "Vertical Resolution" to the relative height. NOTE: To avoid aspect problems and maybe some other strange things (this new feature hasn't been tested very much, as it is simply to slow on my 68030/50) you should only use the 320 x 400 mode. If the game is running too slow, try switching Remapping to "FAST" (DoomAttackPrefs -> "Video"). This will eat lots of memory! o POSSIBILITY TO PLAY DOOMATTACK IN A WINDOW It's now possible to play DoomAttack in a Window on the Workbench or on the default public screen. This is actually only usable (but not tested) on GFX Boards (and maybe CD32/AKIKO), because the actual c2p routines all work on a non interleaved bitmap -> you will get a terrible flickering. To activate the window mode select "Window on Workbench" or "Window on def. Public Screen" from the ASL screenmode requester (DoomAttack- Prefs -> "Video" ->"Screenmode") o MIDI SOUND It's now possible to get the original music from the WAD files with two new plugins, which are both based on the ADoom music routines from Joseph Fenton. Both plugins can slow down the game quite a bit (especially the one using ADoomSndSrvr), much DAMusic_Midi: ============= This uses the routines from older versions of ADoom. To get it to work you need the "Midi_Instruments" file from ADoom (put it to the Doom directory). DAMusic_ADoomSndSrver: ====================== This uses the new ADoomSndServer from ADoom 1.2 to give you very good music and sound FX (!) with 16 channels. Unfortunately the slowdown in the game is rather high on my 68030. It is possible to configure ("Music only"/"Sound only") this plugin by first selecting the plugin (DoomAttackPrefs -> "Audio") and then clicking on the "?" gadget. o GUI TO CONFIGURE THE P61A MUSIC PLUGIN First select the P61A music plugin (if it is not yet selected) and then click on the "?" gadget. The GUI has a very powerful AppWindow support, which means that you can drag icons from the Workbench over the window. This makes it very comfortable to use. You can drag an icon directly over an entry of the listview gadget - which will be immediately set to the filename of the icon you have dropped. If you drop the icon over the string gadget, then the active entry of the listview gadget will get the new filename, instead. With DEL you can "inactivate" an entry, which means that the plugin will play the "DEFAULT MUSIC" (= first entry in the listview). With SHIFT DEL you can inactivate all entries at once. Important: The P61A plugin does not load it's settings from ".musicrc" anymore. Now it loads: "DoomAttackSupport/config/DAMusic_P61A.config" The format of the settings file has not changed so you can copy your old ".musicrc" to this directory and rename it to "DAMusic_P61A.config" o NULLMODEM PLUGIN It's finally possible to do a null modem game between two computers. There are two plugins, one for AMIGA/PC and one for AMIGA/AMIGA (not tested, if it does not work try the one for AMIGA/PC, it should work between AMIGA/AMIGA, too). The plugins can be configured by first selecting them (DoomAttackPrefs -> "Multiplayer") and then clicking on the "?" gadget: You can select the serial device to use (if possible use a fast one such as "8n1.device". - How to start DoomAttack for AMIGA/AMIGA game: Player 1: doomattack -net 1 Player 2: doomattack -net 2 - How to start DoomAttack for AMIGA/PC game: Amiga player: DoomAttack -net 1 -pcchecksum -forceversion 109 PC player: sersetup.exe -14400 "-forceversion 109" is for PC Doom 1.9. If the PC player has version 1.666 use "-forceversion 106". If you want to use a higher baud rate change the settings in DoomAttackPrefs (as described above) and on the PC start sersetup.exe with "- ". Watch out that PC Doom does not support 28800 bps! IMPORTANT: On 060 machines the nullmodem plugins will probably only work if the second computer has a 060 cpu, too. At least on AMIGA/PC either the Amiga Doom or the PC Doom aborts with an "consistency failure" as soon as one of the players starts moving around. I guess the reason is the FPU which is used on 060 for FixedMul and FixedDiv. Because of the higher precision it probably gives different results every once and then. o MMU SPEEDUP ROUTINES FOR 040/060 CPUs There are two modes (DoomAttackPrefs -> "Program" or cli argument "-mmu" and "-mmu2"). Try them out both (the second one will only work if there's no other program using the MMU) o NEW OPTONS Use "-wad" to specify the main wad file. This allows you to have for example "doom.wad" (from Doom 1) and "doom2.wad" (from Doom 2) in the same directory. o POSSIBILITY TO USE ANOTHER CONFIG FILE BY CHANGING FILE COMMENT. If you are using other ports of Doom, too, then it might be annoying to see, that the DoomAttack config file gets "corrupted" every time you start one of those other ports. When launching DoomAttack from WB, one can add "-config " to the tooltypes, but when shell, using "-config " every time might be too complicated. Therefore it's now possible to tell DoomAttack which config file to use by setting it's file comment: filenote DoomAttack "#DoomAttack.config" for example tells DoomAttack to use "DoomAttack.config". You must use the "#" char, otherwise DoomAttack ignores the comment. You must also tell DoomAttackPrefs the new filename. Actually this can only be done with the "CONFIGFILE" tooltype, if you start DoomAttackPrefs from Workbench, or with the "CONFIGFILE" CLI option if you start DoomAttackPrefs from Shell. *** FINAL NOTE *** If you encounter some bugs, let me know. If you are using the 060 version of DoomAttack then have a try with one of the other versions, too, to see whether the bug is also in the "normal" versions. --------------------------------------------------------------------------- Georg Steger: steger@pass.dnet.it