Skip to content

Releases: offalynne/Input

5.5.2

09 Mar 19:28
Compare
Choose a tag to compare

This release requires GameMaker 2022 LTS or later. If you're looking for a version of Input that works on older versions, please use version 5.2.1. Please note that we will not be supporting 5.2.1 long-term and you should update your version of GameMaker to 2022 LTS as soon as possible to keep up with new versions of Input.

 

Bug Fixes

  • Fixes gamepad icon types being tied to the gamepad that bound them even when not in the .MULTIDEVICE source mode
  • Fixes crash when loading bindings that include virtual buttons
  • Fixes crash when the fallback icon category is missing
  • Adds warning when running through a browser and testing locally

5.5.1

01 Mar 08:49
Compare
Choose a tag to compare

This release requires GameMaker 2022 LTS or later. If you're looking for a version of Input that works on older versions, please use version 5.2.1. Please note that we will not be supporting 5.2.1 long-term and you should update your version of GameMaker to 2022 LTS as soon as possible to keep up with new versions of Input.

 

Bug Fixes

  • Fixes rebinding failing when the player is assigned INPUT_MOUSE
  • Fixes cursor position sometimes being incorrect when transforming between coordinate spaces and the viewport is squashed or stretched

5.5.0

22 Feb 13:27
Compare
Choose a tag to compare

This release requires GameMaker 2022 LTS or later. If you're looking for a version of Input that works on older versions, please use version 5.2.1. Please note that we will not be supporting 5.2.1 long-term and you should update your version of GameMaker to 2022 LTS as soon as possible to keep up with new versions of Input.

 

New Features

  • Adds virtual buttons to allow emulation of gamepad controls on touchscreen devices (primarily mobile phones)
  • Adds INPUT_TOUCH source type. INPUT_TOUCH will be used in place of the INPUT_MOUSE source on Android, iOS, tvOS, Switch, and when running Windows on Steam Deck. You can force legacy behaviour (where touch input is INPUT_MOUSE) by setting INPUT_TOUCH_IS_MOUSE to true
  • Adds INPUT_MOUSE_ALLOW_VIRTUAL_BUTTONS to control whether PC mouse input can be used for virtual buttons
  • Adds input_radial_sector() to check for radial input, primarily from thumbsticks (thanks @offalynne!)
  • Adds INPUT_FLEXIBLE_ALTERNATE_BINDING_IMPORT to allow for less strict profile import. This is useful to adapt to situations where the number of alternate bindings has changed in production and you need to smoothly convert saved bindings
  • input_check() input_check_pressed() input_check_released() now support the keyword all to check for input across all basic verbs
  • input_source_detect_input() now supports arrays of sources and the keyword all

 

Bug Fixes

  • Fixes compatibility with 2023.1 and later
  • Fixes YYC compile errors
  • Fixes crash where Steam returns invalid data when offline

 

Other Changes

  • Added a new example for drop-in/drop-out multiplayer to the repo project. Please see rm_example_drop_in_gameplay
  • Deprecated functions from v4 have been removed
  • Updates config macro validator. You may encounter some errors when updating as a result where previously permitted macro values are now reported (correctly) as unsupported
  • Moved some of the less used macros to an internal script file to avoid cluttering config scripts
  • INPUT_FALLBACK_PROFILE_BEHAVIOUR has been renamed to INPUT_FALLBACK_PROFILE_BEHAVIOR

5.4.0

28 Jan 11:40
Compare
Choose a tag to compare

This release requires GameMaker 2022 LTS or later. If you're looking for a version of Input that works on older versions, please use version 5.2.1. Please note that we will not be supporting 5.2.1 long-term and you should update your version of GameMaker to 2022 LTS as soon as possible to keep up with new versions of Input.

 

New Features

  • Updates gamepad database, improving support for many gamepads including Stadia over Bluetooth
  • Cursor position getters can now return values from a specific coordinate system
  • Adds INPUT_FALLBACK_PROFILE_BEHAVIOUR to control what type of binding is returned by input_binding_get() and the player has no profile set
  • Simplifies icon config by removing "gamepad fallback" and instead using icons relevant to the OS

 

Bug Fixes

  • Steam Deck is now properly recognised when running Windows
  • Better support for Steamworks, including improvements to compatibility with Proton, and device-handling
  • Preventing resting gamepad axes triggering hotswap on window focus change
  • Fixes a crash on HTML5
  • Fixes in-built platformer example
  • Fixes input_cursor_elastic_set() moving the cursor position itself

5.3.1

26 Dec 11:53
Compare
Choose a tag to compare

This release requires GameMaker 2022 LTS or later. If you're looking for a version of Input that works on older versions, please use version 5.2.1. Please note that we will not be supporting 5.2.1 long-term and you should update your version of GameMaker to 2022 LTS as soon as possible to keep up with new versions of Input.

 

New Features:

  • Adds input_cursor_previous_x() and input_cursor_previous_y()
  • Adds support for Xbox Series X/S share button
  • Adds support for unmapped gamepads on Mac

 

