This shows you the differences between two versions of the page.
version:1.9.0-beta6 [2017-03-23 07:02] – skyjake | version:1.9.0-beta6 [2017-03-23 07:07] (current) – skyjake | ||
---|---|---|---|
Line 1: | Line 1: | ||
+ | <- 1.9.0-beta5.1 ^ Versions ^ 1.9.0-beta6.1 -> | ||
+ | ====== Version 1.9.0-beta6 ====== | ||
+ | |||
+ | # | ||
+ | |||
+ | These are the release notes for version 1.9.0-beta6 of the [[doomsday_engine]]. Beta 6 represents almost two years' worth of work toward the 1.9 series. A lot has changed under the hood, and there are quite a few visible changes as well. However, our work is still ongoing, so this release unfortunately has some [[# | ||
+ | |||
+ | Some highlights: | ||
+ | |||
+ | * Redesigned, more powerful control bindings subsystem. Axis controls can be bound to player controls in the same way as keys. There is a stack of binding contexts that allows using the same key/control for multiple things depending on the game and UI state (see [[listbcontexts]]: | ||
+ | * UI graphics tune-up. A new " | ||
+ | * OpenGL rendering plugin integrated into the engine, and support for Direct3D dropped. This eases future development of the renderer significantly. | ||
+ | * BSP and gl node builder plugin integrated into the engine. Existing BSP and gl node data present in maps is now ignored, we opt to always build our own. | ||
+ | * New Materials system. | ||
+ | |||
+ | |||
+ | ===== Upgrading ===== | ||
+ | |||
+ | |||
+ | If you are upgrading an existing installation of Doomsday, note the following: | ||
+ | |||
+ | * There has been numerous changes to the control bindings system. We recommend resetting your old bindings with the following console command: | ||
+ | clearbindings; | ||
+ | |||
+ | |||
+ | ==== Windows Vista ==== | ||
+ | |||
+ | Any existing Doomsday installation must be fully uninstalled prior to installing this release. The default runtime folder and location where Snowberry saves user profiles has been changed in this release. Doomsday now stores data separately for each user account. | ||
+ | |||
+ | |||
+ | ===== Known problems ===== | ||
+ | |||
+ | |||
+ | |||
+ | ==== Multiplayer games ==== | ||
+ | |||
+ | |||
+ | Networked games are **NOT working** in this release. You are able to connect to a server but the client is unable to move. | ||
+ | |||
+ | |||
+ | ==== Audio ==== | ||
+ | |||
+ | |||
+ | The audio plugin system is not fully working in this release. Therefore we recommend that you allow Doomsday to use the default audio driver (SDL_mixer), | ||
+ | |||
+ | |||
+ | ==== Reported bugs ==== | ||
+ | |||
+ | |||
+ | You can see a list of the bugs already reported in the [[http:// | ||
+ | |||
+ | |||
+ | ===== Fixes ===== | ||
+ | |||
+ | |||
+ | ==== Map format ==== | ||
+ | |||
+ | * Support for packed sidedefs. This method of storing sidedefs is used to extend the WAD format sidedef limit and at the same time, reduce the size of maps. Both DOOM2: | ||
+ | * Fatal error when attempting to build sector line and subsector tables for maps with damaged/ | ||
+ | * Infinite loop when attempting to load 2002ado.zip:: | ||
+ | |||
+ | |||
+ | ==== Renderer ==== | ||
+ | |||
+ | * Numerous lighting inconsistencies between different world surfaces and objects. | ||
+ | * Player' | ||
+ | * Algorithm used for determining the position of automatically calculated lights and halos on sprites was broken. This resulted in halos which suggested the light origin was always in the top left quarter of the sprite. | ||
+ | * Filters and special filter drawing, affecting the view border in all games. | ||
+ | * Emulate AASTINKY/ | ||
+ | * Texturing problems with maps built by Oblige (http:// | ||
+ | * Until a mobj moved, the angle of all models used by it was incorrect (http:// | ||
+ | * Game objects not drawn if the sector they are in is not visible (http:// | ||
+ | * HQ2X "Smart Filtering" | ||
+ | * Halo offset calculated incorrectly in LO_AddLuminous. | ||
+ | * Sky top colour was always determined from the original sky texture regardless whether a texture replacement was in use. | ||
+ | * Dynamic lights for palette-translated sprites were coloured according to the original (un-translated) sprites. | ||
+ | * High resolution textures/ | ||
+ | * Drawing Models whose skin is determined by cycling through a range over time, would continue animating with the client paused. | ||
+ | * When drawing the console, if a background [[material]] is set, it would also be used on both the border and the shadow. | ||
+ | * Memory leak in BlackOutlines(). | ||
+ | |||
+ | |||
+ | ==== Audio ==== | ||
+ | |||
+ | * MIDI music broken when playback is attempted using the sdl_mixer driver. | ||
+ | * Subsector reverb values were calculated incorrectly (always indexed using a base of zero instead of the subsector-> | ||
+ | * Environmental audio effects were not affected by changes to the world when in-game. | ||
+ | |||
+ | |||
+ | ==== Definitions ==== | ||
+ | |||
+ | * Memory allocated for [[line_type]] definitions was not being released on exit, causing a leak. | ||
+ | * Default shiny color for models left uninitialized for submodels four and above. | ||
+ | * [[line_type]] iparam flag fields read incorrectly. | ||
+ | |||
+ | |||
+ | ==== Console ==== | ||
+ | |||
+ | * " | ||
+ | * Buffer overflow vulnerabilities relating to the console command line. | ||
+ | * Cursor height was not scaled correctly according to font size. | ||
+ | |||
+ | |||
+ | ==== Dedicated console ==== | ||
+ | |||
+ | * Fatal error when trying to move the Doomsday Console whilst in dedicated console mode. | ||
+ | |||
+ | |||
+ | ==== Misc ==== | ||
+ | |||
+ | * Segmentation violation when attempting to use the [[add]]/ | ||
+ | |||
+ | |||
+ | ==== Windows ==== | ||
+ | |||
+ | * Input events were being processed when the main window did not have focus (http:// | ||
+ | |||
+ | |||
+ | ==== Unix ==== | ||
+ | |||
+ | * Endian issues in the TGA file reader/ | ||
+ | |||
+ | |||
+ | ==== Common code library ==== | ||
+ | |||
+ | |||
+ | === Automap === | ||
+ | |||
+ | * Issues with marked points. Now rotated with the map window and not the view frame, are always drawn at a readable scale. | ||
+ | * Free panning did not respect the rotation angle and instead used the untransformed X and Y world axes. | ||
+ | * Default colours not taken from the [[playpal|palette]] (http:// | ||
+ | |||
+ | |||
+ | === UI === | ||
+ | |||
+ | * Expensive to calculate values, required for rendering the menu fog were unnecessarily calculated when the menu was not visible. (http:// | ||
+ | * " | ||
+ | * Position and size of the animated player preview visible in the player setup menu were not constant, when using custom sprites with very different dimensions and/or offsets. | ||
+ | |||
+ | |||
+ | === XG === | ||
+ | |||
+ | * Use sound played when the player crosses a linedef whose type activation method is " | ||
+ | * Segmentation violation when using the [[ccmd]]s: [[ccmd_move|move]], | ||
+ | * Potential buffer overflow vulnerabilities in XS_GetPlane and XS_GetType. | ||
+ | * If a map number is not set in an XG end_level line type the exit would take the player to the first map (instead of the next as defined by the map progression) (http:// | ||
+ | * Giving armour using the XG power line type would only work as expected if the player had already picked up an armor item (http:// | ||
+ | |||
+ | |||
+ | === InFine === | ||
+ | |||
+ | * If a " | ||
+ | |||
+ | |||
+ | ==== jDoom ==== | ||
+ | |||
+ | * Crushing floors/ | ||
+ | * Health amount given upon pickup of a Supercharge incorrect (http:// | ||
+ | * Relative spawn height for the Revenant' | ||
+ | * Various game objects not moving with the floor (http:// | ||
+ | * Any mobj flagged with MF_SKULLFLY would stop moving if their trajectory would intercept another mobj flagged with MF_SPECIAL. | ||
+ | * Fatal error when attempting to use the console command [[give]] when not in-game. | ||
+ | * Fatal error if all of the player' | ||
+ | * Infinite loop when the player has no ammo of any kind and all player weapons require ammo. | ||
+ | * Blood spawned by P_DamageMobj even if no damage actually inflicted. | ||
+ | * Voodoo dolls effecting the " | ||
+ | * Able to shoot sky floors with lineattacks. | ||
+ | * Gap in the statusbar when icarus.wad is played and statusbar is not opaque (due to the ST_ARMS patch being smaller than the used in the IWADs). | ||
+ | * ST_ARMS positioning issues with the statusbar when playing the HACX mod. | ||
+ | * Missing skull cursor in the " | ||
+ | * Attempts to save the game when a map is not loaded would result in the user being told they can't save because they are dead. Instead, display a more accurate/ | ||
+ | * Method of circumventing cheat protection to allow the client the use of various automap cheats in multiplayer games (http:// | ||
+ | * Attempting to commit suicide while already dead would ask the player to confirm, even though as they were already dead, suicide is not an option. | ||
+ | * Segmentation violation when a mobj attempts to change to a undefined pain state (http:// | ||
+ | |||
+ | |||
+ | === Unix === | ||
+ | |||
+ | * Incorrect random number look up table used within the game logic caused by a linking/ | ||
+ | |||
+ | |||
+ | ==== jHeretic ==== | ||
+ | |||
+ | * If conditions were right, D' | ||
+ | * Infinite loop when the player has no ammo of any kind and all player weapons require ammo. | ||
+ | * Fatal error when attempting to use the console command [[give]] when not in-game. | ||
+ | * Blood spawned by P_DamageMobj even if no damage actually inflicted. | ||
+ | * Firemace globes destroyed instantly on contact with the floor (http:// | ||
+ | * The Blaster missile was not stored to saved games. | ||
+ | * Able to shoot sky floors with lineattacks. | ||
+ | * Attempts to save the game when a map is not loaded would result in the user being told they can't save because they are dead. Instead, display a more accurate/ | ||
+ | * Method of circumventing cheat protection to allow the client the use of various automap cheats in multiplayer games (http:// | ||
+ | * Attempting to commit suicide while already dead would ask the player to confirm, even though as they were already dead, suicide is not an option. | ||
+ | * Segmentation violation when a mobj attempts to change to a undefined pain state (http:// | ||
+ | |||
+ | |||
+ | === Unix === | ||
+ | |||
+ | * Incorrect random number look up table used within the game logic caused by a linking/ | ||
+ | |||
+ | |||
+ | ==== jHexen ==== | ||
+ | |||
+ | * Mobj vs polyobject collision detection. In beta5(.1) it is possible to walk right through them once they have moved from their starting position. | ||
+ | * Raising stairs in Hexen:: | ||
+ | * Clerics could not be damaged by their own throwing bombs. | ||
+ | * Infinite loop when the player has no ammo of any kind and all player weapons require ammo. | ||
+ | * Fatal error when attempting to use the console command [[give]] when not in-game. | ||
+ | * Blood spawned by P_DamageMobj even if no damage actually inflicted. | ||
+ | * After map load, the player' | ||
+ | * The Mage's Wand Missile and the Cleric' | ||
+ | * Able to shoot sky floors with lineattacks. | ||
+ | * Attempts to save the game when a map is not loaded would result in the user being told they can't save because they are dead. Instead, display a more accurate/ | ||
+ | * Method of circumventing cheat protection to allow the client the use of various automap cheats in multiplayer games (http:// | ||
+ | * Attempting to commit suicide while already dead would ask the player to confirm, even though as they were already dead, suicide is not an option. | ||
+ | * Segmentation violation when a mobj attempts to change to a undefined pain state (http:// | ||
+ | |||
+ | |||
+ | ==== dsDirectSound ==== | ||
+ | |||
+ | * Linear to logarithmic sound effect volume translation resulted in no audible sound if 3D sound positioning was enabled and the sound effects volume control was lower than maximum. | ||
+ | |||
+ | |||
+ | ===== Changes ===== | ||
+ | |||
+ | * All game object origins, momentums and dimensions are now stored and manipulated with host system, floating point precision. | ||
+ | * Aureal 3D audio no longer supported, (via the old a3d plugin). | ||
+ | * Revised method for handling animated [[texture]]s and [[flat]]s to support the original DOOM engine behaviour. | ||
+ | * The lumps [[lump_pnames|PNAMES]] and [[lump_texture|TEXTURE1/ | ||
+ | |||
+ | |||
+ | ==== DMU ==== | ||
+ | |||
+ | * Runtime aliases for DMU properties have been removed as they were an unnecessary complication. | ||
+ | * It is now possible to target a property of another DMU object that by inference, can be reached from the DMU object passed without explicitly specifying so. For example, if the referenced object is of type DMU_SUBSECTOR the properties of DMU_SECTOR are available without having to first retrieve either a ptr or index to the sector followed by a second DMU call to set/get the required property. | ||
+ | * Polyobjects are no longer accessed through DMU. Polyobjects are now public objects similar to mobjs. | ||
+ | * Revised DMU property names. | ||
+ | |||
+ | |||
+ | ==== Map format ==== | ||
+ | |||
+ | * [[bsp]] data is no longer required/ | ||
+ | * GL node data is now required in order to load a map and will be generated automatically by the engine. | ||
+ | * It is now possible to load a map with zero [[things]]. In this instance, a new player thing will be added to the map, located at [0, 0] on the world grid. In addition, the player will be changed to a camera automatically. | ||
+ | |||
+ | |||
+ | ==== Renderer ==== | ||
+ | |||
+ | * [[open_gl]] renderer moved into the engine. | ||
+ | * [[direct3_d]] renderer is no longer available. | ||
+ | * Abstract flat management. Lump indices are no longer used as identifiers anywhere. | ||
+ | * Redesigned [[fakeradio]] back end. | ||
+ | * Now fully dynamic and updates in response to map geometry changes whilst in-game. | ||
+ | * Improved shadow edge generation. Now handles complex geometry much better, greatly reducing the frequency of glitches and other visual artifacts. | ||
+ | * Redesigned [[decoration]]s subsystem. | ||
+ | * Decoration origins are now plotted using a new three dimensional approach regardless of the surface they are attached to. | ||
+ | * Greatly improved performance in large maps by caching plotted decorations and maintaining lists of surfaces with decorations. | ||
+ | * Potentially allows for any object to be used as a decoration. | ||
+ | * Added lightlevel range limits to [[decoration]] definitions. | ||
+ | * Decoration origins for the current renderframe now generated once and used for the viewports of all local players. | ||
+ | * Redesigned [[lumobj]] management (dynamic lights). | ||
+ | * lumobjs are now projected using a new three dimensional approach regardless of the surface they are attached to. | ||
+ | * Revised memory management. Release all memory tied up in unused lumobjs when the current map is left. | ||
+ | * Removed fixed limit on the maximum number of visible lumobjs to be depth sorted. | ||
+ | * lumobjs for the current renderframe now generated once and used for the viewports of all local players. | ||
+ | * Lighting of all world surfaces and objects is now deferred until just before they are sent to the render lists. | ||
+ | * Changed [[rend-tex-gamma]]: | ||
+ | * Changed maximum [[decoration]] distance from viewer to 2048 world units (was 1500). | ||
+ | * Combined [[cvar]] // | ||
+ | * Combined [[cvar]] // | ||
+ | * Renamed [[cvar]] " | ||
+ | * Removed [[setgamma]]: | ||
+ | * Revised "torch light" works with any RGB colour rather than just white light. | ||
+ | * Remove black outlines from masked [[texture]]s similarly to [[sprite]]s. | ||
+ | * Changed, thing shadows are no longer drawn if the world is being drawn fully bright. | ||
+ | * Changed, thing shadows are no longer drawn if the surface they would appear on is glowing. | ||
+ | * Changed, it is now possible to enable/ | ||
+ | * Changed, the lightgrid debug display is no longer flipped on the X and Y axes. | ||
+ | * Changed, always announce missing models in the console (was verbose >= 1). | ||
+ | |||
+ | |||
+ | ==== Misc ==== | ||
+ | |||
+ | * Improved: Start up time. | ||
+ | * Redesigned algorithm for loading [[pnames]] and texture registration. | ||
+ | * Improved: Map load time improved further with large maps. | ||
+ | * Revised memory usage during BSP generation to reuse already allocated memory where possible. | ||
+ | * Redesigned [[subsector]], | ||
+ | * Collinear segs are only checked once per round of potential node partition evaluation in the BSP builder. | ||
+ | * Revised algorithm for building the [[subsector]] [[blockmap]]. | ||
+ | * Make use of the [[blockmap]] to accelerate checking for overlapping linedefs. | ||
+ | * No pre-initialization is needed for [[fakeradio]] line neighbors. | ||
+ | * Enhanced algorithm for calculating vertex line owners, line angles are only calculated once for each line in an owner' | ||
+ | * Re-designed algorithm for calculating sector reverb properties for environmental audio effects. | ||
+ | * Vertex sector owners are no longer needed and have been removed. | ||
+ | * Only look up surface material names once and use their symbolic names thereafter. | ||
+ | |||
+ | |||
+ | ==== User interface ==== | ||
+ | |||
+ | * UI cursor is now scaled relatively to the window dimensions. | ||
+ | * [[ui-cursor-width]], | ||
+ | * Display the ddkey name instead of the ASCII key code in CP_KeyGrabDrawer() (used to draw the console activation key). | ||
+ | |||
+ | |||
+ | ==== Windows ==== | ||
+ | |||
+ | * The separate startup window containing messages printed during engine launch was removed. | ||
+ | * Numerous improvements to dedicated console, now behaves similarly to the " | ||
+ | |||
+ | |||
+ | ==== Mac OS X ==== | ||
+ | |||
+ | * The separate startup window containing messages printed during engine launch was removed. | ||
+ | |||
+ | |||
+ | ==== Common code library ==== | ||
+ | |||
+ | |||
+ | === Automap === | ||
+ | |||
+ | * Lists introduced for faster rendering. | ||
+ | * All automap values are now extrapolated where suitable (view position, view rotation, view scale, window dimensions plus more). | ||
+ | * Automap now fades in/out smoothly when activated/ | ||
+ | * Map name was not displayed in all supported games. Map name is now scaled relative to display resolution and using the HUD scale multiplier (http:// | ||
+ | * Removed the [[blockmap]] grid display. The engine now has a built-in blockmap viewer for debugging purposes making the old display redundant. | ||
+ | |||
+ | |||
+ | === Chat === | ||
+ | |||
+ | * Chat between local players (including chat macros) is now supported (client-side). | ||
+ | |||
+ | |||
+ | === UI === | ||
+ | |||
+ | * Changed [[menu-effects]]: | ||
+ | * Changed [[menu-fog]]: | ||
+ | |||
+ | |||
+ | === XG === | ||
+ | |||
+ | * Thinking for [[xg_line_type]]s and [[xg_sector_type]]s now handled using the existing thinker mechanism. | ||
+ | |||
+ | |||
+ | ==== jDoom ==== | ||
+ | |||
+ | * Greatly improved precaching. | ||
+ | * Various problems with [[voodoo_doll]]s not working as expected. | ||
+ | * Logic for mobjs to avoid dropoffs incorrect. | ||
+ | * If a mobj was damaged by a camera player, every time it entered it's pain state it would rotate towards the player. | ||
+ | * Added all [[value]]s currently available to values.ded | ||
+ | * Armour collectables (not the armour bonus) no longer receive lights and halos by default. | ||
+ | * Removed fixed limit on track numbers playable via the IDMUS cheat. Now all music tracks are playable, even ones added by addons. | ||
+ | * A dead player can now instigate the " | ||
+ | * Players attempting to pickup items flagged as " | ||
+ | * [[conbg]]: | ||
+ | |||
+ | |||
+ | ==== jHeretic ==== | ||
+ | |||
+ | * Re-licensed under the [[http:// | ||
+ | * Logic for mobjs to avoid dropoffs incorrect. | ||
+ | * If a mobj was damaged by a camera player, every time it entered it's pain state it would rotate towards the player. | ||
+ | * A dead player can now instigate the " | ||
+ | * Players attempting to pickup items flagged as " | ||
+ | * [[conbg]]: | ||
+ | * The lump [[lump_autopage|AUTOPAGE]] is no longer required. | ||
+ | |||
+ | |||
+ | ==== jHexen ==== | ||
+ | |||
+ | * Re-licensed under the [[http:// | ||
+ | * Logic for mobjs to avoid dropoffs incorrect. | ||
+ | * If a mobj was damaged by a camera player, every time it entered it's pain state it would rotate towards the player. | ||
+ | * A dead player can now instigate the " | ||
+ | * Players attempting to pickup items flagged as " | ||
+ | * [[conbg]]: | ||
+ | * The lumps [[lump_animdefs|ANIMDEFS]], | ||
+ | |||
+ | |||
+ | ===== New features ===== | ||
+ | |||
+ | * Moved [[bsp]] and [[glnode]] generation entirely into the engine. A bsp and glnode dataset will be generated automatically for all maps. | ||
+ | * Moved [[blockmap]] management entirely into the engine. A blockmap will be generated automatically for all maps. Redesigned interfaces for the various look up routines (such as "line of sight" and " | ||
+ | * Multiple local players. | ||
+ | * Added [[viewgrid]]: | ||
+ | |||
+ | |||
+ | ==== API ==== | ||
+ | |||
+ | * Implemented support for engine-side console command ([[ccmd]]) parameter validation and overloading. This improves robustness, security and simplifies implementation when multiple versions of a command are needed for similar functionality. | ||
+ | * Abstract [[material]]s system wraps [[texture]], | ||
+ | * Map building API allows [[plugin]]s to construct new maps dynamically at runtime. | ||
+ | |||
+ | |||
+ | ==== Audio ==== | ||
+ | |||
+ | * Added [[pausemusic]]: | ||
+ | |||
+ | |||
+ | ==== DMU ==== | ||
+ | |||
+ | * Added new DMU sub-object iterators which are the preferred method of traversing e.g. the segs of a subsector. Use of these iterators will reduce overhead considerably compared to a " | ||
+ | |||
+ | |||
+ | ==== Video ==== | ||
+ | |||
+ | * Fullscreen mode, [[color_depth]] (bits per pixel) and [[anisotropic_texture_filtering]] are now changeable at run time via the Doomsday Control Panel and console. | ||
+ | * Added [[togglefullscreen]]: | ||
+ | * Added [[setbpp]]: | ||
+ | * Added [[vid-fullscreen]]: | ||
+ | * Added [[vid-bpp]]: | ||
+ | * Take advantage of the relaxed non-power-of-two rule in later OpenGL implementations if available, to avoid resorting to resizing odd sized textures if not absolutely necessary (if enabled). | ||
+ | * Added [[-texnonpow2]] Enable use of non-power-of-two textures. Note some textures may still be resized if required. | ||
+ | |||
+ | |||
+ | ==== Renderer ==== | ||
+ | |||
+ | * Added support for DOOM.exe rendering trick; non-clipping of middle [[material]]s on twosided [[linedef]]s by sky [[surface]] [[plane]]s. | ||
+ | * Added [[rend-tex-filter-anisotropic]]: | ||
+ | * Added [[bm_inv]]: | ||
+ | * Added multiplicative blending mode for "torch light" (brightens surfaces as the viewplayer approaches them). | ||
+ | * Added short, two render frame delay to changes to the "torch light" | ||
+ | * Added interpolated smooth scrolling for moving surface materials. | ||
+ | * Added [[viewgrid]]: | ||
+ | * Added [[rend-light-attenuation]]: | ||
+ | * Added [[rend-dev-nosprite]]: | ||
+ | * Added [[rend-dev-surface-show-normals]]: | ||
+ | * Added [[rend-dev-vertex-show-indices]]: | ||
+ | * Added [[rend-dev-vertex-show-bars]]: | ||
+ | |||
+ | |||
+ | ==== Definitions ==== | ||
+ | |||
+ | * Added [[material]] definitions. | ||
+ | * Added [[sky]] definitions. Rather than define the sky properties for every map, each time directly in a [[map_info_ded_]] definition, instead; use a Sky definition, giving it a unique ID which is then used in the Map Info definition to link the two. This allows mod authors to patch just the Sky definitions without needing to touch/ | ||
+ | * [[detail]] and [[reflection]] definitions can now specify flags governing when the definition should be used. | ||
+ | * [[texture_environment]]: | ||
+ | |||
+ | |||
+ | ==== File system ==== | ||
+ | |||
+ | * Added [[automatic_file_mapping_in_pk3]] for **/models** and **/sfx** in a [[zip]]/ | ||
+ | |||
+ | |||
+ | ==== Misc ==== | ||
+ | |||
+ | * Added [[listmaterials]]: | ||
+ | * New [[blockmap]] display for debug purposes: | ||
+ | * Added [[rend-dev-blockmap-debug]]: | ||
+ | * Added [[rend-dev-blockmap-debug-size]]: | ||
+ | |||
+ | |||
+ | ==== Windows ==== | ||
+ | |||
+ | * Make use of multisampling to achieve fullscreen anti aliasing, if available. | ||
+ | |||
+ | |||
+ | ==== Common code library ==== | ||
+ | |||
+ | |||
+ | === Save system === | ||
+ | |||
+ | * A new common save system based on that used previously by [[j_doom]]. | ||
+ | * Intermittent **//Thing archive exhausted// | ||
+ | * **//Too many objects//** errors resolved (http:// | ||
+ | * Fixed: Rarely, a thinker could be added twice to the thinker list, leading to problems later on. | ||
+ | |||
+ | |||
+ | === Automap === | ||
+ | |||
+ | * Added [[rend-dev-freeze-map]]: | ||
+ | * Added a parallax scrolling background like in original [[heretic]]/ | ||
+ | * Added [[map-pan-speed]]: | ||
+ | * Added [[map-pan-resetonopen]]: | ||
+ | * Added [[map-zoom-speed]]: | ||
+ | * Added [[map-open-timer]]: | ||
+ | * Added [[map-customcolors]]: | ||
+ | * Added [[map-mobj-r]]/ | ||
+ | |||
+ | |||
+ | === Misc === | ||
+ | |||
+ | * Support for the particular way in which DOOM.exe animated flats (based on lump number) and textures (based on TEXTURE# definition id). | ||
+ | |||
+ | |||
+ | === UI === | ||
+ | |||
+ | * Added new netgame scoreboard, available in all game types. The scoreboard can be made visible by pressing and holding the backslash key ' | ||
+ | * Added [[menu-hotkeys]]: | ||
+ | |||
+ | |||
+ | === XG === | ||
+ | |||
+ | * [[wall_material_xg_class_]] can now specify whether middle [[material]]s on twosided [[linedef]]s should be stretched from floor to ceiling. | ||
+ | |||
+ | |||
+ | ==== jDoom ==== | ||
+ | |||
+ | * Crosshair vitality. Colour the crosshair according to how near the player is to death. Available via the in-game HUD options menu and the [[view-cross-vitality]]: | ||
+ | * Added [[hud-keys-combine]]: | ||
+ | * Enhanced [[give]]: | ||
+ | |||
+ | |||
+ | ==== jHeretic ==== | ||
+ | |||
+ | * Crosshair vitality. Colour the crosshair according to how near the player is to death. Available via the in-game HUD options menu and the [[view-cross-vitality]]: | ||
+ | * Enhanced [[give]]: | ||
+ | * Added [[server-game-coop-nodamage]]: | ||
+ | * Added [[server-game-noteamdamage]]: | ||
+ | |||
+ | |||
+ | ==== jHexen ==== | ||
+ | |||
+ | * Crosshair vitality. Colour the crosshair according to how near the player is to death. Available via the in-game HUD options menu and the [[view-cross-vitality]]: | ||
+ | * Random class selection via the menu when starting a new game. | ||
+ | * Enhanced [[give]]: |