1Hammer of Thyrion (uHexen2) release notes: 2 3======================================================================== 4Changes in v1.5.9: (May 31, 2018.) 5======================================================================== 6 7This is a minor bug fix and maintenance release: 8 9- OS/2 support using SDL (should work on eComStation and ArcaOS too.) 10 11- Updated third-party libraries (music codecs, SDL, etc.) 12 13- Support for Watcom compiler targeting OS/2 and Windows. 14 15- Support for libxmp for tracker music decoding (disabled by default.) 16 17- AHI audio no longer fails if the library returns 32 bit format (e.g. 18 in AROS v0 nightly builds.) 19 20- New AmigaOS MIDI driver using CAMD library. 21 22- Several optimized assembler sources for m68k-amigaos. 23 24- gcc is now supported to target m68k-amigaos. 25 26- Software renderer: Reduced some 2D overdraw. Faster model lighting. 27 28- Recursion optimizations to server world query procedures. 29 30- New 'viewpos' command to display client's position and angles (based 31 on FitzQuake version.) 32 33- config.cfg is no longer written in case of a Sys_Error. 34 35- Utils, windows: Change threads creation to use _beginthreadex(). 36 37- All platforms, gameplay: Necromancer soul devour no longer prints a 38 stray number (bug #65.) 39 40- Other minor fixes, tidy-ups, and protability tweaks. 41 42 43======================================================================== 44Changes in v1.5.8a (Aug. 28, 2016) 45======================================================================== 46 47This is a post-release patch against v1.5.8 fixing a few Amiga issues: 48 49- Amiga sound (AHI backend): fix sample rates lower than 11025 Hz. 50 51- Amiga sound (AHI backend): fix bad sound with sample rates which are 52 not a multiple of 11025. 53 54- Amiga input: limit lowlevel.library joystick ports to 0-3. 55 56- AmigaOS3, MiniGL: smart and automatic locking support. New cvar: 57 gl_lockmode, valid values: "manual" (default), "auto", and "smart". 58 59 60======================================================================== 61Changes in v1.5.8: (Aug. 12, 2016.) 62======================================================================== 63 64This is a minor bug fix and maintenance release: 65 66- Software renderer: Fixed a reported crash if the engine is compiled 67 with certain Visual Studio versions (bug #62.) 68 69- Software renderer: Fixed sky scaling issues, thanks to Szilard Biro. 70 (fix found in 'ToChriS' quake source.) 71 72- Software renderer: Fixed scaling console backgrounds whose dimensions 73 are not the default 320x200. One such example is the "Game of Tomes" 74 mod which has a 1024x768 conback.lmp. 75 76- Hexenworld server: Added "-protocol x" command line option to force 77 the server to use a specific protocol (25 or 26), if so required. 78 79- Amiga: Video fixes. On AROS, the game does not 'freeze' in fullscreen 80 mode anymore if the 'Timidity:' assign is not present. 81 82- Amiga: m68k-amigaos support. (Use VBCC as the compiler, gcc has code 83 generation issues.) 84 85- Windows: Visual Studio builds no longer require yasm or nasm. Tested 86 compilation using VS2015-update/2. 87 88- DOS, PCI sound driver: Updates, more Intel HDA chipsets recognized. 89 90- DOS, 3dfx opengl: Macronix (MX86251) variants of Voodoo Rush boards 91 are now functional. 92 93- DOS, 3dfx opengl: Further updates/fixes to opengl and glide drivers. 94 Updates to DXE exports so that more opengl driver builds would work 95 without requiring an engine recompile. 96 97- All platforms, gameplay: Fixed an issue with the rider bosses Death, 98 Pestilence and War in coop mode. (as reported by Spike and Korax.) 99 100- Other minor fixes/tidy-ups elsewhere in the source. 101 102 103======================================================================== 104Changes in v1.5.7: (Jan. 10, 2016.) 105======================================================================== 106 107- All platforms, gameplay, mission pack: fixed an hcode bug which would 108 make the spiders seemingly invincible for a difficulty-depending time. 109 110- All platforms, gameplay: Crusader partial heal at certain experience 111 thresholds now starts at level 3 to be consistent with the manual. 112 113- All platforms, gameplay: Many small HexenC fixes and clean-ups. 114 115- All platforms, hexen2: Better cross-map demo playback support. 116 117- OpenGL: fix screenshots when screen width isn't a multiple of 4. 118 119- OpenGL: minor gamma updates. 120 121- Windows: fixed DPI scaling issues. 122 123- Windows, CD audio: fixed the "-cddev" command line option. 124 125- Music: Support for FLAC codec and tracker (MOD) music including unreal 126 umx files. (edit the makefiles to enable when compiling.) 127 128- Utils, hcc: Added a command line option "-os" to compact the strings 129 heap by eliminating duplicates. some minor revisions. 130 131- Utils, jsh2color: ignore minlight values from the -light command line 132 switch: eliminates the majority of the ugly black patches from eidolon 133 and rider2c maps. bumped its version to 1.2.6. 134 135- All platforms: External wal texture loading is now a compile time 136 option, disabled by default. 137 138- HexenWorld: Support for a new protocol 26: if the client sends '*cap' 139 userinfo with a 'c', the server returns protocol 26 instead of 25 and 140 sends the sound and model lists in small chunks like quakeworld does. 141 Old clients versus new servers and new clients versus old servers are 142 not affected and run using the original protocol 25 as they used to. 143 The new protocol 26 connection sequence avoids packet fragmentation. 144 145- DOS: HexenWorld is now supported on DOS. requires uhexen2 v1.5.7 or 146 newer hexenworld servers to connect. (see above for hw protocol 26.) 147 148- DOS: OpenGL support on 3Dfx Voodoo cards. 149 150- DOS: Experimental support for several PCI sound cards (see README.dos) 151 152- Several small fixes, tidy-ups, safeguards elsewhere in the sources. 153 154- Added a shell script to run different versions of the game which can 155 be useful for system-wide installations. (see scripts/hexen2-run.sh) 156 157- Removed the gtk launcher. 158 159- Updated third-party libraries (music codecs and SDL). 160 161 162======================================================================== 163Changes in v1.5.6: (Mar. 15, 2013.) 164======================================================================== 165 166- Screen: implemented Hor+ style field of view (FOV) scaling, useful for 167 widescreen resolutions. configured by new cvar fov_adapt: set it to 1 168 and your fov will be scaled automatically according to the resolution. 169 enabled by default. opengl and software renderers both supported. 170 171- Screen: viewsize greater than 120 now disables the hud (use the screen 172 size slider in the options menu.) 173 174- Progs VM: Fixed a corner case thinko in version6 progs execution. 175 176- Server: changelevel failures, e.g. in case of non-existent maps, are 177 now considered as error, so that the clients do not get stuck in the 178 connected state anymore. 179 180- Server: accept maplist.txt only if it is from the same game directory 181 as progs.dat itself or from a searchpath with a higher priority. 182 183- Timidity (Unix MIDI): Multiple fixes, including memory errors found by 184 valgrind. 185 186- Mac OS X: A new icon. 187 188- Music: Support for Opus codec. (edit the makefiles to enable it when 189 compiling.) 190 191- Software renderer: fixed color shifts from area contents or power-up 192 items usage staying persistent after a disconnect. 193 194- OpenGL: worked around weird mods, e.g.: project peanut, where certain 195 models are sometimes drawn "white" because the mod's hcode initializes 196 those entities with non-existant skins. 197 198- OpenGL: gamma fixes for several platforms. 199 200- HexenWorld: opengl fixes for the shownames feature, other gl updates. 201 202- Hexenworld, gamecode: hw and siege map cycling setup is done using the 203 localinfo variables just like in quakeworld, strings.txt abusing is no 204 more. See docs/README.hwsv for brief instructions. 205 206- Verified correct compilation by upcoming gcc-4.8 and by clang-3.2. 207 208- Fixed several other minor bugs, some found by valgrind. Incremented 209 engine versions for hexen2 to 1.28, hexenworld to 0.28, and gamecode 210 version to 1.28. 211 212 213======================================================================== 214Changes in v1.5.5: (Jan. 02, 2013.) 215======================================================================== 216 217- Utils (light, vis, jsh2color): Added unix pthreads support for running 218 multi-threaded. Enabled windows multi-threads on all platforms instead 219 of alpha-only. Default is single-threaded. Use "-threads #" to specify 220 the required number of threads. (max: 32. -1 tries to autodetect.) 221 222- Utils, qbsp: Added a command line option "-oldhullsize" to replicate 223 the old h2utils/qbsp behavior of using the original hexen2 sizes for 224 hulls #5 and #6, not H2MP ones, if so needed. 225 226- Utils, hcc: Added a command line option "-old" to replicate old hcc 227 versions' behavior of allowing the STR_ constants be saved globals and 228 letting precache_file() calls go into progs.dat, if so needed. 229 230- Utils, dcc: Some small fixes. Added new command line options -fields, 231 -functions, -globaldefs, -prglobals, -statements and -strings, which 232 dump the related information. 233 234- Utils, all: Some fixes/improvements to command line options handling. 235 236- Support for the rarely used progs version 7 spec with 32 bit offsets 237 instead of 16 bit of the original version 6: The engine can run both 238 with v6 as well as with v7 progs. The hcc and dhcc tools are changed 239 to compile the progs as v6 whenever possible for compatibility, or as 240 v7 otherwise. they can also be made to compile specifically v6 or v7 241 progs by the new command line options -v6, -v7, or -version <n>. The 242 dhcc tool can now decompile both v6 and v7 progs. 243 244- Fixed a respawn-after-death issue which sometimes rendered the player 245 unable to move backwards, or unable to use certain inventory items, or 246 several other weird effects (bug #2176023.) The bug was there since 247 the original hexen2 source release. 248 249- New quake2-style noclip movement. (from Fitzquake; configured by new 250 cvar sv_altnoclip, enabled by default.) 251 252- Client: Fixed a demo playback failure when certain conditions are met. 253 254- Client: Fixed a minor and rare intermission glitch. 255 256- Client: unbindall before loading stored bindings (configurable by new 257 cvar cfg_unbindall, enabled by default.) 258 259- SDL, keyboard input: Fixed control-character handling in unicode mode. 260 261- All, keyboard input: Several tweaks. 262 263- Software renderer: Disabled progress bars drawing, as it was reported 264 to cause excessively long load times on some systems. Disabled the 265 rotating skull drawing during file i/o. 266 267- Software renderer: Fixed occasional crash when sprites rendered very 268 close to the camera origin, such as the teleportation puff. (used to 269 happen mostly in 64 bit builds. bug #3562290.) 270 271- OpenGL: Fixed a crash in texture resampling code with 3d hardware max 272 texture size greater than 1024 and wide-enough textures. 273 274- Windows: Removed hooks for QHOST, which is (was) a proprietery server 275 administation tool. 276 277- Mac OS X: packages now have ogg/vorbis and mp3 music playback support. 278 279- Mac OS X: New MIDI driver. 280 281- Mac OS X: Support for text paste from OS clipboard to console. Support 282 for the Apple (Command) key. 283 284- Mac OS X: Support for building using the makefiles and cross-compiling 285 from Linux. 286 287- MorphOS builds: added missing -noixemul to the compiler flags. 288 289- MorphOS, AROS, Amiga: Support text paste from OS clipboard to console. 290 291- All platforms, gameplay: fixed bug in original hexen2 hcode which used 292 to cause weapon switching to get stuck if several weapons were picked 293 up too fast. fixed a minor bug in assassin's fourth weapon in powered 294 mode. cleaned up weapon cycling code, minor fixes/clean-ups in weapon 295 selection. fixed cube of force, so that it doesn't attack the player's 296 own summoned imp anymore. several other hcode cleanups. 297 298- All platforms, hexenworld: pak4.pak from the ancient beta 0.11 version 299 is now recognized properly. 300 301- All platforms, h2patch: Simplifications. 302 303- Windows: support for Visual Studio 2012. 304 305- All: Incremented versions for hexen2 engine to 1.27, hexenworld engine 306 to 0.27, and gamecode version to 1.27. 307 308 309======================================================================== 310Changes in v1.5.4: (July 01, 2012.) 311======================================================================== 312 313- OpenGL: Fixed screen flickering resulting from progress bars drawing 314 with some drivers (bug #3519666.) uHexen2 no longer draws the loading 315 progress bars during level load in opengl mode. 316 317- OpenGL (Windows): Fixed a bug which would prevent running on Windows8 318 consumer preview versions, unless 32 bit color depth was specified on 319 the command line. Works just fine now. 320 321- Music playback: Made sure that the file's channels count is supported. 322 323- Unix MIDI (Timidity): Configuration file timidity.cfg is now searched 324 first under the user directory and the installation directory before 325 the common system locations. Full absolute path of timidity.cfg can be 326 specified by setting the TIMIDITY_CFG environment variable, too. 327 328- Client, all: Revised the intermissions setup code. 329 330- Client, all: Fixed a few effect abslight and scale flags, which were 331 another bunch of original hexen2source bugs. 332 333- All platforms: Majorly revised path name handling and filesystem code. 334 335- Support for Solaris. Support for Amiga, AROS, MorphOS. Added missing 336 RISCOS defines. 337 338- Keyboard input: Made the keypad keys to send separate key events in 339 game mode. (for Windows and SDL-using builds, e.g. Linux/Unix, OSX.) 340 341- Joystick: Added joystick (gamepad) support for all SDL-using builds, 342 e.g. Linux/Unix, MacOSX. The new cvars are documented in the README. 343 344- Mouse (DOS): Wheel is now detected and used by default. Use "-nowheel" 345 command line switch to disable it. 346 347- Mouse (DOS): Pausing the game, moving the mouse and then unpausing it 348 doesn't change the view angle anymore. 349 350- All platforms, gameplay: Fixed a rare crash in the ambient fish hcode. 351 352- All platforms, h2patch: More detailed output and better reporting in 353 case of incompatible or corrupted pak files. Same with the pak-patch 354 functionality of the gtk-launcher application. 355 356- Utils, dcc (progs decompiler): Fixed an infinite recursion issue when 357 decompiling the hcbots progs.dat. Fixed decompiling of rival kingdoms 358 progs. Changed decompiler memory usage. Made -src command line option 359 of dhcc to behave the same as it does with hcc. Added -name command 360 line option either for specifying a name other than progs.src for the 361 compiler like hcc itself or for specifying a name other than progs.dat 362 for the decompiler. 363 364- Utils, hcc (HexenC compiler): Cleaned up the -src command line option 365 handling. 366 367- All: Incremented versions for the hexen2 engine to 1.26 and hexenworld 368 engine to 0.26. Incremented gamecode version to 1.26. 369 370- Several source code cleanups and documentation updates. 371 372 373======================================================================== 374Changes in v1.5.3: (Apr. 10, 2012.) 375======================================================================== 376 377- OpenGL: Made non-power-of-two textures support configurable by a cvar, 378 gl_texture_NPOT, disabled by default: Fixes serious slowdown on some 379 old graphics hardware, such as R300 to R500 class Radeons on Mac OS X, 380 which the driver is lying about its capability. Added a menu entry to 381 enable/disable the feature (OpenGL features -> NPOT textures.) 382 383- Sound: The client no longer tries updating the ambient sounds when not 384 connected, ie. when no map is active. 385 386- Several updates to the documentation. 387 388 389======================================================================== 390Changes in v1.5.2: (Apr. 04, 2012.) 391======================================================================== 392 393- All platforms: Incremented versions for the hexen2 engine to 1.25, 394 hexenworld engine to 0.25, gamecode to 1.25 and the gtk-launcher to 395 1.0.7. 396 397- Verified correct compilation by clang (using v3.0) and by the new gcc 398 version 4.7.x. 399 400- All platforms, gamecode: Fixed occasional crashes in the original 401 hexen2 game with the Paladin's axe. 402 403- All platforms, hexen2 net play: fixed connection getting stuck 404 sometimes after displaying the "Connection accepted" message. 405 406- All platforms: Ported server model code optimizations and cleanups 407 from h2ded to hwsv (hexenworld server). 408 409- All platforms: Added support for transparent console in the software 410 renderer, controlled by new cvar "contrans". The valid values for 411 contrans are 0 (solid), 1 (transparent) and 2 (very transparent). 412 413- All platforms, software renderer: Fixed wrong transparency issue with 414 certain models when not using the x86 assembler drawing routines. 415 416- All platforms: Added on-screen fps counter to hexen2 (do "showfps 1" 417 from the console). Updated existing showfps code of hexenworld. 418 419- All platforms, OpenGL: Added anisotropic texture filtering support 420 (gl_texture_anisotropy). Revised existing texture filters. The texture 421 filtering options now saved to the config. 422 423- All platforms, OpenGL: Added support for non-power-of-two-textures 424 extension. 425 426- All platforms: Implemented fov in opengl hexen2, useful for widescreen 427 resolutions. Revised the implementations in hexenworld, as well as the 428 software renderer. 429 430- All platforms, OpenGL: Fixed shadows spot which was broken back in 431 2007 during v1.4.2 development. 432 433- All platforms, input: Discard mouse/joystick motion when in camera 434 mode. Discard the accumulated mouse motion when starting a game or 435 when loading a saved game to prevent any unintended viewangle changes. 436 437- Windows input: Disabled GDI mouse acceleration flags for better 438 behavior on XP and newer versions. 439 440- SDL / Unix: Revised SDL unicode and dead keys support. 441 442- SDL / Mac OS X: Fixed console and message mode backspace key (bug 443 #2688151.) 444 445- Unix / SVGAlib mouse: Fixed missing camera mode and ideal roll 446 handling. 447 448- Unix / SVGAlib video: Fixed planar modes when using the svgalib_helper 449 kernel module. Removed the need for x86 assembly for compilation and 450 the linux-only limitation. 451 452- Unix / SVGAlib video: Fixed messed up colors upon coming back from a 453 vt switching. 454 455- Unix: Fixed compilation on GNU/kFreeBSD (Debian, #657793) 456 457- Unix, MIDI: Several updates to the Timidity backend. 458 459- Timidity, Windows MIDI: Support for Microsoft RMID format. 460 461- Windows MIDI: Fixed broken tempo with certain midi files (problem was 462 introduced in version 1.5.1) 463 464- Windows software renderer: Fixed restoring of the saved video mode on 465 startup (problem was introduced in v1.4.4.) 466 467- Windows software renderer: Disabled MGL DirectDraw support by default 468 (causes more trouble than it's actually worth.) Can be enabled by 469 -useddraw or -usedirectdraw command line switches, if required. 470 471- All platforms: Revised the cross-episode demo recording and playback 472 behavior, allowing the intermission screens to be displayed. 473 474- All platforms: Removed code that prevented deathmatch and coop cvars 475 to be set at the same time, which was reported for possibility of 476 causing compatibility issues with mods. 477 478- All platforms: Majorly revised the support mechanism for different 479 versions of progs. Added old v1.03 progs support to hexen2, added old 480 v0.11 and v0.14 progs support to hw. 481 482- All platforms, h2ded: Removed error when neither coop nor deathmatch 483 is set and rely on server admin. 484 485- All platforms, hexenworld client: Fixed a crash in the credits display 486 when one waited long enough to see all the text to be printed. 487 488- Unix / gtk-launcher: Added support for gtk3. Several bug fixes and 489 code cleanups. 490 491- Mac OS X: Fixed compilation failure due to a typo in MIDI code 492 introduced in v1.5.1. 493 494- DOS: Added WatTCP (WATT-32) networking support for hexen2 internet 495 play. 496 497- DOS: Added experimental DOS support for hexenworld using the WatTCP 498 library. (doesn't work yet due to WatTCP bugs.) 499 500- DOS: Added "-nogus" command line option so that UltraSound initializa- 501 tion can be skipped by the user if necessary. 502 503- Miscellaneous source code cleanups. 504 505 506======================================================================== 507Changes in v1.5.1: (Nov. 21, 2011.) 508======================================================================== 509 510- All platforms: Fixed an inventory icon scrolling bug. 511 512- All platforms: Removed a needless limitation on config and save names. 513 514- Linux (Unix/SDL): Fixed SDL software renderer bug that the image was 515 not stretched to fill the screen. 516 517- Linux: Fixed the gtk-launcher crash with new glibc. 518 519- Windows: Updates to the midi playback code. 520 521- DOS: Fixed failure on computers with more than 2GB memory. 522 523- DOS: Fixed a stack corruption bug in VESA initialization. 524 525- DOS: Added support for the -cddev command line arguments. 526 527- Unix: Added some paranoid checks for string buffer sizes. 528 529- Linux/Unix: Provided cd-rip scripts for less common game media, i.e. 530 the Xplosiv re-release and the Matrox m3D oem versions. 531 532- All platforms: Fixed logic in the hwmquery tool that would cause less 533 number of servers to be displayed than what had been received from 534 hwmaster. 535 536- Bumped versions for the hexen2 engine to 1.24, hexenworld to 0.24, 537 hwmaster, hwrcon and hwterm to 1.2.7, hwmquery to 0.2.3 and the gtk 538 launcher to 1.0.6. 539 540- Build system updates and source code cleanups. 541 542 543======================================================================== 544Changes in v1.5.0: (Sep. 15, 2011.) 545======================================================================== 546 547- bumped hexen2 engine version to 1.23, and hexenworld engine version to 548 0.23. bumped the gamecode version to 1.20. 549 550- added support for ogg, mp3 and wav external music files to be played 551 instead of the original midi files. 552 553- added interface for music streams to the sound layer and dropped the 554 SDL_mixer dependency. many changes in sound and midi layer. imported 555 libtimidity into the source tree and applied several fixes. 556 557- sound: changed internal driver interface to provide a better chance of 558 engine startup with sound, especially for linux (unix) users. 559 560- unix midi: reimplemented through the new music streams interface using 561 timidity. 562 563- windows midi: ignore midi hardware volume adjustment capability under 564 windows vista/7 which fixes music volume control messing with the main 565 volume. 566 567- fixed a bug in multiple zones management, which wasn't easy to hit but 568 was deadly when it was hit. 569 570- fixed an old game load/save corruption bug. 571 572- fixed an old load bug where items dropped by monsters not being 573 visible or getting lost upon saving and loading the game. 574 575- fixed an old load bug where prize artifacts in the Temple of Mars not 576 being visible or getting lost upon saving and loading the game or by 577 changing the level and reentering. 578 579- fixed an old load bug where killed monsters didnt respawn in nightmare 580 difficulty in the mission pack upon saving and loading the game or by 581 changing the level and reentering. 582 583- software renderer (C-only): fixed a segmentation fault with Crusader's 584 ice mace. 585 586- software renderer: fixed crashes at high resolutions with r_waterwarp 587 enabled. 588 589- added new cvar sys_throttle in order to throttle the game loop just a 590 little bit and run cooler on new fast systems. the default value of 591 sys_throttle is 0.02, acceptable values are between 0 and 1. changing 592 it to 0 disables throttling. 593 594- opengl: fixed overlapping flickering textures, i.e. the infamous brush 595 model Z-fighting. the fix is controlled by gl_zfix: default value is 1 596 (enabled). setting it to 0 disables the fix and brings back the old 597 behaviour. 598 599- opengl: always use GL_LINEAR as lightmap filter. made gl_texturemode 600 command not affect lightmaps. 601 602- opengl: fixed an issue in net games where joining players would appear 603 untextured (bug #3288081). 604 605- opengl: updated code to use glGenTextures(). 606 607- joystick, windows: added support for 6th joystick axis for up movement 608 controlled by joyupthreshold and joyupsensitivity. 609 610- fixed hexenworld server issue which used to crash servers upon running 611 the romeric5 (Temple of Mars) map, which now loads fine. 612 613- fixed h2ded (hexen2 dedicated server application) bug that the swords 614 on the weapon racks in the demo2 and the village1 levels would be 615 placed incorrectly (bug #3344613). 616 617- hexenworld server: fixed segmentation fault in case of bad pointers in 618 NUM_FOR_EDICT() 619 620- fixed HexenC bug where, if there were a summoned imp around, a blinked 621 away wizard wouldn't reappear even after imp went away (bug #3314808). 622 623- fixed a HexenC bug where the summoned imp didn't pick the Egypt snake 624 boss as an enemy (bug #3314810). 625 626- improved soul spheres' HexenC code. 627 628- fixed a HexenC where medusa's gaze attack sound would persist when she 629 is dead. 630 631- fixed an Eidolon/imp HexenC bug which used to render Eidolon idle. 632 633- fixed a HexenC bug which would prevent a yakman from appearing during 634 the 'Trial of Strength' in the 'Temple of Phurbu' (tibet7) level of 635 the mission pack, rendering the level not completable (bug #1112533). 636 637- fixed a mission pack HexenC bug where a pentacle monster in the tibet1 638 map became invulnerable when it got crushed by a door. 639 640- fixed a wheel of ages message to report 360 degrees instead of 30 in 641 the egypt2 map. 642 643- fixed a HexenC bug which might prevent Eidolon to land. 644 645- fixed an Eidolon HexenC bug which might prevent the finale screen to 646 trigger. 647 648- fixed a HexenC bug where werepanthers became "undead" when an assassin 649 killed them by her bombs. 650 651- fixed mission pack HexenC bug which used to prevent the finale screen 652 to trigger if Praevus were killed too quickly. 653 654- handled several map quirks thanks to careful works by Thomas Freundt 655 and Keith Rozett. 656 657- fixed trigger_crosslevel issue with spawnflag 8 which used to prevent 658 one of the prizes in Temple of Mars to appear. 659 660- removed the ugly hack of reducing teleport push speed to 225 in order 661 to overcome the problem of reaching the Cathedral's balcony and the 662 holy cross, and added a modified entities file for the Cathedral map 663 instead. 664 665- added support for external entity file loading which makes it easy to 666 handle map quirks. ent files are accepted only if they come from the 667 same game directory as the map itself or from a searchpath with a 668 higher priority. external entities loading is controlled by the cvar 669 external_ents: default value is 1 (enabled). setting it to 0 disables 670 external entities. 671 672- revised lit file loading. lit files are now accepted only if they come 673 from the same game directory as the map itself or from a searchpath 674 with a higher priority. 675 676- added new h2patch tool, an easy to use xdelta3-based standalone pak 677 patch tool for purposes of updating to hexen2 v1.11 data files. 678 updated the gtk-launcher's patch facility to use the same backend. 679 680- utils, hcc: fixed broken switch statement compilation when there is an 681 implicit break in the last case. 682 683- utils, dcc: fixed a wrong decompilation of an "if" opcode into a 684 "while". some source code revision. 685 686- utils, hcc: dropped support for the old version of hcc tool. 687 688- tested compilation using Visual Studio 2010. 689 690- source directory layout reworked, repository moved from cvs to svn. 691 692* Changes since v1.4.3 mostly during the unreleased 1.4.4-beta cycle: 693 694- fixed broken software renderer binaries from C++ compilers with x86 695 assembly enabled (do not use the bool keyword of C++). 696 697- compilations using the new gcc-4.4, 4.5 and 4.6 versions are tested 698 and supported. 699 700- added support for 64 bit windows versions (x64). 701 702- added support for mingw-w64 compilers. 703 704- added support for Microsoft Visual Studio 2005 and Visual Studio 2008. 705 706- filesystem: fixed an oversight with builds without user directories, 707 where the "-basedir" command line argument failed to change the 708 internal userdir variables. 709 710- fixed stuffcmds so that arguments to commands can have '-' or '+' 711 within their names. A command like "hexen2 +map mymap-01" works 712 properly now. 713 714- increased default zone memory size to 384kb. 715 716- fixed a rare segmentation fault with certain command line arguments 717 (bug was introduced sometime between version 1.3.0 and 1.4.0). 718 719- fixed a problem in sound effects code where some teleportation sounds 720 might have got lost. 721 722- alsa audio: added workarouds for better behavior on some linux setups. 723 724- hexen2 client: pause/resume midi (background music) along with cdaudio 725 upon pause message. 726 727- windows cdaudio: added new command line option -cddev for choosing the 728 cdrom drive to use. syntax: -cddev E 729 730- windows cdaudio: fixed MCI errors when resuming the last track of a 731 cdrom. 732 733- net: made the socket api usage compatible with windows especially with 734 relation to 64 bit windows. 735 736- net (hexen2): fixed BSD and Mac OS X socket api usage. 737 738- opengl: reworked text and HUD scaling menu option. 739 740- opengl: fixed an issue that changing resolution from within the game 741 might crash on Windows Vista. 742 743- software renderer: fixed a long standing stack corruption bug which 744 used to cause alias models not to be drawn at all. 745 746- stricter checking on the values pulled out of .wav file chunk headers. 747 748- fixed rare game crash when battling bosses with assassin class, using 749 the tome of power and launching at the enemy a lot of projectiles. 750 751- renamed model_t to qmodel_t in order to avoid conflicts on solaris. 752 753- fixed the "mirrored prints" problem of hexen2 console at high 754 resolutions. 755 756- fixed the colored prints of hexenworld console. 757 758- fixed 'array going out-of-bounds' (utils/map.c) and bogus 'maybe used 759 uninitialized' warnings (sbar.c) from gcc-4.3. 760 761- fixes to the SVGALib driver. it is functional now, both for hexen2 and 762 for hexenworld clients. 763 764- fixed bug #2176384: in windowed mode, when you save using the menus, 765 the game used to quit the menu without grabbing the mouse properly. 766 767- windows mouse: fixed behavior upon minimize/restore in windowed mode. 768 769- slightly increased the buffersize for sdl audio. made it to print a 770 little more detailed info at startup. 771 772- fixed hexenworld client message parser so that midi and cdaudio don't 773 play at the same time. 774 775- launcher, patching: rewritten the inter-threads log printing and fixed 776 the erratic crashes on smp systems. launcher version is 1.0.5 now. 777 778- hexenworld master server: unknown packets are properly output as 779 hexdump. hwmaster version is 1.2.6 now. 780 781- 3dfx gamma hacks are disabled by default at compile time (see the 782 Makefile). 783 784- killed compatibility with user directories from HoT-1.4.0 and earlier 785 which didn't operate with a data1 subdirectory. they are ancient 786 history now. 787 788- added initial support for standalone free contents (mods) as an extra 789 patch. 790 791- utils, jsh2color: worked around a stack corruption resulting in 792 crashes due to the code's way of dealing with TEX_SPECIAL cases. 793 794- utils, lmp2pcx: Tweaked and documented palette file usage, allowed the 795 embedded palette again. 796 797- utils, qbsp: accept more than one wad file specified in the value of 798 the "wad" key. the wad file names must be separated by a semicolon. 799 spaces are allowed in the file names. quoted paths aren't allowed. 800 801- utils, qbsp: the absolute paths in wad values are not touched, ie. the 802 paths beginning with a '/' on unix or with a drive specifying string 803 like "C:\foo\bar.wad" on windows. all other values with no path 804 information or relative path information are prefixed with the project 805 path. this fixes the issues reported for qbsp usage from within 806 worldcraft. 807 808- added back some unused code for future reference. removed some truly 809 dead code. 810 811- other minor fixes. 812 813