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

    Diablo 1 ported to PI

    Scheduled Pinned Locked Moved Ideas and Development
    ports retropiediablo
    70 Posts 15 Posters 11.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.
    • Z
      zerojay @roslof
      last edited by

      @roslof said in Diablo 1 ported to PI:

      @ecto said in Diablo 1 ported to PI:

      @roslof I, too had the same problems. I looked into the runcommand.log and found that the ttf was expected in the /usr/share/fonts/ttf/ folder. So I copied the font from the /opt/retropie/ports/devilutionx/ folder over and then at least the error message was readable. I then reinstalled devilutionx from source and I could start the the game without further issues.

      Oh that's interesting! How did you get devilutionx to output verbose logs to runcommand.log? By default, I do see output about the controller and such, but nothing regarding the font showed up for me, and I was unable to find command-line options for this.

      Excited to try what you suggest! Can't want to play the updated version with all the fixes and enhancements.

      @zerojay would you confirm if you have a copy of the font sitting in a /usr/share/fonts/ttf/ folder? If you do, that would explain why your script is working well for you.

      /usr/share/fonts/ttf/ doesn't exist. Running a search of all ttf files in /usr/share/fonts/ shows the game's font does not exist there at all. It is only in /opt/retropie/ports/devilutionx/ and that's where you should have it too.

      function install_devilutionx() {
      md_ret_files=(
      'build/devilutionx'
      'build/CharisSILB.ttf'
      )
      }

      roslofR 1 Reply Last reply Reply Quote 0
      • roslofR
        roslof @zerojay
        last edited by roslof

        @zerojay said in Diablo 1 ported to PI:

        @roslof said in Diablo 1 ported to PI:

        @ecto said in Diablo 1 ported to PI:

        @roslof I, too had the same problems. I looked into the runcommand.log and found that the ttf was expected in the /usr/share/fonts/ttf/ folder. So I copied the font from the /opt/retropie/ports/devilutionx/ folder over and then at least the error message was readable. I then reinstalled devilutionx from source and I could start the the game without further issues.

        Oh that's interesting! How did you get devilutionx to output verbose logs to runcommand.log? By default, I do see output about the controller and such, but nothing regarding the font showed up for me, and I was unable to find command-line options for this.

        Excited to try what you suggest! Can't want to play the updated version with all the fixes and enhancements.

        @zerojay would you confirm if you have a copy of the font sitting in a /usr/share/fonts/ttf/ folder? If you do, that would explain why your script is working well for you.

        /usr/share/fonts/ttf/ doesn't exist. Running a search of all ttf files in /usr/share/fonts/ shows the game's font does not exist there at all. It is only in /opt/retropie/ports/devilutionx/ and that's where you should have it too.

        function install_devilutionx() {
        md_ret_files=(
        'build/devilutionx'
        'build/CharisSILB.ttf'
        )
        }

        Based on @ecto 's recommendation, I created the ttf folder and copied the font. I ran the script -- and for the first time, I'm able to compile play the new version. Would love to better understand why.

        EDIT: In DevilutionX source, I do see reference to /usr/share/fonts/truetype (truetype and not 'ttf'). So to get further, I moved the font from the ttf folder I credted into the existing truetype and now EVERYTHING works, including the credits roll. Finally...

        Here are the source files referencing /usr/share/fonts/truetype:

        devilutionX-master\Packaging\debian\rules:
        install -pdm755 debian/devilutionx/usr/share/fonts/truetype/
        
        devilutionX-master\SourceX\DiabloUI\fonts.cpp:
        ttf_font_path = "/usr/share/fonts/truetype/" TTF_FONT_NAME;
        

        @zerojay for the record you're completely correct about the font being installed next to the executable and such. Not sure why the game is not finding it there for both me and @ecto.

        Z ectoE 2 Replies Last reply Reply Quote 0
        • Z
          zerojay @roslof
          last edited by

          This post is deleted!
          1 Reply Last reply Reply Quote 0
          • ectoE
            ecto @roslof
            last edited by

            @roslof Uh, yeah, about that, sorry! It was late yesterday evening and I typed from mind. it is of course /usr/share/fonts/truetype/and not /usr/share/fonts/ttf/ I just quickly checked that on my retropie.

            Glad, it works for you now.

            1 Reply Last reply Reply Quote 1
            • A
              AdamBeGood
              last edited by

              Disclaimer: noob trying to get this to work.

              My thought was that if I copied the .sh file to my Ports Scriptmodule directory, then Retropie-Setup would see it and then when I looked into the details in that menu, that would direct me as to where to put the Diablo game files before running this.

              RetroPie-Setup won't even load if I put the .sh file in the directory, so that isn't the way forward. How do I run the .sh? Sorry for asking questions that may appear obvious.

              Z 1 Reply Last reply Reply Quote 0
              • Z
                zerojay @AdamBeGood
                last edited by zerojay

                @AdamBeGood said in Diablo 1 ported to PI:

                Disclaimer: noob trying to get this to work.

                My thought was that if I copied the .sh file to my Ports Scriptmodule directory, then Retropie-Setup would see it and then when I looked into the details in that menu, that would direct me as to where to put the Diablo game files before running this.

                RetroPie-Setup won't even load if I put the .sh file in the directory, so that isn't the way forward. How do I run the .sh? Sorry for asking questions that may appear obvious.

                Everything you need to know is on the front page of the repo. If you are having problems with RetroPie-Setup, it's not caused by my .sh file which is working fine here with RetroPie-Setup.

                A 1 Reply Last reply Reply Quote 0
                • A
                  AdamBeGood @zerojay
                  last edited by AdamBeGood

                  @zerojay said in Diablo 1 ported to PI:

                  @AdamBeGood said in Diablo 1 ported to PI:

                  Disclaimer: noob trying to get this to work.

                  My thought was that if I copied the .sh file to my Ports Scriptmodule directory, then Retropie-Setup would see it and then when I looked into the details in that menu, that would direct me as to where to put the Diablo game files before running this.

                  RetroPie-Setup won't even load if I put the .sh file in the directory, so that isn't the way forward. How do I run the .sh? Sorry for asking questions that may appear obvious.

                  Everything you need to know is on the front page of the repo. If you are having problems with RetroPie-Setup, it's not caused by my .sh file which is working fine here with RetroPie-Setup.

                  I am not criticising your .sh at all! I am sure this is my fault. I've had a look at the repo but I still don't really know what I'm doing (although I see it tells me where to put the data file).

                  I get the following:

                  /home/pi/Retropie-Setup/scriptmodules/ports/devilutionx.sh: line 6: syntax error near unexpected token "newline"
                  /home/pi/Retropie-Setup/scriptmodules/ports/devilutionx.sh: line 6: '<DOCTYPE.html>'
                  Module /home/pi/Retropie-Setup/scriptmodules/ports/devilutionx.sh is missing valid rp_module_id
                  Module /home/pi/Retropie-Setup/scriptmodules/ports/devilutionx.sh is missing valid rp_module_desc
                  
                  Z 1 Reply Last reply Reply Quote 0
                  • Z
                    zerojay @AdamBeGood
                    last edited by

                    @AdamBeGood said in Diablo 1 ported to PI:

                    @zerojay said in Diablo 1 ported to PI:

                    @AdamBeGood said in Diablo 1 ported to PI:

                    Disclaimer: noob trying to get this to work.

                    My thought was that if I copied the .sh file to my Ports Scriptmodule directory, then Retropie-Setup would see it and then when I looked into the details in that menu, that would direct me as to where to put the Diablo game files before running this.

                    RetroPie-Setup won't even load if I put the .sh file in the directory, so that isn't the way forward. How do I run the .sh? Sorry for asking questions that may appear obvious.

                    Everything you need to know is on the front page of the repo. If you are having problems with RetroPie-Setup, it's not caused by my .sh file which is working fine here with RetroPie-Setup.

                    I am not criticising your .sh at all! I am sure this is my fault. I've had a look at the repo but I still don't really know what I'm doing (although I see it tells me where to put the data file).

                    I get the following:

                    /home/pi/Retropie-Setup/scriptmodules/ports/devilutionx.sh: line 6: syntax error near unexpected token "newline"
                    /home/pi/Retropie-Setup/scriptmodules/ports/devilutionx.sh: line 6: '<DOCTYPE.html>'
                    Module /home/pi/Retropie-Setup/scriptmodules/ports/devilutionx.sh is missing valid rp_module_id
                    Module /home/pi/Retropie-Setup/scriptmodules/ports/devilutionx.sh is missing valid rp_module_desc
                    

                    You need to follow the instructions on the front page of the repository.

                    A 1 Reply Last reply Reply Quote 0
                    • A
                      AdamBeGood @zerojay
                      last edited by AdamBeGood

                      @zerojay said:

                      You need to follow the instructions on the front page of the repository.

                      Once I worked out where the front page was this wasn't too bad, your instructions are very clear and I can see why you get frustrated.

                      I also had to perform the font steps mentioned above, but now it runs perfectly. Thank you, and apologies again!

                      1 Reply Last reply Reply Quote 0
                      • Z
                        zerojay
                        last edited by

                        I'll add the font stuff in. Obviously there must be something different between our machines causing this, but if it won't harm things on my end, I'll add it in to make things more convenient for everyone. Likely will update tonight.

                        ectoE 1 Reply Last reply Reply Quote 2
                        • R
                          rsaurer
                          last edited by

                          does it work with your script on pi 3b+?
                          what steps for install after install standard retropie?

                          many thanks!

                          1 Reply Last reply Reply Quote 0
                          • A
                            AJenbo
                            last edited by

                            @rsaurer said in Diablo 1 ported to PI:

                            does it work with your script on pi 3b+?

                            I build and test each release on a pi 3b+. I don't know anything about retropi though so can't help with that part. I would have expected it to be able to find installed application so if you install via the .deb it might work with out you haveing to do anything special.

                            We just released a new verison 6 days ago with widescreen support amonst many other improvments.

                            Have fun.

                            1 Reply Last reply Reply Quote 2
                            • P
                              pjmcphizzle
                              last edited by

                              Sorry if this topic is too old, but I feel like it would be more tidy to keep things in one topic rather than create a new one.

                              I'm having an issue installing this on my Pi 4. RetroPie-Setup script says version 4.7.11, last commit 2 days ago, so I'm nice and updated.

                              Anyways, here is the end portion of the log file after compiling fails:

                              [ 44%] Building CXX object CMakeFiles/devilution.dir/Source/multi.cpp.o
                              [ 45%] Building CXX object CMakeFiles/devilution.dir/Source/nthread.cpp.o
                              /home/pi/RetroPie-Setup/tmp/build/devilutionx/Source/multi.cpp: In function ‘dvl::BOOL dvl::NetInit(dvl::BOOL, dvl::BOOL*)’:
                              /home/pi/RetroPie-Setup/tmp/build/devilutionx/Source/multi.cpp:741:54: error: expected primary-expression before ‘;’ token
                                 sgGameInitInfo.versionMajor = PROJECT_VERSION_MAJOR;
                                                                                    ^
                              /home/pi/RetroPie-Setup/tmp/build/devilutionx/Source/multi.cpp:742:54: error: expected primary-expression before ‘;’ token
                                 sgGameInitInfo.versionMinor = PROJECT_VERSION_MINOR;
                                                                                    ^
                              /home/pi/RetroPie-Setup/tmp/build/devilutionx/Source/multi.cpp:743:54: error: expected primary-expression before ‘;’ token
                                 sgGameInitInfo.versionPatch = PROJECT_VERSION_PATCH;
                                                                                    ^
                              make[2]: *** [CMakeFiles/devilution.dir/build.make:570: CMakeFiles/devilution.dir/Source/multi.cpp.o] Error 1
                              make[2]: *** Waiting for unfinished jobs....
                              make[1]: *** [CMakeFiles/Makefile2:147: CMakeFiles/devilution.dir/all] Error 2
                              make: *** [Makefile:152: all] Error 2
                              /home/pi
                              /home/pi/RetroPie-Setup/tmp/build/devilutionx /home/pi
                              cp: cannot stat '/home/pi/RetroPie-Setup/tmp/build/devilutionx/CharisSILB.ttf': No such file or directory
                              Could not successfully install devilutionx - Diablo Engine (/home/pi/RetroPie-Setup/tmp/build/devilutionx/build/devilutionx not found).
                              /home/pi
                              
                              Log ended at: Tue Mar 23 17:45:27 ADT 2021
                              Total running time: 0 hours, 0 mins, 40 secs
                              

                              Thanks in advance to anyone that can help me out.

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

                                @pjmcphizzle i was just messing with that this moring

                                the install script is now wrong. the devs for the diablo port changed things up.

                                i updated mine after doing some tests
                                give it a shot and let me know

                                https://pastebin.com/6XZjdtg4

                                you will need to go in and replace all that it is in the install script thats on your pie with what is in the link.

                                if you dont know how. ill make a link on my Git page to install it tomorrow

                                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 .

                                P 1 Reply Last reply Reply Quote 1
                                • P
                                  pjmcphizzle @ExarKunIv
                                  last edited by

                                  @exarkuniv Thanks for the quick reply!

                                  I was able to replace the script, and even made a slight change to rp_module_help just to make sure that I replaced the correct file, but I'm still not getting past 45%.

                                  I may try again with a fresh image, but for now, I am defeated.

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

                                    @pjmcphizzle Sorry about that, i thought i got it.
                                    im messing with it now. ill post a update once/if i get it.

                                    UPDATE
                                    i do see what is going on with the script. Now how to get it to play nice is something different, but they say knowing is half the battle. Guess we will see

                                    UPDATE UPDATE
                                    im asking one of the Devs for devilutionXfor somehelp on this as i still cant figure it out.
                                    if you run the commands by hand it compiles just fine.
                                    use the script and it fails. which has the same commands

                                    so for now you can use the wiki page that show how to install it and what not

                                    https://github.com/diasurgical/devilutionX/wiki/Retropie-Guide

                                    this time i did test it and the guide works

                                    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 @pjmcphizzle
                                      last edited by

                                      @pjmcphizzle try this

                                      https://pastebin.com/0xu9d4K4

                                      i have it working for me now

                                      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 .

                                      RiverstormR P 3 Replies Last reply Reply Quote 0
                                      • RiverstormR
                                        Riverstorm @ExarKunIv
                                        last edited by

                                        @exarkuniv - Thanks for updating the script for such a classic game. I've been following along and decided to try and install Diablo with your latest script on an old stretch build in case things went south.

                                        This is the error I receive during the build step, if it helps. I had to change the cmake_minimum_version from 3.13 to 3.7.2 or it would fail immediately or do I need a specific version for this to work?

                                        = = = = = = = = = = = = = = = = = = = = =
                                        Building 'devilutionx' : devilutionx - Diablo Engine
                                        = = = = = = = = = = = = = = = = = = = = =
                                        
                                        -- The C compiler identification is GNU 6.3.0
                                        -- The CXX compiler identification is GNU 6.3.0
                                        -- Check for working C compiler: /usr/bin/cc
                                        -- Check for working C compiler: /usr/bin/cc -- works
                                        -- Detecting C compiler ABI info
                                        -- Detecting C compiler ABI info - done
                                        -- Detecting C compile features
                                        -- Detecting C compile features - done
                                        -- Check for working CXX compiler: /usr/bin/c++
                                        -- Check for working CXX compiler: /usr/bin/c++ -- works
                                        -- Detecting CXX compiler ABI info
                                        -- Detecting CXX compiler ABI info - done
                                        -- Detecting CXX compile features
                                        -- Detecting CXX compile features - done
                                        CMake Error at CMakeLists.txt:76 (include):
                                          include could not find load file:
                                        
                                            CheckIPOSupported
                                        
                                        
                                        CMake Error at CMakeLists.txt:77 (check_ipo_supported):
                                          Unknown CMake command "check_ipo_supported".
                                        
                                        
                                        -- Configuring incomplete, errors occurred!
                                        See also "/home/pi/RetroPie-Setup/tmp/build/devilutionx/build/CMakeFiles/CMakeOutput.log".
                                        make: *** No targets specified and no makefile found.  Stop.
                                        /home/pi
                                        /home/pi/RetroPie-Setup/tmp/build/devilutionx /home/pi
                                        
                                        = = = = = = = = = = = = = = = = = = = = =
                                        Installing 'devilutionx' : devilutionx - Diablo Engine
                                        = = = = = = = = = = = = = = = = = = = = =
                                        
                                        cp: cannot stat '/home/pi/RetroPie-Setup/tmp/build/devilutionx/CharisSILB.ttf': No such file or directory
                                        /home/pi
                                        Could not successfully install devilutionx - Diablo Engine (/home/pi/RetroPie-Setup/tmp/build/devilutionx/build/devilutionx not found).
                                        
                                        Log ended at: Thu Mar 25 13:53:35 CDT 2021
                                        Total running time: 0 hours, 0 mins, 10 secs
                                        
                                        1 Reply Last reply Reply Quote 0
                                        • RiverstormR
                                          Riverstorm @ExarKunIv
                                          last edited by

                                          @exarkuniv - Sorry, the Pi 3 is a mess of issues to get it working. I hooked up my Pi 4 and it worked on the first go. I also tested Hellfire and it seems to work fine too. The widescreen patch filled out the monitor and looks good. Thanks a bunch for the update!

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

                                            @riverstorm glad that you got it to work. I only have my Pi4 hooked so that's all I can play with. So I did not think about messing with my pi3

                                            I think the pi3 could work but you would have to manually install a higher version of cmake.

                                            It can be done. I have done it when I was trying to get the duke nukem 2 port to work.

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