=========================================================================== Title : The Eternity Engine v3.39.20 "Resheph" Filename : ee3.39.20-win32p.zip Release date : 10/10/2010 Author : Team Eternity James "Quasar" Haley and Stephen "SoM" McGranahan Email Address : haleyjd@hotmail.com Other Files By Author : ee3.39.20-src.zip ee3.39.20-edf.zip ee3.39.20-win32.zip Description : The Eternity Engine is an advanced Doom source port which uniquely combines a high compatibility rate with bleeding-edge editing and gameplay enhancements. Eternity supports all versions of Doom, Doom II, Final Doom, HACX, and the FreeDoom project, and it has in-progress support for Raven Software's Heretic and Hexen. Additional Credits to : - GPL DOOM Source - - Quake 2 Source - id Software - GPL Heretic and Hexen Source - Raven Software - DosDOOM - Chi Hoang - BOOM by TeamTNT - Lee Killough Jim Flynn Rand Phares Ty Halderman Stan Gula - MBF - Lee Killough - SMMU - - Chocolate Doom - Simon "fraggle" Howard - PrBoom - Colin Phipps Florian Schulze - PrBoom-Plus - Andrey Budko - ZDoom - Randy Heit Graf Zahl - libConfuse Parser Library - Martin Hedenfalk - snes_spc 0.9.0 Library Shay Green - DJGPP libc - DJ Delorie et al. - MinGW libc - Matt Weinstein et al. - SDL and Support Libraries - Sam Lantinga et al. - Small Scripting Language - ITB CompuPhase - Three-Band EQ and Rational-tanh Clipper - Neil C / Etanza Systems cschueler - Start Map - Derek Mac Donald - Graphics - Sven "ptoing" Ruthner Bob Satori Special Thanks to : Russel Rice Joe Kennedy Julian Aubourg Anders Astrand Joel Murdoch SargeBaldy esselfortium CSonicGo SnowKate Lut Gaston "Mordeth" Lahaut Assmaster Toke DooMWiz Nemesis Carnevil Cephaler #zdoom John Romero Chris Rhinehart James Monroe =========================================================================== * What is included * New levels : 1 (START Map) Sounds : Yes Music : No Graphics : Yes Dehacked/BEX Patch : No Demos : No Other : Yes (Required data and wad files) Other files required : DOOM, DOOM II, Final Doom, HACX, or Heretic IWAD(s) * Construction * Base : SMMU v3.21 / v3.30 Build Time : Nine years and counting Editor(s) used : Visual Studio 6.0, Visual Studio 2008, UltraEdit-32, Doom Builder Known Bugs : Too many to mention here, see below for more info May Not Run With... : Anything made for other source ports (duh...) * Copyright / Permissions * Authors MAY use the contents of this file as a base for modification or reuse, subject to the terms of the GNU General Public License which may be found inside the file named "COPYING". Permissions have been obtained from original authors for any of their resources modified or included in this file. You MAY distribute this file, subject to the terms of the GNU General Public License. * Where to get the file that this text file describes * Web sites: http://eternity.mancubus.net/ee3.37.00-win32.zip FTP sites: None =========================================================================== * Disclaimer * This software is covered by NO WARRANTY, implicit or otherwise, including the implied warranties of merchantability and fitness for a particular purpose. The authors of this software accept no responsibility for any ill effects caused by its use and will not be held liable for any damages, even if they have been made aware of the possibility of such damages. Bug reports and feature requests will be appreciated. Please email haleyjd@hotmail.com with any concerns. =========================================================================== * Features New to Version 3.39.20 * These include some of the major features added in the latest version: - Rendering Enhancements - * Flat / Texture interchangeability - you can now use flats on walls, and textures on floors and ceilings. * Support for tall texture patches. * Missing textures, texture patches, and flats are now fully tolerated, and can be substituted with a runtime-generated texture. * Stable R_PointToAngle implementation allows vast maps to render correctly at all viewing angles. * Dynaseg splitting is now more consistent. - Sound Engine Enhancements - * Realtime three-band equalizer added to allow low-pass filtering and bass boost effects. * Low-level sound engine now fully recognizes the configuration file's number of channels setting. * Client sounds made by the player or player weapons are given highest priority. * Volume limiting added to reduce clipping when sound channels are saturated. - Gameplay Features - * -solo-net support for playing coop gamemode with one player from the command line. * Ability to load Nerve .disk files with -disk command line parameter: EX: -disk doom2.disk nerve (If you do not know what this is for, do not ask ;) * IDCLEV will now allow you to warp to any valid ExMy or MAPxy map in the wad file. * Native Master Levels support - set master_levels_dir to the directory where the files are at, and then use w_masterlevels to play. * Native support for HACX - Twitch 'n Kill v1.2 standalone IWAD. - Menu Enhancements - * Rotating mini-skull pointers added to menus to replace diamonds. * Menu box widgets now make proper interface sounds. * Sync-critical variables can now be edited while demos are playing. - Interface Enhancements - * Configurable HUD translucency with st_fsalpha cvar. * Keys added to fullscreen graphical HUD. * Version recognition/support for all FreeDoom IWADs. * Last IWAD chosen from the IWAD picker will be remembered. * Drop shadows added to all text boxes. * unbind command now requires the key class to be specified explicitly before it will release key actions in the menu or console class, to avoid problems with losing the ability to access the menus or console. * Support for mouse buttons 4 and 5. * Automap timer widget will move up if the levelname widget is too long for it to fit in the default location. - EDF 2.0 - * DECORATE state syntax now supported inside states heredoc field in thingtype definitions. * A_Jump pointer added for DECORATE state support. * All parameterized codepointers extended to accept DECORATE state labels wherever a global state name is also valid. * New thingtype flags: + SYNCHRONIZED - thing doesn't randomize its spawnstate tics + NORANDOMIZE - missile doesn't randomize deathstate tics * EDF 2.0 Semantic Changes: + TERTYPES lumps (old undocumented deprecated Eternity TC feature) are no longer processed. + stdinclude() used on any filepath that does not aim at a file called root.edf" is considered deprecated. Including other EDFs under base/ directly instead of via root.edf is no longer allowed. + include_prev() is no longer required in any lump, and is a no-op function. + bexinclude() is still functional, but is not recommended for use. DEHACKED lumps and GFS scripts are preferred for providing BEX alongside mods which use EDF. + Namespace specifiers in action arguments (ex. thing:DoomImp) are unnecessary and are now deprecated for use in new EDFs. They are still required/allowed for use in state misc fields. + '\f' characters are no longer allowed in EDF files/lumps. + EDF lumps are only allowed to include other lumps within the same wad or other physical archive, in order to obtain a well-defined order of processing (oldest-to-newest) on all root and independent EDF lumps. + Independent EDF lumps (ETERRAIN, ESNDSEQ, etc) may now actually contain any type of definitions, function calls, etc. + EDFROOT lumps are processed additively from oldest to newest. + Independent EDF lumps are processed additively from oldest to newest. + EDFs are now safe to include more than once. The EDF system will never process a single source of input more than once. + "Default fallback" processing, the means by which some older broken EDFs which did not use stdinclude("root.edf") could still be supported, no longer exists. + States (aka frames) are now fully additive entities and can be defined by independent EDF lumps, even ones loaded via runtime wadfile loading. + Sprites are now fully additive. + Sprites may be implicitly defined by states and are no longer required to have appeared in the spritenames array. The spritenames array persists only to enforce a DeHackEd-compatible ordering on the original DOOM sprite names. + Argument evaluation for state action calls is now done at runtime. + States may now have duplicate DeHackEd numbers. The newest state processed using a given DeHackEd number wins. * EDF logical warning output system added. Use -edf-show-warnings to display EDF warnings at the system console window. They will also appear in the verbose log file. - Mapping - * ZDoom uncompressed node format is now supported for larger maps. - Compatibility - * stretchsky now defaults to off. * Ability to record vanilla-format demos using -vanilla with -record. -longtics used in addition to these will record a v1.91 longtics demo. * Music code will now scan forward in lumps for the MUS header, allowing some broken wads which worked under vanilla DOOM to play music properly. * Improved support for BOOM/PrBoom 2.02 demos. * New compatibility variable comp_ninja controls emulation of previously undefined behavior when spawning players at certain deathmatch spots which caused the fog and sound to go away. * Version information is printed to the console when starting a demo. - Optimizations - * File length retrieval no longer does a full fstat call. * Rehashing operations are much faster. * Metatable chain size limited to 400 KB per table. * Streamlined R_AddLine. * drawsegs_xrange optimization adapted from PrBoom-Plus saves up to 6 frames per second in large levels such as Speed of Doom MAP28 via more efficient cache RAM usage. * Portable Z_Alloca now uses no additional memory or linked list overhead. - Misc - * d_fastrefresh console variable added to toggle unlatched drawing frame rate on or off. * SMMU "cooldemo" mode improved with a variety of random camera angles. * More stable exit behavior under error conditions. =========================================================================== * Coming Soon * These are features planned to debut in future versions of the Eternity Engine: - Priority - ** 100% Heretic support ** EDF Inventory/Weapons/Pickup system ** Aeon scripting system ** UDMF support Linked portals Portal texture overlays ExtraData sectors Flat rotation and scaling Double flats More standard TerrainTypes Hubs ** == TOP PRIORITY - Long-Term Goals - Hexen Support Strife Support Improved network code =========================================================================== * Revision History * 3.39.20 "Resheph" -- 10/10/10 Point release for additional HACX 1.2 support. 3.37.00 "Sekhmet" -- 01/01/10 Big release after nearly a year of development time with some major advancements, though many are behind-the-scenes improvements. 3.35.92 "Nekhbet" -- 03/22/09 Minor maintenance release with numerous interface improvements, and a new EDF font specification system. 3.35.90 "Simorgh" -- 01/11/09 It took two years and almost 450 SVN revisions to create this new incarnation of the Eternity Engine. 3.33.50 "Phoenix" -- 10/23/06 Sad times have given way to happy ones as the energy to do great work has been unleashed. 3.33.33 "Paladin" -- 05/17/06 The most work ever done for a single release possibly excepting only the port of v3.29 Gamma to Windows. We apologize for the delay, but it is well worth the wait. 3.33.02 "Warrior" -- 10/01/05 A very respectable amount of progress hopefully offsets the terrible delay experienced for this release. 3D object clipping improvement, new EDF TerrainTypes engine, and various EDF improvements are the most significant features. 3.33.01 "Outcast" -- 06/24/05 Minor fixes, some user-requested and CQIII-needed features implemented, and HUD scripting functions for Small. 3.33.00 "Genesis" -- 05/26/05 Small scripting finally complete and available to the user. Lots of fixes, tweaks, and feature additions on top of that. 3.31.10 "Delta" -- 01/19/05 More Small support, ExtraData, global MapInfo, and tons of other new features and bug fixes make this an extremely critical release. 3.31 Public Beta 7 04/11/04 High resolution support enabled via generalization of the screen drawing code. Some minor fixes to portals, and a new codepointer just for good measure. 3.31 Public Beta 6 02/29/04 A huge amount of progress toward all current goals for the engine. Portals, the brain child of SoM, are the major stars of this release. Small and ExtraData are on the verge of becoming available to users for editing. 3.31 Public Beta 5 12/17/03 Several minor bug fixes over beta 4, including 3D object clipping and file drag-and-drop. Incremental improvements to EDF and to several parameterized codepointers. 3.31 Public Beta 4 11/29/03 Most effort put into improving EDF, largely via user feature requests. Major progress has been made toward working ExtraData as well. The Heretic status bar is now implemented. 3.31 Public Beta 3 08/08/03 A long time in coming, and a ton of features to show for the delay. EDF steals the show for this release. 3.31 Public Beta 2 03/05/03 New BFGs, object z clipping, movable 3DMidTex lines, tons more Heretic support, and some really nasty bugs fixed. Also first version to use SDL_mixer for better sound. 3.31 Public Beta 1 09/11/02 Prelim. Heretic support, 3DMIDTEX flag, zdoom-style translucency, and some other stuff now in. And of course, bug fixes galore. 3.29 "Gamma" 07/04/02 Final release for v3.29. Massive changes all over. First version to include Windows support. SoM is now co-programmer. 3.29 Development Beta 5 10/02/01 Minor release to demonstrate dialog, primarily 3.29 Public Beta 4 06/30/01 Fixed a good number of bugs once again. Improved portability with Julian's help, major feature is working demo recording. See info below and changelog for more info, as usual. 3.29 Public Beta 3 05/10/01 Fixed a large number of bugs, added several interesting features. See bug list below, and the changelog, for more information. 3.29 Public Beta 2 01/09/01 Fixed mouse buttons - problem was leftover code in I_GetEvent() that caused the mouse button variables to never be asserted - code was unreachable because of an assignment of the variable 'buttons' to 'lastbuttons'. 3.29 Public Beta 1 01/08/01 Initial Release =========================================================================== * Bugs Fixed, Known Issues * Bugs Fixed (since 3.37.00): + -devparm no longer crashes due to game starting out in GS_LEVEL gamestate + EV_ThingSpawn ACS function no longer accepts invalid ACS thingtype number 256 (until UDMF enhancements are added). + cameras no longer attempt to think outside of GS_LEVEL gamestate if certain camera variables are changed between levels. + Status bar is woken up for drawing by Wipe_Drawer. + Game border is woken up after screen wipe. + Status bar is woken up in G_DoLoadGame to prevent vanilla DOOM status bar hysterisis on collection of items after loading savegame. + Demos added from the command line can again by played by the playdemo console command. + P_VerifyBlockmap routine added to prevent crashes due to corrupt blockmap lumps found in numerous /idgames archive wads. + 2S linedefs are now properly height-clipped at both ends rather than at only one vertex. + Zone header is expanded dynamically to account for 64-bit pointer size. + Raised sectors with sky backdrops no longer display a single-pixel line of HOM at the bottom. + Deep water under skies repaired. + Vanilla DOOM illegal access of weaponinfo[wp_nochange] when voodoo dolls collect health during the same gametic as the player takes deadly damage was eliminated. + Potential illegal accesses in V_CopyRect eliminated. + Player name and color settings are now remembered again. + Hexen mapthing Z coordinate works properly again. + Sector sound origin positioning now uses numerically stable calculation. + All menu widgets now set default values properly. + LevelInfo killfinale flag no longer causes the player to get stuck if it is used on an ExM8 level in DOOM. + Mouse motion events generated before startup are ignored again. + Access to freed memory in IWAD picker shutdown repaired. + Undefined strcpy behavior eliminated from the console. + Unchecked tokenizer overflows eliminated from the console. + Game is no longer set into GS_LEVEL too early. + Removed actors are given MF_NOBLOCKMAP and MF_NOSECTOR flags to prevent spurious relinking into the world when referenced by another actor or having additional code ran on them before the end of their thinking turn. + Minor memory leaks in some file path creation functions removed via use of M_StringAlloca. + Fixed potential BOOM memory corruption error in W_AddFile. + Memory leak of random sound lists when sound definitions were overwritten by newer definitions of the same name repaired. Known Issues in v3.39.20: - Volume sliders may permanently affect desktop volume levels. This is due to bugs/limitations/oversights in SDL_mixer and NOT because of any problem inherent in Eternity. - Network code is incomplete; game will desync if some settings differ between nodes, or if certain console commands are used at runtime. - Particles are broken in low-detail mode.