===========================================================================
Title                   : The Eternity Engine v3.35.90 "Simorgh"
Filename                : ee3.35.90-win32.zip
Release date            : 01/11/2009
Author                  : Team Eternity
                          James "Quasar" Haley, Stephen "SoM" McGranahan,
                          and Joe Kennedy
Email Address           : haleyjd@hotmail.com
Other Files By Author   : ee3.35.90-linux.tar.gz
                          ee3.35.90-dos.zip
                          ee3.35.90-src.zip 
                          ee3.35.90-docs.zip
                          ee3.35.90-small.zip
                          ee3.35.90-edf.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, and the FreeDoom project, and it has 
                          in-progress support for Raven Software's Heretic
                          and Hexen.
                          
Dedication              : This version of the Eternity Engine is respectfully
                          dedicated to the memory of our friend and supporter, 
                          Jason "Amaster" Masihdas,
                          12 October 1981 - 14 June 2007.

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
                          - Start Map -
                              Derek Mac Donald
                          - Graphics - 
                              Bob Satori
                          
Special Thanks to       : Julian Aubourg
                          Anders Astrand
                          Joel Murdoch
                          SargeBaldy
                          esselfortium
                          SnowKate
                          Lut
                          Gaston "Mordeth" Lahaut
                          Assmaster
                          Toke
                          DooMWiz
                          Nemesis
                          Carnevil
                          Cephaler
                          #zdoom
                          John Romero
                          Chris Rhinehart
                          

===========================================================================
* 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, or Heretic IWAD(s)


* Construction *

Base                    : SMMU v3.21 / v3.30
Build Time              : Eight years and counting
Editor(s) used          : Visual Studio 6.0, 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.35.90-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.35.90 *

These include some of the major features added in the latest version:

- Cardboard Renderer -

  This new core rendering engine eliminates virtually all numeric instability
  from Doom. This provides for the following enhancements:
  
  * 2S lines remain firmly in place even when the player is directly above them
    and between the two vertices. No more "wobbly" lines.
    
  * Long wall error is drastically reduced.
  
  * 2S line texturing remains stable even with the player's view point inside
    the texture.
    
  * Artificial limitations on area height are completely removed.
  
  * Flat rendering accuracy is greatly improved; visplanes no longer dance when
    light levels change, and flats line up perfectly with wall textures.
    
  * No more "sparklies" at the bottom of line textures.
  
  * Speed improvements.
  
- Renderer Improvements -

  * Better, faster portals.
  
  * New blood and bullet puff particle effects.
  
  * Ability to specify and dynamically change colormaps for all sectors.
  
  * Better "flex" translucency and additive blending.
  
  * Block drawing functions can now clip to the frame buffer.
  
  * Linear font graphic rendering allows addition of user fonts.
  
  * Dynamic seg implementation allows for greatly improved PolyObjects,
    eliminating any need for a PolyObject-aware node builder.
    
  * 32 unique light levels are now supported.
  
  * Improved texture loader with Strife texture format support.
  
- EDF 1.8 -

  * Skins and player classes added.
  
  * Damagetypes and thingtype custom pain and death state lists added.
  
  * Spaces are allowed in unquoted strings inside sound sequence command blocks.
  
  * ACS spawn number block for thingtypes.
  
  * Heredoc string syntax added for future expansion.
  
  * Function values allow frame arguments to be specified along with the action
    in both traditional and compressed frame definitions.
    
  * Keywords have been added for all parameterized codepointers' arguments.
  
  * Cascading namespace resolution removes need to specify thing:, frame:, or
    other qualifiers for unambiguous names in arguments.
    
  * alphavelocity field added for thingtypes.
  
  * defaultsprite field allows controlling what sprite a thing's skinsprite
    remaps.
    
  * Sounds can now specify a preferred subchannel on which to play, allowing up
    to eight simultaneous sounds per object.
    
  * PC speaker emulation support features added to sound definitions.
          
- New Line Specials -
  
  * ACS control specials
  * Hexen parameterized lighting specials
  * Attached sectors
  * Earthquakes
  * Bind tagged portals to linedef's front sector

- New Small Features -

  Small scripts can now set and change the friendliness of things, change
  wall textures, change floor and ceiling textures, teleport things, and 
  manipulate sector lighting through the new parameterized line special 
  functions.

- Interface Enhancements -

  * Menu now displays names of keys bound to page forward/backward actions
    on every menu where it applies.
    
  * Menu will now page up or down if the user moves up or down past the first
    or last item on each page.
    
  * Menu text box widgets improved.
  
  * Menus remember the last page visited.
  
  * New console font for better readability and output formatting.
  
  * Console background shading improved.
  
  * Console now pauses the game when brought down during play.
  
  * Vastly improved mouse code.
  
- Compatibility -

  * Screen wipe routine can now optionally block the main loop; by default this
    is configured to happen during demo playback only.
    
  * comp_planeshoot variable added to control the ability to shoot the floor or
    ceiling. Fixes problems with Eternal DOOM glass switches.
    
  * Disk flasher now works in all SDL builds.
    
- Heretic Support Progress -

  * Corvus player class and skin enable proper player sound and thingtype 
    behaviors, including player decapitation, wimpy death, and fiery death.
    
  * Improved D'Sparil sound behavior.
  
  * 99% of mapthing types now implemented. 77% of total thingtypes implemented.

- Optimizations -

  * Sounds are cached as linear-interpolated 44.1 kHz for faster mixing. New
    thread-safe sound update loop is significantly faster.
  
  * Large video buffers have been moved off the zone heap for better memory
    performance.
    
  * Virtual space added to screen buffers with power-of-two horizontal dimension
    renders large FPS increase in timedemo mode.

