Releases: realnc/hugor
Hugor 3.0
-
Fixed a potential crash when parsing inputs containing compounds (like GET OUT OF BED.)
-
Fixed a potential crash when the game sets an application window title that is too long.
-
Games with video no longer result in the audio device being opened a second time and showing up as coming from a different application in the operating system's sound mixer UI.
-
The correct version is now reported when games query it through the GET_VERSION opcode.
-
LibVLC is now the only video backend. The GStreamer backend has been removed.
-
A relatively modern compiler with C++17 support is now required to build Hugor. GCC 5.4 (shipped by Ubuntu 16.04) is the oldest GCC version that is verified to still work.
-
It is now possible to bundle custom fonts when distributing a game together with the interpreter. See the example.cfg file for more information.
-
Fixed various issues when reading cfg override files. The file is now assumed to be UTF-8 encoded. Entries are now case-insensitive. Entries containing commas are now parsed correctly.
Hugor 2.2
Hugor 2.1
-
Fixes an issue where the fullscreen width is too narrow when loading settings stored by Hugor version 1.0.
-
The Linux AppImage now integrates better with the Gnome desktop (native Gnome file dialogs are used when possible, and some missing icons should now show correctly.)
Hugor 2.0
-
Improved SDL audio engine, using SDL_audiolib instead of SDL_mixer.
Resampling quality is improved and the engine will now correctly apply resampling (if needed) in all cases. Previously, certain sample rates could cause resampling to be skipped, resulting in audio that plays at the wrong speed.
MIDI music is now rendered using an internal SoundFont synthesizer (FluidSynth) or an OPL3 emulator (DOSBOX OPL through libADLMIDI) and thus it no longer matters whether or not the operating system supports MIDI. For FluidSynth, you can use your own SoundFont instead of the default one.
Higher quality and more accurate playback of MOD-based music through libopenmpt. You can optionally use libxmp or libmodplug instead when building the interpreter from source.
-
The FMOD audio engine has been removed. It was there as a better alternative to SDL_mixer, but FMOD is proprietary software and thus could not be shipped with Hugor by default and thus required people to build from source. Since we now use SDL_audiolib, FMOD no longer serves any purpose.
-
The sound volume is now configurable through a slider in the preferences dialog.
-
Implemented a bug that exists in the official Windows interpreter that allows WAV files to be played in the music channel. Even though that's not actually allowed, at least one game (Future Boy) depends on this bug in order to play some of its audio. This now works "correctly" in Hugor as well.
-
The behavior of the "mute sound in background" setting has been changed. It now only mutes the sound when the application is minimized, not when it loses focus.
-
The line spacing of the chosen fonts is now respected. Text should be more readable as a result.
-
Text kerning is now disabled. The Hugo engine can't deal with kerning correctly, which would previously result in text lines that are often too short and with excessive amounts of space between words when text style or color changes are involved.
-
Video is now fully supported in the Linux, macOS and Windows versions of Hugor. The default video backend is libVLC, but you can optionally use GStreamer instead when building from source (although this is not recommended, as GStreamer has issues with the video format used in "Future Boy".)
-
The interpreter is now executing games in their own thread. A game that (for whatever reason) freezes and stops responding will no longer freeze the entire application with no possibility to quit. Also, games that carry out time consuming operations between input prompts will no longer cause temporary UI freezes.
-
Improvements for Retina (and high DPI in general) displays. UI, text and graphics should no longer appear blurry.
-
Added two new text caret shapes, underline and block, as alternatives to the default "I-Beam" shape, along with three thickness levels for I-Beam and underline.
-
The "Fullscreen Width" configuration option is now a percentage, rather than an absolute pixel value.
-
If this version of Hugor is started for the first time, fullscreen mode will default to a 4:3 display ratio, as otherwise text lines can be extremely long on wide screen displays.
-
Fullscreen mode is now restored correctly between sessions.
-
Alt+Enter and Alt+Return can now be used on all platforms to toggle fullscreen mode, in addition to the platform-specific shortcuts.
-
The margin color auto-detection when in fullscreen mode can now be disabled and a custom color can be manually configured.
-
The mode in which the interpreter starts (fullscreen, window, last state) is now configurable.
-
Alt+tabbing out of the interpreter when in fullscreen mode will now minimize it.
-
The scrollback now ignores main window word wrapping and does its own word wrapping.
-
The scrollback font is now configurable.
-
A new "show scrollback when using scrollwheel" configuration option controls whether or not the scrollback is shown when trying to scroll with the mouse wheel.
-
Scriptfile output can now be word-wrapped. The text width to use when wrapping is configurable through a new configuration option.
-
Scriptfiles are now written using the correct character encoding of the operating system's locale.
-
Games that expect mouse input will no longer receive right-clicks (or left-clicks on left-handed mouse setups), since this is reserved for the context menu.
-
Context menu entries set by the game are now supported and displayed in the context menu.
-
Pasting words on double-click now only works with the left mouse button.
-
Images are now always scaled using bilinear filtering and the "smooth image scaling" option has been removed from the preferences dialog.
-
Support for game-specific start-up configuration files. See the "example.cfg" file for details.
-
The Hugo base code was updated, fixing rare cases of crashes and failures to restore saved games.
-
When building from source, you can now do "make install", which installs to /usr/local by default. See README on how to change the default path.
-
At least Qt 5.5 and SDL 2 are now required to build Hugor. Qt 4 and SDL 1 are no longer supported. It's highly recommended to use Qt 5.9 or newer.
-
Building the source code now requires at least a C++14 compiler.
-
Hugor is now licensed under the GNU General Public License version 3, and the Hugo base code under the BSD 2-Clause "Simplified" License.
1.0
(No record has been kept for versions older than 1.0. The below are the
changes since version 0.9.)
-
Fullscreen mode is now supported. The maximum width of game output when
in fullscreen is configurable (useful for widescreen displays.) Switching
to fullscreen and back can be done through the "View" menu, or by a
platform-specific keyboard shortcut:KDE: F11 or Shift+Ctrl+F Gnome: Ctrl+F11 Mac OS X: Ctrl+Command+F Windows: F11 or Alt+Enter or Alt+Return
-
External tools that rely on real-time transcript updates (like Trizbort)
should now work correctly. -
The mouse cursor is now hidden when typing and brought back when moving the
mouse. -
Memory usage when playing music has been reduced. Previously, the whole
music file was mapped into memory as it was playing, increasing memory usage
over time during playback. Now the music is streamed as needed and memory
usage stays constant over time. -
When the "Mute Sound in Background" option was enabled, the sound would
sometimes stay muted during very quick window focus changes (this can happen
when launching Hugor through external scripts.) This has (hopefully) been
fixed. -
Games that make use of MATCH_FOREGROUND for input would get a wrong color
during text input. This has been fixed. -
The game window now has a context menu. It simply provides quick access to
the various main menu entries. -
The scrollback window can now also be closed by clicking on its banner
text. -
Margins and their colors would sometimes display incorrectly after the
scrollback window was displayed. This has been fixed.