Heart of the Woods 2.1 — Celebrating our 4th anniversary!


Hello, everyone!

Right on the heels of Heart of the Woods’ 4th anniversary, we’ve just released a major update to Heart of the Woods!

Heart of the Woods 2.1 fixes many long-standing issues of varying severity, vastly improves controller support, and even adds native support for ARM Linux (arm64 / AArch64, armv7) — notably including Asahi Linux (arm64e / Apple Silicon)!

To go along with the 4th anniversary, we also have a new short story and artwork featuring Tara and Morgan! You can see them in our Patreon post here: https://patreon.com/posts/78737674

As always, thank you all for supporting Studio Élan across these many years!

〜 Karen/あけみ (akemin_dayo) and adirosa

Changelog for 2.1:

※ Note regarding native Apple Silicon (arm64 / AArch64) Mach-O slices on macOS: Ren’Py unfortunately does not support this configuration upstream yet, and attempts at building it manually have failed due to toolchain issues.

For the time being, Apple’s Rosetta 2 x86_64 translation layer (which will be installed automatically) will still be required to play Heart of the Woods.

New features

  • Added a detailed README found in the game directory — please give it a read!
  • Added a macOS DMG background. It is also available as bonus content in the game directory.
  • Added native support for ARM Linux (arm64 / AArch64, armv7) — notably including Asahi Linux (arm64e / Apple Silicon)!
    • ※ Note for ARM Linux users: You will not be able to earn Steam achievements/trophies while running native ARM Linux builds of the game, as Valve currently only provides an x86_64 version of the Steamworks dynamic library for Linux (libsteam_api.so).
      • ※ If you run the x86_64 build of the game via a translation layer such as Box64 or FEX, Steam achievements/trophies should work as expected.
  • Vastly improved controller support as well as general keybinds for both controller and keyboard. The list below is incomplete and only lists what’s changed — a full list of all bindings can be found in the Help menu.
    • Controller: Added a new configurable preference that allows you to set your preferred confirmation button. Available options are:
      • A / Cross / Bottom Button (※ Default)
      • B / Circle / Right Button
    • Controller: Submenus can now be exited by pressing your configured cancel button (which is whatever the opposite of your configured confirm button is).
    • Controller: Scrollable views can now be scrolled using the right stick.
    • Controller: Pressing L1 / Left Shoulder and R1 / Right Shoulder buttons now changes pages in the save screen, load screen, gallery, and CG viewer.
    • Controller: In the gallery CG viewer, pressing X / Square / Left Button now toggles the zoom.
    • Controller: In normal gameplay, pressing X / Square / Left Button now toggles auto mode.
    • Controller: Pressing R1 / Right Shoulder button now toggles the skip functionality.
    • Controller: Pressing R2 / Right Trigger button now rolls forward the dialogue, instead of acting as a second confirm button.
    • Controller, Keyboard: The gallery CG viewer can now be moved using the right stick on the controller, and the arrow keys on the keyboard.
    • Controller, Keyboard: Fixed an issue where some keyboard and controller bindings were erroneously left active in the ED video player, which could result in it severely breaking if accidentally pressed.
    • Keyboard: Pressing Escape now exits the gallery CG viewer, as well as the Extras submenus.
    • Keyboard: Pressing the [ ] keys now changes pages in the save screen, load screen, gallery, and CG viewer.
    • Keyboard: Pressing Z now toggles the zoom in the gallery CG viewer.
    • Keyboard: Pressing H now also hides the UI in the gallery CG viewer, just as it does in normal gameplay.
    • Keyboard: Pressing L now opens the history/log screen.
    • Keyboard: Pressing K now toggles auto mode.
    • Keyboard: Pressing F6 now opens the save screen.
    • Keyboard: Pressing F7 now opens the load screen.
    • Keyboard: Pressing ` now opens the developer console.
  • Updated the Help screen to be more complete.
    • Controller bindings are now always displayed for easier reference.
    • Clarified and localised all controller button names.
    • Completely reworded many of the binding descriptions.
    • Added all new bindings introduced in 2.1, in addition to documenting existing ones that were previously not included.
  • Updated credits screen.
  • Re-encoded all videos using the VP9 (libvpx-vp9) codec, muxed into MKV containers. Audio quality in videos have also been improved, as we now use lossless FLAC audio tracks for your listening pleasure.
  • Made improvements to the Studio Élan bootlogo.
  • Made changes to how Unified builds are generated to facilitate for easier conversion between Unified and macOS Standalone builds.
  • Improved the UX for the first boot accessibility onboarding flow.
  • Updated the developer console UI.
  • Added proper padding for the zoom button in the gallery CG viewer.
  • Added proper padding for the “Skip Credits” button in the ED video player.
  • Added missing transitions to some scenes.
  • Updated the text shown in the gallery CG viewer to reflect the new keybinds.
  • Modified the behaviour of all scrollable views to also allow dragging.
  • Updated all outdated Twitter usernames in the Guest Art gallery, and corrected all capitalisation.
  • Completely re-rendered most name plates.
  • Updated some UI assets.
  • Updated all fonts to the latest versions.
  • Restored a train whistle that plays when players step off of the train to Eysenfeld.
  • Restored menu item hover and click sounds.

General bug fixes

  • Completely rewrote Steam achievement/trophy functionality. Issues fixed by this change are listed below.
    • Fixed all known issues related to difficulties earning achievements/trophies.
    • Fixed an issue where achievement/trophy state could desynchronise between local persistent save data and Steam.
  • Completely rewrote procedural forest generation functionality. Issues fixed by this change are listed below.
    • Rendering errors no longer occur when characters move through the forest.
    • Fixed an issue where it would be possible to spawn into a completely empty forest if a very specific chain of actions were made by the player.
    • Fixed an issue where some trees would erroneously render multiple times.
    • Fixed an issue where some procedural forests may spawn with less trees than intended.
    • Fixed an issue where a race condition could occur while generating a procedural forest.
    • Improved performance by removing unnecessary draw calls.
  • Completely changed how fonts work. This fully fixes the rendering of bold, italics, and bold italics which were all previously rendered incorrectly.
  • Use the correct name for Source Han Sans / 源ノ角ゴシック.
  • Use the correct name for OpenDyslexic.
  • Fixed an issue where the animated snowflakes shown in menus would sometimes erroneously appear in the incorrect position for a few frames.
  • Fixed an issue where some character facial expressions would not display correctly.
  • Fixed an issue where the outdoors train whistle would play when players are actually indoors.
  • Fixed an issue where the second train CG variant would not be unlocked in the gallery. (※ Start a new game to unlock it.)
  • Fixed a rendering issue that would occur for a few frames while transitioning away from the ED videos.
  • Fixed a rendering issue that would occur where some UI elements would incorrectly render behind the NVL UI.
  • Fixed a rendering issue that would occur where the PoV switching animation would incorrectly render behind the NVL UI.
  • Fixed all known issues with missing voice lines.
  • Fixed all text formatting tags that were erroneously left open.
  • Fixed some text formatting issues.
  • Fixed some minor typos.
  • Fixed a crash that would sometimes occur while entering the guest art gallery.
  • Fixed an issue where the images in the gallery CG viewer could not be dragged when zoomed in.
  • Fixed an issue where an empty page would be shown in the guest art gallery.
  • Fixed an issue in the Help screen where an incorrect font would sometimes be used after changing languages.
  • Fixed an issue where the wrong font would sometimes show in some of the Extras submenus.
  • Fixed an issue where the text scrolling animation would render incorrectly when using the OpenDyslexic font.
  • Fixed an issue where the line spacing would incorrectly render too tightly when using the OpenDyslexic font.
  • Fixed an inconsistency where menu elements for the Extras screen were not centered.
  • Fixed an issue where the Help menu would always open scrolled all the way at the bottom.
  • Fixed a text rendering issue with the CG “You, Me, and the Snowflakes” in the gallery.
  • Fixed an issue where the developer console would not be able to be opened using the standard ` key.
  • Fixed an issue where the gentle screenshake effect used in the train CG would sometimes not work.
  • Fixed an issue where the graphical buttons in the extras menu were not consistently aligned correctly.
  • Fixed an issue where some background images would not correctly fill the screen due to using the wrong dAR.
  • Fixed the alignment of the right and left buttons shown in the gallery CG viewer.
  • Fixed all incorrect image paths.
  • Fixed an issue where the history/log screen would open scrolled all the way to the top.
  • Fixed an issue where the first boot accessibility onboarding flow would render slightly incorrectly when choosing to enable or disable image descriptions.

