Raw Input
A downloadable extension for Windows
Quick links: Documentation · GM Marketplace page (price of convenience)
Versions: GameMaker 8.1, GM: Studio, GMS2.x, GM2022+
Platforms: Windows, Windows (YYC)
This extension allows you to take input from multiple mice and keyboards! This way you can differentiate between mouse movement and button presses on mice (and/or touchpads) on the same computer, or map controls to same keys on different keyboards, or work with other mouse/keyboard-like devices.
I hope this to be an invaluable tool for anyone making local multiplayer games.
Implementation-wise, this uses Raw Input API (MSDN) along with a bit of helper code by Jake Stookey (link; my changes) for mouse polling, and the usual tricks to get around the GameMaker's extension system limitations.
Status | Released |
Category | Assets |
Rating | Rated 5.0 out of 5 stars (2 total ratings) |
Author | YellowAfterlife |
Tags | GameMaker |
Purchase
In order to download this extension you must purchase it at or above the minimum price of $14.95 USD. You will get access to the following files:
Download demo
Development log
- x64 compatibilityFeb 04, 2023
Comments
Log in with itch.io to leave a comment.
'Twould be good if GameMaker Studio (any version) could use more than two joysticks or gamepads. At least four gamepads can make a multiplayer game.
You can do so by using the
gamepad_
functions - these allow for up to 4 XInput gamepads and up to 8 DirectInput gamepads, 12 total.Has this been tested over Steam Remote Play Together?
to verify if I could detect each persons remote input mouse and keyboard individually?
You could test this by replacing a steam application with the demo from here, but I somewhat doubt that SRPT goes as far as registering virtual keyboards/mice. A tool that I'm currently developing allows to write input adapters to map keyboards/mice to a virtual gamepad.
I added it as a non steam game to my library. but that does not support remote play together. I also tried through parsec but it just gives remote players control of the host mouse. Would be a huge deal if it did work though.
Hi guys, did you check recently? Using it for remote play is also why I'd buy this extension...
ive already bought the extension but it would be absolutely amazing if it could be updated to support multiple mice and keyboards with steam's remote play together, id buy a whole new plugin for that feature.
One of the recent Steamworks SDK versions added a few functions to fetch remote players’ inputs separately, but still they do not simulate Raw Input.
I’ve been working on an extension that automatically wraps majority of Steamworks SDK functions so that calling something esoteric like this doesn’t require messing with C++ - send me an email (and include your GM / Steamworks SDK version numbers) and I’ll get you a copy of it so far.