RetroPie forum home
    • Recent
    • Tags
    • Popular
    • Home
    • Docs
    • Register
    • Login

    Suggestions for ports #2

    Scheduled Pinned Locked Moved Ideas and Development
    portsgamesscripts
    367 Posts 26 Posters 126.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.
    • S
      sleve_mcdichael @ExarKunIv
      last edited by

      @ExarKunIv does it need xorg for something? I had it running without, though I didn't play for more than a couple minutes so there's a good chance I might have missed something.

      quicksilverQ 1 Reply Last reply Reply Quote 0
      • quicksilverQ
        quicksilver @sleve_mcdichael
        last edited by quicksilver

        @sleve_mcdichael the two reasons I can think of that you would want to run a game using xorg on a pi 4 running retropie are if the game doesn't scale to the full screen properly without it (some sdl1 programs have this issue with the pi 4) or the program only supports full desktop OpenGL. Looking at the shadow warrior GitHub it looks like it supports OpenGL ES and sdl2 so I wouldn't think XINIT should be needed.

        ExarKunIvE 1 Reply Last reply Reply Quote 0
        • ExarKunIvE
          ExarKunIv @quicksilver
          last edited by

          @quicksilver @sleve_mcdichael
          Yes it supports both. I believe the settings I have for it to conplile is for opengl.

          Or that a what the person that posted those commands said it would do.

          I would have to look for the old post and see if I did add those commands or not in my script.

          But even if I have them in there. Does not mean that it is doing it or not.

          I think I have the same thing with my blood port. I have it set for one but it can be used with or without xinit.

          RPi3B+ / 200GB/ RetroPie v4.5.14, RPi4 Model B 4gb / 256gb / RetroPie 4.8.2
          RPi5 4gb / 512gb / RetroPie 4.8.9 -Basic
          Maintainer of RetroPie-Extra .

          S 1 Reply Last reply Reply Quote 0
          • S
            sleve_mcdichael @ExarKunIv
            last edited by

            @ExarKunIv said in Suggestions for ports #2:

            but it can be used with or without xinit.

            If it works fine without, then we should do without, yeah? Why install/use an additional software that isn't necessary? If it doesn't serve an identifiable purpose, I say cut it.

            1 Reply Last reply Reply Quote 0
            • S
              sleve_mcdichael
              last edited by sleve_mcdichael

              https://github.com/Exarkuniv/RetroPie-Extra/pull/42/files

              I want to remove the timidity and freepats dependencies too, but I need to do some more testing. Does anybody have MIDI bgm (not OGG) working, in any configuration?

              S 1 Reply Last reply Reply Quote 0
              • N
                NIGHTKILLER05
                last edited by

                Hi guys !

                I have a small issue with your excellent port of Hexen II Hammer of Tyirion, I followed the instructions to add the retropie extra packages (instructions found at https://github.com/Exarkuniv/RetroPie-Extra), and then installed hexen 2 I found at "Retropie-setup > Manage Packages > Manage Experimental Packages > hexen2", rebooted the system, and when I try to play the demo the game shows in a tiny window. Inside the game in "options > video mode" I can only select resolution up to 1280x1024, that makes the game fills the entire height of the screen, but only half of the screen's width:

                Hexen2.jpg

                After that, I uninstall the port and followed the instructions of this post to install Hexen 2 with something called "dispmanx" (I don't have a clue of what is that, some sort of "video trick" I think) , the instructions says that I need to "add dispmanx to the rp_module_flags="" in the hexen.sh scriptmodule that was downloaded" , I found that script at "/home/pi/RetroPie-Setup/scriptmodules/ports/hexen2.sh". I did it:

                Captura de pantalla 2022-03-13 095723.jpg

                Then I reinstall the port, but the instructions says that I need to go to "settings > Retropie-Setup > Configuration / Tools > Dispmanx " an enable that "Dispmanx" for Hexen2, and I don't have that Dispmanx option in any menu.

                Please help, I love Hexen game series (of 2) !!!!

                mituM 1 Reply Last reply Reply Quote 0
                • mituM
                  mitu Global Moderator @NIGHTKILLER05
                  last edited by

                  @NIGHTKILLER05 said in Suggestions for ports #2:

                  Then I reinstall the port, but the instructions says that I need to go to "settings > Retropie-Setup > Configuration / Tools > Dispmanx " an enable that "Dispmanx" for Hexen2, and I don't have that Dispmanx option in any menu.

                  The dispmanx configuration entry has been moved to the backends config entry, from there you can choose which emulator will run with dispmanx enabled.

                  1 Reply Last reply Reply Quote 1
                  • N
                    NIGHTKILLER05
                    last edited by

                    Thank you man, worked like a charm !!

                    D 1 Reply Last reply Reply Quote 0
                    • D
                      Drdave79 @NIGHTKILLER05
                      last edited by

                      This post is deleted!
                      1 Reply Last reply Reply Quote 0
                      • D
                        Drdave79 @Drdave79
                        last edited by

                        @sleve_mcdichael Do you have any suggestions for slowing the turning speed for Shadow Warrior? It's so damn fast. I went into the sw.cfg file and changed the JoystickAnalogScale(s) to 32767 as another post suggested, but it's still so quick, it's tough to play. Thank you.

                        S 1 Reply Last reply Reply Quote 0
                        • S
                          sleve_mcdichael @Drdave79
                          last edited by sleve_mcdichael

                          @Drdave79 I've noticed that too but haven't experimented past that same fix yet. I'm not sure but we could try turning down the Scale value even further, and/or maybe messing with the Saturate values.

                          You could try adjusting them in-game and see if that gets you anywhere, or see this post regarding eduke32 (another build engine port, so may or may not be relevant) which suggests some useful values must be set manually via config.

                          D 1 Reply Last reply Reply Quote 0
                          • S
                            sleve_mcdichael @sleve_mcdichael
                            last edited by sleve_mcdichael

                            @sleve_mcdichael said in Suggestions for ports #2:

                            I want to remove the timidity and freepats dependencies too, but I need to do some more testing. Does anybody have MIDI bgm (not OGG) working, in any configuration?

                            With help from JonoF I did get the MIDI working. It requires:

                            • apt install libfluidsynth-dev -- timidity and freepats were not required;

                            • modify sw.cfg -- FluidSynth tries to use the JACK output driver by default. We need to change this with:

                            [Sound Setup]
                            MusicParams = "audio.driver=alsa"
                            
                            • ...and finally, you have to use the shareware version game data. The registered version doesn't even have MIDI in the .grp file (presumably because you're meant to just play with the CD in), only the shareware version does.

                            With that in mind, it may not be worth installing the extra package and futzing with the config, only to have music in the not even full version (which is free, and has the HQ music anyway.) But if you want it, that's how.

                            1 Reply Last reply Reply Quote 1
                            • ExarKunIvE ExarKunIv referenced this topic on
                            • D
                              Drdave79 @sleve_mcdichael
                              last edited by

                              @sleve_mcdichael Thanks. I tried the one from the second post. Slightly better but still too quick. May have to mess with those numbers some more.

                              S 1 Reply Last reply Reply Quote 0
                              • S
                                sleve_mcdichael @Drdave79
                                last edited by sleve_mcdichael

                                @Drdave79 it looks like the sliders go from 0-2 in-game which corresponds to values of 0-131072 in the config ("1" = 65536, "0.5" = 32768, etc).

                                These settings are working well for me...first I set controls to "modern default" and then adjust the "scale" sliders:

                                LeftX (strafing) 1.5 (98304)
                                LeftY (moving) 2 (131072)
                                RightX (turning) 0.25 (16384)
                                RightY (looking up and down) 0.25 (16384)

                                I didn't touch the "dead" or "saturate" values, just the "scale."

                                I'm not sure if the strafing and moving values are "optimal"; I didn't really have issue with them except at very low values, when movement slowed to a crawl. There's also a "run" function that can be mapped to a button that didn't seem to do anything but maybe if I set it to where the "regular" movement is less than full-speed, it might change that?

                                0.25 does seem good for the turning and looking axes though, for me. 0.13 was a little sluggish and 0.38 was still pretty quick. Of course you could set values in between those, if you edit the config manually.

                                D S 2 Replies Last reply Reply Quote 0
                                • D
                                  Drdave79 @sleve_mcdichael
                                  last edited by

                                  @sleve_mcdichael Thanks for the follow-up advice. I found turning leftx down to .25 and turning worked pretty well. Overall it's running pretty smooth now!

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

                                    @sleve_mcdichael said in Suggestions for ports #2:

                                    There's also a "run" function that can be mapped to a button that didn't seem to do anything but maybe if I set it to where the "regular" movement is less than full-speed, it might change that?

                                    I played with this some more. Values above "1" don't seem to do anything; values below "1" do reduce your top speed but "run" still isn't doing anything? I thought maybe like "0.75" would let you walk slower but still go up to full "1" speed when running, but that doesn't seem to be the case. Let us know if you make any progress here.

                                    1 Reply Last reply Reply Quote 0
                                    • J
                                      Jste84
                                      last edited by

                                      I'm interested in trying fofix, the script seems to work but when I launch the game from the ports menu, I get a black screen and then it goes back to the ports menu.

                                      Am I missing a step?

                                      S 2 Replies Last reply Reply Quote 0
                                      • S
                                        sleve_mcdichael @Jste84
                                        last edited by sleve_mcdichael

                                        Edit:
                                        actually I've just tried to sudo apt install fofix and it came back "has no installation candidate." I'm not sure this works as-is? There's a git repo: https://github.com/fofix/fofix

                                        Edit edit:
                                        https://fofix.readthedocs.io/en/latest/quickstart/installation.html

                                        Says there are apt repositories for Debian 8 and 9 but not 10, so I don't think this is going to work with an aptInstall anymore.

                                        Original post:
                                        @Jste84 What hardware are you on? I see FoFiX is using the same glshim that was in SuperTuxKart:

                                        https://retropie.org.uk/forum/post/273988 says it's not needed on Pi4. I haven't installed this but here's something you could try if you're on that:

                                        In file:

                                        /opt/retropie/configs/ports/fofix/emulators.cfg
                                        

                                        It should look something like:

                                        fofix = "LD_LIBRARY_PATH=/opt/retropie/supplementary/glshim LIBGL_FB=1 xinit fofix"
                                        default = "fofix"
                                        

                                        Edit the file and change the first line so it reads simply:

                                        fofix = "XINIT:fofix"
                                        

                                        Let us know if this helps.

                                        1 Reply Last reply Reply Quote 0
                                        • S
                                          sleve_mcdichael @Jste84
                                          last edited by

                                          @Jste84 I haven't tested this yet, but it should replicate the steps outlined in:

                                          https://github.com/fofix/fofix/blob/master/doc/source/quickstart/Linux_Setup_Guide.md

                                          ...with some educated guesses in re: the md_ret_files and # symlink config dirs functions.

                                          Make a backup, first. It wants to install pip from an external source (https://bootstrap.pypa.io/pip/2.7/get-pip.py -- seems legit, I guess? See also: https://github.com/pypa/get-pip#readme) and then use it to install some additional packages; also it wants to remove package libjack-jackd2-0 and replace with libjack0 as a dependency required to to install portaudio19-dev.

                                          I haven't tested because I have no interest in playing this with a keyboard, and the GH controller I thought was in the back of my closet turned out to be for PlayStation (so, not USB), so I'm going to leave my system as-is. Let us know if it works for you, though, and I'll submit a PR; in any case, we should probably remove the old script, as it doesn't do anything useful (it builds glshim that isn't needed, and then it attempts to install a package that doesn't exist and configure a port that wasn't installed.)

                                          To use, paste this code into your ~/RetroPie-Setup/ext/RetroPie-Extra/scriptmodules/ports/fofix.sh file, replacing all of its existing contents, and then reinstall fofix through RetroPie-Setup.

                                          #!/usr/bin/env bash
                                          
                                          # This file is part of The RetroPie Project
                                          #
                                          # The RetroPie Project is the legal property of its developers, whose names are
                                          # too numerous to list here. Please refer to the COPYRIGHT.md file distributed with this source.
                                          #
                                          # See the LICENSE.md file at the top-level directory of this distribution and
                                          # at https://raw.githubusercontent.com/RetroPie/RetroPie-Setup/master/LICENSE.md
                                          #
                                          
                                          rp_module_id="fofix"
                                          rp_module_desc="Frets on Fire X - Guitar Hero and Rock Band clone"
                                          rp_module_licence="GPL2 https://raw.githubusercontent.com/fofix/fofix/master/COPYING"
                                          rp_module_repo="git https://github.com/fofix/fofix.git"
                                          rp_module_section="exp"
                                          rp_module_flags="noinstclean !mali !x86"
                                          
                                          function depends_fofix() {
                                              getDepends python2 libglu1-mesa-dev freeglut3-dev mesa-common-dev ffmpeg pkg-config libogg-dev libportmidi-dev libsdl-image1.2-dev libsdl-mixer1.2-dev libsdl-ttf2.0-dev libsdl1.2-dev libsoundtouch-dev libswscale-dev libtheora-dev libvorbis-dev mesa-utils portaudio19-dev python-dev gettext xorg
                                          
                                              # install pip and packages
                                              local tmpdir="$(mktemp -d)"
                                              local url="https://bootstrap.pypa.io/pip/2.7/get-pip.py"
                                              local file="${url##*/}
                                          
                                              download "$url" "$tmpdir"
                                              python2 "$tmpdir/$file"
                                              rm -rf "$tmpdir"
                                          
                                              pip2 install - numpy
                                              pip2 install --upgrade cython
                                              pip2 install PyOpenGL PyOpenGL_accelerate
                                          }
                                          
                                          function sources_fofix() {
                                              gitPullOrClone
                                          }
                                          
                                          function build_fofix() {
                                              python setup.py build_ext --inplace --force
                                              python setup.py msgfmt
                                              pip install -r requirements.txt
                                          
                                              # ensure build completed
                                              md_ret_require="$md_build/build"
                                          }
                                          
                                          function install_fofix() {
                                              md_ret_files=(
                                                  'fofix'
                                                  'data'
                                                  'FoFiX.py'
                                              )
                                          }
                                          
                                          function configure_fofix() {
                                              local script="$md_inst/$md_id.sh"
                                              local file="$md_inst/FoFiX.py"
                                          
                                              addPort "$md_id" "fofix" "FoFiX - Guitar Hero and Rock Band clone" "XINIT:$script"
                                              moveConfigDir "$home/.fofix" "$md_conf_root/$md_id"
                                              [[ "$md_mode" == "remove" ]] && return
                                          
                                              # chown install dir -- may not be necessary?
                                              #chown -R $user:$user "$md_inst"
                                          
                                              # symlink config dirs
                                              local dir
                                              for dir in mods shaders songs themes tutorials users; do
                                                  moveConfigDir "$md_inst/data/$dir" "$md_conf_root/$md_id/$dir"
                                              done
                                          
                                              cat > "$script" << _EOF_
                                          #!/bin/bash
                                          python "$file"
                                          _EOF_
                                              chmod +x "$script"
                                          }
                                          

                                          ...if it installs but doesn't play (or if it plays but doesn't save, or crashes), try removing the # from line #chown -R $user:$user "$md_inst", and install again. This will make the install directory user-owned instead of admin, allowing files to be written to here by the normal user when the game is running.

                                          1 Reply Last reply Reply Quote 0
                                          • S
                                            sleve_mcdichael
                                            last edited by sleve_mcdichael

                                            Got one for the "unstable" repo. It works, but requires a keyboard.

                                            "Chopper Commando Revisited" is a port for modern systems of the 1990 (1988? Sources differ) DOS game "Chopper Commando" (CHOPPER2.EXE), written by at-the-time 15-year-old Mark Currie while learning to program and ported to SDL2 by Jason McSweeney (loadzero), with additional work by Harvey Patterson.

                                            B85FD5B8-B10D-40EC-9D33-4AA2BC2A8276.jpeg

                                            Get the scriptmodule at https://raw.githubusercontent.com/Exarkuniv/RetroPie-Extra-unstable/master/scriptmodules/ports/chopper258.sh or in RetroPie-Extra-unstable.

                                            1 Reply Last reply Reply Quote 1
                                            • 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.