Releases: andrei-drexler/ironwail
Releases · andrei-drexler/ironwail
Ironwail 0.8.0
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
/-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 settingmap_checks
cvar to1
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 acceptviewpos
command 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 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,-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)
- 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_screenshotname
cvar, defaults toscreenshots/%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 byr_showbboxes
to those with matching classnames:
r_showbboxes_filter secret
highlights entities with classnames containingsecret
r_showbboxes_filter =trigger_secret
highlights entities with classname equal totrigger_secret
Note: Tab-completion is supportedr_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 to2
(smooth) v_gunkick
,cl_rollangle
,cl_bob
andscr_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
andscr_menubgalpha
to improve readability - experimental language cvar (english/french/german/italian/spanish)
- support for using arbitrary characters as crosshairs (e.g.
crosshair v
forv
, orcrosshair -118
for the 118th character in the Quake font) - support for multiple
-basedir
s 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
Mods
menu - you can find it directly in the main menu for mods that use standard menu graphics, and in theOptions
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 to0
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 (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_titlestats
cvar (1
= show map stats in window title,0
= use simple window title) - added
con_notifycenter
,con_notifyfade
andcon_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 theviewpos
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 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 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
⚠️ 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 themods
console command to view a list of available mods, and thegame
command to switch between them
(e.g.game terra
orgame 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 toauto
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 configfov
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 ofbind 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
⚠️ 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 whenironwail.cfg
is not present) - changed screenshot prefix from
spasm
toironwail
- 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