Releases: offalynne/Input
8.0.2
Documentation
Input 8.0.2 supports LTS v2022.0.2.51 and newer
- Adds support for Xbox One S controller
- Adds support for common third party PS3 controllers
- Warning on overriding native
string_split()
Please consider supporting Input on Patreon or tipping on Kofi π€
8.0.1
Documentation
Input 8.0.1 supports LTS v2022.0.2.51 and newer
- Adds support for 8BitDo GameCube Modkit
- Adds support for Hori Steam Controller
- Updates Steam Deck gamepad support
- Updates gamepad data
- More changes since v7
Please consider supporting Input on Patreon or tipping on Kofi π€
From this release forward, Input is accepting sponsor support from library users and will occasionally spotlight contributor projects. Sponsored contributors and spotlight projects are voluntary endorsements and are not paid placements
Community Spotlight
Sandy's Great Escape from contributor Zane is celebrating a birthday on Steam, Google Play, and the App Store. Great on keyboard, mouse, gamepad, and touch π¦
Thanks to Juju for creating the Input library, to TabularElf and the GMKitchen Discord community for ongoing support of this project, and to all Input contributors
8.0.0 Beta
Documentation
Input 8.0.0 Beta supports LTS v2022.0.2.51 and newer
- Removes Combos
- Fixes Wii U GCN vJoy controller support
- Fixes Steam Input gyro scale
- Fixes mouse movement with debug overlay
- Updates community gamepad data
This release includes contribution from @Hmmmpf
7.0.1
Documentation
- Fixes loading unordered environment variable data
- Fixes loading invalid blacklist data
- Fixes XInput on GMRT
- Fixes misc. v7 typos
- Adds support for generic PowerA Nintendo Switch gamepad
- Adds support for native MacOS application focus on Beta
- Adds identification for Steam Deck OLED
- Adds support for 8BitDo 2C gamepads
- Updates gamepad data
7.0.0
Documentation
About this Release
Input has undergone a large semantic change to address an issue with variable scope in GML that has proven problematic for many library users. In short, all variables available through Input's API will be prefixed (eg. type
becomes __type
) to minimize library user exposure to scope-related variable name problems. You can read more in the following issue: #751. All structs returned by Input functions have new member names, as well as exported system, player and profile data.
See all changes since Input 6 for details
Changes since 6.3.1 Beta
- Disable DualSense trigger effects on game end
- Safer Steamworks struct name handling
- Correct F13-24 labels
- Update gamepad data
This release includes contributions from @Hmmmpf, @arzulo, @tabularelf
6.3.1 Beta
Documentation
About this Beta
Input has undergone a large semantic change to address an issue with variable scope in GML that has proven problematic for many library users. In short, all variables available through Input's API will be prefixed (eg. type
becomes __type
) to minimize library user exposure to scope-related variable name problems. You can read more in the following issue: #751. All structs returned by Input functions have new member names, as well as exported system, player and profile data.
This Beta includes updates to binding and verb state classes and many more (thanks @arzulo) .
Other Changes
- Added generic mapping for Xbox controllers on Linux
- Added Windows IME handling
- Improved PlayStation 4 and PlayStation 5 gamepad mappings
- Updated gamepad data
6.3.0 Beta
Documentation
Input 6.3.0 supports LTS v2022.0.2.51 and newer
About this Beta
Input is undergoing a large internal semantic change to address an issue with variable scope in GML that has proven problematic for many library users. In short, all variables available through Input's API will be prefixed (eg. type
becomes __type
) to minimize library user exposure to scope-related variable name problems. You can read more in the following issue: #751
This change touches many corners of the project internally and will be rolled out over several Beta pre-releases before being set to standard.
This Beta includes updates to...
- Gamepad class (private)
- Gamepad mapping class (private, thanks @Hmmmpf)
Other Changes
- Adds warning for supported GM version
- Gamepad mapping corrections
- SDL2 mapping DB load time improvement
6.2.5
Documentation
Input 6.2.5 supports LTS v2022.0.2.51 and newer
Changes since 6.1.5
Removed
INPUT_WINDOWS_TOUCH
macro- PlayStation platform touch source
- Legacy data parsing
Added
- Convenience function
input_players_using_source()
- Convenience function
input_player_disconnect()
(alias forinput_source_clear()
) - Convenience functions
input_player_using_gamepad()
input_player_using_keyboard()
etc. - Virtual button touchpad-type behaviour
.touchpad()
- Virtual button reference point options
.reference_point()
- Virtual button type
.momentary()
- Virtual button single axis types
.hpad()
and.vpad()
- Combo definition method
.ignore()
- Import behaviour macro
INPUT_FLEXIBLE_VERB_IMPORT
- iOS
SystemGestureGate
timeout forINPUT_MOBILE_MOUSE
- Default Touch fallback profiles
- AYN Odin gamepad support
- Backbone One gamepad suport
- Scuf Envision gamepad support
- Steam Deck Linux HID gamepad support
- Retro-bit Saturn Wireless Pro gamepad support
- 2024.4 Android USB hotplugging (gamepad enumeration)
- 2024.4 GML native extended gamepad buttons
Fixed
- Optional profile argument for
input_binding_set_safe()
andinput_binding_swap()
- Typo for
INPUT_ALLOW_ASYMMETRIC_DEFAULT_PROFILES
- Missing AZERTY locales and locale-relative key names
- Directional charge input for combos
- Garbage output from gamepad mapping when disconnecting
- Cursor limit not following moving rooms
- Coordinate space translation and mouse locked delta in room space
- Some misnamed and misbehaving virtual functions
- Steam gamepad related crash
- Missing axis delta support in certain cases
- Pre-calibration output from gamepad axis and dpad on Android
- Debug overlay defaults
- Default profiles being overridden on touch platforms
- OperaGX gamepad features
- 2024.2 crash when ambiguating static and local variables
- 2024.2 crash when directly setting global struct variables from function call
- 2024.4 gamepad index offset on Mac
- GMRT script function format (Note: GMRT currently lacks native gamepad support)
Also...
- Improved gamepad connection, axis calibration, blocklist, and mouse capture
- Simplified gamepad thumbstick and dpad mappings
- Light performance improvements for low-spec devices
- Updated community gamepad data
This release includes contributions from @Hmmmpf, @arzulo, @tabularelf, @ShaunJS attributed individually in 6.2 beta release notes
6.2.4 Beta 4
Hotfix for 6.2.4 Beta
- Corrects thumbstick mapping list
- Corrects dynamic device count expansion
- Adds touch to default fallback profiles
- Corrects Switch platform gamepad count
- Corrects default profiles being overridden on touch platforms
6.2.4 Beta
- Adds Steam Deck controller Linux HID mapping
- Adds
input_player_disconnect()
alias forinput_source_clear()
- Adds Android USB hotplugging (gamepad enumeration) for Runtime 2024.400 (thanks @gnysek, @DragoniteSpam)
- Corrects button index offset for Runtime 2024.400 (thanks @nuevocharrua)
- Corrects AZERTY locales and adds missing key names (thanks @adam-coster)
- Corrects a typo for
INPUT_ALLOW_ASYMMETRIC_DEFAULT_PROFILES
- Improvements for gamepad connection, axis calibration, blocklist, and mouse capture
- Updates community gamepad data