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

    Hexen II - uHexen II: Hammer of Thyrion source port on RetroPie/Raspbian (Ready for download)

    Scheduled Pinned Locked Moved General Discussion and Gaming
    hexen iihexen 2uhexen iihammer of thyriuhexen2
    67 Posts 13 Posters 23.4k 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.
    • Q
      QuakeGuy
      last edited by

      So here i post my Xboxdrv setup for Hexen2. You can use Xboxdrv to map all the important key- and mouse-bindings to your controller.

      Firstly install Xboxdrv. You find it in Retropie-Setup - Configuration / tools - 842 xboxdrv. Now add the following command to your hexen2.sh

      #!/bin/bash
      
      sudo /opt/retropie/supplementary/xboxdrv/bin/xboxdrv >> /dev/shm/runcommand.log 2>&1 --evdev /dev/input/event0 --config /opt/retropie/configs/all/xboxdrv_hexen2.cfg &
      
      "/opt/retropie/supplementary/runcommand/runcommand.sh" 0 _PORT_ "hexen2" ""
      

      Create the Xboxdrv configuration file xboxdrv_hexen2.cfg in /opt/retropie/configs/all with the following content.

      [xboxdrv]
      silent=true
      deadzone=4000
      deadzone-trigger=15%
      dpad-as-button=true
      trigger-as-button=true
      detach-kernel-driver=true
      #force-feedback=true
      mimic-xpad=true
      
      [evdev-absmap]
      ABS_X=x1
      ABS_Y=y1
      ABS_RX=x2
      ABS_RY=y2
      ABS_HAT0X=dpad_x
      ABS_HAT0Y=dpad_y
      
      [evdev-keymap]
      BTN_SOUTH=a
      BTN_EAST=b
      BTN_NORTH=x
      BTN_WEST=y
      BTN_TL=lb
      BTN_TL2=lt
      BTN_TR=rb
      BTN_TR2=rt
      BTN_SELECT=back
      BTN_START=start
      BTN_MODE=guide
      
      [ui-axismap]
      x1=KEY_LEFTBRACE:KEY_RIGHTBRACE
      y1=KEY_Q:KEY_E
      x2=REL_X:15
      y2=REL_Y:15
      
      [ui-buttonmap]
      a=BTN_LEFT
      b=KEY_LEFTCTRL
      x=KEY_ENTER
      y=KEY_R
      lb=KEY_C
      lt=KEY_A
      rb=KEY_SPACE
      rt=KEY_D
      dl=KEY_LEFT
      dr=KEY_RIGHT
      du=KEY_UP
      dd=KEY_DOWN
      back=KEY_TAB
      start=KEY_ESC
      guide=KEY_PAUSE
      guide+start=exec:/opt/retropie/configs/all/kill_hexen2.sh
      
      # EOF #
      

      Finally also create the script kill_hexen2.sh in the same directory and make it executable.

      #!/bin/sh
      
      sudo killall >> /dev/shm/runcommand.log 2>&1 hexen2
      

      You also need to kill Xboxdrv after each run, so your standard controller is still active in Emulation station. To do this global Xboxdrv task, simply create or append this to file runcommand-onend.sh in the same directory and don't forget to make it executable.

      #!/bin/sh
      
      sudo killall >> /dev/shm/runcommand.log 2>&1 xboxdrv
      

      Xboxdrv tries binding to event0. If u have multiple controller or keyboard and mices connected to your Pie, this event may differ. You can use evtest /dev/input/event[•] for testing.

      Now you can play Hexen2 with your controller only, and even do a instant quit with guide+select.

      As i have experience with quake scripting, i will next post my chasecam-script for Hexen2. You can instantly switch first-person-view with 3rd-person-view with this. This comes in handy as the game plays more like a console game as Tomb Raider.

      tpo1990T ExarKunIvE 2 Replies Last reply Reply Quote 1
      • tpo1990T
        tpo1990 @QuakeGuy
        last edited by tpo1990

        @QuakeGuy Great work. Thanks for helping out. This will surely make it easier for people who only want to play with their controller/gamepad.

        Your experience with quake scripting will surely be beneficial at making more options available for Hexen 2. :-)

        Greetings from Denmark. :-)

        Developer of install scripts for ports such as Hexen 2, Return to Castle Wolfenstein and Caesar III. See my other projects at my profile.

        1 Reply Last reply Reply Quote 0
        • tpo1990T
          tpo1990
          last edited by

          I have now made a completely new scriptmodule for Hexen 2 that will be installed from the RetroPie Setup optional packages. This will make it easy to install and integrate it into our RetroPie installation.

          I have also made a pull request to the master branch of RetroPie-Setup and until that has been approved you can manually clone/download from my fork of RetroPie setup tpo1990/RetroPie-Setup and that will make Hexen2 package a part of RetroPie and installed from optional packages in your RetroPie setup. You can find it under the Download section of this thread.

          Notice: If you already have an Hexen 2 : Hammer of Thyrion port installed on your RetroPie. Please remove/uninstall it first.

          These files/folders need to be removed.

          /home/pi/RetroPie/roms/ports/hexen2/
          home/pi/RetroPie/roms/ports/Hexen II.sh
          /home/pi/.hexen2
          

          Greetings from Denmark. :-)

          Developer of install scripts for ports such as Hexen 2, Return to Castle Wolfenstein and Caesar III. See my other projects at my profile.

          1 Reply Last reply Reply Quote 1
          • tpo1990T
            tpo1990
            last edited by tpo1990

            I forgot to include how to get the scriptmodule.

            Here is the Hexen2 scriptmodule for RetroPie.

            You can get the Hexen2 scriptmodule by this command:

            wget https://raw.githubusercontent.com/tpo1990/Hexen2-RPI/master/hexen2.sh -P /home/pi/RetroPie-Setup/scriptmodules/ports/
            

            This will download the scriptmodule from my fork of RetroPie and place it into the /home/pi/RetroPie-Setup/scriptmodules/ports/

            Once downloaded, go into RetroPie-Setup as usual and into the Experimental section to find "hexen2" and then install.

            Once the game has been installed, it will have been installed with this file hierachy:

            • Game data location: /home/pi/RetroPie/roms/ports/hexen2/data1

            • Runcommand file: /home/pi/RetroPie/roms/ports/Hexen II.sh

            • Config location: /opt/retropie/configs/ports/hexen2

            • Port installation location: /opt/retropie/ports/hexen2

            For registered version, replace the the pak files with pak0.pak, pak1.pak and add strings.txt in the Game data location: /home/pi/RetroPie/roms/ports/hexen2/data1

            Greetings from Denmark. :-)

            Developer of install scripts for ports such as Hexen 2, Return to Castle Wolfenstein and Caesar III. See my other projects at my profile.

            O 1 Reply Last reply Reply Quote 1
            • O
              OldSchool @tpo1990
              last edited by

              @tpo1990 I'm a little lost, if anyone has the time to give me a hand. I've installed Hexen 2 source port and everything runs great; I even got the joystick working with little effort. But I can't for the life of me figure out how to get the Portals of Praevus mission pack to work. I have pak3.pak in the data1 folder, and I also have the "Portals" folder from the version installed on my pc copied into "/home/pi/RetroPie/roms/ports/hexen2" so I have pak3.pak in two different places to be safe.
              I tried creating a .sh file similar to all of my doom source files that says "#!/bin/bash
              "/opt/retropie/supplementary/runcommand/runcommand.sh" 0 PORT "hexen2" "/home/pi/RetroPie/roms/ports/hexen2/Portals/pak3.pak" and during the load screen it'll even say loading pak3.pak, but it always just starts playing Hexen II, and not the mission pack. Does anyone know what I'm doing wrong?

              tpo1990T 1 Reply Last reply Reply Quote 0
              • tpo1990T
                tpo1990 @OldSchool
                last edited by tpo1990

                @OldSchool For the Hexen 2 source port to recognize Portals of Praevus mission pack and getting it to work, the pak3.pak file should be placed only in its own folder "portals" in the hexen2 roms folder and you need to specifiy the .sh file to launch Portal of Pravevus by using the switch "-portals"

                That means it would probably look something like this in the new .sh file.

                "/opt/retropie/supplementary/runcommand/runcommand.sh" 0 PORT "hexen2 -portals"
                

                I hope this helps.

                Greetings from Denmark. :-)

                Developer of install scripts for ports such as Hexen 2, Return to Castle Wolfenstein and Caesar III. See my other projects at my profile.

                O 1 Reply Last reply Reply Quote 1
                • O
                  OldSchool @tpo1990
                  last edited by

                  @tpo1990 Ah, that makes sense. I changed it to "/opt/retropie/supplementary/runcommand/runcommand.sh" 0 PORT "hexen2 -portals" "" but it didn't work. It went to the command line for a second and said no config found for system hexen2 -portals. So I went into the Portals of Praevus folder on my PC install, but there was no config file there either. I started a game of Portals of Praevus hoping the game would then create a config file, which it did. So after closing Portals of Praevus on the PC I transferred the config file into the portals folder on the RetroPie, but I still get the same message of no config file. Maybe it's supposed to be in a different directory than the portals folder? I feel like it's so close, like I'm missing one crucial thing.

                  tpo1990T 1 Reply Last reply Reply Quote 0
                  • Q
                    QuakeGuy
                    last edited by

                    Hi OldSchool. You are using the runcommand tool to start the hexen2-binary, so you have to configure the location of your hexen-binary also. In this case look for the file configs/ports/hexen2/emulator.cfg. The file should point to your hexen2:

                    uhexen2 = "/usr/games/hexen2 %ROM%"
                    default = "uhexen2"
                    

                    Just create it, if the file is missing or start hexen2 without runcommand.

                    My command line for hexen2 is

                    "/opt/retropie/supplementary/runcommand/runcommand.sh" 0 _PORT_ "hexen2" ""
                    

                    and for the misson pack

                    "/opt/retropie/supplementary/runcommand/runcommand.sh" 0 _PORT_ "hexen2" "-portals"
                    
                    O 1 Reply Last reply Reply Quote 1
                    • tpo1990T
                      tpo1990 @OldSchool
                      last edited by tpo1990

                      @OldSchool Yes its probably just a line that you need change in order for the Hexen 2 binary to load the mission pack.

                      The suggestion that @QuakeGuy comes up with seems like a feasible solution to accomplish it.

                      Greetings from Denmark. :-)

                      Developer of install scripts for ports such as Hexen 2, Return to Castle Wolfenstein and Caesar III. See my other projects at my profile.

                      1 Reply Last reply Reply Quote 0
                      • O
                        OldSchool @QuakeGuy
                        last edited by

                        @QuakeGuy @tpo1990

                        My emulator.cfg file says

                        hexen2 = "/opt/retropie/ports/hexen2/hexen2"
                        default = "hexen2"
                        

                        and the Hexen 2 Thyrion Source Port works great, so I'm assuming while the line isn't the exact same as yours is, it functions correctly. But when I use the ssh file with the command line you said to use

                        "/opt/retropie/supplementary/runcommand/runcommand.sh" 0 _PORT_ "hexen2" "-portals"
                        

                        all it does is launch Hexen 2, and not the Portals missions pack. It starts Hexen 2 up great, but it doesn't seem to direct it to load pak3.pak from the portals folder, which is itself inside my hexen2 folder where I believe it is supposed to be. I'm just stumped as to what the problem is, because I've tried all the instructions here. I'm truly lost and maybe it just isn't going to work at the moment.

                        tpo1990T 1 Reply Last reply Reply Quote 0
                        • tpo1990T
                          tpo1990 @OldSchool
                          last edited by tpo1990

                          @OldSchool Use this approach that i did in order to get Portal of Praevus working. This should work 100%.

                          Missionpack - Portal of Praevus
                          First Copy the "portals" folder to /home/pi/RetroPie/roms/ports/hexen2/
                          Copy Hexen II.sh and rename it to Hexen II Mission Pack: Portal of Praevus.sh.
                          Edit Hexen II Mission Pack: Portal of Praevus.sh file with this line:

                          "/opt/retropie/supplementary/runcommand/runcommand.sh" 0 "/opt/retropie/ports/hexen2/hexen2 -portals"
                          

                          Greetings from Denmark. :-)

                          Developer of install scripts for ports such as Hexen 2, Return to Castle Wolfenstein and Caesar III. See my other projects at my profile.

                          O 1 Reply Last reply Reply Quote 0
                          • O
                            OldSchool @tpo1990
                            last edited by

                            @tpo1990

                            I really appreciate the help you've given me. Sadly that didn't work either, which is weird. It still just loads up Hexen 2 like normal. Am I missing a file in the portals folder? I copied over the entire folder from my PC installation, which contains
                            config.cfg
                            default.cfg
                            hexen.rc
                            infolist.txt
                            pak3.pak
                            progs.dat
                            puzzles.txt
                            strings.txt
                            Uninst.isu

                            It's confusing that it won't just direct to pak3.pak, but rather loads up regular Hexen 2 instead. I remember making separate sh files for the Doom sequels, and they all worked fine. Not so much with this I guess.

                            tpo1990T 1 Reply Last reply Reply Quote 0
                            • tpo1990T
                              tpo1990 @OldSchool
                              last edited by

                              @OldSchool Thats weird. The way i do it should work since all it does is using the same method as if you were running hexen2 hammer of thyrion in Windows.

                              In my hexen2 installation i have put the portals folder inside /home/pi/RetroPie/roms/ports/hexen2 folder and not in hexen2/data1/. That means that inside my hexen2 folder i have 2 subfolders named "data1" and "portals"

                              Have you tried to do the same with the portals folder?

                              My portals folder contains these files.
                              default.cfg
                              hexen.rc
                              infolist.txt
                              pak3.pak
                              progs.dat
                              puzzles.txt
                              strings.txt

                              Greetings from Denmark. :-)

                              Developer of install scripts for ports such as Hexen 2, Return to Castle Wolfenstein and Caesar III. See my other projects at my profile.

                              1 Reply Last reply Reply Quote 0
                              • Q
                                QuakeGuy
                                last edited by

                                @OldSchool your emulator.cfg misses something, the %ROM% part. it should look like this:

                                hexen2 = "/opt/retropie/ports/hexen2/hexen2 %ROM%"
                                default = "hexen2"
                                

                                this is for the 2nd "" after your PORT part in the runcommand statement. now

                                "/opt/retropie/supplementary/runcommand/runcommand.sh" 0 _PORT_ "hexen2" "-portals"
                                

                                works.

                                otherwise u can start hexen2 without runcommand. the statement then will look like this

                                /opt/retropie/ports/hexen2/hexen2 -portals
                                

                                my data folders are in /home/pi/.hexen2/data1 -> Hexen 2 and /home/pi/.hexen2/portals -> Portal of Praevus.

                                O P 2 Replies Last reply Reply Quote 0
                                • R
                                  RetroFreak89
                                  last edited by

                                  I dont want to change subject but im in bit clueless...
                                  im about to start for my doom/hexen/heretic pi project but im confused what the best way to go is should i go Raspbian or Retropie also what is doom best performing port??

                                  mituM 1 Reply Last reply Reply Quote -2
                                  • mituM
                                    mitu Global Moderator @RetroFreak89
                                    last edited by

                                    @RetroFreak89 RetroPie is Raspbian on the PI.

                                    R 1 Reply Last reply Reply Quote 0
                                    • R
                                      RetroFreak89 @mitu
                                      last edited by

                                      @mitu huh?? So retropie ES is raspbian??? Well let me put it this way what is best to play these fps ports on ES or raspbian desktop? Or does both give same performance and have the same ports??

                                      mituM 1 Reply Last reply Reply Quote -1
                                      • mituM
                                        mitu Global Moderator @RetroFreak89
                                        last edited by mitu

                                        @RetroFreak89 Please stop hijacking other topics with your questions. You already have a topic opened for it, add your questions there.

                                        R 1 Reply Last reply Reply Quote 0
                                        • R
                                          RetroFreak89 @mitu
                                          last edited by

                                          @mitu said in Hexen II - uHexen II: Hammer of Thyrion source port on RetroPie/Raspbian (Ready for download):

                                          @RetroFreak89 Please stop hijacking other topics with your questions. You already have a topic opened for it, add your questions there.

                                          I do not my topic open for it is about doom im asking you if retropie ES is raspbian or not but whatever because you told me IN THIS TOPIC that it was?? But whatever have it your way, peace...

                                          tpo1990T 1 Reply Last reply Reply Quote 0
                                          • tpo1990T
                                            tpo1990 @RetroFreak89
                                            last edited by

                                            @RetroFreak89 Please ask only questions that are relevant for Hexen 2 in this topic. If you have any other questions then open a new topic instead.

                                            Thank you.

                                            Greetings from Denmark. :-)

                                            Developer of install scripts for ports such as Hexen 2, Return to Castle Wolfenstein and Caesar III. See my other projects at my profile.

                                            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.