Bug Fixes:

  • Fixes crash when running using Steam Input and the player's Steam ID is invalid
  • Improves gyro support in MIXED and MULTI source modes
  • Fixes gamepads registering input when out of focus on MacOS and Linux
  • Fixes mouse wheel down binding-related crash
  • Adds alternative GUID lookup fallback for description-encoded GUIDs
  • Fixes analogue trigger and digital trigger bindings incorrectly not colliding, leading to safe binding setter to fail
  • Tidies up binding confirmation debug messages

5.3.0

13 Nov 07:25
Compare
Choose a tag to compare

This release requires GameMaker 2022 LTS or later. If you're looking for a version of Input that works on older versions, please use version 5.2.1. Please note that we will not be supporting 5.2.1 long-term and you should update your version of GameMaker to 2022 LTS as soon as possible to keep up with new versions of Input.

 

This release is authored by @offalynne and @nkrapivin, and tested with the help of @tabularelf and @DragoniteSpam . Nik wrote the Steamworks code, which has been merged into YoYoGames' official Steamworks library, and Alynne implemented Steam Input hooks into Input. It's been a ton of work, executed to a very high standard, and we hope that you and your players enjoy these new features!

New Features:

  • Steamworks support
  • Device colour control via Steam Input and natively on PS4/PS5
  • Trigger effects (e.g. vibration) via Steam Input and natively on PS5
  • Gamepad motion support via Steam Input and natively on Switch/PS4/PS5
  • Basic touchscreen support on Windows to match improved native support in GameMaker
  • Gamepad database update, as per usual!

Bug Fixes:

  • Improved Android type ID for Logitech XInput and 8BitDo gamepads
  • Gamepad mapping fixes for multiple gamepad types
  • Trigger axis correction for PlayStation gamepads and Steam virtual controllers
  • Improved mouse handling on Windows

5.2.1

18 Oct 10:40
Compare
Choose a tag to compare

Documentation for version 5.2 can be found here.

 

New Features:

  • Adds gamepad vibration functionality
  • Adds input_held_time_released()
  • Adds input_check_opposing_pressed()
  • Adds INPUT_MOUSE_ALLOW_SCANNING and INPUT_HOTSWAP_ON_MOUSE_BUTTON macros to control more precisely how mouse input interacts with the library
  • Updates the gamepad database, and adds Steam Deck, Tribute 64, and Atari VCS Classic compatibility
  • Improved support for HID-Nintendo gamepads and third-party JoyCons
  • Adds input_mouse_in_bounds() and input_window_has_focus()
  • Adds input_gamepad_delta() to monitor changes in values between frames
  • input_consume() can now take an array of verbs
  • Adds INPUT_MERGE_CONTROL_KEYS macro to treat left/right control keys as the same key
  • Adds the ability to explicitly ignore or allow certain bindings when scanning with input_binding_scan() - see input_binding_scan_set_params()
  • Adds "quick tap" checker for analogue input (on both thumbsticks and triggers)
  • Adds optional allowAbort parameter to input_multiplayer_params_set()
  • Adds input_cursor_translate() which allows you to move Input's native cursor around

Other Changes:

  • Aborting the .JOIN source mode will now return Input to the previous source mode
  • Renames input_check_repeat_opposing() to input_check_opposing_repeat()
  • Renames __input_config_gamepad_data() to __input_config_external_data()
  • Removes input_gamepad_get_dpad_style(), you will be missed
  • Extended gamepad constants gp_guide, gp_paddle1 etc.) have had their values changed to avoid collisions with native GameMaker constants. No changes should be required, and old saved bindings should automatically self-update when loaded

Bug Fixes:

  • Fixes Input being outfoxed by time_source_pause()
  • Fixes failure to compile in YYC for 2022.6.1
  • Works around Xbox One gamepads on Windows returning incorrect analogue trigger values
  • Fixes crash in input_source_share()
  • Profiles created at runtime are now more stable, especially when exporting/importing
  • Fixes empty bindings not being imported correctly
  • Gamepads that emit continuously faulty data (or you're sitting on them) will not longer trigger hotswap constantly
  • Fixes crash on boot with connected gamepad when starting in mixed/multidevice source mode
  • Improves input_binding_get_icon() error reporting
  • Gamepad detection on desktop has been tweaked to better handle virtual devices in most cases
  • Glitchy gamepads no longer uncontrollably assign themselves in the .JOIN source mode
  • Fixes player index issues when using input_player_swap()
  • Fixes support for SteelSeries Nimbus+, Mayflash N64, and HuiJia gamepads

5.2.0 Beta 3

28 Sep 09:47
Compare
Choose a tag to compare
5.2.0 Beta 3 Pre-release
Pre-release
5.2.0b3

Merge branch 'dev'

5.2.0 beta 2

25 Sep 20:59
Compare
Choose a tag to compare
5.2.0 beta 2 Pre-release
Pre-release
5.2.0b2

5.2.0 beta 2

5.2.0 Beta 1

09 Sep 11:25
Compare
Choose a tag to compare
5.2.0 Beta 1 Pre-release
Pre-release
5.2.0b1

5.2.0 beta 1