Feature #1301

Redesigned DED Reader

Added by skyjake over 20 years ago. Updated over 4 years ago.

Target version:
Start date:
% Done:



The DED reader needs to be rewritten.

It will be possible to have more advanced scripting
features, such as:
  • constants
  • expressions
  • conditional sections

See proposal

Related issues

Related to Feature #1608: Integrate Doomsday ScriptProgressed2013-10-22

Related to Feature #1244: Scripting in model definitions (e.g., dependent on player health)Closed2003-07-20

Related to Feature #1264: Conditional decorationsNew2003-08-12

Related to Feature #1378: DED ver 6 syntax for XG Definitions Rejected2005-04-10

Related to Bug #346: Overriding Map Info in addons (level par time; jdep)Closed2006-08-28


#1 Updated by tolwyn over 20 years ago

Logged In: YES

And how about that Ded Manager? That needs to be updated

#2 Updated by skyjake about 17 years ago

Logged In: YES

I don't intend to update the DED Manager any more. Editing DEDs in a
text editor is much more straightforward and flexible.

#3 Updated by danij over 14 years ago

Logged In: YES
Originator: NO

I think we've gotten to the end of the road with the current DED reader implementation. Certainly, trying to allow for runtime-specified token structures (i.e. for game-extendable definitions) would be very tricky to achieve within the current code. We should be thinking about a replacement with run-time scripting in mind.

Perhaps implement a more robust interface for managing the engine-internal databases and move the actual task of parsing into a dedreader plugin?

#4 Updated by skyjake over 10 years ago

  • Tags set to Scripting, Definitions
  • Description updated (diff)
  • Assignee set to skyjake
  • % Done changed from 0 to 20

#5 Updated by skyjake over 10 years ago

  • Status changed from New to In Progress

#6 Updated by skyjake over 10 years ago

  • Priority changed from Normal to High

#7 Updated by skyjake over 8 years ago

  • Category set to Redesign
  • % Done changed from 20 to 40
Increasing progress because ScriptedInfo now exists and is being used for the GL2 models, and some DED information is already being kept in Record objects. Two things are needed:
  • All DED information should be stored in Record's.
  • The DED parser should be relegated to legacy importer status for reading DEDv1 files into the runtime data structures.

The definitions in the (upcoming) game plugins packages should be converted to ScriptedInfo syntax.

#8 Updated by skyjake almost 8 years ago

  • % Done changed from 40 to 60

#9 Updated by skyjake almost 8 years ago

  • Status changed from In Progress to Progressed

#10 Updated by skyjake over 4 years ago

  • % Done changed from 60 to 80

The DED parser is pretty much in maintenance mode already, and definitions are accessible internally via Defs.

#11 Updated by skyjake over 4 years ago

  • Target version set to Modding

Also available in: Atom PDF