Accessibility Update - v1.3

Sisypush

Play as Sisyphus in the ancient Greek underworld, clearing obstacles and pushing your special rock towards the target in over 70 levels of this short Sokoban-like puzzle game with a 1-bit art style.

Hey everybody, I have a new update ready for Sisypush and it's Sisypush's largest update to date. The full changelog of this update is below, but let's take a closer look at the most interesting new additions! [h1]Showcase[/h1] [h2]Control Remapping[/h2] Now you can remap all gameplay controls to any keyboard or gamepad buttons or joysticks! Simply head over to Settings and choose your new input layout. You can even map as many buttons to a single action as you want. Hopefully, this change will make the game more accessible to players with less common keyboard layouts and people using different input devices. [img alt="Control Remapping Dialogue in Sisypush"]{STEAM_CLAN_IMAGE}/43218820/2bac10f4059f39ff8b5abcc90a0f089f0689c400.png[/img] [h2]Touch Control Buttons[/h2] If you would like to play Sisypush on a device that has a touch screen or only a mouse, you can now do so using the touch screen control buttons. They are nothing fancy, just four buttons for the up, down, left, and right movement, but they hopefully provide more people access to the game. If you would like to use them you can enable them in the settings under 'Controls'. [img alt="Gameplay screenshot of Sisypush showing the touch control buttons in the bottom right corner"]{STEAM_CLAN_IMAGE}/43218820/8cf6ff93e0d4a3f9721dcdd126ab70e80e4d883f.png[/img] [h2]Settings Restructuring[/h2] The game's settings are now split up into 5 tabs. Since the game now has quite a lot of customization options, this hopefully helps you find specific options quickly. [img]{STEAM_CLAN_IMAGE}/43218820/310b6fc6670bb33877f2891f8655b92683b861ee.png[/img] [h2]Text-to-Speech Support for Visually Impaired Gamers[/h2] In order to support players who are blind or have some other sort of vision impairment who would still like to play the game, this update adds Text-to-Speech (TTS) support for UI elements and in-game levels. The TTS functionality also does not remove any visual elements of the game, so in case you are a blind/visually impaired streamer, your viewers will still be able to see all of the game. Note that I am using the Godot game engine for this game, and the engine does not support directly communicating with screen readers (such as NVDA). So unfortunately I cannot provide that functionality. However, the game can use any voice installed on your computer to generate TTS audio and the game also allows you to customize the volume, speed, and pitch of any of your installed voices. So I hope this feature is still useful for some of you! Oh, and in case you have further suggestions for improvement, please do not hesitate to contact me. It's difficult for me to judge whether certain features are useful, so if you have some feedback regarding accessibility please tell me! [h3]Enabling TTS functionality[/h3] [list] [*] Enabled TTS in the Settings under the 'TTS' tab. [*] Alternatively TTS functionality can be enabled by pressing F1 on your keyboard, or Select on your gamepad while in the main menu. [*] When starting the game for the first time, an audio prompt will inform you that you can press F1/Select to enable TTS. This will only happen when the game is started for the first time. [/list] [h3]TTS Customization[/h3] In the settings you can change all sorts of properties of the TTS functionality and customize it to your liking: [list] [*] Enable or disable TTS. [*] Choose your preferred TTS voice. (The TTS voices are your locally installed voices, i.e. you need to have at least one TTS voice installed for this feature to work) [*] Set the TTS volume. (Note: The Master Volume slider does not influence the TTS volume as it is independent from the game and relies on your operating system) [*] TTS Speed Rate, up to 3 times the normal speed. [*] TTS Pitch. [/list] [img alt="Sisypush Settings showing the TTS tab"]{STEAM_CLAN_IMAGE}/43218820/0da53b91df91c9cdbbd30b7b987428a69df87e9b.png[/img] [h3]TTS for UI[/h3] The TTS functionality narrates any focused UI element and you should now be able to navigate all menus without needing to rely on visual elements. [list] [*] Labels and buttons are narrated, as well as sliders, tabs, option buttons, checkboxes, and more. [*] The level selection is also being narrated, and if TTS is enabled, a simplified world map is automatically activated. [list] [*] The only difference of this simplified map is that all directions are reversible (i.e. if you move in a direction, and then in the opposite direction you will be where you started) [/list] [/list] [h3]TTS for Gameplay[/h3] Not only menus but also in-game levels are narrated and can be played without any visual information. Especially if you have good memory and/or spatial imagination. [list] [*] In each level you can control the player character Sisyphus, and independently from him you can also control the so-called TTS Object Narrator. [*] The TTS Object Narrator is basically a 'cursor' that narrates the coordinates where it is, and what is on the current tile. (i.e. if there's the player on that tile, or a wall, an empty vase, etc.) [*] You can move the cursor of this TTS Object Narrator with I, J, K, L on your keyboard, or by using the right joystick on your gamepad. [*] The TTS Object Narrator cursor has no collision and can move through anything, but only within the bounds of each level. [*] You can also make the TTS Object Narrator cursor jump to 3 locations: [list] [*] Jump to the player by pressing P on your keyboard or A on a gamepad (X-Box layout). [*] Jump to the goal by pressing U on your keyboard or X on a gamepad (X-Box layout). [*] Jump to the white rock by pressing O on your keyboard or B on a gamepad (X-Box layout). [/list] [*] You can prompt the TTS Object Narrator to narrate the current tile again by pressing M on your keyboard, or RT on a gamepad (X-Box layout). [*] Another experimental feature is that the TTS Object Narrator can play a sound for each of its 4 neighboring tiles. [list] [*] E.g. you will hear a stone sound when the neighboring tile is a wall, or a human breathing when there's the player character on the neighboring tile. [*] The sounds of the neighboring tiles will be played in that order: Top, Right, Bottom, Left [*] The narration of all 4 neighboring tiles takes 1 second. [*] You can prompt the TTS Object Narrator to play sounds for neighboring tiles using this feature by pressing N on your keyboard or LT on a gamepad (X-Box layout). [/list] [/list] Further information regarding TTS functionality can be read in the 'TTS' section in the 'Help' menu which is accessible from the main menu. [h2]In-Game Help[/h2] In the main menu of the game, you can now find a 'Help' button. This menu explains every mechanic of the game and some functionalities that might not be too obvious. While most of the gameplay mechanics should be self-explanatory because of pictorial instructions in some of the levels, this menu will hopefully make things clear to more people, especially blind/vision-impaired gamers who are unable to see pictorial guides. [img]{STEAM_CLAN_IMAGE}/43218820/2dfca0619bd8e632a390ab13976ab73fd426d0df.png[/img] [h1]Full Changelog[/h1] [h2]Features:[/h2] [list] [*] Add Text-to-Speech (TTS) support [list] [*] Add TTS support for UI elements [*] Add TTS support for level selection [*] Add TTS support gameplay by adding the 'TTS Object Narrator' [*] Add support for cutscene narration (level 1-0 Prologue) [*] Add support to play sounds for neighboring tiles using the 'TTS Object Narrator' [*] Add a setting to enable TTS [*] Add Setting for TTS Voice [*] Add Setting for TTS Volume [*] Add Setting for TTS Pitch [*] Add Setting for TTS Speed Rate [*] Display a message when no TTS voice is installed on the computer. [/list] [*] Add Help section to Main Menu [list] [*] Add help texts for 'Help Overview', 'Level Selection', 'Basic Mechanics', 'Mechanics World 2', 'Mechanics World 3', 'Mechanics World 4', 'Mechanics World 5', 'Stars and SoA', 'Text-to-Speech'. [/list] [*] Restructure Settings into tabs [list] [*] Settings have now been categorized into 'Graphics', 'Audio', 'Game', 'Controls', and 'TTS'. [*] Add UI theme for Tabs [/list] [*] Add Simplified World Map [list] [*] Adds a more straightforward world map that has reversible directions. [*] The position where you are on the world map is saved independently for the regular and the simplified world map. [*] Add a setting to enable or disable the simplified world map (will be enabled automatically if you enable TTS) [/list] [*] Add support to remap controls [list] [*] In the Settings under 'Controls' you can remap all gameplay actions. [*] Controls are saved when exiting the remapping dialogue and will be loaded automatically when the game starts. [*] You can map as many buttons to a gameplay action as you want and also delete all pre-existing mappings. [list] [*] To ensure you do not accidentally make the game unplayable, UI actions such as confirming something with 'Enter' cannot be remapped. [/list] [*] You can reload the game's default control mappings in this dialogue as well. (at the top) [*] TTS-related controls are only being shown if you have TTS enabled. [/list] [*] Add Touch Screen Control buttons [list] [*] Enables you to fully play the game using only a mouse or a touch screen. [*] Add a checkbox to enable these under 'Controls' in the Settings [/list] [/list] [h2]Maintenance:[/h2] [list] [*] Update Godot engine to version 4.1.1, bringing performance improvements. [*] Update GodotSteam plugin to version 4.3. [*] Restructure and clean up many parts of the code base. [/list] [h2]Bug Fixes and Other Minor Improvements:[/h2] [list] [*] Make Statistics UI, Settings UI, and Credits UI wider for improved screen space usage. [*] Change default window mode to Fullscreen. [*] Add Mastodon link to the Credits. [*] The OptionButton now makes a sound when hovering over options. [*] Set icon for MacOS build. [*] Compress many of the audio files to .mp3 format to reduce disk space usage. [*] Improve error handling when encountering an issue with file access (i.e. when reading and writing to a save file, stored settings, statistics, or controls) [*] Pressing the back button while in a Settings dialogue will now not immediately close the whole Settings, but only this dialogue (e.g. control remapping dialogue, confirm to erase progress/reset settings dialogue) [*] Fix missing wall tiles in some levels. (Outside of the play area, only relevant for TTS Object Narrator level bounds) [*] Fix bug that led to an error when pressing Undo or Redo while not in a level. [*] Fix bug that led to an error during the Prologue (1-0) level. [*] Fix bug where no UI element was focused when entering Settings sometimes. [*] Fix bug where button glyphs were not updating correctly [*] Fix tilemap glitching issues that rarely happened on certain devices [/list]