Suggestion for Doom Legacy split screen wads folder
-
@cyperghost This looks great. Yes please do write a selection menu. Can you post it with a screenshot here after you finished it so i can see it? :-)
Would the selection menu be with different doom ports or just the wad files to be launched by a specific doom port such as prboom or zdoom?
-
@tpo1990 This is a first version adapted from OpenBOR script
#!/bin/bash readonly JOY2KEY_SCRIPT="$HOME/RetroPie-Setup/scriptmodules/helpers.sh" readonly WAD_DIR="$HOME/RetroPie/roms/ports/doom" [[ -e $JOY2KEY_SCRIPT ]] || exit sleep 0.5; sudo pkill -f joy2key source "$JOY2KEY_SCRIPT" scriptdir="$HOME/RetroPie-Setup" for file in "$WAD_DIR/"*.[Ww][Aa][Dd]; do [[ -e $file ]] || continue filename="${file##*/}"; filename="${filename%.*}" darray+=("$file" "$filename") done if [[ ${#darray[@]} -gt 0 ]]; then joy2keyStart; sleep 0.2 cmd=(dialog --backtitle " RetroPie - DOOM Where is All the Data selection " --title " WAD selection list " --no-tags --stdout --menu "Please select a file from list to get launched:" 16 75 16) choices=$("${cmd[@]}" "${darray[@]}") joy2keyStop; sleep 0.2 [[ $choices ]] || exit fi "/opt/retropie/supplementary/runcommand/runcommand.sh" 0 _PORT_ "doom" "$choices"
-
@cyperghost Looks great. I noticed in the first version of the script that runcommand.sh is using "doom" port to launch with the variable "$choices". Will this only work with ZDoom port or all of them if the scriptmodule is being built within "doom" dir and where would you place the selection script?
I mean like this .
- lr-prboom = 0 PORT "doom" - DoomWADdir: /$HOME/RetroPie/roms/ports/doom
- prboom = 0 PORT "doom" - DoomWADdir: /$HOME/RetroPie/roms/ports/doom
- zdoom = 0 PORT "doom" - DoomWADdir: /$HOME/RetroPie/roms/ports/doom
- crispy-doom = 0 PORT "doom" - DoomWADdir: /$HOME/RetroPie/roms/ports/doom
- doomlegacy = 0 PORT "doom" - DoomWADdir: /$HOME/RetroPie/roms/ports/doom
- chocolatedoom = 0 PORT "doom" - DoomWADdir: /$HOME/RetroPie/roms/ports/doom
-
This will work the same way as runcommand does.
If you default programm is pr-boom then this will be selected.
And if you use a dedicated software for a special WAD file then crispy-doom will be loaded (afaik!). I only know the selction system for OpenBOR there are different binary versions available. And there it works as I descriped so I assume it's the same for doom - as long as runcommand is involved!.This is just a basic script. You can extend it to endless usecases. The script should be stored to
/home/pi/RetroPie/roms/ports
. Use an proper filename for thisDOOM - Where is All the Data.sh
;) -
@cyperghost Thank you very much. I will try it out very soon after making som adjustments to Hexen 2 scriptmodule that needs to be fixed before the Pull request can be merged. :-)
-
This sounds amazing. I've always hoped to do some doom splitscreen multiplayer so it's great to see it's feasible on the pie. I know it's supported by multiple doom ports, but never any that seemed supported on Retropie. I wonder where the difficulty lies in making it work.
-
@OldSchool Yes there are probably more than one Doom source port that supports split screen and our best bet is to use Doom Legacy since it supports SDL and can be built from source on ARM. Doom Legacy is still active in development. There is also ReMooD that is an enhanced version of Doom Legacy which expands to 4 player split screen instead of 2 player split screen that Doom Legacy has, but that source port is dead.
Last year on RetroPie 4.3 with Jessie i managed to get ReMood to work with 4 player split screen with some small errrs and it was playable to an extent, but after upgrading to RetroPie 4.4 with Stretch it does not work anymore. Maybe it will work now since there has been some updates to RetroPie 4.4.
Now one important thing to note is that Doom Legacy is requiring a legacy.wad file and it must be located in one of the following DOOMWADDIR that the binary is using along with doom iwads.
-
Just saw this. I'll be keeping an eye on your github page for updates!
-
@jcook84 Glad to hear from you. I have made some progress while you were inactive and meanwhile i have learned a lot with scripting for RetroPie. I am still in the progress of making a working scriptmodule for Doom Legacy. :-)
I have also experimented with xboxdrv configurations for Doom Legacy as well. I can say that my xboxdrv configuration is working in Doom Legacy so that i can play with my USB Controller/gamepad. It works great for 1 player.
-
Alright so i made some progress with Doom Legacy source port scriptmodule and i have made the decision to follow Zdoom and Prboom installation and configurations.
This mean that like Zdoom, Doom Legacy will also use the Shared Doom ports wads folder: "/home/pi/RetroPie/roms/ports/doom" and Doom Legacy will use the same emulators.cfg file, so that it will make it possible for us to choose which source port as an "Emulator" in the runcommand menu when launching Doom.sh file in Emulationstation.
I think this is the best way and also it will not leave a mess with many doom.sh files in our Ports folder. I have seen that Chocolate doom from ZeroJays RetroPie-Extras repository does this with creating each chocolate-doom, chocolate-doom2, chocolate-tnt etc.
-
@tpo1990 You're amazing! It worked really well for me on a pi zero, which is still on Jessie 8. The script didn't conflict with the other doom ports. Thank you for all your work on this!
-
@jcook84 With all my testing and dedication to getting our goal with Doom split-screen on RetroPie working, i was expecting it to run without any conflicts with other doom ports. I did not expect that a pi zero would be able to run it. Thanks to you too, you kept the idea alive.
One thought to think of is that ReMooD might be able to run on the latest RetroPie version just like Doom Legacy, since ReMooD is an enhanced version of Doom Legacy and we know that ReMooD enables 4 player split-screen instead of Doom Legacy's 2 player split-screen mode.
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.