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

    Unreal Tournament 2004

    Scheduled Pinned Locked Moved Help and Support
    ut2004unrealtournamentbox86ports
    11 Posts 2 Posters 828 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.
    • N
      Nash
      last edited by

      Hello,

      I'm on PiBoy XRS with Pi4B-4gb and Retropie 4.8.6.

      Unreal Tournament 2004 runs fine when launching "ut2004.exe" with Wine, but not at full speed. There is lot of lag on outdoor maps with vehicles.

      I'm trying to launch the linux native version "ut2004-bin" with box86 but there is this error :

      Error: loading needed libs in elf /home/pi/RetroPie/roms/ports/Unreal Tournament 2004/System/ut2004-bin

      I think the native version of UT2004 is not for arm systems but it's the job of box86 to launch it. What i'm missing ?

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

        @Nash said in Unreal Tournament 2004:

        I think the native version of UT2004 is not for arm systems but it's the job of box86 to launch it. What i'm missing ?

        Something like box86 that would translate x86 bytecode to ARM.

        N 1 Reply Last reply Reply Quote 0
        • N
          Nash @mitu
          last edited by

          @mitu

          Box86 lets you run x86 Linux programs (such as games) on non-x86 Linux systems, like ARM (host system needs to be 32bit little-endian).

          Is my Retropie image for Raspberry 32 or 64bits ? How can I know that ?

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

            @Nash said in Unreal Tournament 2004:

            Is my Retropie image for Raspberry 32 or 64bits ? How can I know that ?

            Did you use the RetroPie image for installation ? Then it's a 32bit system. The getconf LONG_BIT will tell you if you're running a 32 or 64 bit system.

            N 2 Replies Last reply Reply Quote 0
            • N
              Nash @mitu
              last edited by

              @mitu
              Yes I used Retropie Image. The command confirms I'm on 32bit.

              1 Reply Last reply Reply Quote 0
              • N
                Nash @mitu
                last edited by

                I have reinstalled box86 following this guide https://pimylifeup.com/raspberry-pi-x86/

                Same error :
                Error: loading needed libs in elf /home/pi/RetroPie/roms/ports/UT2004/System/ut2004-bin

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

                  @Nash said in Unreal Tournament 2004:

                  Same error :
                  Error: loading needed libs in elf /home/pi/RetroPie/roms/ports/UT2004/System/ut2004-bin

                  Are you launching the game via box86 ? It doesn't seem like it.

                  N 1 Reply Last reply Reply Quote 0
                  • N
                    Nash @mitu
                    last edited by

                    @mitu

                    Here is my actual script :

                    if pgrep xboxdrv; then sudo killall -s SIGKILL xboxdrv > /dev/null; fi
                    cd
                    sudo /opt/retropie/supplementary/xboxdrv/bin/xboxdrv \
                    --detach-kernel-driver \
                    --config /home/pi/RetroPie/roms/ports/PiboyXRS_unreal_xboxdrv.cfg \
                    --ui-axismap X1=KEY_Q:KEY_D,Y1=KEY_S:KEY_Z > /dev/null \
                    &
                    cd
                    /home/pi/box86/build/box86 '/home/pi/RetroPie/roms/ports/UT2004/System/ut2004-bin'
                    sleep 10
                    
                    sudo killall -s SIGKILL xboxdrv > /dev/null
                    

                    Before the elf error there is "Box86 with Dynarec v0.3.7 ..."

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

                      @Nash Ok, so it's not working with box86 either.

                      EDIT: maybe the 32bit x86 libraries/packages needed by the UT binary need also to be installed. I'm not familiar with box86, but in this kind of cases maybe you need to add a new arch to dpkg in order to be able to install the dependencies. Is the binary even working on a (modern) PC Linux installation ?

                      N 2 Replies Last reply Reply Quote 0
                      • N
                        Nash @mitu
                        last edited by Nash

                        @mitu
                        ut2004-bin runs fine on my Twister OS on the same Pi4. There is an older version of box86 :

                        Box86 with Dynarec v0.2.1 aa7b620d built on Apr 7 2021 17:38:04

                        But I don't know how to install the same version on my Retropie.

                        Edit :

                        v0.2.1 is missing in the releases lol

                        https://github.com/ptitSeb/box86/releases

                        I will try to build some others versions tomorrow.

                        1 Reply Last reply Reply Quote 0
                        • N
                          Nash @mitu
                          last edited by

                          @mitu It's working perfectly with box86-0.2.2.

                          Here is my script that runs UT2004 natively at full speed on Piboy XRS through EmulationStation with mapped controls. We must go into the UT System folder before launching ut2004.bin to avoid "MissingIni" error.

                          if pgrep xboxdrv; then sudo killall -s SIGKILL xboxdrv > /dev/null; fi
                          cd
                          sudo /opt/retropie/supplementary/xboxdrv/bin/xboxdrv \
                          --detach-kernel-driver \
                          --config /home/pi/RetroPie/roms/ports/PiboyXRS_unreal_xboxdrv.cfg > /dev/null \
                          &
                          cd
                          cd '/home/pi/RetroPie/roms/ports/UT2004/System/'
                          xinit /home/pi/box86-0.2.2/build/box86 'ut2004-bin' > /dev/null 2>&1 
                          sleep 1
                          
                          sudo killall -s SIGKILL xboxdrv > /dev/null
                          

                          The PiboyXRS_unreal_xboxdrv.cfg file :
                          (Should be working with any gamepad with adjustments)

                          [xboxdrv]
                          evdev=/dev/input/event0
                          dpad-as-button=true
                          trigger-as-button=true
                          silent=true
                          deadzone=5000
                          
                          [evdev-absmap]
                          ABS_X=X1
                          ABS_Y=Y1
                          ABS_RX=x2
                          ABS_RY=y2
                          
                          [ui-axismap]
                          
                          x1=KEY_Q:KEY_D
                          y1=KEY_S:KEY_Z
                          
                          x2=REL_X:5
                          y2=REL_Y:-3
                          
                          
                          [evdev-keymap]
                          BTN_SOUTH=b
                          BTN_EAST=a
                          # BTN_C=tr
                          BTN_NORTH=y
                          BTN_WEST=x
                          # BTN_Z=tl
                          BTN_START=guide
                          BTN_SELECT=start
                          BTN_TRIGGER_HAPPY4=dd
                          BTN_TRIGGER_HAPPY3=du
                          BTN_TRIGGER_HAPPY1=dl
                          BTN_TRIGGER_HAPPY2=dr
                          BTN_TR=rb
                          BTN_TL=lb
                          BTN_TR2=rt
                          BTN_TL2=lt
                          BTN_THUMBL=tl
                          BTN_THUMBR=tr
                          
                          [ui-buttonmap]
                          du=KEY_UP
                          dd=KEY_DOWN
                          dl=KEY_LEFT
                          dr=KEY_RIGHT
                          rt=BTN_LEFT
                          lt=BTN_RIGHT
                          tr=KEY_T
                          tl=KEY_R
                          
                          x=KEY_A
                          b=KEY_SPACE
                          y=KEY_1
                          a=KEY_ENTER
                          
                          lb=KEY_F1
                          rb=BTN_RIGHT
                          
                          guide=KEY_M
                          start=KEY_ESC
                          
                          

                          You can adjust some keys in UT controls parameters in game instead modify this .cfg that can be used for ohters FPS games.

                          Thanks for your help.

                          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.