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 38.8k 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.
    • ExarKunIvE
      ExarKunIv @cyperghost
      last edited by

      @cyperghost

      to get the selection menu that you have a pic of. do i just need to use the script that you have on your github or is there more 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 .

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

        @ExarKunIv Yes you have to edit Wolfensteins 3D emulator config file. It's located in /opt/retropie/configs/ports/wolf3d/emulators.cfg or in /opt/retropie/configs/ports/ecwolf/emulators.cfg and add a line

        ecwolf = "pushd /home/pi/RetroPie/roms/ports/wolf3d; /opt/retropie/ports/ecwolf/ecwolf %ROM%; popd"
        default = "ecwolf"
        

        then you copy ecwolf.sh from github to /opt/retropie/ports/ecwolf and make it executable. I assume the binary of ecwolf is in same directory as the script file. Again! Make the script executable

        then you copy Wolfenstein 3D.sh from github to /home/pi/RetroPie/roms/ports

        That should do the trick so far....
        File convention according this post

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

          @cyperghost thank you, ill give it a go. not sure if i want a menu, or just have all the games listed in my ports.

          right now im just getting my controls down good.

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

            @ExarKunIv Well with the .ecwolf-method you can create a own system ;)
            Of course you can set all parameters manually script files instead if you don't want a menu.

            Everything is possible. If you don't want a menu you have to change the call from ecwolf.sh to ecwolf of course.

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

              @cyperghost ok i got the files in and i was looking at the other post that you linked to.
              i get what you said. the only thing that im lost on is that you have to setup up description files and you give the example of
              Wolfenstein 3D - HighRes.ecwolf.
              is that going to be a .sh file or something else

              the rest you made it nice and clear

              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 the .ecwolf format is setted up in two sections. Every thing over the wait command is considered as presetup, everything after wait is a postsetup

                So Wolfenstein 3D.ecwolf with content

                cd wolf3d_14
                echo "Hello That Is Wolfenstein 3D`
                sleep 5
                ecwolf --data wl6
                wait ?!
                echo "This is the end"
                sleep 5
                

                Will do following

                1. Changedir to wolf3d_14, base path is usually setted in your emulators.cfg (see pushd line)
                2. Write Output (useless of course and just for fun)
                3. Wait 5 Seconds (useless, too but I want to show how this works)
                4. One command from ecwolf binary starting with double dashes, this commands just tells ecwolf to search for wl6 files to start Wolfenstein, wl1 would be the demo, sod is Spear of Destiny ...
                5. Then the turning point ... the wait command ;)
                6. again a message after ending the current game
                7. a sleep command after ending the game

                I hope I explained well. So all my .ecwolf files are in /home/pi/RetroPie/roms/ports/wolf3d, all vanilla wolf3d files (with Noah Arcs, Spear of Destiny and Wolf 3d itself) are in wolf3d_14 directory and then I've created a directory addons

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

                  @cyperghost oh i get it now.. i hope

                  .ecwolf is the file format

                  ok i think i get it enough for me to start playing around. if i come up with anymore dumb questions i will ask ;)

                  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 Yes .ecwolf is the file format for the graphical launcher and for the ecwolf.sh "translator" that relies next to the ecwolf binary.
                    You see all the commands are a bit differenct so I doubt that there will be a method to launch all pk3-modules with one file. Sometimes you load two pk3-files in one string (for music and highres graphics for example) so I think the .ecwolf-method is a nice compromise

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

                      @cyperghost works for me

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

                        @ExarKunIv Fine!
                        Remember with the dashes

                        You can also use this one

                        cd wolf3d_14
                        --data sod
                        --data wl6
                        

                        This will result to load Wolfenstein 3D and not Spear of Destiny because last double dash command is used as cmd-line. We can deal with this so far.


                        @tpo1990 Are you still alive?

                        Solid OneS 1 Reply Last reply Reply Quote 1
                        • Solid OneS
                          Solid One @cyperghost
                          last edited by Solid One

                          @cyperghost I've installed just now ECWolf on my home PC. I'm running Ubuntu 14.04 64-bits, plugged a Xbox360 controller through a wireless receiver, and opened ECWolf 1.3.3 (latest stable version, installed through DRDTeam's PPA).

                          It worked just like when I tested it on Windows a few weeks ago: I could access menus simply by pressing Start button, just like ESC key. And since RetroPie runs in Debian, which is where Ubuntu is based, then it's safe to say that it should work too.

                          I've done the same test in another controller too: a PS2 controller plugged through an USB adapter. However, to my surprise, Start didn't worked for accessing menus just like ESC key. In fact, neither of the buttons of my controller worked for going back to the menus.

                          The conclusion I could reach is: Start for accessing menus won't work for generic USB joysticks, but instead only for Xbox-like controllers. My guess is that the controller you've used is a generic one, and that's why you're having this problem.

                          Assuming my conclusion is right, you have three solutions for your problem:

                          1. Replace your generic USB controller for a Xbox-like one;
                          2. Use xboxdrv in order to emulate a Xbox360 controller from your generic USB joystick (you can use xboxdrv to map buttons to keys too, so you can simply map Start button to ESC key, as a workaround);
                          3. Edit ECWolf's source code manually, in order to implement a way of mapping start button to menus on your generic usb controller (some guys made it in ZDoom). Requires programming knowledge in C++.
                          cyperghostC 1 Reply Last reply Reply Quote 1
                          • cyperghostC
                            cyperghost @Solid One
                            last edited by cyperghost

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

                            Assuming my conclusion is right, you have three solutions for your problem

                            Your conclusion is right.

                            I think if someone can step into the code and make some small changes to the code, that would be best.

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

                              @Solid-One @tpo1990
                              Okay done .... We can access main menu now. Assign a button key to ESCAPE GAME and you are fine

                              GOT TO POSTING 44

                              @BuZz Maybe interesting for you. ECwolf runs very good on Raspberry and outstands Wolf4SDL - I'm sure @tpo1990 can set a new PR now.

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

                                @cyperghost Hey sorry for not answering. I am still alive :-). I am on my on vacation and have had some house duties to complete.

                                That is some nice progress you have made there. I have not had the time to test it. I will test it very soon. According to your fork it looks very good. Did you send me a pull request to my github repository of ECWolf?

                                Still my hexen2 PR has not been merged with the RetroPie Project yet and that was months ago. I wonder if Jools Wills has his hands full with patching/updating the RetroPie Project.

                                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 said in ECWolf - Wolfenstein 3D source port for mods:

                                  Hey sorry for not answering. I am still alive :-).

                                  Fine, I rather thought you gave up retrogaming.

                                  ccording to your fork it looks very good. Did you send me a pull request to my github repository of ECWolf?

                                  No I didn't send you a PR, I think it's better if you release the script module. Feel free to use the scripts and patchfile that I've created.

                                  That is some nice progress you have made there. I have not had the time to test it.

                                  I made some changes to .ecwolf interpreter.
                                  With the ecwolf-files we are able to create a own system for ES and these give us back a kind of flexibility in usage.

                                  PART 1 --- 1:1 interpretation of shell commands (as lines many as you like)
                                  PART 2 --- ecwolf commands introduced by double dashes (only one line)
                                  PART 3 --- last line as shell commands (only one line)
                                  

                                  So for example

                                  echo "We are starting Wolfenstein 3D without pak mods now ..."
                                  sleep 5
                                  cd wolf3d_14
                                  echo "Next step is loading wolfenstein files"
                                  --data wl6
                                  echo "Thanks for playing...."
                                  
                                  1 Reply Last reply Reply Quote 1
                                  • cyperghostC
                                    cyperghost
                                    last edited by cyperghost

                                    @tpo1990
                                    I made some more tests
                                    Even the both "Spear of Destiny" mission packs run fine
                                    Just create both directories
                                    * SOD2 for Spear of Destiny - Mission Pack 2 - Return to Danger
                                    * SOD3 for Spear of Destiny - Mission Pack 3 - Ultimate Challenge

                                    just use correct parameter set

                                    • --data sd2 for Spear of Destiny - Mission Pack 2 - Return to Danger
                                    • --data sd3 for Spear of Destiny - Mission Pack 3 - Ultimate Challenge

                                    Works 100% with ecwolf :D


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

                                      @cyperghost I would never give up on retrogaming, It is too big a part of my life now, just also need to take care of the vacation with my family :-)

                                      Thanks that is very appreciated. I will take good use of it. I think once we have it all set i could create a pull request and see how it goes with the RetroPie project.

                                      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 think it's a solid port of Wolfenstein and I wasn't aware that this can be converted to raspberry so elegant. So only thing I would suggest it to rahter download the whole package with wget and do ZIP extraction than to use hg. But that a thing that you decide on your own.

                                        I would never give up on retrogaming, It is too big a part of my life now, just also need to take care of the vacation with my family :-)

                                        Yes family first, then retropie projects... I was just a bit confused about your missing actions here. So enjoy your time.

                                        Looking to the future and there may be a chance that ecwolf hopefully makes other great games useable (Rise of the triad, Corridor 7) and therefore a solid port should be considered ;)

                                        As I said .... use the files from my git. The patch to setup the ESC key is a "must" in my opinion. Otherwise it's impossible to quit ecwolf without external keyboard or ssh command as long as you are in an active game (and furthermore, save, load features do also not work)

                                        Consider also that different games use same savegame location and filenames so wolf3d1.4 in std. resolution can't load games from wolf3d1.4 in HQ mode and vice versa. Therefore I used the .ecwolf files. These do zip unzip jobs for the related savestates meanwhile.

                                        So I uploaded all my ecwolf files to github.
                                        They are avaiable here
                                        But maybe it's easier instead of a line to line conversion to just handle this files as full grown scripts and make use of advanced shell commands... let me think about it.

                                        tpo1990T Solid OneS 2 Replies Last reply Reply Quote 0
                                        • tpo1990T
                                          tpo1990 @cyperghost
                                          last edited by

                                          @cyperghost I think so too. I might make some changes when i have created a pull request, since the scriptmodule must meet the demands of the RetroPie projects guidelines.

                                          Rise of the Triad is already possible through @zerojay RetroPie extras. That game could also be enhanced further with the possibility of mods. I know for a fact that it is possible to get bots working as i have tried it on my windows PC with a special RotT edition. Corridor 7 could be interesting to get working thorugh ECWolf as well as Blake Stone.

                                          I will probably test out your improvements later today, when i have the time. As always by working together we will make it possible. ;-)

                                          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
                                          • Solid OneS
                                            Solid One @cyperghost
                                            last edited by

                                            I'm getting a few issues when trying to compile ECWolf on my RPi2.

                                            The first issue is when the scriptmodule tries to clone ECWolf's repository via hg (Mercurial). It's strangely giving me the following error:

                                            user@leomontenegro:~$ hg clone https://bitbucket.org/ecwolf/ecwolf
                                            aborted: error: _ssl.c:510: error:14094410:SSL routines:SSL3_READ_BYTES:sslv3 alert handshake failure
                                            

                                            I don't know if it's some kind of maintenance in Bitbucket, or if it's permanent due to some security changes related to SSL versions. My workaround for this is going to the ECWolf repository's Downloads section, and then clicking on the link Download repository. Luckily, this should give me the source code, so I can proceed with the other steps manually. However, with the "build_ecwolf" function not working, users trying to install ECWolf through this scriptmodule won't succeed on that task.

                                            The second issue is about @cyperghost's patch for mapping ESC key to controller. After downloading source code via browser from bitbucket (since I got the SSL error above), I tried applying the patch. However, it gave me the following error:

                                            user@leomontenegro:~/zxc/ecwolf-ecwolf-5065aaefe055$ patch -p0 -i wl_play_patch.diff
                                            patching file ./src/wl_play.cpp
                                            Hunk #1 FAILED at 73 (different line endings).
                                            1 out of 1 hunk FAILED -- saving rejects to file ./src/wl_play.cpp.rej
                                            

                                            I don't know if it's something strange in the patch itself, or if the guys on ECWolf's repository commited some changes that breaks the patch. But since the changes inside the patch are minimal, I simply edited wl_play.cpp and made the changes by myself. Hopefully, it should work.

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