Demon
Register | User Profile | Member List | F.A.Q | Privacy Policy | New Blog | Search Forums | Forums Home
Doomworld Forums : Powered by vBulletin version 2.2.5 Doomworld Forums > Special Interest > Eternity > Summary of EDF changes post-edf-branch
 
Author
All times are GMT. The time now is 21:10. Post New Thread    Post A Reply
Quasar
Moderator


Posts: 6045
Registered: 08-00


As the previous thread (http://www.doomworld.com/vb/eternit...ng-edf-changes/) indicated, edf-branch was to bring about various fundamental changes to the way in which EDF processing works. Here's a summary of the changes that were implemented:

Obsoleted Features:

  • TERTYPES lumps (old undocumented deprecated Eternity TC feature) are no longer processed.


Deprecations:

  • stdinclude() used on any filepath that does not aim at a file called "root.edf". Including other EDFs under base/ directly instead of via root.edf is no longer allowed because of the problems it poses to both backward and forward compatibility.
  • include_prev() is no longer required in any lump, and is a no-op function.
  • bexinclude() is still functional, but is not recommended for use. DEHACKED lumps and GFS scripts are preferred for providing BEX alongside mods which use EDF. This feature predated the ability to include EDF inside wad files, and the ability to override the value of BEX strings using EDF string definitions.
  • Namespace specifiers in action arguments (ex. thing:DoomImp) are unnecessary and are now deprecated for use in new EDFs. They are still required/allowed for use in state misc fields, however.


Parsing/Processing Changes:

  • '\f' characters are no longer allowed in EDF files/lumps (whatever they actually are).
  • EDF lumps are only allowed to include other lumps within the same wad or other physical archive, in order to obtain a well-defined order of processing (oldest-to-newest) on all root and independent EDF lumps which is most likely to result in functional behavior for additively loaded modifications. All lump inclusions function within the namespace of that individual archive only and ignore newer lumps that might have otherwise replaced the one being included.
  • Independent EDF lumps (ETERRAIN, ESNDSEQ, etc) may now actually contain any type of definitions, function calls, etc.
  • EDFROOT lumps are processed additively from oldest to newest.
  • Independent EDF lumps are processed additively from oldest to newest.
  • EDFs are now safe to include more than once. The EDF system will never process a single source of input more than once. Any lump or file already included into the EDF "hive" will be rejected on the basis of a SHA-1 checksum which is calculated when the data source is loaded.
  • "Default fallback" processing, the means by which some older broken EDFs which did not use stdinclude("root.edf") could still be supported, no longer exists.


Semantic Changes:

  • States (aka frames) are now fully additive entities and can be defined by independent EDF lumps, even ones loaded via runtime wadfile loading.
  • Sprites are now fully additive as well.
  • Sprites may be implicitly defined by states and are no longer required to have appeared in the spritenames array. The spritenames array persists only to enforce a DeHackEd-compatible ordering on the original DOOM sprite names.
  • Though achieved earlier in trunk, it is important to note that argument evaluation for state action calls is now done at runtime during the game, and arguments are evaluated within the scope of the action function. This makes namespace specifications such as thing:DoomImp unnecessary inside arguments.
  • States may now have duplicate DeHackEd numbers (though the reasons to assign these at all have dropped to nearly zero). The newest state processed using a given DeHackEd number wins.

Old Post 06-26-10 16:00 #
Quasar is offline Profile || Blog || PM || Email || Homepage || Search || Add Buddy IP || Edit/Delete || Quote
All times are GMT. The time now is 21:10. Post New Thread    Post A Reply
 
Doomworld Forums : Powered by vBulletin version 2.2.5 Doomworld Forums > Special Interest > Eternity > Summary of EDF changes post-edf-branch

Show Printable Version | Email this Page | Subscribe to this Thread

 

Forum Rules:
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts
HTML code is OFF
vB code is ON
Smilies are OFF
[IMG] code is ON
 

< Contact Us - Doomworld >

Powered by: vBulletin Version 2.2.5
Copyright ©2000, 2001, Jelsoft Enterprises Limited.