- DeHackEd / BEX Improvements -

  * New codepointers including AlertMonsters, JumpIfTargetInLOS, SetTranslucent,
    CheckPlayerDone, FadeIn, FadeOut, and PlaySoundEx.
    
  * New CYCLEALPHA flag for perpetually fading things.
  
  * New RIP flag for penetrating projectile attacks.
  
  * Weapon and monster codepointers are now compatible with each other.
  
- SPC Music Support -

  EE can now play SPC music courtesy of the snes_spc 0.9.0 library. SPC data
  can be provided directly in normal music lumps. Preamp and bass boost 
  settings are available to the end user.  
  
- PC Speaker Emulation -

  PC speaker emulation via digital audio is now available as an additional
  sound driver setting.
  
- Jumping -

  The player can now bind a key to the "jump" action on the Advanced Movement
  page of the keybindings menu.

- NETCODE! -

  Eternity's network code is now operational, with a few bugs to work out.
  Deathmatch and cooperative play are now possible.
  
- File and Data Organization -

  Eternity now stores its data files in the base directory. Game folders under
  the base folder can contain an autoload directory, a GFS file which specifies
  any number of WAD, DEH/BEX, root EDF, console scripts, and an IWAD to load
  from any location on the machine, a custom resource wad, and also serve as an
  IWAD search location. Each game has independent savegames and configuration
  files.
  
  Static limitations on file path length have also been removed entirely.


===========================================================================      
* Coming Soon *

These are features planned to debut in future versions of the Eternity 
Engine:

- Priority -

  Linked portals
  Portal texture overlays
  ExtraData sectors
  Flat rotation and scaling
  Double flats
  UDMF support
  EDF Inventory/Weapons/Pickup system
  100% Heretic support
  More standard TerrainTypes
  Working hub system
  New scripting engine

- Long-Term Goals -

  Flat/texture interchangability
  Hexen Support
  Strife Support
  Improved network code


===========================================================================
* Revision History *

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.33.50):

+ -load can no longer try to load from an empty save slot

+ Console properly interprets or ignores all control characters

+ Default binding for toggling messages works again

+ New music lumps are added to the music hash table correctly

+ DSTINK sound provided for DOOM Shareware v1.0 - 1.2

+ Nightmare respawning properly clipped with 3D clipping enabled

+ sounds.edf default fallback parsing works again

+ Infinite loop due to MBF thinkerclass list corruption repaired

+ TerrainTypes error message grammar fixed

+ Spectre fuzz draws properly when quad column cache is enabled

+ Polyobj_GetForNum division by zero repaired

+ BOOM spechit underflow on recursive clipping operation repaired

+ Terrain sound name length limit increased to proper length

+ FLOATBOB objects no longer cause inappropriate terrain hits

+ Weapon codepointers no longer crash if used by monsters;
  Monster codepointers no longer crash if used by weapons.
  
+ Quicksave / Quickload DEH_String error repaired

+ EMAPINFO corruption of last field / crash repaired

+ EDF boss spawner probabilities repaired

+ FireCustomBullets codepointer SSG spread repaired

+ qstring initialization security hazard repaired

+ OUCH face works properly with damage done by monsters

+ Crosshair / centermessage HUD widget interlock repaired

+ PCX screenshots now contain proper palette type value

+ Player does not bob when dead

+ Screen patch scaling / garbage at top of status bar fixed

+ Buttons limit removed

+ Switch sounds always use proper origin

+ Switch sounds do not cut off sector movement sounds

+ Parameterized switches always change texture on proper side of line

+ Buttons are now saved in savegames.

+ Interface sounds no longer cut off when starting a game or changing levels

+ FatAttack codepointers no longer crash if actor->target is invalid

+ FLOATBOB objects do not have MBF torque applied to them

+ Sky floor visplanes are no longer merged with sky ceiling visplanes

+ Sky floor visplanes of differing height are no longer merged

+ Additive translucency now appears correctly

+ BFG can use 0 ammo per shot

+ Player corpses awaiting deferred removal do not crash when loading savegames

+ Parameterized ceiling random behavior fixed

+ Blinking text is now supported in ENDOOM lumps

+ Heretic status bar chain shader and DOOM bunny scroller fixed

+ -timedemo command works again

+ Screen wipe routine now runs on direct transitions from GS_CONSOLE to GS_LEVEL

+ Attempting to open menus in GS_CONSOLE gamestate no longer crashes the game

+ Console can no longer be popped up during GS_CONSOLE gamestate

+ Windowed-mode screen is now centered on the desktop where supported

+ 3DMidTex now work properly with lower-unpegged line flag

+ Changing gamma setting no longer causes gameplay palette changes to be lost

+ Palette change during screen update improves problems with DirectX fullscreen
  video.
  
+ C_Drawer is no longer called while the -nodraw parameter is specified

+ Detail level setting is properly remembered at startup

+ Music can still function when the -nosfx parameter is provided

+ Double frees in music code caused crashes when changing to/from digital music
  formats such as OGG
  
+ Secure map loader eliminates most possible crashes when loading invalid levels

+ REJECT handling further improved to account for too-short REJECT lumps


Known Issues in v3.35.90:

- 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.

- Rare EDF heap corruption error causing "Z_CheckHeap: block does not touch next
  block" errors. PLEASE immediately report any instance of this error, and if
  possible, provide us with the files, configuration, and command-line
  parameters used to trigger it.