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

    Return to Castle Wolfenstein - IORTCW source port

    Scheduled Pinned Locked Moved General Discussion and Gaming
    rtcwreturn to castlwolfensteiniortcwports
    125 Posts 19 Posters 34.3k 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.
    • C
      Cesarpuig @tacgnol
      last edited by

      @tacgnol thanks to you for answering, you have tried it on a rpi4 just like me, tomorrow I will try it on jna rpi3, and I comment

      1 Reply Last reply Reply Quote 1
      • Z
        Zering @tacgnol
        last edited by

        @tacgnol Thanks, I'd like to try your script but I can't find the two lines you've mentioned. I looked at cesarpuig's script for comparison and both look identical?

        @Cesarpuig I'm on a Retropie 3 B+, running on Raspbian GNU/Linux 9.11
        I've got version 4.6.

        Here is the log of RTCW's installation :

        link text

        C T 2 Replies Last reply Reply Quote 0
        • C
          Cesarpuig @Zering
          last edited by Cesarpuig

          @Zering
          I have tried on my raspberry pi 3, with retropie 4.18 and raspbiam strech, and I have the same problem, none of the scripts nor the previous one from tpo1990 works, nor the modifications that I have added to make it work on my raspberry pi 4, I think that there are two options:

          1st clone a previous commit.

          2nd Open an issue in the iortcw repository.

          For the moment I am going to opt for the second and I comment.

          EDIT:
          I have opened an issue in the iortcw repository, if we cannot solve it so we will try to clone a previous commit that we know works

          Z 1 Reply Last reply Reply Quote 0
          • Z
            Zering @Cesarpuig
            last edited by Zering

            @Cesarpuig How do we clone a previous commit?

            I'd be very happy to test anything, I'm very eager to play this, I've been wanting to play it since its release in 2001 ^^

            C 1 Reply Last reply Reply Quote 0
            • T
              tacgnol @Zering
              last edited by

              @Zering Sorry, I forgot to mention that I used the rpi4 in my previous answer to you.

              I haven't tested on rpi3 with the new script, but it seems this morning a bug report has been filled :)

              My script used the exact procedure explained by @Cesarpuig .

              1 Reply Last reply Reply Quote 0
              • C
                Cesarpuig @Zering
                last edited by

                @Zering I don't know how to do it from retropie (raspbian), I am not familiar with this operating system, today I have done some tests and manually compile and build it but I don't know how to do it from the script, tomorrow I will do some more tests

                1 Reply Last reply Reply Quote 0
                • C
                  Cesarpuig
                  last edited by Cesarpuig

                  @Zering @tacgnol @tpo1990 Hello I have updated my installation script adding the dependency libgles1-mesa-dev, and in my case it has solved the build failure on rpi3.
                  I have updated the link where I shared the installation script, I have tested it on rpi3 and rpi4, and it works for me.

                  Please if you can try and comment.

                  Thank you

                  Z tpo1990T 2 Replies Last reply Reply Quote 1
                  • Z
                    Zering @Cesarpuig
                    last edited by

                    @Cesarpuig Thanks, I've managed to build the module successfully. Now to set it up...

                    C 1 Reply Last reply Reply Quote 0
                    • C
                      Cesarpuig @Zering
                      last edited by Cesarpuig

                      @Zering I'm glad you managed to install it, when you set it up and play it please comment that it works for you, that my tests have been limited to installing it

                      Edit.

                      Tip: in SP set Video mode: Automatic (Native).

                      and change the resolution from runcommand

                      Z 1 Reply Last reply Reply Quote 0
                      • Z
                        Zering @Cesarpuig
                        last edited by Zering

                        @Cesarpuig Well it doesn't work T_T

                        I've got all the files where the tutorial says to put them, but I get a black screen shortly before being kicked back to ES.

                        I'm thinking the issue might come from the GOG version, so I'll try another rom and get back to you.

                        Edit : The other version I could find doesn't have all the files needed to run the game on the RPi. Weird.

                        Here is the log after RTCW failed to launch :

                        link text

                        C 1 Reply Last reply Reply Quote 1
                        • C
                          Cesarpuig @Zering
                          last edited by Cesarpuig

                          @Zering
                          I just installed it in my raspberry pi 3, Retropi 4.6, raspbian strecht, and it works fine, these are the data I have for SP, for example for you to try:

                          pak0.pk3 MD5: ce92b11df889cb0a045762bb5fd7cde5
                          sp_pak1.pk3 MD5: a0d3fe956f85f40c8efd6babe0d09832
                          sp_pak2.pk3 MD5: 330b272d5261fe19fcf3c3fbc943c7f3
                          sp_pak3.pk3 MD5: 4f3c364ced7c7c70e32732f07c8be050 (Spanish)
                          sp_pak4.pk3 MD5: 4223cc6588594ec0ceee186f0e73a6e9 (fron patch-data-141.zip)

                          Before installing it again please delete all files and start from scratch.

                          Z 1 Reply Last reply Reply Quote 0
                          • Z
                            Zering @Cesarpuig
                            last edited by

                            @Cesarpuig Thanks for that, I checked the MD5 of every file and figured out my pak3 is wrong.

                            Not sure how I'm going to fix that though but at least I know what's wrong now.

                            C 1 Reply Last reply Reply Quote 0
                            • C
                              Cesarpuig @Zering
                              last edited by

                              @Zering the sp_pak3.pk3 mine is the Spanish version, it will have a different md5 than yours, but that does not mean that yours is not correct

                              Z 1 Reply Last reply Reply Quote 0
                              • Z
                                Zering @Cesarpuig
                                last edited by

                                @Cesarpuig Oh, right.

                                Any idea why it is not launching then? I've got pretty much the same data as you.

                                C 1 Reply Last reply Reply Quote 0
                                • C
                                  Cesarpuig @Zering
                                  last edited by

                                  @Zering I can't think of anything, try updating your system
                                  sudo apt-get update && sudo apt-get upgrade from console press F4

                                  Update core packages and sdl2 from retropie setup from emulationstation (The latter I do not know if it makes much sense, but between my tests to see if it worked for me are two things I did)

                                  Delete all iortcw related files

                                  /home/pi/.wolf/
                                  /opt/retropie/config/ports/rtcw-sp/
                                  /opt/retropie/config/ports/rtcw-mp/
                                  /home/pi/RetroPie/roms/ports/rtcw

                                  And reinstall.

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

                                    @Cesarpuig Great success. Let me try it out on my own RPi 3B setup and I will get back to you.

                                    Yesterday I also tried some testing and eventually I was able to the game to build but still not working completely.

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

                                      I have good news to announce. Thanks to @Cesarpuig and others here at the RetroPie community the port now works again.

                                      As you all should know by now compilation was broken due to gles support not being installed since it couldn't find the necessary gles library files in the system. It has now been fixed and the scriptmodule has been improved without the need of the make-raspberry.sh script from the source files. Libgles1-mesa-dev has been added to fix gles in compilation with the help from Cesarpuig.

                                      I tested it on my Raspberry Pi 3B with latest RetroPie and it works as expected, however I haven't tested support for Raspberry Pi 4 RetroPie yet. Can someone test it out and confirm if it works or not?

                                      If you already have the rtcw.sh scriptmodule in your RetroPie-Setup, remove the file by going into /home/pi/RetroPie-Setup/scriptmodules/ports/ and then use the download link again from this topic.

                                      Thank you all.

                                      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
                                      • mituM
                                        mitu Global Moderator
                                        last edited by

                                        @tpo1990 said in Return to Castle Wolfenstein - IORTCW source port:

                                        Libgles1-mesa-dev has been added to fix gles in compilation with the help from Cesarpuig.

                                        That won't work (and just tested it and it doesn't) since libgles1-mesa-dev is not present in Raspbian/Debian Buster anymore. You're probably still running on Raspbian Stretch, even if you run the latest RetroPie.

                                        Package libgles1-mesa-dev is not available, but is referred to by another package.
                                        This may mean that the package is missing, has been obsoleted, or
                                        is only available from another source
                                        However the following packages replace it:
                                          libglvnd-dev
                                        
                                        E: Package 'libgles1-mesa-dev' has no installation candidate
                                        Could not install package(s): libgles1-mesa-dev.
                                        
                                        C tpo1990T 2 Replies Last reply Reply Quote 0
                                        • C
                                          Cesarpuig @mitu
                                          last edited by Cesarpuig

                                          @mitu

                                          I am testing it on sterch and buster.

                                          Build failure for lack of libgles1-mesa-dev only appears in Raspbian strech.

                                          Rasbian buster build fine without installing that dependency.

                                          And it is true it gives an installation error in buster because it cannot install that dependency.

                                          That dependency should be assigned individually for raspbian sterch, it escapes my knowledge.

                                          I actually focused on making it work on strech by helping @Zering,
                                          I already migrated my rpi3 and rpi4 to buster, and the original script worked,
                                          The fail has been introduced by including that dependency.

                                          1 Reply Last reply Reply Quote 0
                                          • C
                                            Cesarpuig
                                            last edited by Cesarpuig

                                            Hi. This is the script that I am using on Raspberry pi 4, Rasbian Buster. it works for me.

                                            I have tested it on a Raspberry Pi 3 B, with Raspbian stretch and it is necessary to add the dependency libgles1-mesa-dev

                                            #!/usr/bin/env bash
                                            
                                            # This file is part of The RetroPie Project
                                            #
                                            # The RetroPie Project is the legal property of its developers, whose names are
                                            # too numerous to list here. Please refer to the COPYRIGHT.md file distributed with this source.
                                            #
                                            # See the LICENSE.md file at the top-level directory of this distribution and
                                            # at https://raw.githubusercontent.com/RetroPie/RetroPie-Setup/master/LICENSE.md
                                            #
                                            
                                            rp_module_id="rtcw"
                                            rp_module_desc="RTCW - IORTCW source port of Return to Castle Wolfenstein."
                                            rp_module_licence="GPL3 https://raw.githubusercontent.com/iortcw/iortcw/master/SP/COPYING.txt"
                                            rp_module_help="IORTCW requires the pak files of the full game to play. Add all your singleplayer and multiplayer pak files (mp_bin.pk3, mp_pak0.pk3, mp_pak1.pk3, mp_pak2.pk3, mp_pak3.pk3, mp_pak4.pk3, mp_pak5.pk3, mp_pakmaps0.pk3, mp_pakmaps1.pk3, mp_pakmaps2.pk3, mp_pakmaps3.pk3, mp_pakmaps4.pk3, mp_pakmaps5.pk3, mp_pakmaps6.pk3, pak0.pk3, sp_pak1.pk3, sp_pak2.pk3, sp_pak3.pk3 and sp_pak4.pk3) from your RTCW installation to $romdir/ports/rtcw."
                                            rp_module_section="exp"
                                            rp_module_flags=""
                                            
                                            function depends_rtcw() {
                                            #	getDepends cmake libsdl2-dev libsdl2-net-dev libsdl2-mixer-dev libsdl2-image-dev libgles1-mesa-dev timidity freepats #Uncomment for Raspbian stretch
                                                    getDepends cmake libsdl2-dev libsdl2-net-dev libsdl2-mixer-dev libsdl2-image-dev timidity freepats #Uncomment for Raspbian buster
                                            }
                                            
                                            function sources_rtcw() {
                                                gitPullOrClone "$md_build" https://github.com/iortcw/iortcw.git
                                            }
                                            
                                            function build_rtcw() {
                                                cd "$md_build/SP"
                                                USE_CODEC_VORBIS=0 USE_CODEC_OPUS=0 USE_CURL=0 USE_CURL_DLOPEN=0 USE_OPENAL=1 USE_OPENAL_DLOPEN=1 USE_RENDERER_DLOPEN=0 USE_VOIP=0 \
                                            	USE_LOCAL_HEADERS=1 USE_INTERNAL_JPEG=1 USE_INTERNAL_OPUS=1 USE_INTERNAL_ZLIB=1 USE_OPENGLES=1 USE_BLOOM=0 USE_MUMBLE=0 BUILD_GAME_SO=1 \
                                            	BUILD_RENDERER_REND2=0 ARCH=armv7l PLATFORM=linux COMPILE_ARCH=arm COMPILE_PLATFORM=linux \
                                            	make
                                                cd "$md_build/MP"
                                                USE_CODEC_VORBIS=0 USE_CODEC_OPUS=0 USE_CURL=0 USE_CURL_DLOPEN=0 USE_OPENAL=1 USE_OPENAL_DLOPEN=1 USE_RENDERER_DLOPEN=0 USE_VOIP=0 \
                                            	USE_LOCAL_HEADERS=1 USE_INTERNAL_JPEG=1 USE_INTERNAL_OPUS=1 USE_INTERNAL_ZLIB=1 USE_OPENGLES=1 USE_BLOOM=0 USE_MUMBLE=0 BUILD_GAME_SO=1 \
                                            	BUILD_RENDERER_REND2=0 ARCH=armv7l PLATFORM=linux COMPILE_ARCH=arm COMPILE_PLATFORM=linux \
                                            	make
                                                md_ret_require="$md_build/SP"
                                                md_ret_require="$md_build/MP"
                                            }
                                            
                                            function install_rtcw() {
                                                md_ret_files=(
                                            		'SP/build/release-linux-armv7l/iowolfsp.armv7l'
                                            		'SP/build/release-linux-armv7l/main/cgame.sp.armv7l.so'
                                            		'SP/build/release-linux-armv7l/main/qagame.sp.armv7l.so'
                                            		'SP/build/release-linux-armv7l/main/ui.sp.armv7l.so'
                                            		'MP/build/release-linux-armv7l/iowolfded.armv7l'
                                            		'MP/build/release-linux-armv7l/iowolfmp.armv7l'
                                            		'MP/build/release-linux-armv7l/main/cgame.mp.armv7l.so'
                                            		'MP/build/release-linux-armv7l/main/qagame.mp.armv7l.so'
                                            		'MP/build/release-linux-armv7l/main/ui.mp.armv7l.so'
                                            		'MP/build/release-linux-armv7l/main/vm/'
                                                )
                                            }
                                            
                                            function game_data_rtcw() {
                                            	mkdir /opt/retropie/ports/rtcw/main
                                            	mv -f /opt/retropie/ports/rtcw/*.so /opt/retropie/ports/rtcw/main
                                            	mv -f /opt/retropie/ports/rtcw/vm /opt/retropie/ports/rtcw/main
                                                    chown -R $user:$user "$romdir/ports/rtcw"
                                                    chown -R $user:$user "$md_conf_root/rtcw-sp"
                                            }
                                            
                                            function configure_rtcw() {
                                                    rm -R /home/pi/RetroPie/roms/ports/rtcw/vm #I added this line because when I updated, the content of this folder it was not overwritten
                                            
                                                    addPort "rtcw-sp" "rtcw-sp" "Return to Castle Wolfenstein SP" "$md_inst/iowolfsp.armv7l"
                                                    addPort "rtcw-mp" "rtcw-mp" "Return to Castle Wolfenstein MP" "$md_inst/iowolfmp.armv7l"
                                            
                                                    mkRomDir "ports/rtcw"
                                            
                                                    moveConfigDir "$home/.wolf" "$md_conf_root/rtcw-sp"
                                                    moveConfigDir "$md_inst/main" "$romdir/ports/rtcw"
                                            
                                                    [[ "$md_mode" == "install" ]] && game_data_rtcw
                                            }
                                            function remove_rtcw() {
                                                    rm /home/pi/.wolf
                                            	rm /home/pi/RetroPie/roms/ports/rtcw/*.so
                                            	rm -R /home/pi/RetroPie/roms/ports/rtcw/vm
                                            }
                                            
                                            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.