[PLUGIN] Input System v0.96b (21/03/2011): Keyb+Mouse+Joy

This forum is currently in read-only mode.
  • For mouse and cursor it's the same as Construct but with directX instead of Win32, and with more actions, conditions and expressions than Construct.

  • For mouse and cursor it's the same as Construct but with directX instead of Win32, and with more actions, conditions and expressions than Construct.

    Thanks for the reply and the plugin.

  • Also, you can customise controls in runtime

  • omg what have I missed Oo oh I can try the force feedback tomorrow probably if needed

  • Hi again, I�ve found another bug.

    The bug appears to be with assigning the last button on a joy-pad.

    Say you have a generic pad with 12 buttons and a Xbox360 pad with 10 buttons.

    Set 14 buttons to be detected.

    The last button (12 on the generic pad and 10 on the Xbox360 pad) will be assigned to the last button to be detected 14. When it should be 12 on the generic pad and 10 on the xbox360 pad.

    If you use InputSystem.GetControlString the last button (12 on the generic pad and 10 on the xbox360 pad) will be assigned correctly to 12 and 10. However Button 14 will be used.

    To test this open Input System example 2 and in (start of layout) for �Button1� set the button to 18.

    Run the program.

    You will see that �Button1� InputSystem.GetControlString('Button1�) shows �Joy Button 11� if you have 12 buttons on your controller when �Button1� is really assigned to 18.

    I hope I have explained this well, if you need more information let me know.

  • Try Construct 3

    Develop games in your browser. Powerful, performant & highly capable.

    Try Now Construct 3 users don't see these ads
  • Ok, I will look into it.

  • I've tried what you said but I can't find the bug. Could you explain it in another way and share a cap file?

  • Here is an example .cap file.

    Edit the cap file controls / LastButtonOnController = the last detected button on your physical controller.

    ---------------------------------------------------------------------------------

    The issue is with setting a button for a controller that is higher than the number of buttons on a physical controller.

    My Xbox360 controller has 10 buttons that are detected.

    LastButtonOnController = 10

    Button_21 = 21

    InputSystem.GetControlString("LastButtonOnController", 1) = Joy Button 09

    InputSystem.GetControlString("Button_21", 1) = Joy Button 09

    It should be

    InputSystem.GetControlString("LastButtonOnController", 1) = Joy Button 09

    InputSystem.GetControlString("Button_21", 1) = Joy Button 20

    even if Joy Button 20 isn't on the Physical controller.

    Hope I explained that ok

  • It's on purpose:

    Thank you, I've found and corrected the bug.

    So now, if value is too big, it will take the biggest one (e.g. last button number).

    New release 0.93b ready.

  • Thanks for the quick reply.

    I think that becomes an issue though with games that have more than a few commands.

    If i have a game with these commands:

    Punch = Joy Button 00

    Kick = Joy Button 01

    Shoot = Joy Button 02

    Jump = Joy Button 03

    Shield = Joy Button 04

    GameMenu = Joy Button 05

    If a player uses a controller with 5 buttons then

    Shield = Joy Button 04

    GameMenu = Joy Button 04

    If a player presses Joy Button 04 then both buttons execute.

    If possible it would be nice to have a (Joy Button N/A) then the game can ignore buttons not on the controller, so that

    Shield = Joy Button 04

    GameMenu = Joy Button N/A

    then the game won't execute GameMenu only the Shield.

  • Yes, I think you're right. I will update this.

  • Behavior modified, a new version is available.

  • Thanks, sglorz.

  • Thanks for the quick fix sglorz

    Looks like the problem is fixed, if i spot anything else I'll let you know.

    Great work as always!

  • I have a question about save & load controller setting in Input System3.cap.

    My testing steps are:

    1. push "save" button to save current configure. I can see these configure in the "InputSystem.cfg" file.

    2. delete "InputSystem.cfg" file.

    3. push all clear buttons (Clear Controls, Clear Presets, event Reload pesets).

    4. push "save" button again. A new "InputSystem.cfg" file has been created.

    5. open current "InputSystem.cfg" file. I see two sets of configure. One is previous configure before clear, the other is null.

    The load operation seems to load first set of configure, so that I can't save current configure after push save button first time.

    My question is how to clear previous saved configure? My testing environmet is winXP.

    Thanks

Jump to:
Active Users
There are 1 visitors browsing this topic (0 users and 1 guests)