Doomsday Version History Doomsday 1.8.6 | Last updated on Jan 18 2005
Changes listed for versions newer than the latest complete release are usually available as a binary snapshot.

Legend: Added Changed or improved Fixed or removed

1.7.7
switch texture pairs (SW1/SW2) are precached at the same time
"Generator:Stage:Radius rnd": Randomness of particle radius
sound-info shows sound names as well as ID numbers
support for textured particles
flat particles stick to planes
high-resolution flats with 4 channels (alpha) were loaded incorrectly
sector lightlevel overflow in sectordelta (e.g. on jHexen map 26)
alternative texture path must be tried first when loading hires images (-texdir2)

1.7.6
cvar rend-hud-fov-shift: HUD weapon model moved down if FOV > 90, defaults to 45
dsCompat: DirectSound 6 sound driver, tries to be as compatible as possible
-csd: use dsCompat.dll as the sound driver
"Generator:Min spawn radius": minimum distance from the generator source for new particles, a nonzero value uses a more sophisticated algorithm that chooses the particle's coordinates somewhere from the surface of a sphere
"Generator:Damage mobj" creates a damage-triggered generator
ptf_force (stage flag 0x100): particle is affected by a sphere force, which attracts the particle toward the surface of a sphere while also rotating around an arbitrary axis
"Generator:Force axis": a 3D vector around which sphere force rotates particles, also sets the strength of the rotation
"Generator:Force radius": radius for sphere force
"Generator:Force": strength of the radial force that pushes or pulls particles towards the surface of the sphere
ptf_hflat (stage flag 0x10): render particle touching a plane as flat
ptf_vflat (stage flag 0x80): render particle touching a wall as flat
ptf_flat: horiz and vert flags combined
ptf_stagevtouch, ptf_stagehtouch (stage flags 0x20, 0x40): wall/flat- specific stagetouch for particles
gnf_scalerate: use damage as a factor for damage ptcgen spawn rate
df_idangle: random fixed angle offset for a model
EAX errors ignored after first report (if property unsupported)
non-moving particles contacting a wall (assumed stuck) are destroyed if the wall becomes an opening
-noeax recognized by dsCompat
smaller button steps for panel controls
sound buffer loaded before setting properties (needed by dsCompat)
absolute demo paths aren't prefixed with "demo\"
mixer is more careful about a failed init (div-by-zero was possible)
camera filter (pain/bonus) cleared at level exit
win32 CD player didn't stop track at shutdown
flat precacher used wrong indices; some raw screens (Heretic's FINAL*) were displayed as garbage

1.7.5
console command "init-(levelid)" executed after level setup; for example "init-e2m3" could be aliased to do something useful
ccmd write: saves console variables, bindings and aliases to a file
-nopsf: don't set the primary sound buffer format
"Model:Sub:Frame range" added, works with df_idframe
model loader will automatically load a DMD if it exists, even if def uses MD2
memory zone no longer used in texture processing (malloc only)
MIDI volume: channel volumes not set separately, more compatible
sounds stop playing based on time, not buffer position
-verbose (-v) prints all command line options to Doomsday.out
game window is not forced to be the topmost window
client didn't play sounds without an origin
-noeax option caused a crash at startup
FMOD: MIDI/etc music looping fixed, again
fixed a crash when lights, halos and lit sprites were all off
fixed: game window must not be shown in dedicated mode
crashing at startup was likely when lots of models/skins were missing
a minor correction to data\cphelp.txt

1.7.4
minimizing possible in windowed mode
identification number always printed for loaded IWAD
Direct3D: depth buffer mode verified to work correctly
mouse wheel was confused with mouse buttons 5 and 6
Control Panel yes/no buttons didn't reflect changes to cvars
dpDehRead: bad memory allocation led to heap corruption at shutdown
FMOD: MIDI/etc music looping fixed
fixed a rare potential crashing bug in the clipper (C_AddRange)

1.7.3
startup message window
support for up to six mouse buttons
support for rotational joystick axes and two sliders
each joystick axis can be inverted (input-joy-*-inverse)
all textures in an animation sequence are precached at the same time
popup help window for (some) Control Panel options
ui-panel-help, ui-panel-tips
GL not inited until engine init is complete (no more -fullstart)
game window hidden until GL init begins
FMOD v3.6
mixer used to set MIDI volume
Doomsday handles the deadzone of the joystick
brighter background for options frame in Control Panel
halos weren't affected by object movement smoothing
music was played even if music volume was set to zero
EAX initialization was sloppy
FMOD/CD: original volume restored correctly at shutdown
dedicated mode text console problems on WinXP (presumably Win2k, too)
OpenGL: mipmapped paletted textures had palette problems

1.7.2
A3D support with the -a3d option (dsA3D.dll; also needs A3DAPI.dll)
-oal option for OpenAL support
-vtxar option: make the OpenGL renderer use vertex buffers
-anifilter option: use anisotropic texture filtering
-diag option: print lots of debug info about Direct3D
OpenGL renderer defaults to not using vertex buffers
slightly larger Z bias for dynamic light polys
detail textures can be PCX images
model skin dimensions are allowed to differ from what models expect
sounds are uncached after one minute of not being played
sounds prefer channels already loaded with the same sample
texture height queries weren't returned in fixed point

1.7.1
multiple -command/-cmd options are allowed
console command line cleared when console closed
DED loader reallocates memory fewer times, faster performance
music def loading: later defs didn't patch earlier ones
WAV loader: confused all chunk lengths, loading failed
WAV loader: header read incorrectly, loading failed
if music volume was set to zero, it wasn't updated at startup and music played with full volume
-bpp was set after first GL init, caused WGL to choke on the second time (error 2000)
Direct3D renderer tried initing with bit depth zero, caused D3DERR_INVALIDCALL

1.7.0
engine source code reorganized
games, renderers and plugins all use the same API to access engine routines
keymaps (DKM files in the Data\KeyMaps\ directory); default.dkm and fi.dkm included in the release
multiple -file options allowed
-iwad <=> -file
particle generators can be triggered by the map ID (Center = origin XYZ)
linelinks
safe P_(Un)LinkMobj
enhanced mobj/line/sector iterators
minor bugfixes

Sound:
revised sound system; now completely handled by the engine
new sound flags (Audio.ded): sf_shift, sf_shift2, sf_repeat, sf_nodist, sf_exclude
sound exclusion groups (Sound:Group)
sounds can have external resources (mono PCM WAV, 8/16 bits, 11/22/44 KHz), using the Sound:Ext key
revised music system; completely handled by the engine, each interface (MUS/Ext/CD) can run a different driver, Win32 and FMOD implemented
no more A3D support

Renderer:
interface between the rendering DLL and Doomsday revised (old rendering DLLs are now incompatible)
Direct3D renderer rewritten to use DirectX 8
rendering DLL handles the creation of mipmaps
rendering lists moved into the engine, now independent of the rendering DLL
halos/flares don't read from the Z-buffer any more (source point clipped by geometry, resulting halo rendered sorted during DrawMasked)
halos can't be occluded by their source (yay!)
halos appear and disappear gradually (rend-halo-occlusion controls speed)
cvar rend-camera-smooth: filter camera movement between tics (removes FPS limit for camera movement)
DMD2 model format (MD2 with detail levels)
LOD rendering for DMD models
cvar rend-model-lod: distance to LOD level zero
mobj shadows (extremely simple, unclipped)
cvars rend-shadow, rend-shadow-darkness, rend-shadow-far, rend-shadow- radius-max
Model:Shadow radius (overrides automatic calculation)
changing the resolution shuts down and re-inits the renderer (will work with Direct3D, now)
clipper maintains information about planes that occlude visibility (occlusion ranges); -maxor command line option
clipper allows zero-length solid segments now, fixes a few clipping problems
fog is disabled while psprites are rendered

Console:
new UI color scheme (blue/gray)
ccmd uicolor: change UI colors
Startup.cfg: startup script for configuring UI colors, the console font and keymap
Control Panel (quickly accessed with Shift-Esc) for easy configuration
Shift-Tilde (or Shift-[console activation key]) will toggle between fullscreen and halfscreen console modes
aliases are automatically saved to the default config file
horizontal rulers in the console
console text can be centered on a line
message produced by ccmd help updated

Networking:
-server option: equals to "net init tcpip; net server start" right after startup
-connect option: after startup, connects to a server at the given IP address (e.g. "-connect 127.0.0.1")
ccmd connect: connects to a server at the specified IP address (synchronously; the connection is formed in startup mode)
the font console command can now change the console font (e.g. "font name fixed12"), can be done from startup.cfg/user.cfg
server does not halt while UI is active
clients don't expect to receive cmd info of remote players any more
clients update visible mobj angles and remote player selector
clients update player mobj states
visangles (rend-mobj-smooth-turn) won't be used in netgames or demos

Input:
input code updated to work with DirectInput 8

1.6.1
model skins are precached by default (rend-model-precache)
precacher also binds all textures to make sure they'll be ready
one skin can be shared by many models (internal skin list)
when looking for a skin, the model's home directory is searched first (where the model is in)
reports of missing model files are summed up and shown only once
console line length adjusted to fit the game window (used to be 70)
rend-light-shrink: dynlight polys are shrunk horizontally so the case when they overlap and produce bright stray pixels is (mostly) gone
rend-particle-diffuse: if a particle is closer than the diffuse factor times its radius, it will receive extra alpha and disappear when close enough
rend-particle-visible-near: if a particle is closer than this, it won't be rendered at all
ccmd stopfinale: stops the currently playing interlude
view-bob-height: camera height bobbing factor (1=normal)
view-bob-weapon: player weapon bobbing factor (1=normal)
progress bar doesn't make the screen flicker any more with page flipping
clients remove mobjs automatically when mobjs reach the null state
fixed particle generation in demos/netgames

1.6.0
definitions re-inited when (un)loading WADs
definitions can be read from WADs (DD_DEFNS lump, contains a DED file)
virtual files in WADs (translated using a DD_DIREC lump; use wadtool)
virtual files support: 3D models, image loaders (PNG, TGA, PCX), definitions, CFG files, DFN fonts
console variables renamed (old names work, too)
cvar con-completion: mode zero completes the unambiguous part
high-res textures and model skins can be PNG, TGA or PCX
color-keying for PNG, TGA, PCX ("filename-ck.png")
MD2 shiny skins (approximated cylindrical environment mapping)
"Shiny skin", "Shiny", "Shiny Color" added to Model\Md2 defn
"Color" added to Light defn ("Red", "Green", "Blue" combined)
"Finale" definitions
-texdir2: secondary hi-res texture directory (textures in the secondary directory override any textures in the normal hi-res texture directory)
-nopitch: disable sound effect pitch alterations
-nodop: disable 3D sounds' doppler effect
raw images (fullscreen 320x200 textures) deleted at level changes
client setup screen shows a warning about different IWADs
cvar client-pos-interval: number of tics between coordinate reports
cvar con-progress: progress indicator enabled/disabled
cvar rend-info-tris: (OpenGL) display rendering list triangle count
fixed sector lightlevel overflow (>255), caused black planes in bright sectors
sight blockmap traverser sometimes misses the target block, caused crashes in netgames (server) in certain maps
server was mixing up player deltas, fixed
negative player turndeltas became positive, fixed
server was not predicting clientside mobj animation, which prevented the server from correctly sending mobj state deltas
server destroyed a broadcasted chat message before it was relayed to everybody
client updated the wrong mobj when a new client joined; the new client was left invisible
absolute camera coordinates written in demos
very little plane movement speeds were truncated to zero
fixed a display gamma conflict with the D3D renderer
mobj-triggered particle generators restored after loading a saved game
KickStart: default profiles (KSS), option to run glBSP, quick resolutions list, updated options

1.5.5
cvars "vid_Gamma", "vid_Contrast", "vid_Bright"
cmd "setvidramp": update display's hardware gamma ramp
Flags key added to the Light definition
lgf_nohalo (0x100): dynamic light is rendered with no halo (lens flare)
PNG support (using libpng) for high-resolution textures
df_autoscale was broken
masked textures are no longer clamped vertically
KickStart: fixed a problem with WAD paths
progress bar caused a div-by-zero when map had less than 10 sectors
footclipping is now done for models, too (standing in water)

1.5.4
custom music formats detected (MP3, MOD, IT, XM, etc. can now be put in WAD files)
TGA images can be used to replace textures and flats (Data\*\Textures)
OpenGL: -texcomp option enables texture compression (OpenGL chooses the compression method)
df_selskin: model skin selection based on selector special byte
custom translucency can be set with three highest bits of the selector
cvars "net_MinSecUpdate", "net_FullSecUpdate", "net_MaxSecUpdate"
sector deltas cover a larger area (cvars "net_*SecUpdate")
EXT_texture_env_combine is accepted as well
KickStart: standard profiles are listed in a fixed order
internal handling of missing walls
32 MB of RAM allocated by default
fixed -maxzone (-mem)
fixed the case where invis-plane hack created looped plane links (the "linked to self" error)
maximum number of rendering lists increased to 1024
rendering lists cleared properly at level changes (not clearing leads to missing textures and messed up walls)
fixed sky fadeout color calculation (alpha was expected)
F_SKY1 was being bound repeatedly even if it's never used anywhere
reseting messed up detail textures (e.g. cmds "load", "unload")
dynamic lights weren't processed for subsectors that had no visible planes, even if the subsector had visible walls
dynamic light intensity diminishes gradually for lights that are on the "wrong" side of a floor/ceiling
dynamic lights on two-sided middle textures are now properly clipped
fixed a bug with animated textures
KickStart: -basedir is now quoted like other paths

1.5.3
BETA RELEASE
a simple plugin system (dp*.dll)
Dehacked reader plugin (dpDehRead.dll), reads .DEH files and DEHACKED lumps from loaded WADs
-bigmtex option: enlarge masked textures to fit patches that are too big (e.g. Aliens TC)
server can send lump name mappings to clients
better IWAD loading (IWAD always loaded first)
small changes in engine initialization
df_darkshadow affected by alpha (Model\Md2\Transparent)
relative paths with command line options fixed
clients sometimes displayed invalid plane textures (flats)
server/client crashed when psprite->state == NULL
sky fadeout color was incorrect in the first map that was played

1.5.2
BETA RELEASE
particle generators: "Generator" definition, vars: UseParticles, MaxParticles, PtcSpawnRate
detail textures: "Detail" definition, "detail" console command
OpenGL support for detail texture rendering (ARB_texture_env_combine)
"Light" definitions: customize dynamic lighting for specific States
CD-support for Music definitions (e.g. Ext = "cd:9";) with FMod
"IncludeIf", "ModelPath" DED directives
mobj selectors
directory structure reorganized (Doc\DSS.txt)
Short-Range Visual Offsets: smooth actor movement and turning, vars: r_UseSRVO and r_UseVisAngle
3D models associated with States instead of Sprite/Frame pairs
"Model" definition restructured (no more Frames), see Doc\DEDDoc.txt
rewritten command line handling (see Doc\CmdLine.txt)
server sends mobj states instead of sprites and frames
"UseModels" can be used to disable specific model groups
server & client setup screens have better default buttons
sprite lumps must reside inside a S_START/S_END block or the sprite loader will ignore them (used to be a bit too liberal!)
model interpolation in netgames
A3D support should be working again
minor bugs

1.05 (= 1.5.0)
netframes are deltas
client state is persistent between frames
when there are duplicate model definitions, the last one will be used
OpenGL: support for GL_EXT_paletted_texture (-paltex)
'setres': change display mode resolution or window size

1.04
MIDI files embedded in WADs can be played (not looped)
ccmds 'login' and 'logout': remote access to the server
'net_Password': password for remote access with 'login'
if DirectInput 5 init fails, DirectInput 3 is tried instead
DEDMan 1.13: DEH: initial player health, initial bullets, BFG cells/shot
new version of fmod.dll

1.03
display warning when no IWAD has been loaded
inter-frames (Inter in Model definition)
UI uses Small Fonts in low-res modes
translated sprites had invalid texture coordinates (all zero)
DEDMan 1.11: "Model/Inter", skin ranges, "Model/Skin tics", won't write "Line Type/Ap9" twice
jtNet2: tried to access null pointer
DLaunch 1.04: no more directory mixups

1.02
'settics': set the number of game tics per second
'repeat': repeats a command at given intervals
'r_NoSpriteZ': disable Z writes for sprites
'net_DontSleep': don't sleep while waiting for tics (redraw screen instead)
'net_FrameInterval': minimum number of tics between sent frames
external music files (played with FMod: http://fmod.org/, which supports MOD, S3M, XM, IT, MID, RMI, SGT (DirectMusic segment), RAW, WAV, MP2, MP3, OGG, WMA and ASF)
'playext': play a music file
DED Manager 1.1: (slightly limited) DeHackEd support
Line Type and Sector Type definitions in DED files (v3)
Music definitions can have a "File name" property
'ConsoleKey': keycode of the console activation key (default is 96)
'ConsoleShowKeys': show keycodes of all pressed keys in the console
-renorm option: recalculate all MD2 vertex normals when loading, takes some time but fixes models with incorrect normals
colored sector lighting
new model flags: df_movyaw (0x100) aligns model yaw angle with movement, df_nointerpol (0x200) disables interpolation for the frame, df_brightshadow2 (0x400) renders with additive blending and alpha=1, df_alignyaw (0x800) aligns model yaw angle with camera, df_alignpitch (0x1000) aligns model pitch angle with camera
server version incremented to 4 (old demos incompatible)
client interpolates demo view angles
flats (floor/ceiling textures) handling revised, now it's possible to use any loaded lump as a flat
size, color and Y offset of dynamic lights and flares are determined by analyzing the source sprite (adjust with r_dlMaxRad and r_dlRadFactor)
psprite models drawn differently, now won't go inside walls
sprites won't be stretched to fit whole texture, makes them sharper
model spin gets an offset based on thing type
client moves mobjs within sector when sector height changes
midtexture placement for segs with a missing toptexture
joystick init stopped at failed axis range setup
OpenGL: didn't make sure projected points were on the screen
sky mask wasn't applied to walls with zero-height backsector
there was a floorclip related bug in client's mobj unpacker

1.01a
large textures are allowed to have one alpha pixel (ZZZFACE3!)
midtexture placement in sectors that have an invisible floor
multi-pass skyfix

1.01
when a 2-sided line's upper texture is missing, the middle texture (if present) is extended to full height
plane linking: for sectors whose all lines' both sidedefs point to self, planes are linked to surrounding sector
'FlareZOffset': lens flare Z offset multiplier, greater values move flares nearer the camera (in Z buffer), also affects flare size
DED v2: a Values block for free-form string definitions
player sprites (HUD weapons) can be replaced with models
'r_WeaponOffsetScale': multiplier for psprite (x,y) offsets with models
when a sector is missing lower textures for all its lines, the floor of the sector is drawn at the height of the surrounding sector's floor
masked polygons (sprites, masked walls, models) always drawn with Z writes enabled
Z bias of drOpenGL and drD3D slightly increased
WAD loading messages are a bit clearer
-paltex uploaded MD2 skins in the wrong format
newline no longer required after last line in .cfg files
if .GWA doesn't exist W_AddFile() isn't called for it
Y offset of middle textures of 2-sided lines was incorrect in some cases

1.0
all new network code (complete client/server)
dedicated server (runs in a text mode console)
MD2 support (replace specific frames of sprites)
MD2s lit with dynamic lights
frame interpolation for MD2s
dynamic light blending mode zero (multiply)
configuration dialog for D3D renderer (driver, color/texture/Z depth)
new vertices are inserted in wall segments if needed, reduces stray pixels
subsector planes rendered as a triangle fan around midpoint, if necessary
Doomsday Engine Definition (DED) files
DED files can Include with wildcards (checks for recursion)
definitions in DEDs are mostly patchable (same ID overwrites old def)
Map Info definitions (map name, author, fog, gravity, sky, etc.)
Map Info with ID '*' will be used for maps that do not have Map Info
command-line option -out redirects output to a given file (Doomsday.out by default)
command-line option -defs specifies the main definition file
mouse-driven user interface routines
network service provider/protocol and server setup using graphical UI
client setup and connecting to servers using graphical UI
background for startup messages
startup messages rendered with shadows
console text rendered with shadows
'ModelMaxZ': farther than this things are always rendered as sprites
copies of P_XYMovement and P_ZMovement used for client-side mov prediction
Pause key can be used in bindings (as 'pause')
network settings stored in console variables (npt_Active, npt_IPAddress, npt_IPPort, npt_Modem, npt_PhoneNum, npt_SerialPort, npt_SerialBaud, npt_SerialStopBits, npt_SerialParity, npt_SerialFlowCtrl)
'r_FullSky': if nonzero, whole sky sphere is rendered if sky is visible
MFF_SKINTRANS uses sprite color translation as a skin index for MD2s
demo recording and playback done in the engine (demos are recorded server->client traffic)
demo recording can be started and stopped at any time
commands 'playdemo', 'recorddemo', 'stopdemo' and 'demolump'
subdirectories for DEDs and demos (defs\ and demo\)
each Doomsday client has a unique (random) ID number (in Client.ID)
LZSS compression used for demos (LZSS.DLL), demo file extension is .CDM
invisible floor/ceiling hack: if a sector has a missing lower/upper texture in all its lines, the floor/ceiling of the sector will be drawn at the same height with the surrounding sector's corresponding plane
planes with glowing textures cast dynamic lights on walls and things
'WallGlow' and 'GlowHeight' control wall glow rendering
'i_JoyDevice' chooses the joystick to use if there are many
'ModelAspectMod' scales models vertically; the default value of .833334 negates the VGA aspect ratio used for the world
'net_MSQ': keep monitoring the network send queue, print in console
'net_Latencies': (for server) show client information (timing and ticcmd buffering)
'net_Dev': (for server) show the net_Latencies info on-screen
'net_StressMargin': (for server) max value for client lag stress, if stress becomes greater, move client's ticcmd run time forward or backward
'net_StressDampen': (for server) tic interval at which client lag stress reduces by one unit
'net_SkewDampen': (for client) max number of frames to allow time interpolation of frames, after this the frame continuum is reset
'net_ShowSkew': (for client) print time skew details in console (delta of last frame and the current skew, in tics to interpolate the frame forward or backward in time)
'kick' forces the given client to disconnect (for server)
'ping': clients can ping the server, the server can ping any client
'sv_MasterAware': (for server) if nonzero, TCP/IP servers inform DMaster that they're running
'MasterAddress': TCP/IP address of the master server
'MasterPort': TCP/IP port of the master server
DED Manager 1.0, a Windows app for doing DED related stuff, and most importantly, exporting Info.h, Sounds.h and action function link files
DMaster 0.1, a really simple master server (in fact a DirectPlay Lobby)
default memory zone increased to 24 megs (shown as Mb in startup)
command-line option -window is the same as -nofullscreen
Game DLL API changed
MIDI player uses MIDI streams, not single commands
wall orientation affects lighting (lighter walls facing east)
-maxzone accepts K and M as suffixes (kilobytes and megabytes)
fog on sky sphere ('r_SkyDist' sets sky sphere radius)
source code rearranged into a more logical directory structure
subsector visibility tests are more accurate, reduces stray pixels
masked walls sorted together with sprites and models
modeldef.txt no longer used, models defined with DEDs
textypes.txt no longer used, texture environments defined with DEDs
sprite lump handling much more relaxed, sprites can be patched
DDMF_SHADOW(2) flags result in more translucent sprites/models
only visible models rendered
dlBlend 1 is always used with fog (dlFactor multiplied by 0.6)
bamsAtan2 uses 64-bit integers to allow larger numbers as arguments
jtNet2 compiles the list of available modems during startup
buffering of local ticcmds no longer uses maketic (maketic has been removed)
all new input code (keyboard, mouse, joystick)
flares and dynamic lights are much brighter
renderers modify viewport Z range instead of scaling projection matrix to do Z bias, reduces stray pixels
some default values changed: dlFactor=0.6, dlBlend=0, FlareIntensity=50, r_FlareMinSize=300, r_dlMaxRad=256, r_dlRadFactor=3
dynamic light texture made a bit more realistic
'net connect' uses an index number to identify servers
'net mconnect' connects to a server received from the master
.CFG file includes the Game DLL version string on the first line
'load', 'unload' and 'reset' go to startup screen mode to show progress information
secondary lens flares diminish as they approach view borders
pitch bend in MIDI songs
skywalls (invisible Z buffer masks) no longer have dynamic lights on them
no more "long debug message has overwritten memory" errors
subsector plane vertices are verified for correct rendering (zero area)
lens flares won't be occluded by their source
font renderer character coordinates (rendered wrong at least with my TNT)
renderers no longer use whichever Doomsday window they happen to find
texcoords of masked textures clamped vertically, reduces gfx errors
texcoords of masked textures clamped horizontally when necessary
D3D renderer sometimes set the wrong texture parameters
sounds have proper handles, prevents mixups with is-playing tests
a division by zero was made if a texture was fully transparent
minor jtNet2 bugs

0.99.6
game DLL API changed: old DLLs are incompatible
DLaunch: disabled parent -> children skipped (example: JHeretic's -warp option)
DLaunch: modifying an option's value checks the option
per mobj dl scaling: 1, .75, .5 or .25 to dl radius (won't affect flares)
spralign 3: align sprites to view plane, but not fully
console border
cvar consoleDump: all console text is dumped to Doomsday.out
numpad keys have their own key codes (apart from /,*,-,+ and enter)
scroll lock and num lock can be used in bindings (scrlock and numlock)
cvar i_mouseInvY: for some reason this wasn't a cvar earlier
mouse wheel support (cvar i_mWheelSensi controls sensitivity)
CalcSectorReverbs() and texture type handling moved into the engine

0.99.5
console commands can set a return value (DD_CCMD_RETURN)
rendquad_t is 4 bytes smaller and doesn't use a nameless union/struct
jtNet displayed serial link config dialog (sheesh...)
netgame events that arrive during rendering are now handled correctly (could cause a crash when starting a netgame)
option -nowsk: disable Alt-Tab, Alt-Esc and Ctrl-Alt-Del
cvar r_dlMaxRad: maximum radius of a dynamic light
cvar r_dlRadFactor: a multiplier for dynamic light radii
clipping bug that sometimes caused subsectors to disappear when the camera was exactly atop one of their edges
view borders drawn using the actual width of the patches (Hexen and Heretic have view borders that are 4 pixels thick, Doom uses 3 pixels)

0.99.4
"bind (event)" clears all +(event), -(event) and *(event)
2-sided middle textures are rendered correctly
flares from sprites aligned to the viewplane won't flicker at certain angles
D3D: gamma correction using DirectDraw's gamma control (fast!)
option -nogamma: disable DirectDraw gamma, modify texture colors manually
cvar r_flareminsize: the minimum size for flares that can have secondary flares (200 is pretty good)
light source vertical offsets
ccmd listbindings can take a search parameter: "listbindings a" will list all bindings to events that begin with A
faster dynamic lights (better algorithm + clipping)
cvar dlclip: dynlights are clipped (subsector polygons *not* used when rendering floors/ceilings)
spralign 2: attempts to hide sprite flatness (like spralign 0, but stops slanting sprites if angle > r_maxSpriteAngle)

Legend: Added Changed or improved Fixed or removed

Night | Frost - 434788 visitors since June 2002 (pageviews)
Site by Jaakko Keränen - 2002-2005 - Hosted by Mindless Games & Entertainment - Back to Doomsday HQ