Releases: andrei-drexler/ironwail
Release list
Ironwail 0.8.2
Download:
Note: Linux binary requires glibc 2.31 or newer, e.g. Ubuntu 20.04, and was compiled with DO_USERDIRS=0.
Changes from 0.8.1:
-
Initial compatibility with the 30th anniversary Quake update
Setup instructions:
- Using an existing Steam installation:
- unzip this release in any folder on your system that isn't a Quake installation (for example, on your desktop) and run
ironwail.exe; the game directory should be detected automatically - when prompted to choose between
RemasteredandOriginalcontent, chooseRemastered
- unzip this release in any folder on your system that isn't a Quake installation (for example, on your desktop) and run
- Using a custom Quake installation:
- copy
steamapps\common\Quake\rerelease\mg3to your Quake directory, alongsideid1 - rename
mg3\pak0.pakin your custom Quake dir topak1.pak - copy
pak0.pakfromsteamapps\common\Quake\rerelease\id1tomg3in your custom Quake dir - unzip the Ironwail archive into your Quake directory and run
ironwail.exeas usual
- copy
In both cases you should be able to find
MG3 - Dawn of the Machinein theModsmenu. - Using an existing Steam installation:
- Added support for mod-specific entries in the Key setup menu defined in a
bindlist.lstfile, based on QSS (example from the Keep codebase, used in Mjolnir)
Important
Unlike in QSS, the binds in bindlist.lst are currently merged with the engine-defined ones instead of completely replacing them. This behavior might be altered in the future. In order to preserve compatibility with QSS, FTE, and potentially future IW versions, always include the full list of binds in the file (e.g. movement, turning, weapon switching etc.), not just the ones specific to your mod.
- Added alt modifier key for gamepads, allowing two binds (regular/alt) on the same button (by @protocultor)
- Added automatic map checks for NextBroom and Qrucible
- Reduced MD3 VRAM usage by 4x (same size as MDL now) and improved MD3 loading times by decoding vertices on the GPU
- Fixed a GPU buffer leak
- Added
scr_infoscalecvar (default: 2.0), controlling the scale ofr_showfieldsandr_showbboxestext - Made Mods menu work with mods containing spaces (thanks to @andrey-budko)
- Changed custom mod descriptions (via
descript.ionfiles) to take priority over add-on server descriptions - Fixed JPEG screenshot saving code to create subdirectories and handle Unicode paths
- Fixed camera jitter after using "centerview" during a cutscene
- Fixed handling of BSPs with non-NUL-terminated entity lumps
- Added
r_showskelcvar (for MD5 skeleton visualization) - Changed default
cl_confirmquitvalue to 2 ("Classic") to prevent closing the game by mistake (without any confirmation) - Changed default value for
scr_centerprintbgto 2 ("Menu box") to improve readability - Removed legacy
-fitzmode - Improved frametime hitch handling for live option previews (e.g. when setting models to "Enhanced")
- Added a more informative error message when trying to reference a MD3 model directly, instead of having it as a replacement for a MDL (which should always be referenced by the map/progs)
Ironwail 0.8.1 (Arctic edition)
β οΈ Note: this release is outdated, please download the latest one instead.
Download:
Note: Linux binary requires glibc 2.31 or newer, e.g. Ubuntu 20.04, and was compiled with DO_USERDIRS=0.
Changes from 0.8.0:
- Added initial MD3 support (as an additional "Remastered" model type) by @jjelliott for Quake Brutalist Jam III
- Improved controller support:
- fixed PlayStation Rumble & Gyro functionality under Bluetooth mode by @AL2009man
- smoother flick stick adjustments
- increased max gyro sensitivity in the menu from 8 to 20
- controller LED is turned off when exiting the game
- Changed rendering code to avoid issues with certain AMD GPU drivers
- Improved map leak visualization
- Fixed console links sometimes not working
- Fixed potential crash when copying console text to clipboard
- Reset music on game change
- Steam Rich Presence: Show mapname if levelname is empty by @Prokopiy19
- Added
scr_showspeed_ofscvar (default: 0), currently not exposed in the menus - Added live preview for the "Quit Prompt" option
- Fixed player colors in MP games
- Route extra texture types to developer > 1 by @jjelliott
- Fix base dir in current directory by @skalleAnka
- Enable DO_USERDIRS by default for Unix-like platforms by @4LT
Full Changelog: v0.8.0...v0.8.1
Ironwail 0.8.0
β οΈ Note: this release is outdated, please download the latest one instead.
Download:
(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:
- Added
-prefremaster/-remasterand-preforiginal/-originalcommand-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
-heapsizeon 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 be disabled by passing
-nomapchecks, or enabled manually by settingmap_checkscvar to1before loading a map
β Note:gl_zfixand advanced transparency options are disabled when map checks are active in order to avoid compatibility issues with QS. - added
r_showfieldscvar to display field values for the entity under the crosshair - extended
r_showbboxesfunctionality 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
viewposoutput to show player position, camera position, and corresponding sun mangle - changed
setposcommand to acceptviewposcommand output directly (no need to strip parentheses)
- added basic map checks (inspired by @4LT's Pectin) when started from a level editing tool (TrenchBroom, JACK, ne_q1spCompilingGui or q1compile); can be disabled by passing
...and more!
Ironwail 0.7.0
β οΈ 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,-noaddonsto disable) - new
Levelsmenu, 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 0to disable,sv_autoload 1to ask for confirmation,sv_autoload 2to always load previous save, if any) - initial autosave support (
sv_autosave 0to 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)
- text can be matched anywhere, not just at the beginning of a cvar/command/argument:
- support for emulating non-square pixels in the UI/HUD (e.g.
scr_pixelaspect 5:6) - customizable screenshot names and folder (using
cl_screenshotnamecvar, defaults toscreenshots/%map%_%date%_%time%)
Supported variables:map,maptitle,date,time,year,month,day,hour,min,sec viewsize 130option (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_throttleto change the interval,0to disable) r_showbboxes_filteroption (from @andrey-budko), which limits entities highlighted byr_showbboxesto those with matching classnames:
r_showbboxes_filter secrethighlights entities with classnames containingsecret
r_showbboxes_filter =trigger_secrethighlights entities with classname equal totrigger_secret
Note: Tab-completion is supportedr_showbboxes_healthcvar (0= show all entities,1= show entities with health > 0,-1= show entities with health <= 0)r_showbboxes_thinkcvar (0= show all entities,1= show entities with thinktime > 0,-1= show entities with thinktime <= 0)skiescommand, which lists all available skies (with an optional filter argument)- Tab completion for
skycommand - Tab completion for
bind/unbindkey 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
mapscommand - model scale support (requires protocol 999) - original patch from @JosiahJack, with fixes from @temx
- bumped model limit to 4096 (for quakemash)
mapscommand 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 0to 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
nomonsterscvar - enabled resizing in windowed mode
- more responsive
v_gunkick 2implementation (@mhQuake) - changed default
v_gunkickvalue to2(smooth) v_gunkick,cl_rollangle,cl_bobandscr_clockare now saved to config- new
writeconfigcommand - optional file name argument for
condumpcommand - eliminated endianness handling overhead (@tyfighter)
- fixed rendering issues when streaming on Discord
- fixed jitter when moving the mouse during a cutscene
- fixed
SZ_GetSpace: overflowwhen 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_conbrightnessandscr_menubgalphato improve readability - experimental language cvar (english/french/german/italian/spanish)
- support for using arbitrary characters as crosshairs (e.g.
crosshair vforv, orcrosshair -118for the 118th character in the Quake font) - support for multiple
-basedirs on the command line
Ironwail 0.6.0
β οΈ 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
Modsmenu - you can find it directly in the main menu for mods that use standard menu graphics, and in theOptionsmenu as a fallback (e.g. Alkaline) - added basic UI mouse support
- added weapon bindings to the
Controlsmenu and enabled scrolling - added new HUD styles and new
hudstylecvar (set to0for classic HUD) - support for monster counts > 3 digits in the intermission screen
- enabled looking up/down using the mouse wheel;
cl_mwheelpitchadjusts pitch increment per tick (default5) - 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_titlestatscvar (1= show map stats in window title,0= use simple window title) - added
con_notifycenter,con_notifyfadeandcon_notifyfadetimecvars - increased default particle limit from 2k to 16k
- optimized particle rendering (based on code from @mhQuake)
- added
r_showbboxes 2mode with PVS test - changed
r_showbboxesto 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
copyargument for theviewposcommand; 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
randomfunction to never return0(work-around for a bug in the original QuakeC code that caused enemies to be frozen and immune to damage after spawning); setsv_gameplayfix_random 0for the old behavior
Bug fixes
- fixed a bug that caused stuttering on elevators and ramps in some cases
- fixed
gl_overbright_models 0mode 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
β οΈ 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 themodsconsole command to view a list of available mods, and thegamecommand to switch between them
(e.g.game terraorgame 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.pakand removed entity patches from it - added simple underwater sound filter (
snd_waterfx 0to 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: fullvideo option) - added texture mip lod bias support (
gl_lodbias, set toautoby default) - @temx - added dot crosshair (
crosshair 2) - @swim32 - changed UI scale slider to also update crosshair scale
r_lerpmodels&r_lerpmoveare now saved to configfovis now saved to config - @temx- added
freelookcvar - @mhQuake - enabled
always runoption 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
hordecvar - 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
imagelistVRAM 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_showlightmapinstead ofbind l "toggle r_showlightmap" - changed quit confirmation prompt
- added
cl_confirmquitcvar (off by default) - removed vestigial
gl_overbrightcode - @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
β οΈ 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.cfgwill be loaded as a fallback whenironwail.cfgis not present) - changed screenshot prefix from
spasmtoironwail - 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
β οΈ 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
β οΈ 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
β οΈ 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