"Headless" vanilla playsim for old demo compatibility
We've long ago made the decision to break vanilla demo compatibility due to numerous playsim changes. However, at least in theory it would be possible to set up a parallel, "headless" playsim environment that it purely vanilla compatible. The demo could then be viewed in client mode by receiving a stream of deltas about mobj and camera movement, etc.
The headless vanilla environment could be entirely isolated and placed in a plugin of its own. It could be based on Chocolate Doom or some other cleaned up version of Doom that supports v1.9 vanilla demos.
This is a large amount of work just to get old demos running, though.
#2 Updated by vermil almost 6 years ago
It depends on which areas of the Doom community Deng Team want Dday to appeal to.
There is dedicated sub community of speed runners and demo recorders. Currently PrBoom+ seems to be their choice of port because of its features (i.e ability to imitate different versions of Doom through its compatibility levels) and ability to run Vanilla Doom format demo’s.
I haven’t really looked at PRBoom+ to any degree, but it’s my understanding that PrBoom+'s demo format is an extension of Vanilla Doom's and Doomsday's upcoming game rules system might allow it to ape some elements of PRBoom+'s compatibility levels without much extra work.
Doomsday is (well, was, as demo recording is currently disabled) still the only port to this day, to offer in game demo recording and playback (even PRBoom+ still uses the command line), though ZDaemon offers the cool ability to fast forward and rewind demos during playback.
Also, Doomsday, unlike PRBoom+, offers support for games other than Doom.
#4 Updated by danij almost 6 years ago
As vermil suggests, the only port that anyone interested in demos uses currently is PrBoom+ and that is because of the extensive work done to precisely emulate a half dozen different playsim variants. To even be relevant in this sphere we'd essentially have to replicate PrBoom+ in its entirety.
On a technical level, its not "just" a matter of using an alternative playsim; we'd need to use the original BSP for the playsim, the original blockmap, etc...