Localisation bug fixes

  • Fixed an issue where some strings and dialogue in the Traditional Chinese (繁體中文), Simplified Chinese (简体中文), German (Deutsch), and Spanish (Español) would erroneously display completely empty.
    • This also fixes an issue where some preference categories would appear to be missing from the preference pane.
  • Fixed all known lines that would erroneously still appear in English despite having another localisation enabled.
  • Fixed all known issues regarding missing text in the Traditional Chinese (繁體中文) and Simplified Chinese (简体中文) localisations.
  • Fixed all known issues regarding text rendering errors in the Traditional Chinese (繁體中文) and Simplified Chinese (简体中文) localisations.
  • Added missing localised name plates for Traditional Chinese (繁體中文), Simplified Chinese (简体中文), and German (Deutsch).
  • Fixed an issue where the Traditional Chinese (繁體中文) and Simplified Chinese (简体中文) localisations would always display entirely with a bold font weight.
  • Fixed an issue where the Traditional Chinese (繁體中文) and Simplified Chinese (简体中文) localisations was erroneously missing all bold text tags.
  • Fixed an issue where the names shown in the PoV switcher would not be translated when using the Traditional Chinese (繁體中文) or Simplified Chinese (简体中文) localisations.
  • Fixed an issue where the font picker would erroneously remain enabled when using the Traditional Chinese (繁體中文) localisation, which does not support changing the font.
  • Fixed an issue where the name of some CGs in the gallery would not display correctly when using the Traditional Chinese (繁體中文) or Simplified Chinese (简体中文) localisations.
  • Fixed an issue where the error handler would not render correctly when using the Traditional Chinese (繁體中文) or Simplified Chinese (简体中文) localisations.
  • Fixed an issue where the “Calibrate” button would display in English when using the Traditional Chinese (繁體中文) or Simplified Chinese (简体中文) localisations.
  • Fixed an issue where changing the font to Traditional Chinese (繁體中文) or Simplified Chinese (简体中文) and then back to English, German (Deutsch), or Spanish (Español) would result in the incorrect font being used until either PT Sans or OpenDyslexic was chosen again from the font preference pane.
  • Fixed an issue in one location where the Traditional Chinese (繁體中文) and Simplified Chinese (简体中文) would attempt to reference an old font that no longer ships with the game.
  • Fixed an issue where the names shown in the translated name plates for Traditional Chinese (繁體中文) and Simplified Chinese (简体中文) would be inconsistent with how they were translated in the actual game text.
  • Fixed an issue where some instances of italicised text would not render correctly when using the Spanish (Español) localisation.
  • Fixed an issue where menu elements for the Extras screen would draw over the menu header when using the Spanish (Español) localisation.
  • Fixed an issue where some preference pane tooltip strings in the Spanish (Español) localisation were missing newlines, resulting in the line being too long and cutting into other UI elements.
  • Fixed a UI layout issue in the Help screen when using some localisations that have longer strings for the bindings.

