Skip to content

Releases: andrei-drexler/ironwail

Ironwail 0.8.0

10 Nov 19:00
Compare
Choose a tag to compare

Download:

Download Win64 build
Download Win32 build
Download Linux x64 build
(Note: Linux binary requires glibc 2.31 or newer, e.g. Ubuntu 20.04)

Changes from 0.7.0:

  • Extended compatibility with Quake 2021 re-release:
    • Steam API support (when using an auto-detected Steam installation): achievements, time tracking, rich presence, screenshots
    • support for remastered models (using code from QSS, by @Shpoike)
  • Added -prefremaster/-remaster and -preforiginal/-original command-line arguments (thanks to @KurtLoeffler)
  • Improved controller support:
    • gyro aim (thanks to @sndein), flick stick, rumble
    • new Gamepad Options menu
    • new dedicated tab in Controls menu
  • Demo playback controls
  • Extended console capabilities:
    • select and copy text to clipboard
    • clickable links to show saved screenshots/demos/savefiles/config files in Explorer
    • TAB completion hints
  • Extended memory allocator to support huge maps such as Immortal Lock without needing -heapsize on the command line
  • CPU and GPU performance improvements
  • Autosave enhancements:
    • improved heuristics (e.g. for Copper's func_void)
    • less intrusive notifications
    • ability to resume autosave when selecting a map in the Levels menu
  • Redesigned Options menu: live previews, more options exposed
  • Added QuakeWorld HUD layout (thanks to @bangstk)
  • Added speed indicator (thanks to @andrey-budko)
  • Music is now continued when reloading a map
  • From QS: enabled support for tracker music
  • Mapping enhancements:
    • added basic map checks (inspired by @4LT's Pectin) when started from a level editing tool (TrenchBroom, JACK, ne_q1spCompilingGui or q1compile); can disabled by passing -nomapchecks, or enabled manually by setting map_checks cvar to 1 before loading a map
      Note: gl_zfix and advanced transparency options are disabled when map checks are active in order to avoid compatibility issues with QS.
    • added r_showfields cvar to display field values for the entity under the crosshair
    • extended r_showbboxes functionality to highlight entities linking to/linked from the entity under the crosshair and display entity numbers and classnames
    • added support for entity numbers in addition to classnames for r_showbboxes_filter, e.g. r_showbboxes_filter #42 (thanks to @andrey-budko)
    • added skywind_lookdir [period] [intensity] command to simplify skywind setup
    • changed viewpos output to show player position, camera position, and corresponding sun mangle
    • changed setpos command to accept viewpos command output directly (no need to strip parentheses)

...and more!

Ironwail 0.7.0

17 Mar 18:59
Compare
Choose a tag to compare

⚠️ Note: this release is outdated, please download the latest one instead.

Changes from 0.6.0:

  • ability to download add-ons from the Mods menu (using the community add-on server by default; specify -addons <url> on the command line to use a different server, -noaddons to disable)
  • new Levels menu, inspired by the one in Mark V, with various enhancements such as support for searching (by BSP name/map title) and skill selection
  • last save is loaded automatically after dying (sv_autoload 0 to disable, sv_autoload 1 to ask for confirmation, sv_autoload 2 to always load previous save, if any)
  • initial autosave support (sv_autosave 0 to disable)
  • moved saving to a background thread (avoids autosave stutter on complex maps)
  • improved compatibility with 2021 re-release: the engine will no longer write configs to the Nightdive folder to avoid an issues with the KEX engine where certain episodes would no longer function properly; existing configs will be automatically migrated to the new save location (%USERPROFILE%\Saved Games\Ironwail\rerelease)
  • added EGS and GOG Quake detection
  • initial support for CSQC HUDs (Arcane Dimensions, Alkaline 1.1/1.2), using code from QSS (by @Shpoike)
  • skill selection menu for Quake64
  • reworked Options menu
  • added Options, Controls and Video menu searching
  • improved console Tab completion
    • text can be matched anywhere, not just at the beginning of a cvar/command/argument:
      maxfps + Tab = host_maxfps
      showfps + Tab = scr_showfps
      box + Tab = r_showbboxes
      map fair + Tab = map ctsj2_fairweather
    • added argument cycling for map/load/save/game/sky commands (Tab/Shift+Tab)
  • support for emulating non-square pixels in the UI/HUD (e.g. scr_pixelaspect 5:6)
  • customizable screenshot names and folder (using cl_screenshotname cvar, defaults to screenshots/%map%_%date%_%time%)
    Supported variables: map, maptitle, date, time, year, month, day, hour, min, sec
  • viewsize 130 option (press +/- to activate/deactivate) for cleaner screenshots (no weapon/HUD/text messages)
  • built-in zooming support, bindable from the Controls menu
    New cvars/commands: zoom_fov, zoom_speed, +/-zoom, togglezoom, zoom_in/out
  • changed Controls menu to display more entries when possible
  • cvar to disable mouse support in the UI (ui_mouse 0)
  • cvar to enable sound effects when using the mouse to select different menu items (ui_mouse_sound)
  • menu sound effects are now throttled (ui_sound_throttle to change the interval, 0 to disable)
  • r_showbboxes_filter option (from @andrey-budko), which limits entities highlighted by r_showbboxes to those with matching classnames:
    r_showbboxes_filter secret highlights entities with classnames containing secret
    r_showbboxes_filter =trigger_secret highlights entities with classname equal to trigger_secret
    Note: Tab-completion is supported
  • r_showbboxes_health cvar (0 = show all entities, 1 = show entities with health > 0, -1 = show entities with health <= 0)
  • r_showbboxes_think cvar (0 = show all entities, 1 = show entities with thinktime > 0, -1 = show entities with thinktime <= 0)
  • skies command, which lists all available skies (with an optional filter argument)
  • Tab completion for sky command
  • Tab completion for bind/unbind key names
  • word-based navigation/deletion in console (using Ctrl+Left/Right/Backspace/Delete)
  • ability to bind Caps/Num/Scroll Lock and Print Screen keys
  • optional filter argument for maps command
  • model scale support (requires protocol 999) - original patch from @JosiahJack, with fixes from @temx
  • bumped model limit to 4096 (for quakemash)
  • maps command now prints map titles, too, not just BSP names
  • further reduced CPU usage
  • added skybox animation ("skywind") support
  • skybox caching (to avoid hitching when repeatedly switching between the same skyboxes)
  • order-independent transparency (r_oit 0 to disable, e.g. on integrated GPUs)
  • added option to sort transparent entities by distance when r_oit is disabled (r_alphasort)
  • changed rendering order for transparent brush entities (when both r_oit and r_alphasort are off) to match QuakeSpasm
  • added Transparency option to Video menu
  • improved color matching for 8-bit palettization: higher quality on modern maps, more authentic on classic ones
  • fullbright colors are now deduced from the colormap instead of being hardcoded
  • changed fog from planar to spherical (stable when turning around)
  • optimized particle rendering and increased default particle limit (using code from @mhQuake)
  • work-arounds for bugs in old Intel GPU drivers
    ⚠️ Note: some very old Intel GPU drivers might crash/stop responding during gameplay.
    Currently there is no fix or work-around for this issue, if you are affected by it please use a different engine, such as Quakespasm, Quakespasm Spiked, QSS-M or FTE
  • discrete GPU will be used by default, if available, instead of integrated one
  • fixed softlock in mge2m2
  • functional nomonsters cvar
  • enabled resizing in windowed mode
  • more responsive v_gunkick 2 implementation (@mhQuake)
  • changed default v_gunkick value to 2 (smooth)
  • v_gunkick, cl_rollangle, cl_bob and scr_clock are now saved to config
  • new writeconfig command
  • optional file name argument for condump command
  • eliminated endianness handling overhead (@tyfighter)
  • fixed rendering issues when streaming on Discord
  • fixed jitter when moving the mouse during a cutscene
  • fixed SZ_GetSpace: overflow when loading certain large maps (e.g. telefragged) with protocol 999
  • fixed occasional text rendering artifacts at certain UI scales
  • added screen warping and underwater sound effects for Alkaline 1.2 liquid brushes
  • fixed console animation with scr_conspeed <= 0
  • added scr_conbrightness and scr_menubgalpha to improve readability
  • experimental language cvar (english/french/german/italian/spanish)
  • support for using arbitrary characters as crosshairs (e.g. crosshair v for v, or crosshair -118 for the 118th character in the Quake font)
  • support for multiple -basedirs on the command line

Ironwail 0.6.0

12 May 20:32
Compare
Choose a tag to compare

⚠️ Note: this release is outdated, please download the latest one instead.

Changes from 0.5.0:

  • compatibility with Quake 2021 rerelease update 3
    Note: if you have Quake on Steam, you can unzip this release anywhere and simply run the executable to play the game, including any add-ons you may have already downloaded
  • added Mods menu - you can find it directly in the main menu for mods that use standard menu graphics, and in the Options menu as a fallback (e.g. Alkaline)
  • added basic UI mouse support
  • added weapon bindings to the Controls menu and enabled scrolling
  • added new HUD styles and new hudstyle cvar (set to 0 for classic HUD)
  • support for monster counts > 3 digits in the intermission screen
  • enabled looking up/down using the mouse wheel; cl_mwheelpitch adjusts pitch increment per tick (default 5)
  • ability to show the old taunt messages when quitting (cl_confirmquit 2)
  • tweaked savegame comment, window title and status bar text for maps with no description
  • added cl_titlestats cvar (1 = show map stats in window title, 0 = use simple window title)
  • added con_notifycenter, con_notifyfade and con_notifyfadetime cvars
  • increased default particle limit from 2k to 16k
  • optimized particle rendering (based on code from @mhQuake)
  • added r_showbboxes 2 mode with PVS test
  • changed r_showbboxes to use different colors for different entity model types; you can use a negative value (e.g. r_showbboxes -1) for the old style (all white)
  • added optional copy argument for the viewpos command; when present, viewpos text will also be copied to clipboard
  • changed unknown command console behavior to show all options containing the entered string instead of simply saying 'unknown command'
  • changed default protocol to 999
  • changed QuakeC random function to never return 0 (work-around for a bug in the original QuakeC code that caused enemies to be frozen and immune to damage after spawning); set sv_gameplayfix_random 0 for the old behavior

Bug fixes

  • fixed a bug that caused stuttering on elevators and ramps in some cases
  • fixed gl_overbright_models 0 mode to match QS
  • fixed suboptimal bmodel item instancing
  • fixed maps with no lightmap information being rendered as pitch-black (instead of fullbright) in multiplayer mode
  • fixed chase cam on jumbo maps (e.g. shib8)
  • fixed LAN config menu layout in Arcane Dimensions
  • fixed 'Unknown command "Max"' message in Arcane Dimensions

Ironwail 0.5.0

02 Apr 16:15
Compare
Choose a tag to compare

⚠️ Note: this release is outdated, please download the latest one instead.

Changes from 0.4.0:

  • added Steam Quake folder detection: if you have Quake on Steam, you should be able to unzip this release anywhere and simply run the executable to play the game, including any add-ons you may have already downloaded
    Note: you can use the mods console command to view a list of available mods, and the game command to switch between them
    (e.g. game terra or game udob)
  • added the ability to install the engine in its own subdirectory alongside id1 (without having to use -basedir)
  • re-enabled title demos by default (can be turned off with cl_startdemos 0)
  • renamed engine pak file to ironwail.pak and removed entity patches from it
  • added simple underwater sound filter (snd_waterfx 0 to disable)
  • further reduced heap usage: peril/tavistock can now be played without having to use -heapsize
  • added supersampling support for increased image clarity (AA mode: full video option)
  • added texture mip lod bias support (gl_lodbias, set to auto by default) - @temx
  • added dot crosshair (crosshair 2) - @swim32
  • changed UI scale slider to also update crosshair scale
  • r_lerpmodels & r_lerpmove are now saved to config
  • fov is now saved to config - @temx
  • added freelook cvar - @mhQuake
  • enabled always run option by default
  • changed initial resolution from 800x600 to current display resolution
  • automatic initial UI scale based on resolution instead of fixed 1.6
  • increased initial brightness/contrast a bit
  • removed lightmap clamping
  • improved palettization accuracy
  • limited particle trail emission rate
  • disabled mip-mapping for MDLs
  • added support for Quake 2021 re-release quad/pentagram dlights
  • added Quake 2021 re-release horde cvar
  • improved mod folder detection (skipping folders without relevant content)
  • optimized mipmap generation (for texture-heavy maps)
  • reduced lightmap VRAM usage
  • reduced VRAM usage for BSP textures with fullbright pixels
  • added experimental support for texture compression (gl_compress_textures)
  • improved imagelist VRAM usage estimation
  • increased maximum packet size in singleplayer mode
  • added version info resource to executable
  • improved mouse movement precision with non-integral sensitivities
  • added tab completion for load/save command arguments
  • removed the need to quote a multi-word key binding, e.g. you can now use
    bind l toggle r_showlightmap instead of bind l "toggle r_showlightmap"
  • changed quit confirmation prompt
  • added cl_confirmquit cvar (off by default)
  • removed vestigial gl_overbright code - @swim32

Bug fixes

  • fixed truncated screenshot names (oops!)
  • fixed SZ_GetSpace server crashes - @temx / vkQuake
  • fixed missing soundtrack in the first demo of SoA
  • fixed demos being recorded to local.dem when also specifying a starting map
  • fixed intermission camera angles during demo playback
  • fixed ambient sounds not playing at high framerates
  • fixed sky rendering with r_skyfog > 1
  • fixed black sky with gl_fullbrights 0

⚠️ Note: the initial 64-bit binary uploaded for this release was outdated, if the version number reads 0.4.0 please re-download the archive.

Ironwail 0.4.0

28 Jan 21:19
Compare
Choose a tag to compare

⚠️ Note: this release is outdated, please download the latest one instead.

Changes from previous release:

  • added support for multiple game and basegame dirs (from QSS, contributed by @neogeographica)
  • added support for Unicode characters in basedir
  • changed config file name to ironwail.cfg (config.cfg will be loaded as a fallback when ironwail.cfg is not present)
  • changed screenshot prefix from spasm to ironwail
  • changed r_softemu 3 menu background to look more like the one in Quake 1.06
  • changed r_softemu 3 mode to replicate the alias model UV distortion from the original software renderer
  • restored r_showbboxes functionality
  • added map status to window title
  • added fps limit menu option

Bug fixes:

  • fixed a bug that caused an edict leak after loading a savegame in some cases
  • fixed a bug that caused physics to run in sync with the renderer when using the default host_maxfps limit
  • fixed a bug that caused water to be drawn as opaque instead of transparent in some cases

Ironwail 0.3.0

08 Jan 00:48
Compare
Choose a tag to compare
Ironwail 0.3.0 Pre-release
Pre-release

⚠️ Note: this release is outdated, please download the latest one instead.

Changelog

  • tentative new name; too edgy?
  • added fallback path for slightly older GPUs (see updated requirements below)
  • more CPU & GPU rendering optimizations (e.g. +~20% on ad_tears)
  • more loading time optimizations for complex maps
  • new software emulation mode (r_softemu 0=off / 1=subtle / 2=balanced / 3=raw)
  • support for lightmapped liquids (r_litwater 0/1)
  • fixed various vid_restart issues and simplified it to be practically instant
  • changed vid_vsync, vid_fsaa and gl_texture_anisotropy to apply immediately (no vid_restart required)
  • fixed various stability and Intel compatibility issues (big thank you to @j4reporting for all the testing!)
  • added lightstyle interpolation for reduced eyestrain (r_lerplightstyles 0/1/2) - thanks, @mhQuake!
  • added more options to the video menu
  • r_scale > 4 now allowed on high-res screens
  • fixed 'texture not aligned to 16 pixels' crash in mg1/horde2
  • added code to handle sky textures with non-standard sizes and warn about them (e.g. ad_tears)
  • updated SDL2 to 2.0.18

System requirements

Note: these requirements might not be 100% accurate since they are based solely on reported OpenGL capabilities.
There could still be unforeseen compatibility issues.

Minimum GPU Recommended GPU
NVIDIA GeForce GT 420 ("Fermi" 2010) GeForce GT 630 or newer ("Kepler" 2012)
AMD Radeon HD 5450 ("TeraScale 2" 2009) Radeon HD 7700 series or newer ("GCN" 2012)
Intel HD Graphics 4200 ("Haswell" 2012) HD Graphics 620 ("Kaby Lake" 2016) or newer

0.94.2-gl4-test2

13 Nov 19:54
Compare
Choose a tag to compare
0.94.2-gl4-test2 Pre-release
Pre-release

⚠️ Note: this release is outdated, please download the latest one instead.

Test release 2 for the new renderer.

Minimum requirements:

  • AMD Radeon HD 7000 series (GCN1, 2012) or newer
  • Nvidia GeForce 600 series (Kepler, 2012) or newer
  • Intel HD Graphics 500 series (Skylake, 2015) or newer

0.94.2-gl4-test

07 Nov 18:00
Compare
Choose a tag to compare
0.94.2-gl4-test Pre-release
Pre-release

⚠️ Note: this release is outdated, please download the latest one instead.

Test release for the new renderer.

Known issues:

  • dynamic lights have artifacts on AMD GPUs (fixed in the next release)

Minimum requirements:

  • AMD Radeon HD 7000 series (GCN1, 2012) or newer
  • Nvidia GeForce 600 series (Kepler, 2012) or newer
  • Intel HD Graphics 500 (Skylake, 2015) or newer