RetroPie forum home
    • Recent
    • Tags
    • Popular
    • Home
    • Docs
    • Register
    • Login
    Please do not post a support request without first reading and following the advice in https://retropie.org.uk/forum/topic/3/read-this-first

    ScummVM lag with joystick control

    Scheduled Pinned Locked Moved Help and Support
    45 Posts 16 Posters 20.2k Views
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • OneSwitchO
      OneSwitch
      last edited by

      I'm also having this lagging problem with joystick output. I'm guessing mapping the Xbox driver to act as a mouse would interfere with all the other emulators installed on RetroPie, as clever a get around as it is?

      There's an additional problem I'm having with Zork: Grand Inquisitor, in that I'd like to be able to access it via a joypad type controller (Xbox 360/PS3 standard) - but I can't exit the game. Some Scumm games allow you to pull up a ScummVM menu (e.g. Monkey Island - using the RB button). This allows you to quit the game. Zork doesn't have this.

      Is this more something to post on the ScummVM forums I suppose?

      Would be great to see a virtual keyboard be introduced to this too.

      mediamogulM 1 Reply Last reply Reply Quote 0
      • mediamogulM
        mediamogul Global Moderator @OneSwitch
        last edited by mediamogul

        @OneSwitch said in ScummVM lag with joystick control:

        I'm guessing mapping the Xbox driver to act as a mouse would interfere with all the other emulators

        Using a modifier button as seen in the above example is one way around that. However, that means that you constantly need to be pressing a button to use the mouse. I mainly use that configuration for Amiga, Macintosh and DOS games, as they only need the occasional mouse input. Anyone aiming to use a single set of gamepad controls throughout all the emulators included with RetroPie will never find a perfect all-in-one solution. I've settled on a series of scripts that I launch from the Emulation Station menu that reconfigure my controller to whatever scenario I need. When I want to play ScummVM games, I select and launch a script that maps mouse movements to the left thumbstick as it's primary action. When I'm done, I simply launch my main configuration for general use.

        There is also a way to have a controller configuration of this kind automatically launch and exit alongside the chosen emulator. To do that, you would map your controller in the same way that is shown in the steam link above, adding only a path to the desired emulator as the last argument to xboxdrv. The description below details how to accomplish this automatic mapping in a shell script. However, the same command would rather be added to an emulator's launch command in RetroPie in order to launch and exit the mapping when a game is selected for play. After that's configured once, the end user would never know anything was happening other than the desired control scheme would "just work" and the original control scheme would return when the emulator exits, making it a completely transparent solution.

        From: http://pingus.seul.org/~grumbel/xboxdrv/xboxdrv.html

        When you want full game specific configurability and automatic launching of xboxdrv, it is easiest to write little startup scripts for your games that will launch xboxdrv, launch your game and then when the game is finished tear down xboxdrv:

        #!/bin/sh
        
        exec xboxdrv \
          --trigger-as-button -s \
          -- \
          your_favorite_game
        
        # EOF #
        

        Here your_favorite_game is the executable of your game and is passed to xboxdrv as last argument. This will cause xboxdrv to start the game and keep running as long as the game is running, when the game is done, xboxdrv will quit automatically.

        If you want to pass parameters to the game you have to add a -- separator, as otherwise your options to the game would be eaten up by xboxdrv.

        RetroPie v4.5 • RPi3 Model B • 5.1V 2.5A PSU • 16GB SanDisk microSD • 512GB External Drive

        1 Reply Last reply Reply Quote 2
        • OneSwitchO
          OneSwitch
          last edited by

          Thanks for all this. I like the idea of a script kicking in to make ScummVM smooth and accessible via a joypad controller (with a few additional key-commands available too), then releasing control upon exit. I'll give this a go ASAP. Thank you. This might especially be useful as Zork Grand Inquisitor has no joypad method to exit the game.

          mediamogulM 1 Reply Last reply Reply Quote 0
          • mediamogulM
            mediamogul Global Moderator @OneSwitch
            last edited by mediamogul

            @OneSwitch said in ScummVM lag with joystick control:

            with a few additional key-commands available too

            Yeah, I forgot to mention that my ScummVM mapping also includes left and right mouse clicks as buttons 'A' and 'B', along with 'F5' being mapped to the start button to bring up the options menu. It's a very comfortable setup and makes playing these games from a controller feel much more natural.

            This might especially be useful as Zork Grand Inquisitor has no joypad method to exit the game.

            That's a great idea and should work well.

            RetroPie v4.5 • RPi3 Model B • 5.1V 2.5A PSU • 16GB SanDisk microSD • 512GB External Drive

            1 Reply Last reply Reply Quote 1
            • DominusD
              Dominus
              last edited by

              Has anyone figured out just a quick fix for this? On my Pi 2 everything ran perfect with ScummVM, but now with a Pi 3 and 4.0, the 360 controller lags horribly for this, and makes point and click games (with the controller) unbearable! I don't want to go about mapping things, as I'm making this for my younger brother and I don't want him to have to worry about fixing it or changing it if he wants to play other games and no mouse/keyboard either would be nice, just wireless 360 controllers.

              S 1 Reply Last reply Reply Quote 0
              • S
                Sevik @Dominus
                last edited by

                @Dominus said in ScummVM lag with joystick control:

                Has anyone figured out just a quick fix for this? On my Pi 2 everything ran perfect with ScummVM, but now with a Pi 3 and 4.0, the 360 controller lags horribly for this, and makes point and click games (with the controller) unbearable! I don't want to go about mapping things, as I'm making this for my younger brother and I don't want him to have to worry about fixing it or changing it if he wants to play other games and no mouse/keyboard either would be nice, just wireless 360 controllers.

                I haven't found an simple solution for this. You said you don't want to use mapping, but I followed the tutorial from @mediamogul and had it working in a bit more than an hour. ScummVm now works perfectly without "fixing and changing" anything. No conflicts with other emulators too.

                Here's the link th the thread:
                https://retropie.org.uk/forum/topic/2861/guide-advanced-controller-mappings

                1 Reply Last reply Reply Quote 0
                • DominusD
                  Dominus
                  last edited by

                  Has anyone tried to just put the old ScummVM onto Pi? Is that even possible? I just don't understand how it can work great with the previous version, now it lags horribly and is unplayable?

                  1 Reply Last reply Reply Quote 0
                  • D
                    dudleydes
                    last edited by

                    @Dominus I copied a ScummVM binary, version 1.7.0, from a previous RetroPie build to replace the latest one, version 1.8.1. I'm using a PS3 controller and version 1.7.0 works fine.

                    In building version 1.7.0, I had edited the code to remap the buttons for the Dualshock so using the old binary just seems the easiest solution for now.

                    DominusD 1 Reply Last reply Reply Quote 0
                    • DominusD
                      Dominus @dudleydes
                      last edited by

                      @dudleydes I use a 360 wireless controller so I should just be able to copy the binary from a previous install, install it and be good?

                      D 1 Reply Last reply Reply Quote 0
                      • D
                        dudleydes @Dominus
                        last edited by

                        @Dominus Yes, you should be. I copied the binary using the sudo cp command. There was no installation as such.

                        I did have an issues with the GUI themes. The Modern (orange and yellow) theme wasn't working, just the Classic (green and black) one. This is easy to fix if you run into the same issue.

                        Download the Modern theme, scummmodern.zip, from the ScummVM github page. Note that this is for version 1.7.0. If you are using a different version, then make sure you choose the appropriate branch.

                        Transfer the zip file to your pi. Launch ScummVM from ES and select Options. In the Paths tab, you can choose the Theme Path (the location of scummmodern.zip) and in the Misc tab, you can choose your theme by pressing the Theme button.

                        DominusD 1 Reply Last reply Reply Quote 0
                        • DominusD
                          Dominus
                          last edited by

                          So I should just be able to copy /opt/retropie/emulators/scummvm/bin/scummvm from an old install and replace it on my current one?

                          1 Reply Last reply Reply Quote 0
                          • DominusD
                            Dominus @dudleydes
                            last edited by Dominus

                            @dudleydes Hmm I tried my above method but it didn't work. Where do I find the binary? or is there more files to copy over?

                            D 1 Reply Last reply Reply Quote 0
                            • D
                              dudleydes @Dominus
                              last edited by

                              @Dominus Strange. I copied the ScummVM binary from the location you mentioned on a previous build to the home directory on the latest build. Then I ran the following command to copy the binary to the correct location:

                              sudo cp scummvm /opt/retropie/emulators/scummvm/bin/scummvm
                              

                              That was it. I ran the +Start ScummVM script and version 1.7.0 launched without issue except for the classic GUI theme being used as outlined above.

                              1 Reply Last reply Reply Quote 0
                              • DominusD
                                Dominus
                                last edited by

                                @herb_fargus Has this been fixed with the 4.1 release? How do I just copy an older version of ScummVM over to a new version of RetroPie?

                                1 Reply Last reply Reply Quote 0
                                • DominusD
                                  Dominus
                                  last edited by

                                  Any help with this yet? :-(

                                  1 Reply Last reply Reply Quote 0
                                  • D
                                    darkav
                                    last edited by

                                    I have the same problem. Any news on this?

                                    1 Reply Last reply Reply Quote 0
                                    • DominusD
                                      Dominus
                                      last edited by

                                      What I did was took all the scummvm folders I could find in an older version. (I think it was the 3.7 image?) Just WinSCP over and copy all of the /opt/retropie/emulators/scummvm files. Save to your desktop and then load up your newest image and replace the files. Pretty sure this will work. I thought there might have been another folder to copy, but I don't think that one mattered. Let me know if it works for you. I just made a new image, so when I have time I'll have to do it again anyway.

                                      D 1 Reply Last reply Reply Quote 0
                                      • D
                                        darkav @Dominus
                                        last edited by

                                        @Dominus Tested with the one in Retropie v3.7 => ScummVM 1.8.1pre
                                        Same issue.
                                        Now i will try with an older version...

                                        1 Reply Last reply Reply Quote 0
                                        • D
                                          darkav
                                          last edited by

                                          OK, with SCUMMVM 1.7.0 works. Can be taken from Retropie v3.6.

                                          DominusD 1 Reply Last reply Reply Quote 0
                                          • DominusD
                                            Dominus @darkav
                                            last edited by

                                            @darkav Ok good to know! Maybe eventually they'll just scrap the updated Scumm and go back to the older version? or just fix the problem in future versions.

                                            BuZzB 1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            Contributions to the project are always appreciated, so if you would like to support us with a donation you can do so here.

                                            Hosting provided by Mythic-Beasts. See the Hosting Information page for more information.