New version released: EDGE-Classic v1.3
Major new features include:
- Doubled framerate
mode (70fps vs 35fps)
- Vastly improved Boom
- OPL emulated playback of MUS and MIDI: Can use GENMIDI lumps (Default) or external *.op2 instrument bank files
- New music formats supported: FLAC, VGZ (compressed VGM), IMF, XMI/RMI/GMF/EA MIDI Formats
fonts support(TTF and OTF)
- Better MBF
screen shown on exit.
- Initial MBF21
- Vastly improved deathbots
- Performance options for laggy maps
- Improved screen resolution modes
- Menu option to control view and weapon bobbing/swaying
- Support for International characters in filepaths and arguments
- REKKR supported as IWAD
- New DDF and COAL commands
- New StopTime powerup
- New Erraticism gameplay mode
Time will only advance when the player moves or fires ("SuperHot")
Player's momentum will be preserved if in mid-air/jumping, otherwise it will be lost when the movement keys are released
Can hold the Use key to advance time without having to move or fire (helpful when waiting for lifts, etc)
and many more new commands, bugfixes etc
Full CHANGELOG since EDGE-Classic 1.21
+ Fixed CHANGE_TEX SKY not working with skyboxes
+ Fixed alignment of flats when both ALIGN and SCALE are used
+ Doom episode 1 intermission screen animation speed was wrong
+ Single sector maps no longer give a nodebuilder error
+ Fixed a bug displaying tall patches with a non-zero Y Offset
+ Several old DEHACKED issues fixed (original AliensTC for example)
+ Conflicts between Doom graphics and PNGs causing errors are now
fixed (the infamous "Error occurred scanning image: xxx")
+ Do not apply invisibility effect to a zoomed weapon
+ Fixed IDCLEV mistakenly identifying non-marker lumps as valid map markers
+ Fixed crash involving items without a map spawnpoint being added to the
Deathmatch item respawn queue
+ Fixed incorrect parsing of keypad (10-key) scancodes
+ Fixed main menu cursor scaling/placement when all menu item images are empty
(i.e., background image alone is used as the "menu")
+ Fixed weapons with animated ready states having jittery swaying/bobbing
+ Fixed Boom generalized ceilings using their sector's floors for movement targets
+ Fixed monsters being able to activate W1/WR lines at the edge of a dropoff that
is too high for them to descend
+ Fixed Boom Set Friction lines with very short line lengths being ineffective
+ Replaced TinySoundFont with FluidLite, supporting a wider range of MIDI events and effects
+ Live soundfont (FluidLite)/instrument bank (OPL) selector
+ DEH_EDGE cleanup and improvements
+ Improved screen resolution and aspect modes
+ New Harmony base WAD assets
+ Auto-detect music type for DDFPLAY (with one exception: IMF, as detailed under New Features)
+ No longer need to press Up/JUMP or Down/CROUCH key to navigate ladders: Just mlook + forward is enough.
+ Tags assigned to map things are now supported
+ Allow multiple WAIT_UNTIL_DEAD scripts to trigger for the same object
+ Improved handling of in-game messages
+ ENDOOM screen now integrated into quit dialog (unless custom background image is defined in STYLES.DDF)
+ Added libYMFM for improved VGM music handling and format support; disabled Game Music Emu VGM support
+ Replaced Modplug with XMP (non-lite version) for module tracker music for better compatibility
- Formats requiring prior depacking are still not supported
+ Multiple DDFANIM entries can now reference the same images (the entries themselves must still have unique names
to prevent conflicts)
+ Borderless Fullscreen mode added to the Set Resolution menu; list of Windowed resolutions updated to accommodate
displays up to 4K
+ Improved support for filepaths and program arguments with non-ASCII characters
+ New Video Options menu item: Framerate Target
- Can cycle between 35/70 FPS
- Default framerate target is now 70 FPS
+ New Video Options menu item: Overlay
- Can cycle through various pseudo-CRT/scanline effects
- Current options: None, Lines 1X, Lines 2X, Checkered, Vertical, and Grill
+ New Gameplay Options menu item: MBF21 Map compatibility
- Can toggle to enable/disable MBF21 line and sector types/flags/specials
- Default is "Off"
+ New Gameplay Options menu item: Bobbing
- Controls if view/weapon are bobbed while moving
- Options are "Full", "Head Only", "Weapon Only", "None"
- Default is "Full"
+ New Gameplay Options menu item: Erraticism
- Time will only advance when the player moves or fires ("SuperHot")
- Player's momentum will be preserved if in mid-air/jumping,
otherwise it will be lost when the movement keys are released
- Can hold the Use key to advance time without having to move or fire
(helpful when waiting for lifts, etc)
+ New Performance Options menu
- Current options
- Reduce Draw Distance: Will cull rendering at a set distance
- Slow Thinkers Over Distance: Helps alleviate performance hit from extreme
monster/missile counts. Not recommended for normal gameplay
- Dynamic Light Limit: Set maximum number of dynamic lights to render at once
+ Vastly improved Deathbot navigation and combat
+ New console command: showmaps
- Will show the warp name and level description for accessible maps
+ New console variable: r_forceflatlighting
- When set to 1, will use a flat lighting formula versus Doom's traditional distance-based light banding calculations
- Overrides any lighting settings in an episode's DDFGAME definition
- Default is 0, "traditional" Doom behavior
+ Support OPL emulated playback of MUS and MIDI music lumps via YMFM.
- Can use GENMIDI lumps (Default) or external instrument bank files
- *.wopl, *.op2, *.opl, *.ad, and *.tmb external banks supported
- External banks must be placed in the /soundfont directory prior to startup
+ Support OPNA emulated playback of MUS and MIDI lumps via FMMIDI
+ New music formats supported: FLAC, VGZ (compressed VGM), IMF, XMI/RMI/GMF/EA MIDI Formats
- IMF songs must have a playlist entry type of 'IMF280', 'IMF560', or 'IMF700' to correctly
set the song's playback rate
+ SF3 formatted soundfonts are now supported in addition to SF2
- Loading times for SF3 fonts are typically longer due to the need for decompression
+ DSDHACKED support.
- New font type: TRUETYPE ("TYPE = TRUETYPE;", as opposed to IMAGE or PATCH)
- Required parameters:
- TTF = <string>, TTF/OTF file or lump
- Optional parameters:
- TTF_DEFAULT_SIZE = <int>, default (scaled to HUD) rendering size for this font. If not provided,
a default value of 7 will be used.
- TTF_SMOOTHING = "ALWAYS", "NEVER", or "ON_DEMAND". Affects behavior of the font when the Smoothing
option in the Video Options menu is adjusted. Defaults to "ON_DEMAND".
- New property: ENTRY_ALIGNMENT = <string>, accepts "LEFT", "CENTER", or "RIGHT" to set text/image alignment for menu item names
- New CURSOR customization options:
- CURSOR.POSITION = <string>, accepts "LEFT", "CENTER", "RIGHT", or "BOTH" to determine cursor position relative to menu item.
"BOTH" will drawn the cursor in both LEFT/RIGHT positions. Defaults to "LEFT".
- CURSOR.BORDER = <bool>, only has an effect when the cursor position is set to CENTER. Will scale up to the dimensions of the tallest
menu item. Good for highlights/frames/border style cursors
- CURSOR.TRANSLUCENCY = <percentage>, controls cursor image translucency
- CURSOR.IMAGE = <string>, image to use instead of the default for this menu's cursor
- CURSOR.STRING = <string>, if present, will use these characters from the style's font as the cursor instead of an image
- CURSOR.SCALING = <bool>, will set whether or not the cursor scales proportionally to menu item heights. Defaults to true.
- New property: SIGHT_DISTANCE=<number> which is how far a thing can see in map units.
- New property: HEAR_DISTANCE=<number> which is how far a thing can hear the player in map units.
- 3 new actions:
- JUMP_LIQUID(state:frame,xx%) similar to the normal jump action except that it will only trigger if
the thing is in contact with a floor flat indicated as LIQUID in DDFFLATS.
- JUMP_SKY(state:frame,xx%) similar to the normal jump action except that it will only trigger if
the thing is in an outdoor sector i.e. ceiling is sky.
- NOISE_ALERT will cause nearby monsters to be alerted. Add it to a monsters death states so his
final groan will warn nearby monsters to expect trouble
- New pickup benefit: POWERUP_TIMESTOP
- Player can move and fire normally
- Projectiles will remain at the point at which they were fired until time resumes; hitscan or melee
attacks will damage an enemy but they won't react/"die" until time resumes
- Switches/doors/lifts can be activated during time stop, but will not move until time resumes
- New LINE_EFFECT: TAGGED_OFFSET_SCROLL
- Matches MBF21 behavior; all lines with the same tag will use this line's offsets for offset scrolling
- Target lines can still use their own offsets for texture alignment
- Scrolling speed is divided by 8 for fine tuning
- New property: SCROLL_TYPE = DISPLACE or ACCEL
- Affects the PUSH_THINGS, SCROLL_FLOOR, SCROLL_CEILING, VECTOR_SCROLL, and TAGGED_OFFSET_SCROLL specials
- Matches Boom/MBF21 behavior (see github.com/kraflab/mbf21/blob/master/docs/spec.md
under 'Linedef Types' for reference if needed)
- Improved GLASS=TRUE functionality: LINE_PARTS= can now be used to define what the "broken" mid-texture will be.
LINE_PARTS accepts the following arguments: LEFT_LOWER, LEFT_UPPER, RIGHT_LOWER, RIGHT_UPPER.
(back of linedef is right, front of linedef is left).
- Added 4 new BREAKABLE wall line types (similar behaviour to glass):
 Breakable: when shot, midtex will change to back lower texture
 Breakable: when shot, midtex will change to back upper texture
 Breakable: when shot, midtex will change to front lower texture
 Breakable: when shot, midtex will change to front upper texture
