Descent's 'demo' mode?

Emulation of old PCs, PC hardware, or PC peripherals.

Descent's 'demo' mode?

Postby superfury » 2019-8-10 @ 09:44

When I instruct Descent(ran using descentr.exe from the MS-DOS prompt) to run one of the demo's, what does it do? It says it's loading a level('preparing for descent...'), but what does it do after that? Does it simply play a prerendered video at that point? Or does it start a full engine and run a script that controls actions of player and enemies(so simulating enemy movement by a predetermined script and player input that's scripted instead of real input from the user's mouse/keyboard)?

It does say "Demo playback (xx% done)" in the middle of the screen, so does that mean it's just playing a video? Or is it actually using the normal game engine to do simulated player input(keyboard/mouse) and static enemy responses?

https://www.descentforum.de/forum/downl ... 717703f6f0 does seem to imply that it's the actual engine, as it can have bugs during 'playback' that relate to specific objects only?
superfury
l33t
 
Posts: 3230
Joined: 2014-3-08 @ 11:25
Location: Netherlands

Re: Descent's 'demo' mode?

Postby jaZz_KCS » 2019-8-10 @ 10:18

It is indeed a scriptfile using the engine to render the demo/scene you are seeing. A video would take up a lot of hard disk space. Think of it like a demo akin to timedemo mechanics implemented into other games like Quake, Doom, etc. Enemy behavior is not sporadic, but hardcoded into the scriptfile to guarantee an exact replication of the render each time to make benchmark comparisons feasible. (Which is not the main purpose of the Descent demos, though.)


You can record demos yourself by hitting the appropriate hotkey whilst in game to start/stop recording. Afterwards the demo will appear in the demo list in the main menu. The scriptfile will record all movement of entities, projectiles, etc., to be able to reconstruct it afterwards with the original game assets. Effectively, you are looking a a "new" rendition each time you're watching the demo, albeit a 100% identically reproduced one, like playing the exact same single player round with the exact outcome each time.
User avatar
jaZz_KCS
Member
 
Posts: 493
Joined: 2017-8-10 @ 11:43

Re: Descent's 'demo' mode?

Postby superfury » 2019-8-10 @ 11:46

Well, since it's a script running the normal game(except scripted instead of relying on direct input), since it's not a video playing, it makes it ideal for testing and optimization emulators, doesn't it? That's what I've been using it for mainly ever since my emulator could run that without visible problems.
superfury
l33t
 
Posts: 3230
Joined: 2014-3-08 @ 11:25
Location: Netherlands

Re: Descent's 'demo' mode?

Postby jaZz_KCS » 2019-8-10 @ 11:48

It's not the main focus, but it is still one of them. One of the shipped demos is a rather demanding one for this very reason. (The one with the lava hub, forgot the level number)
User avatar
jaZz_KCS
Member
 
Posts: 493
Joined: 2017-8-10 @ 11:43

Re: Descent's 'demo' mode?

Postby Scali » 2019-8-10 @ 13:08

superfury wrote:it makes it ideal for testing and optimization emulators, doesn't it?


One common complaint with such scripts/timedemos is that everything is pre-recorded, so part of the engine is bypassed (no user input, no AI, no collision detection etc). It is mainly a test of the rendering backend.
Scali
l33t
 
Posts: 4365
Joined: 2014-12-13 @ 14:24


Return to PC Emulation

Who is online

Users browsing this forum: No registered users and 1 guest