Scene-specific bug fixes

  • Improved the presentation of the title logo scene across the aerial shot of Eysenfeld shown at the end of Scene 1-1.
  • Fixed an issue where the title logo scene would persist for longer than intended.
  • Fixed some rendering issues that would occur while transitioning between Scene 1-1 and 1-2.
  • Fixed an issue in Scene 1-4 that would erroneously alter the behaviour of all procedural forests generated afterwards while the game is still open.
  • Fixed an issue in Scene 1-8 where the incorrect transition would play.
  • Fixed missing fade transitions in Scene 3-1.
  • Fixed an issue where a certain character would be wearing the wrong clothing in a scene.

Changes that affect modders and dataminers

  • Wondering where some defines went? They’ve probably been moved inside MorganKit.
  • Rearranged many assets internally and removed all erroneously duplicated assets.
  • Removed unused font assets.
  • Changed the way how unused, non-canonical cut content content is stored. This means that you can no longer view cut content the old way.
    • ※ To get around this, you can set the console variable showNonCanonicalCutContent = 1 while ingame. Please note that this is an unsupported configuration!
  • Made various internal improvements to the codebase, including large-scale refactoring.

Get Heart of the Woods

Buy Now$15.00 USD or more

Leave a comment

Log in with itch.io to leave a comment.