XDOOM - a portable Doom engine based on id Software's public sources -------------------------------------------------------------------- This archive includes a Doom(tm) and Doom][(tm) compatible game engine and a GUI launcher for those, who don't like to use all the command line options. This software is programmed and tested on various UNIX systems, no work was done so far, to make it working on DOS, MS Windows, OS/2, Mac-OS or an Apple][. Chances aren't great that it ever will be ported to a ZX80, but you never know... The name XDOOM was chosen for some reasons: - It's an UNIX (X) application. - X also could stand for cross-platform support, portability is an issue here. - And finally it's eXtended some, from what was released originally. Features of the game engine: * Bug fixes from the sources id Software released: - no TFE - no Medusa - no bullet and missile eating walls For PWAD compatibility tests the game engine still can be compiled with this bugs/features of the original game. * Plays the huge PWAD files which crash original Doom 2. Visplanes and other data structures are allocated dynamic instead of using fixed sized arrays, so they can't overflow. No 2s line HOM bug anymore, because the drawsegs are dynamic allocated and the engine cannot run out of drawsegs. Vissprites are allocated dynamic, the engine allows infinite amount of sprites in view. * Slime trails caused by round off error fixed. * Does merge sprites and flats from PWAD's correctly with the IWAD, no external tools necessary for merging a PWAD before playing it. * Allows more than one sky texture per map and usage of different skies than the hardcoded defaults in original Doom. * Enhanced version can play WAD files in extended Hexen format, a Hexen compatible P code interpreter is builtin. This doesn't mean that XDoom can play Hexen WAD files, this means that Doom WAD files can be created, which take advantage of features from the Hexen engine. An example PWAD is included. The script language ACS invented by Raven Software for Hexen is used to write the scripts, the acc compiler needed for this is included in xwadtools. * Portable, is known to work on: Linux x86 1.2.x, 2.0.x, 2.1.x, 2.2.x Linux PPC Linux Dec Alpha 2.2.x (*) FreeBSD 3.x OpenServer 5.0.x Unixware 2.1.x Unixware 7 Solaris SPARC 2.5.1, 2.6 & 2.7 Solaris 7 x86 AIX 4.2 Irix 6.5 (*) Not fully tested, might not work properly, see release notes for details. Can be ported to any UNIX with X11 without too much efford. Depending on the OS full screen direct frame buffer usage is supported too, as an example under Linux x86 it runs on [S]VGA and Voodoo 3DFX cards, on FreeBSD and SCO OS's it runs on [S]VGA cards on the system console. * Works on various X visuals (auto detected): 8bpp Pseudo Color 16bpp True Color 24bpp True Color 32bpp True Color If game engine and X server run on different hosts with opposite byte order this works too for 8, 24 and 32bpp, not yet for 16bpp, colors will be wrong. * Has a new cooperative multiplayer mode, boy, you really need to cooperate with each other to get anywhere. Might be a new challenge for WAD authors. * Can spawn different things dependent on game mode, single player, deathmatch, cooperative. This is Boom compatible, example PWAD included. * Perfect game play with mouse under X11 and full screen. * Joystick support under Linux x86, prepared to write new joystick support modules for other OS's, if a device driver is available. * Sound and music support for all OS's with a 4Front OSS sound driver, supports 8 and 16 bit sound cards and Creative AWE cards. * CD audio support with an OS independent support layer, which allows to make it working with any OS. * Chaingun can have it's own sound without an impact on the pistol sound. Example included to make it sound like a big bad gun and not like a rapid firing pistol ;-) * Translucent objects supported with a translucency table in PWAD's. Some explosions are rendered translucent too. Tool to build translucency tables for PWAD's is included in xwadtools. * Translucent wall textures and functional laser beam barriers and force fields, even translucent doors and translucent scrolling walls can be done. Example PWAD's included. * Horizontally sliding doors, example PWAD included. * User customizable switches and texture/flat animations, compatible to Boom and ZDoom. The included example PWAD's make use of this, a tool to build the tables for inclusion into PWAD's is included in xwadtools. * UAC communication gadget (PDA) for extended interaction with the environment. The included example PWAD's make use of the device. * Supports all extended and generalized linedefs defined for Boom by TeamTNT, like scrolling floors and ceilings. That includes carrying objects on scrolling floors. So it's possible to build conveyor belts, escalators and many other interesting structures. Example PWAD included to show some of the implemented features, the PWAD is compatible between XDoom and Boom. * Displays the end text from IWAD's and PWAD's. * If levels have no secrets, 100% secrets is displayed in the status. * Some assembler optimization for low end x86 systems. * Always Run key and 180 degree turn key. New with this release: ----------------------------------------------------------------- | The game engine version was increased to 1.15, due to changes | | for saved game support. Old saved game files from releases | | before cannot be loaded anymore, so keep a copy of the | | previous release, to finish saved games. | | If you don't use the top-level makefile to install this | | release, make sure you copy xdoom.wad to | | /usr/local/games/xdoom, else the engine won't work. | ----------------------------------------------------------------- Full Boom support, any Boom level should play now! Includes everything, generalized linedefs and extended sectors, colormap support, fake ceiling/floor sectors, wind and current effects etc. Now, that said, the enhanced Boom support required many changes in the sources all over the place. It is very likely that some of the Boom support contains bugs. The added features are so many that I haven't had a chance yet, to test all and everything. I have playtested with a bunch of Boom level maps tho, get all the Boom levels from Kurt Kessler, they are bug free and as far as I can tell everything works as intended by the wad author. A new linedef flagbit was introduced, which blocks line-of-sight for monsters. This allows to create save heavens in a map, as an example a player in a dark shadow area won't be seen by monsters. This has been possible before by manipulating the reject map, but doing it straight from the editor with a linedef flag is a lot more comfortable to handle. An new example map is included to show this feature. Sky property transfer partially implemented from MBF, allows to use SKY2 in MAP01 e.g. There have been several bug fixes as well, the details are in the change log inside, see there. Also most of the included example PWAD's have been improved, might be fun again to play arround with those. Included documentation was improved all over the place. Features of the GUI launcher: * Easy to use and very portable (written in Tcl/Tk). * Supports all options essential for game players, including network games. * Allows multiple selection of PWAD's. * Saves the current settings into a .rc file. New with this release: Nothing. Add-Ons: Did you know that you can create your own virtual world based on the Doom engine, completely under UNIX too? For this you want xwadtools from: ftp://ftp.cdrom.com/pub/doom/source/xwadtools*. The tools include a GUI level map editor, BSP node builders, tools to extract and import data like graphics and sound into WAD files and much more. The tools collection is maintained by the same author than XDoom, with the help of other net citizens of course, and the tools are freeware and come with all sources. ________________________________________________________________ This archive includes free sources for id Software's Doom game distributed under the GNU Public License. Only the sources are free, the commercial IWAD's (data files with level maps, graphic and sound resources) are _NOT_! This Doom engine run's with the shareware IWAD, which is freely available at: http://www.idsoftware.com/archives/doomarc.html Use that if you don't wish to purchase commercial IWAD's, but please notice that gameplay is very limited with the shareware IWAD. No IWAD is included in this archive, you need to download the shareware IWAD or use one of the commercial ones purchased from id. ---------------------------------------------------------------- Oh, by the way, all the software in this archive won't be supported by id Software and it comes without any warranty. If you manage to blow up your $3 million Cray UNIX server somehow with this software, it's your own fault and no one can be held responsible for this. The software is provided with all sources on AS IS basis and free of fees, just for the fun of it. Use the Source Luke, RTFS ;-) Enjoy, Udo Munk (um@compuserve.com)