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

    Suggestions for ports

    Scheduled Pinned Locked Moved Ideas and Development
    portsports retropieideas
    483 Posts 35 Posters 279.5k 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.
    • quicksilverQ
      quicksilver
      last edited by

      So I have been playing around with compiling open source ports of quite a few games. So far I have successfully built on my Pi 4: OpenRCT2 (roller coaster tycoon 2), OpenRA (red alert, C&C, Dune 2k), Dhewm3 (Doom 3), OpenJK (SW Jedi Knight:Jedi Academy), Xash3d (Half-Life), Serious-Engine (Serious Sam first and second encounter), VCMI (Heroes of Might and Magic 3). I can now successfully launch all these games through retropie/runcommand. Most of them I have played quite a bit without any real issues and I feel like some of them are ready for prime time on the pi. I would just need a little help putting together a script module to automate the build process. If anyone has the skills and time to help me with that please let me know and I would be glad to walk anyone through how to build these game engines on the pi.

      ? mituM shavecatS 3 Replies Last reply Reply Quote 3
      • J
        Jste84 @Renard
        last edited by Jste84

        @Renard said in Suggestions for ports:

        UltrastarDX (a karaoke game) is still under active development. A recent bit of code now allows for smooth 1080p video playback on a Pi4 - until now, due to the way the legacy code worked, only SD content was playing smoothly.
        https://github.com/UltraStar-Deluxe/USDX/pull/530

        I'd love the game to be included in Retropie!

        Edit: tested this and it works

        There is a guide in the link for installation

        https://www.sebastian-segerer.de/post/ultrastar-deluxe-raspberry-pi/

        Not sure if it's as simple as running this...

        sudo apt-get install git automake make gcc fpc \
         libsdl2-image-dev libavformat-dev libswscale-dev \
         libsqlite3-dev libfreetype6-dev portaudio19-dev \
         libportmidi-dev liblua5.3-dev libopencv-highgui-dev
        git clone https://github.com/UltraStar-Deluxe/USDX
        cd USDX
        ./autogen.sh
        ./configure
        make
        sudo make install
        
        1 Reply Last reply Reply Quote 0
        • ?
          A Former User @quicksilver
          last edited by A Former User

          @quicksilver I'm working on my own scripts for openjk and RBDOOM3 (Working, script plan on posting it as soon as I get accurate information for the Help variable and a couple other things. Dhewm should be similar. Have you looked at the libretro version of dhewm?

          I will need some help testing. I am running on a x86_64 system and I plan on reading the docs for RPi installs and add the appropriate code to the script.

          For OpenJK I am at the point where it builds, I need to identify all the files that need to be installed (binaries, libraries, etc) in the /opt folder. Also still trying to get the cmake switches right for the romdir in home with the binaries in /opt.

          quicksilverQ 1 Reply Last reply Reply Quote 0
          • quicksilverQ
            quicksilver @A Former User
            last edited by quicksilver

            @gderber said in Suggestions for ports:

            Have you looked at the libretro version of dhewm?

            Unfortunately I found out it's for 64 bit systems only so it wouldn't compile on my pi 4. Dhewm3 pushes my pi 4 to the max (and I'm overclocked), only way to make it playable is at 640x480 and almost all of the quality settings set to lowest. So I'd imagine that dhewm3+retroarch might be a tall order even if it were possible.

            ? 1 Reply Last reply Reply Quote 0
            • ?
              A Former User @quicksilver
              last edited by

              @quicksilver Okay. Dhewm is more useful then.

              For OpenJK what cmake args did you use? Besides the files listed in the build documentation did you need to install anything else into the /opt folder?

              Did you do install Jedi Outcast too or only Jedi Academy?

              quicksilverQ 1 Reply Last reply Reply Quote 0
              • quicksilverQ
                quicksilver @A Former User
                last edited by

                @gderber I only installed jedi academy so far. Jedi outcast is considered WIP and doesnt look like its been touched in a while. I wasnt sure what state it was in, and I am mainly interested in ports that will allow playing all the way through the single player campaign with minimal issues. Ill probably try it out eventually though.

                To make JK:Jedi Academy I first installed dependencies.

                sudo apt-get update && sudo apt-get install libjpeg8-dev libpng12-dev zlib1g-dev freeglut3-dev cmake git libsdl2-dev
                

                Cloned the repository

                git clone https://github.com/JACoders/OpenJK.git jka
                

                and compiled

                cd jka 
                mkdir build
                cd build
                cmake .. -DCMAKE_INSTALL_PREFIX=~/jka/ 
                make -j4
                make install
                

                Then I copied the game files from my windows installation to ~/jka/JediAcademy/

                Then I run the game with

                /home/pi/jka/JediAcademy/openjk_sp.arm
                
                1 Reply Last reply Reply Quote 0
                • mituM
                  mitu Global Moderator @quicksilver
                  last edited by

                  @quicksilver said in Suggestions for ports:

                  If anyone has the skills and time to help me with that please let me know and I would be glad to walk anyone through how to build these game engines on the pi.

                  Fork the RetroPie-Setup on Github and add your ports there, I could review your additions and provide suggestions.

                  ? quicksilverQ 2 Replies Last reply Reply Quote 2
                  • ?
                    A Former User @mitu
                    last edited by A Former User

                    @mitu Do you mind looking at some of mine?
                    Doom3 BFG:
                    https://raw.githubusercontent.com/gderber/RetroPie-Setup/feature/doom3_bfg/scriptmodules/ports/rbdoom3_bfg.sh

                    Patch for wolf4sdl:
                    https://github.com/RetroPie/RetroPie-Setup/pull/3163


                    The following are partially tested. Haven't tried running it yet (I'm on a ssh connection to my retropie system):
                    Gzdoom:
                    https://raw.githubusercontent.com/gderber/RetroPie-Setup/feature/gzdoom/scriptmodules/ports/gzdoom.sh

                    OpenJK (JediAcademy); build / install tested.:
                    https://raw.githubusercontent.com/gderber/RetroPie-Setup/feature/openjk_ja/scriptmodules/ports/openjk_ja.sh

                    ROTT: Updates and bugfixes to ZeroJay's ROTT install script
                    https://raw.githubusercontent.com/gderber/RetroPie-Setup/feature/rott/scriptmodules/ports/rott.sh

                    Decaf-Emu
                    https://raw.githubusercontent.com/gderber/RetroPie-Setup/feature/decaf/scriptmodules/emulators/decaf.sh

                    Dhewm3
                    https://raw.githubusercontent.com/gderber/RetroPie-Setup/feature/dhewm3/scriptmodules/ports/dhewm3.sh

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

                      @mitu I appreciate the offer, as always you are a big help! Now to learn the ins and outs of GitHub. :)

                      And also a little preview of what I have working
                      Doom 3 with classic Doom mod:
                      20200609_110032_copy_2016x1512.jpg

                      Jedi knight -jedi academy running in 1600x1200 resolution:
                      20200609_163022_copy_2016x1512.jpg

                      ExarKunIvE V 2 Replies Last reply Reply Quote 1
                      • ExarKunIvE
                        ExarKunIv @quicksilver
                        last edited by

                        @quicksilver dam those look nice.

                        how well does doom3 play?

                        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 .

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

                          @ExarKunIv it's playable at 640x480 on lowest graphical settings and with my pi 4 overclocked (I'll try without overclock soon just for a comparative baseline). Game runs pretty much fullspeed this way except when there are a lot of lighting effects happening at once, in which case there are noticable frame-rate dips. So far I haven't encountered any game breaking bugs and I feel like the game can be completed. I also have classic doom mod and resurrection of evil expansion running. Only real issue I have encountered is that when launching the game through runcommand and an x session (x is required, otherwise there are game breaking graphical issues), quitting the game closes the game but not the x session so you are left at a black screen. Cntrl-alt-backspace closes the x session so I'm using that as a work around for right now.

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

                            @quicksilver very cool

                            i saw your post about the x session issue. its cool that we can get these working and in the future it will exit smoothly. from my take on what buzz said.

                            im more the happy to wait as long as there is a work around. which there is.

                            great work on all of this. im still on the Pi3 so anything i do it dated and most likely not working on my rig.
                            but hey it all about learning right :)

                            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 .

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

                              @ExarKunIv openjk is running really well on my pi 4 I suspect you could follow my above directions to get it running on your pi 3. I bet it would be playable.

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

                                @quicksilver might give that a try

                                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 .

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

                                  @quicksilver i get a internal compiler error

                                  but im still on 4.5.14 since that is the only version i can get Nblood to work on. so im not surprised about getting errors
                                  im not that worried about it. most of these will wait till i have a Pi4.

                                  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 .

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

                                    @ExarKunIv said in Suggestions for ports:

                                    @quicksilver i get a internal compiler error

                                    It sometimes happens when you're out of memory. Likely un-noticeable on a Pi4 with 2 or 4Gb of RAM.

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

                                      @mitu If thats the case could he just increase the amount of swap?

                                      1 Reply Last reply Reply Quote 0
                                      • mituM
                                        mitu Global Moderator @A Former User
                                        last edited by mitu

                                        @gderber said in Suggestions for ports:

                                        Doom3 BFG:
                                        https://github.com/gderber/RetroPie-Setup/tree/feature/doom3_bfg

                                        Looks good overall.

                                        • Incorrect license header - missing the license type (GPL3). See how other modules are adding it. It's important when generating the package license summary page (https://retropie.org.uk/stats/licences/).
                                        • missing help header (rp_module_help) - should at least indicate where you should copy your game files (.pk4).
                                        • md_ret_requires should be a file, not a folder, indicating the build process has completed succesfully.
                                        • run make clean during the build, so it always starts with a clean build.
                                        • game_data_doom3_bfg doesn't do much, fold it into configure. If the folder should be user writable, use mkUserDir instead of a simple mkdir (remember that the setup script runs as root).
                                        • addPort in configure looks wrong - look up the function definition in helpers.sh or how it's used in other scriptmodules. Last parameter should be the launch command.

                                        https://github.com/gderber/RetroPie-Setup/tree/feature/wolf4sdl

                                        Looks fine, but I don't know this port enough to know if the line removed is ok or not.

                                        General comments for all the .sh files

                                        • use hard tabs for indentation (see the weird spacing in game_data_doom3..)
                                        • don't have 2 empty new lines.
                                        1 Reply Last reply Reply Quote 0
                                        • ?
                                          A Former User
                                          last edited by

                                          @mitu Thank you!

                                          For the Wolf4SDL script, the removed line, I had based that on this comment on the Hexen2 pull request. I changed it back, and the other non-essential change, swapping the order of the if statement checking for the *.sod and *.sdm files. I swapped the order so it'd match the order for the main wolfenstein data files.

                                          In both cases, they are not a requirement for the actual goal of getting a start-up script for a unified SOD launcher. So now a total of 2 lines added, no other changes.

                                          For the rest thank you for looking at them, the feedback helped me a lot with these.

                                          1 Reply Last reply Reply Quote 0
                                          • ?
                                            A Former User
                                            last edited by

                                            All:

                                            My OpenJK script "works for me"

                                            You can find it here:
                                            https://raw.githubusercontent.com/gderber/RetroPie-Setup/feature/openjk_ja/scriptmodules/ports/openjk_ja.sh

                                            If anyone wants to try it, I'd really appreciate the feedback.

                                            quicksilverQ 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.