- New SPECIAL: FORCE_PRECACHE
- Will force image to be precached on startup regardless of other settings
- New SPECIAL: GRAYSCALE
- Will force image (for this definition) to be in grayscale even if the original lump/file isn't
+ REKKR added as a recognized IWAD
+ COALHUDS: new commands
-mapobject.count(thingID): returns number of objects of this type on the map
-player.query_object(MaxDistance, WhatInfo): returns information about the currently targetted thing.
MaxDistance is the limit to how far we can query an object.
WhatInfo is a number from 1 to 5 and can be:
-mapobject.query_tagged(ThingMapTag, WhatInfo): returns information about the thing with the tag we specified. WhatInfo is the same as player.query_object()
-player.query_weapon(MaxDistance, Whatinfo, [secAttackInfo]): returns information about the currently targetted weapon.
MaxDistance is the limit to how far we can query an object.
Using the optional [secAttackInfo] we can get information about the weapons secondary attack.
WhatInfo and SecAttackInfo are a number from 1 to 9 and can be:
2 (ZOOM FACTOR)
6 (DAMAGE Nominal)
7 (DAMAGE Max)
-hud.erraticism_active() and hud.time_stop_active(): Check Time Stop/Erraticism state from within COALHUDS
+ No longer necessary to specify an image type in DDFIMAGE i.e. "IMAGE_DATA=LUMP:FOOBAR;" is now permitted.
+ Improved Boom Support
- Line 254 vector scrolling will use the appropriate direction instead of only scrolling vertically
- Implemented Lines 245-249: Displace scroll/push
- Implemented Lines 214-218: Accel scroll/push
- Improved Line 242 compatibility (colormaps/invisible platforms/etc)
- Implemented light level changes for tagged manual door sectors
- Implemented BEX-specific keycard/skull strings
- Implemented OB_* DEHACKED string replacements (not strictly BEX, but Freedoom 1/2 use them)
+ Improved MBF Support
- Implemented A_Mushroom
- MBF Dog is back! Rocking new sprites and sounds, credits to gzdoom(original sprites: Nash Muhandes, original sfx: Kinsie)
New CVAR: dogs <number> which will spawn 1-3 friendly helper dogs at coop spawn points.
+ Initial MBF21 Support
- Implemented Lines 1024-1026: Tagged offset scrolling (Normal/Displace/Accel)
- Implemented "Block land monsters" and "Block players" linedef flags
- Implemented "Alternate damage mode" and "Kill grounded monsters" sector types