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

    ECWolf - Wolfenstein 3D source port for mods

    Scheduled Pinned Locked Moved General Discussion and Gaming
    ecwolfwolf3decwolf modwolf3d mod
    167 Posts 9 Posters 39.7k 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.
    • tpo1990T
      tpo1990 @cyperghost
      last edited by tpo1990

      @cyperghost Great work. Let me try it out again and get back to you.

      Edit: The patching works now. Thanks. I will update the scriptmodule with your patch and make some changes to what runcommand files to generate depending on if you have shareware or registered versions of Wolf3d and SOD.

      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.

      ExarKunIvE cyperghostC 2 Replies Last reply Reply Quote 1
      • ExarKunIvE
        ExarKunIv @tpo1990
        last edited by

        @tpo1990 cant wait for the update.

        have not had time to mess with learning how to compile anything yet :(

        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
        • cyperghostC
          cyperghost @tpo1990
          last edited by cyperghost

          @tpo1990 I would suggest following

          instead

          function configure_ecwolf() {
              addPort "$md_id" "ecwolf-spear3d" "ECWolf - Spear3d" "$md_inst/ecwolf --data sdm --file %ROM%"
              addPort "$md_id" "ecwolf-wolf3d" "ECWolf - Wolf3d" "$md_inst/ecwolf --data wl1 --file %ROM%"
          
              mkRomDir "ports/wolf3d"
          
          1. better use
          function configure_ecwolf() {
              addPort "$md_id" "ecwolf" "Wolfenstein 3D" "pushd $romdir/ports/wolf3d; $md_inst/ecwolf --data wl1; popd"
              addPort "$md_id" "ecwolf" "Wolfenstein 3D - Spear of Destiny" "pushd $romdir/ports/wolf3d; $md_inst/ecwolf --data sod; popd"
          
              mkRomDir "ports/wolf3d"
              moveConfigDir "$home/.local/share/ecwolf" "$md_conf_root/ecwolf"
              moveConfigDir "$home/.config/ecwolf" "$romdir/ports/wolf3d
          
          1. or just a a launch menu with some helper files ...
          function configure_ecwolf() {
              addPort "$md_id" "ecwolf" "Wolfenstein 3D" "pushd $romdir/ports/wolf3d; $md_inst/ecwolf.sh %ROM%; popd"
          
              mkRomDir "ports/wolf3d"
              moveConfigDir "$home/.local/share/ecwolf" "$md_conf_root/ecwolf"
              moveConfigDir "$home/.config/ecwolf" "$romdir/ports/wolf3d"
          
              #Install Graphical Selection Menu - scriptmodule needs improvement for this
              cd "$romdir/ports"
              wget -N -q --show-progress "https://raw.githubusercontent.com/crcerror/ECWolf-RPI/master/file_dl/Wolfenstein 3D.sh"
              chown $user:$user "Wolfenstein 3D.sh"
          
              #Install Translator - scriptmodule needs improvement for this
              cd "$md_inst"
              wget -N -q --show-progress "https://raw.githubusercontent.com/crcerror/ECWolf-RPI/master/file_dl/ecwolf.sh"
              chmod +x "ecwolf.sh"
           
              [[ "$md_mode" == "install" ]] && game_data_ecwolf
          }
          

          that will lead to a menu like this one here in this posting

          1. I don't want to send you an PR becaus I'm the opinion that you as creator should decide what's the best solution. I strongly modified your scriptmodule but it needs much code review (like yours, too) ---> Take a look here
          1 Reply Last reply Reply Quote 0
          • cyperghostC
            cyperghost
            last edited by

            @tpo1990
            Let us talk in this gist here
            https://gist.github.com/crcerror/9e1742e78d50e58d585f3735dd67e855

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

              @cyperghost Good idea. Let's talk about the development in the gist instead of here.

              I know that my scriptmodule needs code review, but to begin with my initial idea was just for testing out the source port and making that available for the community. Now it seems that the further progression on this suggests a final release. Maybe replacing Wolf4SDL as the primary source port for Wolfenstein 3D or as an alternative.

              I really appreciate your opinion and i'm open for help on developing into making it happen. ;-)

              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.

              cyperghostC 1 Reply Last reply Reply Quote 1
              • cyperghostC
                cyperghost @tpo1990
                last edited by cyperghost

                @tpo1990 I have a solid solution in my pocket. It will work like the prboom script module. It will find all files placed into wolf3d directory - version does not matter and it may be expanded to future game support like corridor 7 or Black stone.

                Let me post this in a few hours

                tpo1990T 1 Reply Last reply Reply Quote 0
                • cyperghostC
                  cyperghost
                  last edited by

                  @mitu
                  Can you take a look here: gist

                  How to proper patch sourcefiles?
                  Use wget, load the patch and use patch command?
                  Is there a better way?

                  The patch is needed to make ESC key work --> see here

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

                    @cyperghost Sounds good. It might be put to good use in other scriptmodules as well. :-)

                    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.

                    cyperghostC 1 Reply Last reply Reply Quote 0
                    • cyperghostC
                      cyperghost @tpo1990
                      last edited by

                      @tpo1990 Yes but I think there is a better way of patching inside scriptmodules. I think some patches are in RestroPie-Setup directory for "offlline" patching - that better coding practice and makes control of code easier.

                      But I think you can take the gist and after some final tests you can set a PR.
                      I think I cleanup the code a bit and then I'm done.

                      tpo1990T 1 Reply Last reply Reply Quote 0
                      • cyperghostC
                        cyperghost
                        last edited by cyperghost

                        scriptmodule is working now

                        get it with

                        wget https://gist.githubusercontent.com/crcerror/9e1742e78d50e58d585f3735dd67e855/raw/34493a8dc6f3cbb75fda8f381a8a94eb4ec67d82/ecwolf.sh
                        
                        cyperghostC 1 Reply Last reply Reply Quote 1
                        • cyperghostC
                          cyperghost @cyperghost
                          last edited by

                          @tpo1990 Send you a massive PR
                          I tested on my Pi3, compiles and setup is fine

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

                            @cyperghost said in ECWolf - Wolfenstein 3D source port for mods:

                            @tpo1990 Yes but I think there is a better way of patching inside scriptmodules. I think some patches are in RestroPie-Setup directory for "offlline" patching - that better coding practice and makes control of code easier.

                            But I think you can take the gist and after some final tests you can set a PR.
                            I think I cleanup the code a bit and then I'm done.

                            I will test it out later and update the scriptmodule with your changes and see how well it goes. Then a PR for RetroPie project can be created. :-)

                            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.

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

                              @tpo1990 i used what @cyperghost's script module and it compiled fine for me. but that's all i had time for. i did not do any playing as of yet

                              UPDATE

                              did a quick poke around. i see that mine does not have the ability to map exit key yet. but i dont know if its just my system and that i have the old versions still on there. even though i did uninstall it before using what cyperghost just posted

                              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 .

                              cyperghostC tpo1990T 2 Replies Last reply Reply Quote 0
                              • cyperghostC
                                cyperghost @ExarKunIv
                                last edited by cyperghost

                                @ExarKunIv Check your build... it should say

                                ecwolf-ecwolf-5065aaefe055/android-libs/launcher/src/org/libsdl/../deps/app/SDLControllerManager.java
                                /home/pi/RetroPie-Setup
                                /home/pi/RetroPie-Setup/tmp/build/ecwolf /home/pi/RetroPie-Setup
                                
                                = = = = = = = = = = = = = = = = = = = = =
                                Building 'ecwolf' : ECWolf - ECWolf is an advanced source port for Wolfenstein 3D, 
                                Spear of Destiny, and Super 3D Noah's Ark based off of the Wolf4SDL code bas.
                                It also supports mods from .pk3 files.
                                = = = = = = = = = = = = = = = = = = = = =
                                
                                patching file ./src/wl_play.cpp
                                -- The C compiler identification is GNU 4.9.2
                                

                                You see the patch is applied

                                Then go to config/controls... last line you'll see

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

                                  @ExarKunIv Maybe you have downloaded @cyperghost scriptmodule before the patch was added.

                                  Uninstall and if it still compiles without the patch, then go to /home/pi/RetroPie-Setup/scriptmodules/ports/ and delete the ecwolf.sh file, then download @cyperghost scriptmodule again and reinstall.

                                  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
                                  • ExarKunIvE
                                    ExarKunIv
                                    last edited by

                                    @cyperghost @tpo1990 ok i see whats going on. when i ran the wget that cyperghost just posted it worked fine but it put the new ecwolf in the /home/pi dir not the setup script folders

                                    so when i ran the .sh again it was the old version.

                                    i did not know that i needed to manual copy it in the the setup folder, which for me is no big deal

                                    but thanks for letting that it was just on my end. :)

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

                                      @cyperghost ok that worked, i did see the patch was applied but i did get a error about the shareware games or something

                                      Archive:  /tmp/tmp.Wh1wPiis6u/wolf3d14.zip
                                        End-of-central-directory signature not found.  Either this file is not
                                        a zipfile, or it constitutes one disk of a multi-part archive.  In the
                                        latter case the central directory and zipfile comment will be found on
                                        the last disk(s) of this archive.
                                      unzip:  cannot find zipfile directory in one of /tmp/tmp.Wh1wPiis6u/wolf3d14.zip or
                                              /tmp/tmp.Wh1wPiis6u/wolf3d14.zip.zip, and cannot find /tmp/tmp.Wh1wPiis6u/wolf3d14.zip.ZIP, period.
                                      Archive:  /tmp/tmp.IR8NJazGvq/soddemo.zip
                                        End-of-central-directory signature not found.  Either this file is not
                                        a zipfile, or it constitutes one disk of a multi-part archive.  In the
                                        latter case the central directory and zipfile comment will be found on
                                        the last disk(s) of this archive.
                                      unzip:  cannot find zipfile directory in one of /tmp/tmp.IR8NJazGvq/soddemo.zip or
                                              /tmp/tmp.IR8NJazGvq/soddemo.zip.zip, and cannot find /tmp/tmp.IR8NJazGvq/soddemo.zip.ZIP, period.
                                      /home/pi/RetroPie/roms/ports/wolf3d /home/pi/RetroPie-Setup/tmp /home/pi
                                      /home/pi/RetroPie-Setup/tmp /home/pi
                                      /home/pi
                                      Error running 'wget -q -O/tmp/tmp.Wh1wPiis6u/wolf3d14.zip http://maniacsvault.net/ecwolf/files/shareware/wolf3d14.zip' - returned 4
                                      Error running 'unzip -o /tmp/tmp.Wh1wPiis6u/wolf3d14.zip -d /home/pi/RetroPie/roms/ports/wolf3d' - returned 9
                                      Error running 'wget -q -O/tmp/tmp.IR8NJazGvq/soddemo.zip http://maniacsvault.net/ecwolf/files/shareware/soddemo.zip' - returned 4
                                      Error running 'unzip -o /tmp/tmp.IR8NJazGvq/soddemo.zip -d /home/pi/RetroPie/roms/ports/wolf3d' - returned 9
                                      

                                      just letting you know.

                                      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 .

                                      cyperghostC 1 Reply Last reply Reply Quote 0
                                      • cyperghostC
                                        cyperghost @ExarKunIv
                                        last edited by cyperghost

                                        @ExarKunIv Well I really can't help you. The demo version are downloaded through an downloadAndExtract script introduced by helpers.sh
                                        For me this works fine and it did so in my tests, it's the exact same command as @tpo1990 used in his 1st version of the script.

                                        I guess it's a corrupt download of the demo files, try to obtain the files by manual and check if you can unzip them.
                                        Or can you give the output if you use file wolf3d14.zip and file soddemo.zip

                                        cyperghostC ExarKunIvE 2 Replies Last reply Reply Quote 0
                                        • cyperghostC
                                          cyperghost @cyperghost
                                          last edited by cyperghost

                                          @tpo1990 I'm on long vacation now so I can't login to git now. But you've said there is a problem in downloading source file.

                                          It's still available, you can get the ecwolf-ecwolf-5065aaefe055.zip by using this link and it's the same link still in the scriptmodule .... I would stick to one version as long as possible if there is no reason to change. Every history commit can be downloaded as long as the resporitory is available.
                                          Did you receive an error message?

                                          http://maniacsvault.net/ecwolf/files/ecwolf/1.x/

                                          These versions are all outdated, March 2019 is the newest one

                                          You can still obtain a proper url from newest zip or tar file by "test-extracting" the archive and then read out root path. But as I said I'm on vacation now and I can't directly test on the RPi. But as far as I see the scriptmodule works ... You can of course fork on your github and use the gitpull command then you've control of the version.

                                          EDIT: I rather think I've removed one dependencie by accident and therefore the compiling will not work on your mashine if you build this up on a fresh install. This usecase I've never tried out to admit.

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

                                            @cyperghost yeah not sure either.

                                            i uninstalled it and deleted the wolf3d folder and reinstalled it, this time it worked just fine. not sure what that was all about.

                                            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.