lagamestudio / inputcandy Goto Github PK
View Code? Open in Web Editor NEWAwesome gamepad support for GameMaker Studio 2 games.
License: MIT License
Awesome gamepad support for GameMaker Studio 2 games.
License: MIT License
In advanced mode, My gamepad can not move the player even though it's detected and recognized. But, if i set my keyboard to IC_none in script IC_Action_ext, my gamepad can move the player. If i set back to IC_wasd or IC_arrow, the player only moved by keyboard, not gamepad.
The strange is, jump and button action works fine with my gamepad and keyboard.
Is it a bug? Ist it intentional? or do i have to find a workaround in my script to get my keyboard and gamepad action movement both work at the same time.
I just recently learning coding so thank you very much for creating this library. I learn a lot on how you code this library thing.
Your guys are truly angel.
Originally #2
Itzariot noted:
"My gamepad can not move the player even though it's detected and recognized. But, if i set my keyboard to IC_none in script IC_Action_ext, my gamepad can move the player. If i set back to IC_wasd or IC_arrow, the player only moved by keyboard, not gamepad."
This specific behavior must be investigated. The previous answer ignored this part of the report.
Push :: Execution Error - Variable Index [0] out of range [0] - -9.settings(100060,0)
at gml_Script_anon____struct___274_New_InputCandy_Private_gml_GlobalScript_InputCandy_165580____struct___274_New_InputCandy_Private_gml_GlobalScript_InputCandy (line 2805) - if ( !__ICI.Is_Valid_Setting(__INPUTCANDY.setup.settings[i]) ) {
############################################################################################
gml_Script_anon____struct___274_New_InputCandy_Private_gml_GlobalScript_InputCandy_165580____struct___274_New_InputCandy_Private_gml_GlobalScript_InputCandy (line 2805)
gml_Script_anon____struct___274_New_InputCandy_Private_gml_GlobalScript_InputCandy_83089____struct___274_New_InputCandy_Private_gml_GlobalScript_InputCandy (line 1401) - __ICI.ActivateSetup();
gml_Script_anon____struct___268_New_InputCandy_gml_GlobalScript_InputCandy_57649____struct___268_New_InputCandy_gml_GlobalScript_InputCandy (line 847) - Step: function () { __ICI.Step(); },
gml_Object_o_InputCandy_Step_0 (line 3) - __IC.Step();
InputCandy needs better docs. They exist on the Wiki, but it's probably better to switch to Doxygen or something similar
While I believe I have already had input from a contributor regarding the thumbstick axis values on Linux versus Windows, there may be some residual issues noticed while working the Atari Modern Controller where values are misinterpreted. For example on Windows, it is centered at 0,0 with -1 +1 along each axis. On Linux, it registers as center 0.5,0.5 where 1 is down and 0 is up, with similar values for left/right.
See Enhancement (here) about how we should add our own profiling schema system to supplement SDLDB for known console controller mappings. We should be able to provide a way to detect and subsequently label axis on controllers we know we want to use, instead of the headache of trying to figure it out each time we make a game. For example, on the Atari Modern Controller, it uses "last axis in the list" instead of the default v/h for the right stick. We should be able to define: what is a stick, which axis does it use.
You should be able to define an entire controller schema from the ground up. Functionality should resemble:
Expect:
{
"name" : "Atari Modern Controller",
"sticks" : [
"left" : { up: { (axis_no), ranges: { linux: {min: 0.5, max: 1.0}, windows: {0, 1.0}, down: (axis_no), left: (axis).... etc }
],
"buttons": [
"X" : IC_button_Y, ....
],
}
I need to double check if this functionality is already available, which brings me to the next issue.
I can imagine scenarios where you want to check the Mouse and Keyboard action signals without checking the gamepad signals, for example as a parallel check to other gamepad controls that are hardwired. See also #4
I've noticed multiple Check* functions seem to be "incomplete" for example CheckAction and CheckActionReleased also aren't doing what they should, or I don't remember how to use them. It's possible they need to be removed or replaced. Case in point I wanted to force an action to trigger only when "Released" using CheckActionRelease but this did not do what was expected. I will file an Issue for this.
Further investigation is needed to determine:
a) What are these functions for
b) How to get them to do what they should
or
c) remove them if not needed / duplicitous
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.