/
ChangeLog.txt
395 lines (352 loc) · 17 KB
/
ChangeLog.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
Doomsday Engine Change Log
==========================
Legend: + added, - fixed, * improved/changed
Version 1.7.12 (work in progress)
--------------
+ option -leaveramp: don't reset color settings back to previous values
at shutdown
+ JWADs: IWAD supplements (uses normal WAD loading order)
* music data will not be cached into the memory zone while loading
(large MP3s wasted a lot of space)
* paths that contain the base path are normally printed without the base
- removed obsolete settings from Control Panel: Network
- removed detail texture maximum distance cvar and Control Panel slider
- removed cvars 'rend-light-clip', 'rend-light-shrink'
- fixed: possible crash in Con_Error()
Sound:
* sounds from PWADs are not replaced with automatic external resources
Definitions:
+ added Defs/Doomsday.ded: include definitions shared by all games
+ 'Top map', 'Bottom map', 'Side map' added to Light defs and
Decoration:Light defs (name of lightmap to use; empty means default,
"-" is none)
+ up to eight sky models can be defined in a Map Info definition
+ added an ID key to the Model definition
* Defs/Doomsday.ded is always read first
* Flag definitions moved to Defs/Flags.ded
* XG definitions moved to Defs/XG.ded
* maximum number of submodels is now 8
* Map Info definitions can be copied
* 'InFine' is an alternative name for the 'Finale' definition
Refresh:
+ named Model definitions (Model:ID), not assigned to any state
+ lightmap resources are read from the Data\x\LightMaps directory
+ texture/flat animation sequences defined using Group defs (Anim.ded)
+ "tgf_smooth": interpolate between steps in texture/flat animation
+ particle generator flag "gnf_group": triggered by all in the flat's
animation group
+ particle generator flags "gnf_blendsub", "gnf_blendrsub": subtractive
blending for particles
+ particle generator flags "gnf_blendmul", "gnf_blendimul": normal and
inverse multiplicative blending for particles
+ option -nohighpat: disable high-resolution patches
* texture/flat groups can be used purely for precaching
* detail texture contrast is preprocessed: there will be multiple
instances of the same texture with different contrast levels (needs
a bit more memory but allows faster rendering)
* 8-bit particle textures are interpreted as pure alpha data
* PCX images aren't loaded redundantly from virtual files
- fixed: PWAD test when loading highres flats and patches (-pwadtex)
- fixed: particles sliding over ledges
- fixed: Generator Center angle (Y) offset was ignored with mobj sources
Renderer:
+ sky models
+ blending modes: subtract, reverse subtract, multiply, inverse multiply
+ cvar 'rend-model-mirror-hud': mirror HUD weapon models
+ cvar 'rend-dev-wireframe': render player view in wireframe mode
+ cvar 'rend-dev-freeze': stop updating rendering lists (for debugging)
* renderer uses multitexturing for detail textures, dynamic lights,
interpolated texture animation and model shiny skins
* shiny skins are correctly masked by alpha in main skin
* plane glow on models is stronger than before
* if multitexturing is available, masked walls will get one dynamic
light (previously masked walls were not lit by dynlights)
* dynamic light polygons are no longer clipped
* calculations to determine surfaces affected by a dynamic light are
more accurate (light has a better chance to be visible)
- removed option -maxor: clipper has now unlimited nodes
- fixed: leaking lights (impossible route detection)
- fixed: stray pixels along polygon edges in dynamically lit areas
- fixed: detail texture blending when fog is enabled
- fixed: object shadows weren't affected by fog
- fixed: skymask holes in skyfixed sectors
- fixed: shiny skins on HUD models
- fixed: console text gibberish on the first time the console is drawn
- fixed: cvar 'rend-tex' (render with textures)
drOpenGL:
+ support for multitexturing
+ NV_texture_env_combine4 or ATI_texture_env_combine3 required when
rendering dynamic lights with multitexturing
+ support for SGIS_generate_mipmap
+ support for EXT_blend_subtract
+ support for EXT_texture_compression_s3tc
+ option -notexcomp: disable texture compression
+ option -novtxar: disable vertex arrays
* vertex arrays are disabled by default if driver's OpenGL version is
older than 1.3 (otherwise enabled)
* texture compression enabled by default (use -notexcomp to disable)
jDoom:
+ "Patch Replacement" strings (see Defs\jDoom\Values.ded)
+ fonts precached during startup
+ crosshair alpha slider added to the HUD menu
* titlescreen sequence defined as an InFine script (ID = "title")
- fixed: intermissions/finales in Plut/TNT
jHeretic:
* player mobj selector is set to match currently used weapon
* titlescreen sequence defined as an InFine script (ID = "title")
jHexen:
* player mobj selector is set to match currently used weapon
* titlescreen sequence defined as an InFine script (ID = "title")
InFine:
+ cmd 'startinf (scriptid)' (and 'stopinf')
+ gradient rectangles
+ object rotation (pics, text objects, rectangles)
+ command "ScaleXY (handle) (x) (y)"
+ command "Rect (handle) (x) (y) (w) (h)"
+ command "FillColor (h) (TOP/BOTTOM/BOTH) (r) (g) (b) (a)"
+ command "EdgeColor (h) (TOP/BOTTOM/BOTH) (r) (g) (b) (a)"
+ condition "MODE:(game-mode)"
+ command "ELSE"
+ command "DO" ... ";" (nestable blocks)
+ command "PlayDemo (filename)"
+ command "Cmd (console command)"
+ command "OnKey (key-ident) (marker)": jump to marker when key pressed
+ command "UnsetKey (key-ident)"
+ commands "Events", "NoEvents": enable/disable interactive mode
+ commands "Trigger", "NoTrigger": enable/disable menu triggering mode
* generic object commands: "Del", "X", "Y", "Sx", "Sy", "Scale", "Angle"
"ScaleXY", "RGB", "Alpha"
* old pic/text commands that should no longer be used: "DelPic",
"DelText", "TextRGB", "TextAlpha", "Tx", "Ty", "TSx", "TSy",
"TextScale"
* InFine can run in overlay mode (e.g. during GS_LEVEL)
* InFine states are nested (script -> demo -> script -> demo -> etc.)
- fixed: "WaitText" timing with \w, \W, \p, \P
- fixed: "SoundAt" volume
Version 1.7.11
--------------
! Bugfixes Only
* revised server delta generation: fixed-size frames, prioritized
contents, sounds are stored inside frames (not separate packets),
redundant missile coordinates not sent
* server refuses connection if new client's ID already in use
* revised clientside handling of frames: collision detection for
movement prediction, missiles hidden on impact
* revised low-level networking: implement confirmed/ordered packets
manually, detect duplicates, Huffman encoding (60%-70% compression)
+ cmd 'huffman': print Huffman efficiency and number of bytes sent
* mobj translucency 0-255 (selector still overrides)
* mobj floatbobbing is done by engine (clientside), DDMF_BOB added
* client is allowed some movement while airborne (easier jumping)
* by default, external resources are no longer loaded for textures from
PWADs; use the -pwadtex option to change this
(cvar 'rend-tex-external-always')
* console command line cursor can be moved left and right
* default key repeat interval is now 3 tics (was 4)
* braces { and } are equivalent to quotes, e.g.:
"alias init-map03 {after 1 {warp 5}}"
* cmd 'listcmds' prints a description for each command
+ cmd 'toggle': toggle a cvar's value between zero and nonzero
+ cmd 'if': execute a command if the condition is true (tests cvar
values)
* max number of light decorations increased to 16 per texture
- fixed: occlusion for planes exactly at eye-Z
- fixed: client was sending too much data (now it's about 0.3 KB/s)
- included DED files are read immediately after the Include directive
has been encountered
- fixed: pausing the game also stops spinning models, floatbob
- external music was not loaded correctly from virtual files
- fixed: clientside mobjs and players on moving planes
- fixed: external sound resources reloaded every time the sound starts
- fixed: tracking of currently playing sounds
- fixed: floorclip values were restricted to 64 in mobj deltas
- fixed: client stepup limit is now exactly 24 units
- fixed: coord/offset problems if same sprite used in game and HUD
- missing upper texture in a skyceiling sector replaced with the
backsector's ceiling (was just blank white)
- fixed: base path validation (could be missing a slash)
- fixed: path of CPHelp.txt was sometimes not translated
- fixed: mobj translucency didn't affect the shadow
- fixed: incoming message queue protected by a mutex
- music is not restarted if it's already playing
- fixed: finding model files/skins with base-relative paths
jDoom:
* savegames stored in game mode specific subdirs (mixups now avoided)
+ cvar 'view-bob-weapon-switch-lower': if zero, HUD weapon is not
lowered during a weapon switch
+ value 'Weapon Info|*|Static': if nonzero, HUD weapon is not lowered
during a weapon switch
* game-corpse-time: corpses fade smoothly
- fixed: button deactivation sound
- fixed: crash when "kill" used when not in a map
jHeretic:
* savegames stored in game mode specific subdirs (mixups now avoided)
* game-corpse-time: corpses fade smoothly
- fixed: button deactivation sound
- fixed: Speed + Use Artifact made the player jump
- fixed: on clientside, wind didn't affect player (e.g. E1M1)
jHexen:
* savegames stored in game mode specific subdirs (mixups now avoided)
+ option -savedir: set savegame directory
- fixed: polyobj destination/speed for sliding doors (e.g. map05)
- fixed: restoring polyobjs and hidden mobjs from saved map
- fixed: problem with excessive sound sequence repeat (e.g. map12)
- fixed: torch light for remote players
- fixed: no mobjs spawned when dedicated server starts
- clientside powers were not correctly set to zero at death, map change
- clientside Wings of Wrath icon didn't rotate when flying
- fixed: dedicated server deadlock when monsters don't find any players
- fixed: crash when minotaur vanishes and master is dead
- fixed: 'use artifact' sounds not audible on clientside
- fixed: crash when "kill" used when not in a map
- fixed: screen border flicker in fullscreen mode (again)
- fixed: floatbobbing objects go through the floor
- Deathkings map36: playerstart group >4 accepted
InFine:
* server sends condition truth values to clients (secret, leavehub)
XG:
- when loading a savegame, line activators were not correctly restored
drD3D:
- fixed a problem with mode selection (refresh rates)
Installer:
- fixed: pressing Enter after typing a path closed the installer dialog
- glBSP run with the -fresh option to avoid bad BSP data
Version 1.7.10
--------------
+ support for ZIP/PK3 files (no compression!), can be loaded like WAD
files (-file, load; no unload, though), contents added to the virtual
file hierarchy (package root dir => Doomsday base dir)
+ after runtime directory has been searched, data files are also
searched from the default data directory (e.g. Data\jDoom\):
"-file Test.wad" will load Data\jDoom\Test.wad
+ WAD, LMP, PK3 and ZIP files from the Data\Game\Auto directory are
always loaded automatically
+ WAD/PK3 files can be loaded from virtual files (inside PK3s)
+ IncludeIf and SkipIf directives can also test for game modes, e.g.
"SkipIf Not doom1-ultimate"
+ light decorations (dynlights on textures/flats), "Decoration" defs
+ cvar group 'rend-light-decor'
+ sprite frames can be replaced with external resources (Patches)
+ raw screens can be replaced with external resources (Patches)
+ -maxtex option: set maximum texture size ("-maxtex 128")
+ sound flag 'sf_dontstop' (0x20): sound does not stop even if emitter
is destroyed (sound cannot be stopped until it finishes normally)
* faster 3D model loading during startup
* rend-camera-smooth: Z-movement of planes is also smoothed
* default dynlight brightness increased to 0.75 (rend-light-bright)
* default halo brightness decreased to 35 (rend-halo-bright)
- halo distance measured in 3D: no excess brightness when viewed from
above/below
- fixed: sprites were sometimes clipped by a sky ceiling
- fixed: problems with rend-light-num
jDoom:
+ light decorations for all switches, many textures and some flats of
Doom 1
* barrel/rocket explosions continue even after barrel/rocket is gone
(barexp uses sf_dontstop)
* Pause key is now the default binding for pause (was P)
jHeretic:
- fixed: interlude screen wouldn't show seconds if they're zero
jHexen:
* Pause key is now the default binding for pause (was P)
- fixed: weapon pieces bob only partially
- fixed: screen border flicker in fullscreen mode
Version 1.7.9
-------------
+ external resource locator (in Data\Game\: Textures\, Patches\, Music\
and Sfx\) with game mode subdirs (see readme)
+ high-resolution patches (e.g. menu graphics, game fonts, background
pictures)
+ netgame server info includes: game mode (e.g. doom1-ultimate,
doom2-plut, hexen), game config, IWAD, PWADs, player names
+ info about network setup added to cphelp.txt, shows up during setup
+ cvar 'server-player-limit': maximum number of clients
+ cvar 'rend-light-wall-angle': intensity of angle-based wall lighting
+ cvar 'input-mouse-filter': average mouse X/Y axis values
+ model flag 'df_dim' (0x1000000): model is never rendered fullbright
+ cmds 'movefloor', 'moveceil', 'movesec': move a sector's plane(s)
* low-level networking updated to DirectX 8
* improved network setup GUI
* client can only connect to servers in the same game mode
* cmd 'net' prints usage info
* cvar 'net-ip-port' is the local TCP/IP port
* "Filter mouse movement" added to Control Panel's Input page
* -nohightex now only affects wall textures and flats
* crosshair color alpha (cmd "crosshair color", var "view-cross-a")
- fixed: client was able to connect to a server running a different game
- fixed: aborted client connection crashed the server
- potential problem handling client connections fixed
- fixed: fullbrightness didn't affect particles
- DirectSound 8: fixed a problem with buffer loading; using -csd should
no longer be necessary
- Sound definition patching fixed (Ext/Group keys were ignored)
- fixed bug 712332: when server pauses a netgame, all clients will pause
KickStart:
* Cheb's KickStart v2.09 replaces the ancient v1.6
jDoom:
+ game modes: doom1-share, doom1, doom1-ultimate, doom2, doom2-plut,
doom2-tnt
+ automap added to Options -> Controls (under Misc.)
+ cvar game-corpse-sliding: corpses slide down stairs and ledges
(defaults to zero due to some bad behaviour; e.g. exit room of D2/22)
* cvar game-corpsetime renamed to game-corpse-time
- fixed bug 734892: sides with bogus sectors
- A_Tracer() used to spawn puffs that were identical to bullet puffs,
this caused complications with particle generators
jHeretic:
+ game modes: heretic-share, heretic (normal registered), heretic-ext
(has episodes 4, 5)
jHexen:
+ game modes: hexen, hexen-dk (Death Kings of Dark Citadel)
- fixed: sound sequence delays with repeating sounds (sequence updater
didn't get correct information about currently playing sound effects)
drOpenGL/drD3D:
+ -refresh option
* closest available refresh rate selected
Version 1.7.8
-------------
+ new master server mechanism (uses HTTP)
+ cvar net-master-path (default: "/master.php"): location of the master
server at 'net-master-address' (default: "www.doomsdayhq.com")
+ cmd "net announce": send a server announcement to the master (if
server-public is nonzero, announcements are made automatically at two
minute intervals)
* cvar net-master-port (default: 0): usually zero or 80
* clientside player coords override serverside coords under normal
circumstances (maxdif checks removed)
* if one part of a psprite is fullbright, the whole psprite will be
- fixed: psprites were rendered with depth testing enabled; Doom plasma
rifle fire anim was broken
- fixed: clientside player animation didn't finish anim sequence
- fixed: line flags weren't updated on clientside (e.g. in Hexen map13)
- fixed: minor edge artifact with multipart psprites (e.g. in jDoom)
jDoom:
* lineattack weapons hit planes (pistol, shotguns, chaingun)
- fixed: lineattack check for hitting sky planes, skyhack walls
- map31 and map32 no longer assumed to exist: Doom2.wad "00f6d407"
should work
- weapon psprite timings (in Objects.ded) adjusted for super shotgun,
rocket launcher: muzzle flash was out-of-sync by 1-2 tics
jHexen:
- fixed: dedicated server tried to draw teleport gfx and crashed
- fixed: scripted + yellow messages not shown on clientside
- fixed: client crashes when changing level
- fixed: status bar flicker
jtNet2:
- old master server stuff removed
Version 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)
jDoom:
* cvar player-air-movement: player movement speed while airborne
(0-32); use only small values in netgames
jHeretic:
- blinking statbar borders fixed