Hexen II: Hammer of Thyrion
Release Notes for version 1.4.0
===============================

Changes since HoT-1.3.0 :

* General Engine:
-----------------
- Engine version is now 1.15 for Hexen II, and 0.17 for HexenWorld.
- Gamecode is now at version 1.15.
- The same binary now handles both original hexen2 and the mission pack.
  No need for two different files. Mission pack is simply activated by
  the -portals or -missionpack commandline switch.
- The same hexen2 binary now transparently handles both hexen2-1.11 and
  h2mp-v1.12 progs.dat files.
- Unix version now yields the CPU when the game is paused, minimized or
  doesn't have focus.
- Better error checking when saving games on unix
- Increased minimum heapsize to 16 mb to prevent hunk allocation errors
- host_hunklevel and gl_texlevel are now set before execing hexen.rc to
  prevent "bad things" (TM) from happening
- Added flags support to the cvar system.
- Added support for the pak files in users' directories.
- Several fixes and updates to the filesystem handling.

Video:
------
- Added support for resolution changing on the fly for both opengl and
  software renderers. The video modes menu is now fully functional.

OpenGL Renderer:
----------------
- Suffort for colored lights and external lit files
- Added a new opengl features menu to control most opengl options.
- Fixes in palettized texture uploading code
- Switched back to original h2 code for palettized textures and texture
  resampling for better quality, leaving the hw code as a compile time
  option
- Moved sdl multisampling capability check from compile time to runtime
  for much better compatibility
- Fixed glows of floating models (eg. mana) not floating along with the
  model
- Fixed win32 version to use dlsymmed opengl function calls
- Took care of flickering problem while drawing the loading plaque
- Fixed the loading plaque not being displayed when antialiasing was in
  effect
- Fixed the loading screen not being displayed correctly on win32 when
  antialiasing was in effect
- Added stencil buffered shadows
- Added the lightmaps portion of adjustable filters which have been left
  missing since HoT-1.2.3
- Disabled model data caching as *.ms2 which may lead to problems
- Disabled multitexture for 3dfx sky rendering, which was broken
- Built-in support for 3dfx specific gamma (no dependancy on external
  lib3dfxgamma.so anymore.)

Software Renderer:
------------------
- Updated sdl software video driver and made the loading plaque and the
  rotating skull to work
- Fixed mgl library linkage for win32 software renderer
- Fixed win32 software renderer not switching to the resolution saved
  in config.cfg
- Ported win32 software renderer changes from hexen2 to hexenworld

* Console:
----------
- Improved insert/overwrite mode console editing and command completion
- Made keys autorepeating work in unix
- Added list commands for cvars and aliases (cvarlist and aliaslist),
  changed the old command lister name from list to cmdlist.
- Added a maplist command to list maps in pakfiles and in game searchpath

Sound:
------
- Several small sound driver updates
- Added support for systems without OSS sound

Other:
------
- Fixed objectives display in the expansion pack which was broken during
  the 1.3.0 development cycle
- Added checks for coop and deathmatch not be set at the same time
- Made noexit, timelimit and fraglimit to matter only for deathmatch,
  not for coop and single player, as they should.
- Fixed a bug where with viewsize (scr_viewsize) being set to 120, the
  game wouldn't start with mini status bar unless the user did a size-up
- Set the default playerclass to paladin: fresh installations of
  original hexen2 without a config shall no longer fail when run first
  time with a +map XXX commandline argument
- The menu/console now automatically disappears when playing a timedemo
- The panels now properly disappear upon starting a new game through the
  menu system
- Unix: Minimum required SDL (and SDL_mixer) version is now 1.2.4
- Win32: Fixed to compile with start-up splash screens enabled
- Made udp to quietly absorb empty packets
- Fixed glh2 and glh2mp segfaults when run as dedicated server

HexenWorld:
-----------
- Fixed ability string indexes for the demoness and dwarf classes and
  armor class display
- Fixed the crash when the server is spawned with dmmode 1
- Fixed server not correctly updating its gamedir serverinfo under some
  conditions
- Fixed window restore bug that prevented the screen from being updated
- Fixed hexenworld to uptade its user directory info upon gamedir changes
- Added ip interface binding option (-ip xxx.xxx.xxx.xxx) to the server
- Added sanity checking to and fixed the off by one error in -ip option
  of the master server
- Hexenworld server shall now flush its logfiles upon every print
- Allowed hexenworld to skip mission pack support with -noportals switch
- Changed hexenworld server log filename from qconsole.log to hwsv.log

Utilities:
----------
- A big tidy-up in the utilities
- Added jsh2color (lit file generator for colored lights)
- Added standalone rcon and terminal tools (hwrcon and hwterm) for
  hexenworld which make it possible to remotely administer servers
  without installing a full client. (See in: hw_utils)

Source Code - General:
----------------------
- Major build system update
- Added math optimization flags to utilities and hwsv
- Added cross compilation support on unix for the win32 version
- Several other fixes and lots of code clean-up and improvements

