Skip to content

Releases: edge-classic/EDGE-classic

EDGE-Classic 1.37

21 Dec 19:42
Compare
Choose a tag to compare

Available Downloads

edge-classic-win64.zip - 64-bit MSVC build for Windows Vista and up. May require installing the Visual C++ Redistributable from Microsoft's download page.
edge-classic-win32.zip - 32-bit MinGW build for Windows Vista and up. Has all required libraries included.

NOTE: As of version 1.37, EDGE-Classic's support for Windows XP has been deprecated. Instructions for Windows XP compilation are provided in the COMPILING.md file, but they are not guaranteed to work indefinitely and issues outside of legitimate bugfixes will not be addressed by the development team.

ModDB Addons Page

https://www.moddb.com/mods/edge-classic-add-ons/addons

New Features

  • Added support for Lua as the default scripting language
    • Includes a COAL compatibility layer to ease porting
    • Ported DOOM, Heretic, Blasphemer, and Harmony stock scripts to use Lua
    • Script debugging capabilities are included (https://github.com/slembcke/debugger.lua)
    • COAL, for the time being, will still be instantiated if a PWAD or external pack contains a COALHUDS file
  • Added support for MPEG video playback
    • Files must use MPEG1 video and MP2 audio for proper decoding
    • New DDF filetype added: DDFMOVIE/MOVIES.DDF
      • MOVIE_DATA = <LUMP or PACK>:<lump or packfile name>
        • Defines type and location/name of movie file
      • SPECIAL = <special command list>
        • MUTE is currently the only special and will suppress audio for the movie
      • SCALING = <AUTO/NONE/ZOOM/STRETCH>
        • AUTO: The default option; will fit the movie to the display as much as possible while keeping aspect ratio in mind
        • NONE: Will not adjust the dimensions of the movie at all, even if this causes portions of it to be unviewable
        • ZOOM: Will scale the movie's height to match the height of the display; sides of the movie may be clipped
        • STRETCH: Will match the movie's dimensions to the display without preserving aspect ratio
    • DDFGAME: TITLE_MOVIE=<movie definition> command added
      • Movies will always play before any defined TITLE_GRAPHIC entry in the same definition
    • DDFLEVL: PRE.MOVIE=<movie definition> and POST.MOVIE=<movie definition> commands added
      • Text will always be printed first, followed by movie playback, followed by any defined graphics
        for a DDFLEVL PRE/POST entry
    • RSCRIPT: PLAY_MOVIE <movie definition> command added
    • skip_intros CVAR added to disable movies that play as part of a title sequence if desired
      • Default is 0 (off)
    • Any playing movie may be skipped by holding a mouse/keyboard/gamepad button for one second
      • A skip progress indicator will be displayed at the bottom of the screen
  • Added support for MUSINFO-based music changer things
  • Added simple IWAD selection dialog window if multiple valid IWADs are found on startup
    • Previous "best choice" scoring system removed
  • RSCRIPT:
    • New sector-based trigger conditions (alternative to using radii)
      • SECTOR_TRIGGER_TAG <tag>: Script will trigger once any sector with this tag is entered
      • SECTOR_TRIGGER_INDEX <index>: Script will trigger once the sector with this index (as viewable via map editor) is entered
  • Added support for Tracy frame profiler (https://github.com/wolfpld/tracy)
    • Added frame metrics for runits, wall/planes, things, and light/glow iterators which can also be displayed with: debug_fps 3

General Improvements/Changes

  • "GMGSx" (Default.sf2) and "microGM" soundfonts removed for licensing/copyright issues
    • "sf_GMbank" soundfont added as the new Default.sf2
    • "16-Bit Game Station" soundfont added as replacement for microGM
  • "DMXOPL" instrument bank removed for licensing/copyright issues
    • Replaced with fully free variant from the Freedoom project
  • YMFM OPL emulator replaced with Opal from Reality Adlib Tracker
    • RAD-format modules (version 2) are now supported in addition to regular OPL MUS/MIDI/IMF playback
  • libVGM removed
    • gzip component of miniz also removed (was only used to decompress VGZ files)
  • Alt+Enter will toggle between fullscreen and windowed modes
    • If toggling into windowed mode, the cursor will be released
  • Z/R/D/MAPINFO parsing removed in order to focus on better validating UMAPINFO and adherence to its standards
  • Updated default console and Options/Load/Save menu fonts
  • Improved scaling and sampling quality of TrueType fonts at varying resolutions
  • Improved kerning and sizing when drawing console text with TrueType fonts
  • Option/Load Game/Save Game menu backgrounds will, by default, be a grayscaled version of the first valid title image
    • DDFSTYLE custom backgrounds for these menus are rendered afterwards to account for tinting or other desired effects
  • Removed randomising from IMPACT_OBJECT and EFFECT_OBJECT spawning.
  • Doom Builder 2 Configuration files added, courtesy of akaAgar (#579)
  • Formatted EDGE Classic sources to have consistent style and included Clang formatting configuration
  • Default Purple and Black splash objects added
  • RSCRIPT:
    • START_MAP directive will no longer clear existing scripts for the map in question
    • #CLEAR_MAP <mapname> directive added for granular clearing of map scripts
  • "Zoom" and "Stretch" choices removed from the "Title/Intermission Scaling" menu option

Bugs fixed

  • Fixed UMAPINFO entries with no sky defined and past the range of stock levels causing a CTD
  • Removed sector fog color check that was causing the HOM debugging texture to appear even with debug_hom set to 0
  • Fixed A_CloseShotgun2 frame only playing the DBCLS sound and not calling A_Refire as well
  • Fixed custom Dehacked weapons that use the chainsaw attack not playing the SAWFUL sfx when attacking (regardless of hitting a target)
  • SKULLFLY attacks that cause zero damage no longer make victim enter painstate
  • Fixed Nightmare/Fast Monster state duration reduction for monsters with a value for the 'FAST' parameter
    • Speed in fast mode is now governed by the 'FAST_SPEED' parameter in all cases, instead of using 'FAST' as a multiplier against the base speed
  • Fixed calculation of scroller push forces when multiple scrollers affect the same mobj
  • Fixed mirror and portal issues with GLES2 renderer
  • Fixed most compiler warnings under GCC/Clang
  • Fixed custom PLAYPAL/palettes not being applied to the TEXTURE image class
  • Fixed the "Reset to Defaults" menu option not properly resetting smoothed or upscaled images
  • Fixed IWADs being dragged-and-dropped onto the program executable being treated as PWADs
  • Fixed memory leak involving detail slope creation
  • Fixed the "Blood Level" gameplay option defaulting to "Extra"
  • Fixed inconsistent menu item width when non-default text scaling was used
  • Fixed incorrect Boom ANIMATED and SWITCHES lump parsing causing garbage values to be entered into the DDFANIM conversion
  • Fixed CHOKE_DAMAGE being applied during extra rendering tics
  • Fixed malformed Eureka configuration file
  • Fixed "Fill Border" Title/Intermission scaling option not working for all display modes
  • Added corrected Blasphemer/Heretic tome and wings graphics to prevent distortion of the spinning "activated" images

EDGE-Classic 1.36

23 Oct 03:47
Compare
Choose a tag to compare

Available Downloads

edge-classic-win64.zip - 64-bit MSVC build for Windows Vista and up. May require installing the Visual C++ Redistributable from Microsoft's download page.
edge-classic-win32.zip - 32-bit MinGW build suitable for Windows XP and up. Pentium 4 minimum CPU required. Has all required libraries included.

ModDB Addons Page

https://www.moddb.com/mods/edge-classic-add-ons/addons

New Features

  • ATTACKS.DDF:

    • DAMAGE_UNLESS_BENEFIT and DAMAGE_IF_BENEFIT subcommands added
      • Can be used anywhere that DAMAGE is used (sectors, attacks, etc)
      • DAMAGE.DAMAGE_UNLESS_BENEFIT: Player will take damage unless they have at least one of the benefits listed
      • DAMAGE.DAMAGE_IF_BENEFIT: Player will take damage if they have at least one of the benefits listed
    • Attack special "PLAYER_ATTACK" makes attack behave as if originating from the player, even if
      it's an indirect secondary attack i.e. the player gets his VAMPIRE health and KillBenefits.
    • DAMAGE.FLASH_COLOUR field added (Courtesy of akaAgar - #576)
      • Allows a custom color to be used as the pain effect when a player is hit by this damage type
      • Can be used to emulate effects like Hexen's cold/poison damage
  • WEAPONS.DDF:

    • Can now define a 3RD and 4TH attack. Equivalent DDF syntax to SEC_xxx used for second attack
      • DDF Fields:
        • 3RD_ATTACK, 3RD_AMMOTYPE, 3RD_AMMOPERSHOT, 3RD_CLIPSIZE, 3RD_AUTOMATIC, 3RD_SPECIAL
        • 4TH_ATTACK, 4TH_AMMOTYPE, 4TH_AMMOPERSHOT, 4TH_CLIPSIZE, 4TH_AUTOMATIC, 4TH_SPECIAL
      • DDF States:
        • 3RD_ATTACK, 3RD_RELOAD, 3RD_DISCARD, 3RD_WARMUP, 3RD_FLASH
        • 4TH_ATTACK, 4TH_RELOAD, 4TH_DISCARD, 4TH_WARMUP, 4TH_FLASH
      • DDF Actions:
        • 3RD_SHOOT, 3RD_REFIRE, 3RD_NOFIRE, 3RD_NOFIRE_RETURN, 3RD_CHECKRELOAD, 3RD_FLASH
        • 4TH_SHOOT, 4TH_REFIRE, 4TH_NOFIRE, 4TH_NOFIRE_RETURN, 4TH_CHECKRELOAD, 4TH_FLASH
      • For consistency, all the old SEC_xxx ddf commands can also be used with 2ND_xxx instead
        • i.e. 2ND_AMMOTYPE can replace SEC_AMMOTYPE
    • REFIRE_TO frame command added
      • Uses same syntax as JUMP, but uses refiring instead of % chance as the test condition
      • SEC/2ND_REFIRE_TO, 3RD_REFIRE_TO, and 4TH_REFIRE_TO also supported
  • GAMES.DDF: "NO_SKILL_MENU" boolean command added (Courtesy of akaAgar - #577)

    • If true, will skip difficulty menu and start selected episode at skill 2 ("Hurt Me Plenty" for Doom)
    • Intent is for mapsets that have a Quake-style initial skill-select level or where the author may not implement/want
      to present skill levels
    • Default value is false
  • RSCRIPT: "EXACT_" prefix added for ON_CONDITION checks (Courtesy of akaAgar - #578)

    • Allows check for the exact value of a benefit/etc, versus the default of greater-than-or-equal
  • THINGS.DDF:

    • New Action command: SET_PAINCHANCE(percentage) which will dynamically change a monsters painchance.
      • Possible usage: if we do SET_PAINCHANCE(0%) at the start of a lengthy PAIN state, this will make sure the
        whole animation is played out and won't be interrupted by another shot which would normally make us
        re-start the pain animation again. Remember to set it back to normal at the end of the lengthy animation.
    • New Special flag: IMMOVABLE which will make this thing be unaffected by thrust from attack impacts
      irrespective of whether it has a small MASS or a very large one.
  • UDMF:

    • Sectors: Support added for the lightcolor, rotationfloor, and rotationceiling keys

General Improvements/Changes

  • Detection/functionality for mikoportals implemented
    • Voodoo dolls that fall onto a floor at exactly -32768 will preserve their X/Y/Z momentum and be moved to their sector's ceiling
      • Friction and drag ("air friction") will not be applied to voodoo dolls in this situation
    • Regular players and things will adhere to normal physics
  • Windowed Mode resolution list will now dynamically populate based off of available display information instead of using presets
  • Video Options crosshair selection will not be shown when switching to/from weapons that have DDF custom crosshairs
  • Slightly re-organized the Key binding menu to accomodate the new 3rd and 4th attacks.
  • Implemented 'episode' UMAPINFO key; EDGE-Classic now fully supports the UMAPINFO spec, Revision 2.2
  • ZMAPINFO/MAPINFO parsing updates:
    • Episode definitions and the 'clearepisodes' directive will now be respected
    • ZMAPINFO 'ResetInventory' level definition key will result in the RESET_PLAYER DDFLEVL command being applied
  • Heretic: numerous improvements and tweaks courtesy of DW user Macro (https://github.com/Macro914/EDGE-Classic-Scripting-Patches)
  • Heretic: improved Mace attack courtesy of CeeJay
  • YMFM:
    • Added "Apogee" instrument bank, based on Apogee Sound System and AdPlug instruments
    • Removed "AdPlug", "WadSmoosh", and "DMXOPL3" instrument banks
    • Replaced "DMXOPL" instrument bank with one tailored to vanilla/single OPL3 chip limits
    • Removed ability to load WOPL instrument banks as it was only partially implemented
  • COLMAP.DDF: Colormap entries with no gl_colour, lump, or pack file defined will no longer throw an error
    • New behavior is to remove all existing colormap entries with the same name
      • Intent is to be able to define a colormap as "nothing", even if prior entries had a definition
    • Colormap entries later in the load/parsing order with the same name will still be added
  • Improved level warp cheat behavior with custom mapnames
    • Previous behavior was to only match a numerical entry with maps named either MAPXX or EXMX
  • Improved handling of gamepads
    • Automatic detection of analog triggers
    • User-friendly button names in menus ("A Button" versus "Joy 1", etc)
    • Menus can now be navigated via gamepad without needing to set explicit bindings
      • "Menu Navigation" section removed from Key Bindings menu
    • Added default bindings for gamepads
  • Added configuration files for use with Doom Builder.X, Ultimate Doom Builder, and Eureka
    • Can be located in the /docs/mapping directory

Bugs fixed

  • Legacy bugfix: Boom generalized sector types were not preserved when saving/loading levels with said sectors
  • Fixed assertion failure when referencing DSDehacked frames past the last frame explicitly defined in the [CODEPTR] section
  • Fixed viewpoint modified by the r_fov CVAR not changing the vertical view slope appropriately
  • Fixed region properties not working properly with a vertex sloped floor that rises above its sector's original floor height
  • Fixed occasional sector glow thing link/unlink errors
  • Fixed AJBSP using self-referencing linedefs that were perfectly vertical or horizontal for partitioning
  • Fixed floor/ceiling rotation not working when using images that have a different width and height
  • Fixed MODEL_ROTATE not being applied to attacks
  • Fixed savegames not preserving the 'is_voodoo' convenience boolean for mobjs, causing issues when loading a game that had them present
  • Fixed berserk and other powerup effects not modifying model colors accordingly (bug introduced by transition to VBOs for model rendering)
  • Fixed crash if player dies while TARGET_JUMP or FRIEND_JUMP weapon specials are active

EDGE-Classic 1.35

22 Sep 17:15
Compare
Choose a tag to compare

Available Downloads

edge-classic-win64.zip - 64-bit MSVC build for Windows Vista and up. May require installing the Visual C++ Redistributable from Microsoft's download page.
edge-classic-win32.zip - 32-bit MinGW build suitable for Windows XP and up. Pentium 4 minimum CPU required. Has all required libraries included.

ModDB Addons Page

https://www.moddb.com/mods/edge-classic-add-ons/addons

New Features

  • "Extra Blood" under Gameplay Options renamed to "Blood Level" and "None" added to
    the list of choices
    • Setting to None will disable blood splats, crush/death/overkill states; enemies
      will instead teleport out of existence on death (similar to Chex Quest)
  • "Sky Scaling" added to Video Options menu, replacing the previous methods of drawing
    non-skybox skies. The following choices are available:
    • Mirror: Will invert the sky texture at the horizon, scaled to account for vertical mouselook.
    • Repeat: Will repeat the sky texture at the horizon, scaled to account for vertical mouselook.
    • Stretch: Will stretch from top to bottom to avoid texture repeat, scaled to account for vertical
      mouselook. Does not preserve the original width/height ratio of the image.
    • Vanilla: Will draw the sky texture once, but does not scale or otherwise account for vertical mouselook.
    • For all options, the top and bottom of the faux skybox will have an appropriately color-matched cap.
    • The Vanilla option will be forced when mouselook is disabled.
    • Sky stretching for a level can be overridden via the new DDFLEVEL SKY_STRETCH special, using
      the names above.
  • New console command "openhome": will open the folder where EC is storing its home data
    • In portable mode, this will open the directory where the executable is located
  • ATTACKS.DDF
    • New PROJECTILE_SPECIAL flag: PRESERVE_MOMENTUM
      • Will add the x/y/z momentum of the projectile attack source to the newly created projectile
  • WEAPONS.DDF
    • New command: IGNORE_CROSSHAIR_SCALING = <boolean>
      • If this weapon has custom crosshair sprites, they will not be affected by Video menu option "Crosshair Size".
  • Implemented sector and level-wide fog options
    • DDFSECT Implementation
      • FOG_COLOR = <color>; Sets the sector's fog color to the RGB value of the provided colormap entry
      • FOG_DENSITY = <0-100%>; Sets the sector's fog density based on the provided percentage
    • UDMF Implementation
      • fadecolor = <0xRRGGBB>; Sets the sector's fog color to the hexadecimal RGB value provided
      • fogdensity = <0-1020>; Sets the sector's fog density according to GZDoom's usage of this parameter
        • Map editors may cap this value to 510; see docs/specifications/UDMF EDGE Extensions.txt for more details
    • RTS Sector Fog Commands
      • FOG_SECTOR <tag> <color or SAME or CLEAR> <density(0-100%) or SAME or CLEAR> ABSOLUTE
        • Color and density params match those in DDFSECT
        • SAME preserves the existing value; CLEAR sets it to the default (no fog) values
        • ABSOLUTE is an optional parameter; if absent then the density is changed relative to the existing fog density of the sector
          • Negative percentages are only allowed when performing relative density changes
    • DDFLEVL Implementation
      • INDOOR_FOG_COLOR = <color>; Sets the fog color for all indoor sectors to the RGB value of the provided colormap entry
      • INDOOR_FOG_DENSITY = <0-100%>; Sets the fog density for all indoor sectors to the provided percentage
      • OUTDOOR_FOG_COLOR = <color>; Sets the fog color for all outdoor sectors to the RGB value of the provided colormap entry
      • OUTDOOR_FOG_DENSITY = <0-100%>; Sets the fog density for all outdoor sectors to the provided percentage
  • COALHUDS: Added hud.rts_disable() function; same syntax as hud.rts_enable()
  • LINES.DDF
    • New LINE_EFFECT: STRETCH_TEX_WIDTH. Will stretch the width of a texture to match the lines length.
    • New LINE_EFFECT: STRETCH_TEX_HEIGHT. Will stretch the height of a texture to match the lines length.
      Basically allows autoscaling a texture to perfectly fit an arbitrary-length line.
  • New Line types added:
    [835] Breakable wall, (midtex to back lower): when this line is shot, the midtex will be swapped with back lower tex
    [836] Breakable wall, (midtex to back upper): ...same as previous but swapped with back upper
    [837] Breakable wall, (midtex to front lower): ...same as previous but swapped with front lower
    [838] Breakable wall, (midtex to front upper): ...same as previous but swapped with front upper
    [850] Light Wall: transfers the brightness of this wall to any other tagged lines
    [855] Autoscale textures width to line length
    [856] Autoscale textures height to line length
    [857] Autoscale textures width and height to line length
  • New Sector types added:
    [4480-4489] EDGE fog: White 5%-50% (increments of 5%)
    [4490-4499] EDGE fog: Green 5%-50% (increments of 5%)
    [4500-4509] EDGE fog: Red 5%-50% (increments of 5%)
    [4510-4519] EDGE fog: Blue 5%-50% (increments of 5%)
    [4530] EDGE Friction: Slippy
    [4531] EDGE Friction: Very Slippy
    [4532] EDGE Friction: Sticky
    [4533] EDGE Friction: Very Sticky
  • New Thing types added:
    [NUKAGE_GLOW_WALL:7070] : causes any wall in contact with it to glow green
    [LAVA_GLOW_WALL:7071] : same as previous but glows red
    [WATER_GLOW_WALL:7072] : same as previous but glows blue
    [WHITE_GLOW_WALL:7073] : same as previous but glows white
  • UDMF: The following fields have been added to the "edge-classic" namespace:
    • linedefs: blockplayers, blocksight
    • sidedefs: scalex_top/mid/bottom, scaley_top/mid/bottom, offsetx_top/mid/bottom, offsety_top/mid/bottom
    • sectors: xpanningfloor/ceiling, ypanningfloor/ceiling, xscalefloor/ceiling, yscalefloor/ceiling, gravity,
      fadecolor, fogdensity
    • things: health, alpha, scalex, scaley, scale

General Improvements/Changes

  • Migrated to VGMPlay's libvgm from Game Music Emu
    • Support for AY, GBS, GYM, HES, NSF, SAP, and SPC filetypes has been removed
    • VGM support has been expanded to include all chipsets and systems supported by VGMPlay, with the
      exception of the WonderSwan
  • DDFTHING: Implemented previously referenced WALL Glow Type
    • Same parameters as other glow types
    • Will only work on one linedef per glow mobj
      • Glow mobj must be touching the desired wall/linedef to be effective
  • For standalone games, EDGEIWAD has been changed to EDGEGAME to account for the fact that
    a pack file may be used intsead of a WAD to distribute a game
  • Auto-aim now targets "fuzzy" monsters i.e. Specters
  • Improved Unicode path support for international locales
  • DSSECRET lumps from PWADs (if present) will now override the built-in DSSECRET.ogg pack file
  • Models will no longer be drawn if completely behind the view plane, reducing rendering overhead
  • Voxel skins are now always uploaded with GL_NEAREST scaling instead of GL_LINEAR to preserve their intended look
  • Plane movers are now disabled for sectors which have vertex slopes (this is not supported and caused very interesting results)
  • MBF21 Lines and Sectors are now unconditionally on
    • "MBF21 Compatibility" removed from Gameplay Options menu
    • Reserved linedef bit 11 flag from PrBoom/Eternity implemented to fix Doom E2M7 and other maps that previously required
      the MBF21 toggle to fix
  • DDFIMAGE: Flats can now be used in GRAPHIC image type definitions

Bugs fixed

  • Fixed player health changes tied to voodoo doll damage and "Zombie Player" state not being achievable
  • Fixed potential CTD when reading in *MAPINFO lumps
  • Fixed potential CTD involving AJBSP split segs when they are part of a sector containing a UDMF vertex slope
  • Migrated all model rendering to use VBOs regardless of rendering path (GL vs. GLES), fixing CTDs when
    the number of vertices for a model exceeded the size of the gl vertex array used by the unit rendering system
  • Reverted to AJBSP 1.03's DetectOverlapping* methods to fix a situation where overlapping linedefs facing
    opposite directions would result in neither of them being rendered
  • Fixed the PalettisedtoRGB function accepting PNG/JPG/TGA images and treating them as palettised.
  • Fixed plane movers having unpredictable functionality when using a repeatable trigger type and
    already being at their destination height
  • Migrated away from legacy SDL1 functions for interacting with sound devices, fixing possible
    race conditions when the device was not being locked or unlocked at the expected time
  • Fixed weapon kick not working when mouselook was disabled
  • Fixed CTD involving liquid swirl checks when debug_hom is set to 1
  • Fixed pre-EC legacy issue: map AMBUSH flag was being lost if mobj was being replaced during
    gameplay via BECOME
  • Fixed RTS scripts using ON_DEATH conditions not working from a loaded game
  • Fixed automap key display not showing Boom style locks
  • Changed draw order of "Entering" and "You Are Here" intermission graphics to prevent the
    next level name from being obscured
  • Fixed pre-EC legacy issue: crushed monsters never entered their GIB states
  • Fixed pre-EC legacy issue: Cyberdemon was missing a frame in death states
  • Fixed pre-EC legacy issue: Things were visible while changing positions via teleportation
  • Fixed pre-EC legacy issue: Death from other means than the actual sector damage in a "death exit" sector would not
    properly exit the level
  • Fixed failed object spawns from a SPAWNER-type attack still counting toward the total amount of kills/items in a level
  • Fixed Heretic AUTOPAGE lumps not being recognized as valid raw format images
  • Fixed animation in Chex Quest...
Read more

EDGE-Classic 1.34.1

15 Jul 19:40
Compare
Choose a tag to compare

Available Downloads

edge-classic-win64.zip - 64-bit MSVC build for Windows Vista and up. May require installing the Visual C++ Redistributable from Microsoft's download page.
edge-classic-win32.zip - 32-bit MinGW build suitable for Windows XP and up. Pentium 4 minimum CPU required. Has all required libraries included.

ModDB Addons Page

https://www.moddb.com/mods/edge-classic-add-ons/addons

CHANGELOG for EDGE-Classic 1.34.1 (since EDGE-Classic 1.34)

New Features

  • ATTACKS.DDF

    • New attack type: DUALATTACK
      • Can execute two independent attack definitions with a single state
      • New parameters (only required when using DUALATTACK):
        • DUALATTACK1=<string> - First dual attack definition
        • DUALATTACK2=<string> - Second dual attack definition
      • DUALATTACK1/2 must both be present, even if referring to the same attack
      • A dual attack can execute other dual attacks, but cannot reference itself
    • New attack type: PSYCHIC
      • Instant ranged direct damage attack
      • Will not cause infighting
  • Chex Quest 1 supported as an IWAD

    • Chex Quest 2 supported as a PWAD for Chex Quest 1
  • FLATS.DDF

    • New command: SINK_DEPTH=<percentage>
      • Will drop player's view height by the given percentage when standing on the flat in question
      • Will also clip sprites on this flat and sink them by a roughly equivalent amount
      • Does not apply when the sector is using 3D floors, swimmable/deep water, or similar effects
    • New command: BOB_DEPTH=<percentage>
      • Corpses and items will bob up and down while resting on the flat in question
      • Does not apply when the sector is using 3D floors, swimmable/deep water, or similar effects
  • RTS

    • New command: REPLACE_THING <oldThing> <newThing>, which will replace all oldThings on the current map with newThings.
      Will be mainly used at map start and it is substituting the thing, not transforming it. For randomizer scripts.
  • SECTORS.DDF

    • New commands: FLOOR_BOB/CEILING_BOB=<amount>
      • Surface will rise and fall rhythmically in a wave pattern, with peak values governed by the value passed to it
  • THINGS.DDF

    • New state action: UNBECOME, which will return a thing to it's original type if it has suffered a BECOME() previously.
      If it has not been BECOMEd previously then nothing will happen.
    • New state action: MORPH: identical behaviour to BECOME, except HEALTH is filled up.
    • New state action: UNMORPH, which will return a thing to it's original type if it has suffered a MORPH() previously.
      If it has not been MORPHed previously then nothing will happen.
    • New command: MORPH_TIMEOUT: when this timer is reached, the thing will go to a "MORPH" state if it has one defined.
      If it has no "MORPH" state then the thing is simply removed.

General Improvements/Changes

  • Weapons with the ability to zoom but without a ZOOM state defined will still draw the regular psprite and crosshair while zoomed
  • Implemented remaining MBF code pointers (A_FireOldBFG, A_BetaSkullAttack)
  • Implemented new DEHEXTRA Thing fields:
    • Gib health
    • Dropped item
    • Pickup width
    • Projectile pass height
    • Fullbright
  • Fluidlite replaced with Primesynth for soundfont MIDI synthesis
    • SF3 support has been dropped
    • The s_fluidgain CVAR has been renamed to s_primegain but otherwise functions identically
  • PC Speaker Mode will now disable music while active to prevent non-MIDI formats from playing
    • "Bonkers for Bits" soundfont has been removed
  • "microGM" soundfont added as a more SNES-like option
    • "16 Bit Game Station" soundfont has been removed
  • "ChipFreak" chiptune/8-bit inspired soundfont added
  • FMMIDI player has been removed in favor of adding OPL3/SF2 files that cover the same general sound

Bugs fixed

  • BOOM linetypes 143, 144, 148 and 149 fixed to use the correct Tx0/Tx changer type
  • Removed 'WALL' as a recognized glow type in DDFTHING to prevent potential blockmap issues
    • This references unused code and thus had unpredictable results
  • Removed ability for multiple glow types to be assigned to a DDFTHING definition
  • GLASS lines were not working with projectiles if no EFFECT_OBJECT was defined.
  • Fixed some self-referencing sectors not being setup properly
  • Fixed TrueType fonts having improper widths on fullscreen resolutions that have a different
    aspect ratio than the display's native ratio
  • Fixed sector glows and dynamic lights being too dim when lighting a surface that is using
    parallax swirling

EDGE-Classic 1.34

12 Jun 09:43
Compare
Choose a tag to compare

Note for Users Migrating from Version 1.33

Due to the migration from WAD to EPK for the base/game-specific definitions and content as well as the conversion of many settings that were previously integers to floating-point values, it is HIGHLY recommended to extract this release into a new folder and let it create a new configuration file!

In addition, unless Portable Mode is enabled (see changelog below), logs/screenshots/cache files will now be written to an appropriate location in the user's home directory. An example of this for Windows would be C:\Users<username>\AppData\Roaming\EDGE-Classic. The exact path will be logged as a console message and can be checked after launching the game.

Available Downloads

edge-classic-win64.zip - 64-bit MSVC build for Windows Vista and up. May require installing the Visual C++ Redistributable from Microsoft's download page.
edge-classic-win32.zip - 32-bit MinGW build suitable for Windows XP and up. Pentium 4 minimum CPU required. Has all required libraries included.

ModDB Addons Page

https://www.moddb.com/mods/edge-classic-add-ons/addons

CHANGELOG for EDGE-Classic 1.34 (since EDGE-Classic 1.33)

New Features

  • Added WebGL platform support (https://edge-classic.github.io/play.html)

  • UDMF:

    • Vertex slope support: Must define "zfloor" or "zceiling" for a vertex.
    • Applies effects to any triangular sector
    • Applies effects to rectangular sectors that fulfill the following conditions:
      • Only two out of the four vertices utilize zfloor/zceiling values
      • The two vertices must be part of the same line segment
      • The zfloor value must be identical between the two vertices for a floor slope
      • The zceiling value must be identical between the two vertices for a ceiling slope
      • The floor and ceiling slope for a rectangular sector can use different vertices as long
        as they fulfill the other conditions
  • Added GLES2 rendering backend using GL4ES (https://github.com/ptitSeb/gl4es)

    • Supports rendering with Direct3D, Vulkan, and Metal using ANGLE
  • WEAPONS.DDF: 10 new action commands. Behave identically as the things.ddf actions of the same name

    • ZOOM
    • SET_INVULNERABLE
    • CLEAR_INVULNERABLE
    • MOVE_FWD(num)
    • MOVE_RIGHT(num)
    • MOVE_UP(num)
    • STOP
    • TURN(angle)
    • TURN_RANDOM(angle)
    • MLOOK_TURN(angle)
  • Portable install option

    • If the program is launched with "-portable" or "edge-classic.cfg" is found in the same directory as the program, files and folders will be written
      to that directory instead of a location in the user's home path
  • "Outdoor Culling Fog Color" option added to Performance Options menu

    • Options are "Match Sky", "White", "Grey" and "Black"
    • Default is "Match Sky"
  • Customizable branding options

    • New "branding.cfg" file present in game directory will control values like folder names, window titles, configuration and logging filenames
    • Will default to hardcoded values if file is missing
  • STYLES.DDF: expanded control over [MAIN_MENU], [CHOOSE_EPISODE] and [CHOOSE_SKILL] menus.
    Both graphic and text menus now behave coherently (i.e. scaling now applies to both graphics and text).

    • TRANSLUCENCY now works with menu items and cursors
    • SCALE now works with menu items
    • COLOURMAP now works with menu items
    • HEADER.xxxx and TITLE.xxxx commands now affect graphics like "Choose Skill"
    • ENTRY_ALIGNMENT=CENTER now properly centers items
  • IMAGES.DDF: Added new SATURATION and BRIGHTNESS commands

    • Valid ranges for both are 0-255
    • Will affect HSV Saturation and Value color components for the specified image
  • COALHUDS: new commands

    • player.sector_light(): Returns the light level of the sector the player is currently in.
    • player.sector_floor_height(): Returns floor height of the sector the player is currently in.
    • player.sector_ceiling_height(): Returns ceiling height of the sector the player is currently in.
    • player.is_outside(): Returns 1 if the ceiling of the sector the player is currently in is Sky.
    • hud.get_image_width(image : string): Returns width of an image.
    • hud.get_image_height(image : string): Returns height of an image.
    • hud.map_author(): Returns the map author name, if not null
  • Load/Save Menu Rewrite

    • Will now use a dedicated and unified DDFSTYLE entry for both menus
    • Restored savegame screenshot functionality
  • Implemented WAD-in-Archive support

    • Zip-compressed archives with the extensions .epk, .pk3, and .zip are supported
    • Added support to AJBSP for building nodes against an in-memory WAD
  • Implemented EPK/Folder Mount system

    • EPKs can contain images, scripts, WADs and other resources (similar to PK3, PKE, and the like from other source ports)
    • Folders and EPKs are treated identically as far as loading and file/folder layout requirements
    • Flexible structure and file naming conventions; details can be found in the "docs/EDGE Pack Strucutres and Usage.txt" file
    • Note: Filenames without extensions that are in an EPK or mounted folder will be ignored
  • Console: New 'readme' command

    • Will search for a text file with a traditional readme name (readme.txt, readme.1st, etc)
    • If none found, will look for a text file with the same name as a WAD or archive file in the load order
      (this is a common practice for /idgames releases)
    • If there is still nothing found, will look for WADINFO or README lumps
  • Bot Deathmatch: New "Player Damage Resistance" option

    • Found in the Bot Match Settings Menu before starting a match
    • Offers a flat damage resistance adjustable from -90% to +90%
    • Only affects damage whose source is an enemy bot; sources such as
      environmental hazards and self-inflicted damage will bypass this setting
  • New Scaling Options for Title/Intermission/Finale Assets

    • Normal: Will draw assets at their original resolution and ratio
    • Zoom: Will preserve ratio but scale image until both horizontal and vertical space are filled
      • Top of image is pinned to top of screen in order to have the best chance of perserving title screen text
    • Stretch: Will stretch image to fill horizontal and vertical space without regards to the original image ratio
    • Fill Border: Will fill space not occupied by the original image with a zoomed in, gaussian-blurred version of the same image
      • This is similar to the border fill for "portrait" style videos
  • New Option Menu: Accessibility Options

    • Current Items:
      • View Bobbing - This is the already existing "Bobbing" option that has been moved from Gameplay Options
      • Reduce Flash
        • Provides an alternate means of displaying teleport fog and palette/colormap effects (invuln, pain, etc).
        • GunFlash actions add no additional sector light with this enabled.
        • Strobing, blinking, and 'fire flicker' light effects are replaced with giving the sector an average light level between
          the highest and lowest neighboring light levels.
      • Automap: Keyed Doors Pulse - Makes locating locked doors on the automap easier.
      • Automap: Keyed Doors Named - Displays name of required key for a locked door to help colorblind users.

General Improvements

  • Changed AJBSP to open loaded IWADs/PWADs in read mode as an additional means of ensuring original file
    integrity (was previously set to open in append mode despite not writing nodes to the original files)

  • Added 'udmf_strict' CVAR (off by default until "Edge" namespace is finalized) to control whether or not loading a UDMF map with an unsupported namespace will generate an error.

  • Draw Distance Culling will no longer prevent the skybox from being drawn; maximum distance is now adjustable in the Performance Options menu

  • Draw Distance Culling's BSP culling math has been reworked and offers far better FPS savings versus the previous method in applicable environments

  • COAL:

    • Color and Hue averaging functions have been reworked to allow for a specific portion of an image to be sampled. Function definitions are now as follows:
      • hud.get_average_color(image : string, optional from_x, optional to_x, optional from_y, optional to_y)
      • hud.get_lightest_color(image : string, optional from_x, optional to_x, optional from_y, optional to_y)
      • hud.get_darkest_color(image : string, optional from_x, optional to_x, optional from_y, optional to_y)
      • hud.get_average_hue(image : string, optional from_x, optional to_x, optional from_y, optional to_y)
  • WEAPONS.DDF:

    • Y_ADJUST parameter will now affect weapons that use models instead of sprites
  • THINGS.DDF:

    • FALLPAIN_SOUND will now account for whether or not the player is invulnerable to damage at the time of the fall
  • LINES.DDF:

    • The special values '+' and '-' for the FLOOR.TEXTURE and CEIL.TEXTURE parameters can now be appended with either "changezero" or
      "changetexonly" to correspond to the Boom Tx and Tx0 generalized types
  • New directories, logfiles, etc, will now be written to an appropriate location in the user's home directory by default (AppData, etc, depending on OS). Portable usage is covered in "New Features"

  • "PC Speaker Mode" Sound Option no longer requires a restart to toggle; when On it will always use Fluidlite + the Bonkers for Bits soundfont when playing MIDI music

  • For the RTS REPLACE_WEAPON command and the WEAPONS.DDF BECOME() action: If current ammo is bigger than the new clip size, reduce current ammo to new clip size.

  • Stats screen item layout improved so that long map names are not truncated or overlapping level score/stats

  • Bot Skill will now affect bot...

Read more

EDGE-Classic 1.33

25 Feb 17:06
Compare
Choose a tag to compare

Available Downloads

edge-classic-win64.zip - 64-bit MSVC build for Windows Vista and up. May require installing the Visual C++ Redistributable from Microsoft's download page.
edge-classic-win32.zip - 32-bit MinGW build suitable for Windows XP and up. Pentium 4 minimum CPU required. Has all required libraries included.

ModDB Addons Page

https://www.moddb.com/mods/edge-classic-add-ons/addons

CHANGELOG for EDGE-Classic 1.33 (since EDGE-Classic 1.32)

Bugs fixed

  • Fixed 1.32 secret sector fix not being preserved in save games; i.e. the same secret would increment the
    secret counter when re-loading the game
  • Fixed jitter in Evil Eye and other animations
  • Fixed sprite frame overrides in DDFIMAGE not applying if they were Doom formatted images
  • Fixed SDL sound device frequency being allowed to be set far above intended values if OS doesn't report the ability
    to use 48kHz sample rate
  • Fixed Boom tagged line effects also applying the effect to the control linedef (when a tag was present)
  • Fixed Boom vector linedef scroll directions for angles other than 0/45/90
  • Fixed Boom displacement scrollers not returning back to their exact original position
  • Fixed Boom scrollers tied to permanently moving sectors (i.e., Door Open and Stay Open) being ineffective
  • Fixed inanimate objects adhering to monster dropoff limits when being carried over a drop
  • Fixed overzealous oofing when falling or bumping into a ceiling
  • Doom2 Map05 bug fixed properly this time ;)
  • Fixed some new DDFSTYLE additions (entry and cursor alignment, etc) not working as intended with the Episode Select menu
  • Clip size was not being updated with RTS ReplaceWeapon and DDF weapon BECOME()
  • Fixed items with the HOVER flag still hovering when time is stopped
  • Fixed HUD and other non-game world animations unintentionally freezing during time stop
  • Fixed ENDOOM bytes that happen to match the value of a newline character being intepreted as newline characters

General Improvements

  • Improved model and unit rendering to thrash the GL state a bit less

  • DDFSTYLE text styles can now have their own individual X_OFFSET and Y_OFFSET values,
    giving more flexibility for menu item placement i.e. TITLE.Y_OFFSET or TEXT.Y_OFFSET etc

  • Changed how LOSE_BENEFIT HEALTH is handled in RTS. Now it will simply subtract from current health and not
    behave like DAMAGE_PLAYER(which reduces armour, causes pain states, respects immunity/resistence/invulnerable/immortal etc).

  • "Crosshair Size" option in Video Options menu will now apply to both the standard crosshair and custom weapon crosshair states
    (previously this only affected standard crosshairs)

  • Monsters resurrected by Archviles will no longer count as kills.

  • Replaced WebSID SID backend with cRSID for easier compilation and better performance

  • Things no longer constantly trigger splashes when walking on a flat defined as LIQUID (and having an IMPACT_OBJECT defined).
    They will only cause a splash when they step down onto the flat.

  • Unsupported BEX INCLUDE directive for Dehacked downgraded from a program-ending error to a warning with an appropriate console/log message.

  • Migrated from libXMP to Mod4Play (custom library) for portability/performance

    • Only the "Big 4" tracker formats are supported now (IT/S3M/XM/MOD)
  • Upgraded to AJBSP 1.04

  • Added support for ZGL3 compressed lumps to AJBSP and EDGE-Classic's node loading routines to conserve cache folder space. ZGL3 will now
    be the default node format.

  • Replaced Gamma options with Sector Brightness for better results without affecting other windows on the same display

New Features

  • Added support for MDL (Quake 1) model format

  • Added support for KVX and KV6 voxel model formats

  • Ported MD3 model support from EDGE 1.32 codebase

  • DDFTHING:

    • New command: FALLPAIN_SOUND, which is the sfx to be played when the player is hurt from a big fall
    • New command: MODEL_ROTATE = <integer>, which for MDL/MD2/MD3/Voxels will rotate all vertices' x/y coordinates by the
      given (positive or negative) number of degrees. Used to correct imported models whose rotations are wrong. Default is 0.
  • DDFIMAGE:

    • New command: ROTATE_HUE = <integer>, will rotate the hue of the given image while keeping other values the same. Valid range is -1800
      to 1800, with a default of 0.
  • COAL:

    • C++ Interop: Can now retrieve and set individual vector elements with the VM_GetVectorX/Y/Z and VM_SetVectorX/Y/Z functions
    • COALHUDS: Can now access individual vector elements with .x, .y, or .z
  • Transition from GWA to XWA cache file format

    • Improved organization of AJBSP-generated XGL/ZGL lumps
    • Legacy GWA files will be purged from cache directory on startup

EDGE-Classic 1.32

23 Jan 18:44
Compare
Choose a tag to compare

Available Downloads

edge-classic-win64.zip - 64-bit MSVC build for Windows Vista and up. May require installing the Visual C++ Redistributable from Microsoft's download page.
edge-classic-win32.zip - 32-bit MinGW build suitable for Windows XP and up. Pentium 4 minimum CPU required. Has all required libraries included.

ModDB Addons Page

https://www.moddb.com/mods/edge-classic-add-ons/addons

CHANGELOG for EDGE-Classic 1.32 (since EDGE-Classic 1.31)

Bugs fixed

  • A recently introduced bug which caused the Secrets Found % to not increment after finding the first one.
  • player.use_inventory() consuming item without running the associated script if the script was already running
  • Changed hardcoded finish/par time widths to prevent custom fonts from being clipped at 4:3 resolutions
  • "Read This!" menu item missing for Doom.

General Improvements

  • DDFSTYLE: Menu items that are images instead of fonts will now also apply the font colormap setting in that menu's
    style entry (if defined)

  • DDFSTYLE: CURSOR.FORCE_OFFSETS=<boolean> - When set to true, will honor cursor image's offsets even if they cause misalignment with
    menu entries. Default value is false

New Features

  • COALHUDS: new commands

    • hud.rts_isactive(tag): Returns 1 if the script "tag" is currently enabled, 0 if disabled.
    • hud.rts_enable(name): Will execute RTS script with matching tag, if one exists. This replaces previous COAL command "player.rts_enable_tagged(name)" which should be considered deprecated.
  • DDFSTYLE: new text style - SELECTED

    • Uses all parameters that regular style font entries use (SELECTED.FONT, SELECTED.SCALE, etc)
    • Will only apply to the currently selected/highlighted menu item
    • If not defined, will fall back to previous behavior for backwards compatibility

EDGE-Classic 1.31

20 Jan 18:42
Compare
Choose a tag to compare

Available Downloads

edge-classic-win64.zip - 64-bit MSVC build for Windows Vista and up. May require installing the Visual C++ Redistributable from Microsoft's download page.
edge-classic-win32.zip - 32-bit MinGW build suitable for Windows XP and up. Pentium 4 minimum CPU required. Has all required libraries included.

ModDB Addons Page

https://www.moddb.com/mods/edge-classic-add-ons/addons

CHANGELOG for EDGE-Classic 1.31 (since EDGE-Classic 1.3)

Bugs fixed

  • Changing Aspect ratio was not respected in some circumstances.
  • Fixed sound volume slider not being respected in some cases
  • Fixed aspect ratio of psprites when HUD.render_world doesn't use the entire screen height
  • Fixed secret sector discovery completely clearing the sector special afterwards (this broke
    generalized sector specials).
  • Doom2 Map05 bug fixed.

General Improvements

  • W1/WR lines, unknown linetypes and scrolling linedefs without any activation method will have the BOOM passuse flag added
    upon map load

EDGE-Classic 1.30

15 Jan 18:37
Compare
Choose a tag to compare

Available Downloads

edge-classic-win64.zip - 64-bit MSVC build for Windows Vista and up. May require installing the Visual C++ Redistributable from Microsoft's download page.
edge-classic-win32.zip - 32-bit MinGW build suitable for Windows XP and up. Pentium 4 minimum CPU required. Has all required libraries included.

ModDB Addons Page

https://www.moddb.com/mods/edge-classic-add-ons/addons

CHANGELOG for EDGE-Classic 1.30 (since EDGE-Classic 1.21)

Bugs fixed

  • 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

General Improvements

  • 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 Features

  • 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.

  • FONTS.DDF

    • 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".
  • STYLES.DDF

    • 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.
  • THINGS.DDF

    • 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
  • LINES.DDF

    • 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
    • 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):
      [835] Breakable: when shot, midtex will change to back lower texture
      [836] Breakable: when shot, midtex will change to back upper texture
      [837] Breakable: when shot, midtex will change to front lower texture
      [838] Breakable: when shot, midtex will change to front upper texture
  • IMAGES.DDF

    • New SPECIAL: FORCE_PRECACHE
      ...
Read more

EDGE-Classic 1.21

05 Sep 23:50
Compare
Choose a tag to compare

Available Downloads

edge-classic-121-msys.zip - MSYS build for Windows. Has all required libraries included.
edge-classic-121-msvc.zip - MSVC build for Windows. May require installing the Visual C++ Redistributable from Microsoft's download page.
edge-classic-121-windows_xp.zip - Windows XP-compatible MSYS release. Users of Windows Vista and later should use one of the above packages instead.

ModDB Addons Page

https://www.moddb.com/mods/edge-classic-add-ons/addons

CHANGELOG for EDGE-Classic 1.21 (since EDGE-Classic 1.2)

Bugs fixed

  • Fixed issues when launching from a location other than the executable directory on non-Windows builds
  • Fixed rare ceiling crusher-related bug
  • Text based menus for and were not working if the Main menu was using custom graphics
  • Fixed null string CTD in HUD_DrawText and font_c::StringWidth
  • Fixed issue with FS_ReadDir returning relative paths
  • Restored "Hudless" option in COALHUDS HUD cycling

General Improvements

  • Improved STYLES.DDF functionality across console and menus; backgrounds images/colors and translucency are no longer hardcoded
  • Added "Edge" UDMF namespace detection in preparation for EDGE-Classic's UDMF spec
  • Improved menu cursor positioning and scaling
  • Back mid-texture on a Glass line type is automagically mirrored
  • Load/Save menu will use DDFLANG difficulty strings instead of hard-coded Doom strings when showing savegame details
  • Improved CMD_Dir result display
  • DOOMWADDIR and DOOMWADPATH will now be evaluated together instead of separately
  • If no -iwad parameter is given, an IWAD will be selected from all IWADs discovered in default search paths based on a scoring/preference system
    • Doom 2/Freedoom Phase 2/Final Doom are highest priority due to highest compatibilty with mods/PWADs
    • Doom 1/Freedoom Phase 1 are second in line
    • Remaining Doom-based IWADs (HacX/Harmony for now) are third
    • Heretic/Blasphemer, being the newest games supported, are after those
    • If a new custom standalone IWAD (with EDGEIWAD lump) is present in the search list, it will be considered last

New Features

  • Custom standalone IWADs can be created by adding an EDGEIWAD lump to the WAD. This will allow it to pass the automatic IWAD
    detection

  • STYLES.DDF

    • New SPECIAL flag: CURSOR_RIGHT, will align menu cursor to the right side of menu entries
    • New properties: X_OFFSET and Y_OFFSET. Will set all menu entries in this style to the same x/y offset.
    • New SPECIAL flag: NO_STRETCH_FULLSCREEN, which will disable default behaviour of stretching backgrounds to fill the screen
  • Lines.ddf
    -Added 3 new BREAKABLE glass line types:
    [830] Breakable Glass: monsters can see through it and can break it
    [831] Breakable Glass: monsters: cannot see through it but can break it
    [832] Breakable Glass: monsters: cannot see through it and cannot break it

  • Sectors.ddf
    -Added 6 new coloured sector types:
    [4471] EDGE Blue Hue
    [4472] EDGE Green Hue
    [4473] EDGE Red Hue
    [4474] EDGE Yellow Hue
    [4475] EDGE Purple Hue
    [4476] EDGE Grey Hue