Skip to content

Releases: offalynne/Input

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

5.1.2

28 Aug 07:58
Compare
Choose a tag to compare
  • Fixes failure to compile in GMS 2022.6.1
  • Downgrades project version so the base repo is openable in older versions of GM (at least back to 2022.3)

5.1.1

13 Aug 11:22
Compare
Choose a tag to compare
  • Updates SDL2 database
  • input_tick() can now be called freely in the Begin Step event, as was advised in v4 of Input. Doing so will cancel the automatic update so make sure you call input_tick() every frame in a persistent instance
  • Fixes a couple typos in the default icon config
  • Adds support for Switch controller on iOS 16
  • Adds support for Wii Remote and Wii Classic gamepads on Linux
  • Fixes a couple function signatures (thank you @gnysek)
  • Fixes crash when INPUT_MULTIPLAYER_LEAVE_VERB is set to undefined
  • Fixes input_profile_export() returning an invalid value when opting to export a string
  • Works around PlayStation controllers hogging hotswapping due to non-zero values returned by triggers

5.1.0

24 Jul 20:51
Compare
Choose a tag to compare
  • Rebuilds __input_config_icons() to use a fluent interface. This works around two particularly nasty bugs in GameMaker that have gone unaddressed for at least 6 weeks (#371 #410) and we got bored of waiting
  • Adds imported data verification functions: input_system_verify(), input_player_verify(), and input_profile_verify()
  • Fixes empty bindings having no label, leading to invalid return values downstream
  • Fixes crash when importing bindings that contain attached gamepad description data

5.0.7

18 Jul 10:33
Compare
Choose a tag to compare
  • Adds optional availableOnly argument to input_source_detect_input() to filter input. This argument defaults to true, only allowing input from sources that are not assigned to a player
  • Fixes binding scan not waiting for mouse buttons to be released before scanning for input, leading to mouse buttons always being bound
  • Adds input_binding_get_source_type() which returns the source type for a binding
  • Fixes input_binding_set() crashing when used with custom profiles