Compliance with Standards
DoomEDGE is based on the DOOM engine, and everything in the games DOOM, DOOM II, TNT Evilution and Plutonia is known to behave correctly, including: monsters, weapons, line-types, sector-types, intermission and finale screens.
However some differences should be noted:
- EDGE uses OpenGL for rendering, and hence requires a hardware-accelerated 3D card. Plus some things don't look exactly the same as the original, for example: Some sprites are designed to look sunk into the floor, typically corpses, and can seem to "float" in EDGE. Plus some non-standard mapping tricks (like invisible floors) don't always work properly.
- The type of networking that DOOM used back in 1994 is obsolete today, and EDGE doesn't have a suitable replacement, hence multiplayer games are not possible yet.
- EDGE cannot play Demos ("LMP" files) recorded for DOOM, including the ones in the IWADs. This is because the LMP format does not store enough information, so they can only be played back in the original DOOM or extremely compatible ports (like Chocolate-Doom).
Reference: Unofficial Doom Specs
BoomBoom was a modification/improvement to the DOOM code made by TeamTNT. As well as fixing many bugs and removing many limitations, Boom added many new editing features.
EDGE 1.29 greatly improved compatibility with Boom features. Nearly everything works fine, and all made-for-Boom levels should be completable (otherwise you should report the bug to us).
List of known incompatibilities:
- displacement and accelerative scrollers don't work
- physics for ICE and MUD effects are similar but not identical
- some effects of linetype , especially invisible floors, do not work yet
- colormaps and translation-maps are software rendering techniques and often the effect cannot be emulated (or only poorly emulated) in an OpenGL port.
- manual doors with a tag cause a lighting effect in Boom, but this cannot be done in EDGE without possibly breaking existing projects.
DeHackEd & BEXDeHackEd was a program written by Greg Lewis which modified the DOOM executable, allowing changes to the behaviour of monsters, weapons, sounds, text strings, etc... These changes could be distributed between users in the form of "patch" files (which have the ".DEH" extension).
BEX is the Boom EXtensions to DeHackEd patches.
EDGE implements DeHackEd and BEX patches using a library called DEH_EDGE (which also exists as a stand-alone program). DEH_EDGE converts the patch file into DDF, which EDGE then loads. EDGE supports the standard -deh option for specifying patch files, as well as recognising the ".DEH" and ".BEX" extensions when using the -file option or when you drag'n'drop files onto the EXE. The "DEHACKED" wad lump is also supported.
Some really old DeHackEd patches are not in a text format, instead they are a binary format. EDGE can actually load these old binary patches! (most other ports cannot).
List of things not supported by EDGE yet:
- the BEX "INCLUDE" directive
- raw action offsets and sprite/sound name pointers
- certain cheat statistics, like 'God Mode Health'
- three BOOM/MBF actions: A_Scratch, A_Spawn and A_Mushroom
- the BEX [PARS] and [HELPER] sections
Some ports, notably ZDoom, have also added their own features into DeHackEd patches, for example: obituary messages. EDGE doesn't support any of these additions.
GL NodesGL Nodes provide more information which OpenGL ports need, in particular the exact boundaries of subsectors, which was missing in the original DOOM nodes.
EDGE 1.31 supports V1,V2,V3 and V5 format GL Nodes, both internally (in the same WAD as the levels) or externally as GWA files.
EDGE lacks one feature to make it fully compliant with the GL Nodes spec: support for map names longer than 5 letters (using the special "GL_LEVEL" map marker).
Reference: GL Node Specifications
Joint Texture StandardThis specification resulted from a discussion of several port authors about a unified way to handle textures (etc) in new formats like PNG and JPEG, as well as a new system (NTEXTURE) which can define texture sources and attributes (like scaling) in a standard but extensible way.
EDGE has no support for this spec yet, apart from the ability to load the 320x200 Heretic/Hexen title graphics and support for larger flats (from 128x128 upto 1024x1024).
Reference: Joint Texture Standard
File FormatsHere is a list of formats that EDGE supports. Not included here are the standard DOOM formats (such as DOOM images or sounds), as naturally EDGE can already handle those.
PNG, JPEG and TGA formats.
WAV and Ogg/Vorbis formats.
Ogg/Vorbis, software synthesized MUS and MIDI playback.
MD2 format from Quake 2.