Skip to content

Add Splitwolf: Splitscreen Wolfenstein 3D#2532

Merged
joolswills merged 1 commit into
RetroPie:masterfrom
lazd:splitwolf
Jan 20, 2019
Merged

Add Splitwolf: Splitscreen Wolfenstein 3D#2532
joolswills merged 1 commit into
RetroPie:masterfrom
lazd:splitwolf

Conversation

@lazd
Copy link
Copy Markdown
Contributor

@lazd lazd commented Nov 16, 2018

Splitwolf

Based on the same setup script as Wolf4SDL, this PR adds Splitwolf from Team Raycast, 2-4 player splitscreen Wolfenstein 3D with new game modes and full gamepad support!

1540921030208-screen-shot-2018-10-30-at-10 36 31-am

That's right, you can frag Nazis with up to 4 of your friends on the big screen!

Notable Features

  • Modern FPS gamepad controls (strafe/move with left stick, rotate with right stick)
  • Smooth gamepad controls let you strafe, turn, and creep up slowly behind your enemies
  • Classic co-op and 9 new game modes (Instagib, Nazi Zombies, Carry the Flag, Melee Rampage, Defuse the Bomb, and more)
  • Graphic, zoomable minimap with all player locations
  • Deployable MG42 machine gun
  • Armored vehicle equipped with a mounted gatling gun spawns in areas with lots of enemies
  • Gib animations when enemies are killed with gatling gun at close range or punched with fists in Rampage mode
  • Support for SDL_GameControllerDB with controller mappings for all known game controllers
  • Ability to remap all 13 supported gamepad buttons
  • Support for SDL_GameControllerDB with controller mappings for all known game controllers
  • Ability to set per-gamepad sensitivity settings (so you can turn faster without pressing run)
  • Support enabling/disabling moving with mouse (player 1 only)
  • Support mapping strafe left/right and weapon prev/next to keyboard keys

Installation

Installation works identically to Wolf4SDL, with the same logic to check which game files are available. Binaries were compiled on Raspbian 8 (Jessie), so they work properly on old and new RetroPie setups alike.

Game files should be added to roms/ports/wolf3d/ before installation. If not present, the install script will download the shareware versions of Wolf3D and Spear of Destiny.

Support

For RetroPie-specific Splitwolf support and questions (RetroPie installation, game files, etc), post on the RetroPie forums.

For general Splitwolf support and questions (how to build, support for other platforms, map packs, etc), post on the Team Raycast forums.

If you already have Splitwolf up and running and you've found a bug (glitch with the game, crash while playing, etc), please report it using the Splitwolf issue tracker.

If you've found a bug with the RetroPie Setup installer, please report it using the RetroPie-Setup issue tracker.

DO NOT USE ISSUE TRACKERS FOR GENERAL SUPPORT OR QUESTIONS, YOU WILL NOT BE HELPED!

See the Splitwolf wiki for additional details, compilation instructions, game mode instructions, etc.

Credits

None of this would be possible without the hard work of the following people:

Multiplayer framework, new game modes: LinuxWolf

Gamepad support, configuration UI, and RetroPie implementation: lazd

Additional art: DoomJedi, Untrustable, Atina, PSTrooper, ArmanAhmadi

Title Screen: Atina

Title Screen Font: Tormentor667

SDL Port: Moritz "Ripper" Kroll (http://www.chaos-software.de.vu)

Original Wolfenstein 3D: id Software (http://www.idsoftware.com)

@joolswills
Copy link
Copy Markdown
Member

Thanks. I think rather than duplicating a lot of the functionality this could be implemented reusing some of the code from the other module which is what we do elsewhere when modules share similar code.

@lazd
Copy link
Copy Markdown
Contributor Author

lazd commented Nov 16, 2018

@joolswills glad to make that change if possible, can you point me to an example? I'll see what can be shared.

@joolswills
Copy link
Copy Markdown
Member

eg. amiberry uses some of uae4arm module code.

In regards to this module it should be able to reuse gamedata from the wolfsdl module as well as the code there.

@DoomJedi
Copy link
Copy Markdown

Can I help this conversation? Member of SplitWolf team.

@lazd
Copy link
Copy Markdown
Contributor Author

lazd commented Nov 16, 2018

@joolswills good call on the game data, I was thinking about that. I will make that change.

I will investigate what I can share between wolf4sdl's install script and this one and get back to you shortly.

@DoomJedi no worries, I will handle it :)

@lazd
Copy link
Copy Markdown
Contributor Author

lazd commented Nov 16, 2018

@joolswills ok, I've pushed a commit that uses the same ROM directory as wolf4sdl (roms/wolf3d), as well as binaries with the new changes. I tested them on my RetroPie setup and they're working nicely with all the game files in the same folder.

After investigating to see if there is anything to share between the wolf4sdl install script and this one, I found that the only function we could share directly is downloading game files (even dependencies are different as we're using SDL2 here). However, the existing wolf4sdl setup script does not compile a Spear of Destiny Demo binary, so it doesn't make sense for wolf4sdl to download Spear of Destiny Demo files.

Instead of modifying wolf4sdl in this pull request to support Spear of Destiny Demo, or modifying wolf4sdl's setup script to download game files it doesn't use, I propose that I send a subsequent pull request that does the following:

  1. Uses my SDL2 fork of wolf4sdl that adds full game controller support
  2. Builds a wolf4sdl Spear of Destiny Demo binary
  3. Downloads Spear of Destiny Demo files for wolf4sdl
  4. Shares depends_wolf4sdl with Splitwolf
  5. Shares game_data_wolf4sdl with Splitwolf

This subsequent pull request will have to come after the holidays, but I will definitely send it. What do you say?

@lazd
Copy link
Copy Markdown
Contributor Author

lazd commented Nov 20, 2018

@joolswills, think we can get this in as-is and update Wolf4SDL later?

@joolswills
Copy link
Copy Markdown
Member

no sorry. I think the module needs work to less duplicate the functionality of the wolf4sdl module but I don't have time to help you do this currently. I may look into this at some point and re-implement the module myself so it shares functions.

@lazd
Copy link
Copy Markdown
Contributor Author

lazd commented Nov 21, 2018

Ok, I have consolidated:

  • game_data_wolf4sdl - This means that wolf4sdl will download Spear of Destiny Demo game files, but does not use them Now wolf4sdl builds a Spear of Destiny Demo file and uses these game files
  • add_games_wolf4sdl - associative array of game files and their names is passed

I cannot consolidate:

  • depends_splitwolf - Splitwolf uses libsdl2-dev libsdl2-mixer-dev, wolf4sdl uses libsdl1.2-dev libsdl-mixer1.2-dev
  • install_bin_splitwolf - wolf4sdl does not provide binary installation
  • sources_splitwolf - Splitwolf uses different sources
  • build_wolf4sdl and _get_opts_splitwolf - Splitwolf uses different make options and creates 2 additional binaries
  • install_splitwolf - This performs operations that are Splitwolf-specific
  • configure_splitwolf - There is enough different stuff going on here (different binaries and source files supported, different emulator entries to delete) that it is non-trivial to consolidate, and doing so would probably have a negative effect on maintainability due to the added complexity

@joolswills Is this enough? I can't think of anything else that is worth consolidating.

@joolswills
Copy link
Copy Markdown
Member

The game data could have parameters so it downloads only required files.

There should be no install_bin - there should be sources_ and install_ only. install_bin is for binary only packages which we try and avoid.

Comment thread scriptmodules/ports/wolf4sdl.sh Outdated
}

function add_games_wolf4sdl() {
eval "declare -A games="${2#*=}
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

there is no need to do this - you can access games from this function if games is set in the parent with local scope.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hmm, even in Splitwolf? I need to change the games parameter for Splitwolf, hence this gross little eval.

Copy link
Copy Markdown
Contributor Author

@lazd lazd Nov 21, 2018

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I originally moved the declare -A wolf3d_games=(...) for the array up to the top of the splitwolf.sh and tried to use it as a global variable, but add_games_wolf4sdl inside of wolf4sdl.sh could not access it, so instead I passed it in and used this hack to define it because you cannot pass an associative array in bash.

If there is a better way, I'll gladly do it, but I am not aware.

Comment thread scriptmodules/ports/wolf4sdl.sh Outdated
if [[ ! -f "$romdir/ports/wolf3d/vswap.wl6" && ! -f "$romdir/ports/wolf3d/vswap.wl1" ]]; then
if [[ ! -f "$romdir/ports/wolf3d/vswap.wl1" &&
! -f "$romdir/ports/wolf3d/vswap.wl6"
]]; then
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

no need to reformat existing code as part of the addition.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ok will fix

@lazd
Copy link
Copy Markdown
Contributor Author

lazd commented Nov 21, 2018

There should be no install_bin - there should be sources_ and install_ only. install_bin is for binary only packages which we try and avoid.

We provide binaries because the Splitwolf build takes about 5 minutes on a 3B+ and 45 minutes on a Zero! You want us to remove the option to install from binary?

@lazd
Copy link
Copy Markdown
Contributor Author

lazd commented Nov 21, 2018

The game data could have parameters so it downloads only required files.

Instead of doing this, I'll just modify wolf4sdl to build the Spear of Destiny Demo so people can play it. Otherwise I'll just be adding code I'll remove when I fix wolf4sdl in my next PR. Agreed?

@lazd
Copy link
Copy Markdown
Contributor Author

lazd commented Nov 21, 2018

@joolswills just pushed a commit that fixes formatting and updates wolf4sdl to create a Spear of Destiny Demo binary and link.

Comment thread scriptmodules/ports/splitwolf.sh Outdated
['vswap.sdm']="Splitwolf - Spear of Destiny Demo"
)

add_games_wolf4sdl "$md_inst/bin/splitwolf.sh %ROM%" "$(declare -p games)"
Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@joolswills this is where I pass games in splitwolf.sh -- if I defined it as local above, add_games_wolf4sdl would not be able to access it.

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

it would be able to access it

bash local scope variables are usable in child functions - we use that for the $md_ variables which are passed to the modules - they are local in the parent.

Copy link
Copy Markdown
Contributor Author

@lazd lazd Nov 21, 2018

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

No, that doesn't work. If i use declare -A at the top of splitwolf.sh, I cannot access it inside of wolf4sdl.sh's functions as it is overridden by wolf4sdl's definition of the variable by the same name.

Honestly, we are way outside of my knowledge when it comes to bash scripting. What you're describing sounds like it should be possible, but I do not know how to accomplish it. If you can tell me precisely the code change you want to see, I'll gladly do it, but I've been reading about this for an hour and I cannot come up with anything better than passing the serialized associative array as a parameter.

@joolswills
Copy link
Copy Markdown
Member

We provide binaries because the Splitwolf build takes about 5 minutes on a 3B+ and 45 minutes on a Zero! You want us to remove the option to install from binary?

Yes please.

@joolswills
Copy link
Copy Markdown
Member

Instead of doing this, I'll just modify wolf4sdl to build the Spear of Destiny Demo so people can play it. Otherwise I'll just be adding code I'll remove when I fix wolf4sdl in my next PR. Agreed?

I think I understand - go ahead for now.

@lazd
Copy link
Copy Markdown
Contributor Author

lazd commented Nov 21, 2018

We provide binaries because the Splitwolf build takes about 5 minutes on a 3B+ and 45 minutes on a Zero! You want us to remove the option to install from binary?

Yes please.

@joolswills I don't understand. You can choose to install Splitwolf from source, it is not a binary-only release.

image

Many other packages provide binaries, including:

  • lincity
  • micropolis
  • minecraft
  • supertux

Why shouldn't Splitwolf provide a binary install option in addition to source? It needs to build 6 separate binaries, and 45 minutes is a long time to compile for people on less powerful Raspberry Pis.

@psyke83
Copy link
Copy Markdown
Member

psyke83 commented Nov 22, 2018

@lazd,

Just to clarify re: binary installations, see: https://github.com/RetroPie/RetroPie-Setup/blob/master/scriptmodules/packages.sh#L233

If you remove the custom install_bin_splitwolf function, binary installation can still occur via the generic rp_installBin function (also in that script) which sources binaries that Jools builds from the RetroPie server. Binaries are provided for main and opt packages, so your scriptmodule would be covered.

@lazd
Copy link
Copy Markdown
Contributor Author

lazd commented Nov 22, 2018

@psyke83, thanks for clarifying, I had no idea that was how it worked; I thought @joolswills was saying that binary installation would not be supported! I have removed the function.

@joolswills How are the binaries generated? I assume they will include the contents of lwmp.zip and the gamecontrollerdb.txt that need to be in the bin/ directory for splitwolf to work.

@psyke83
Copy link
Copy Markdown
Member

psyke83 commented Nov 22, 2018

The binary will include the entire contents of $md_inst that is produced after running the depends/sources/build/install (in a chroot environment). I can see from the current code that you move those files to the bin folder which are marked for installation to the module's installation directory, so as long as your script is building from source correctly, yes, they would be included in the generated binaries.

@joolswills
Copy link
Copy Markdown
Member

joolswills commented Nov 22, 2018

Apologies for not going into detail. I was short on time. Thanks @psyke83 for clarifying.

Regarding a reply I saw in email but I think you removed regarding variable scope. I guess you have it working, but in case it's useful - a local var in bash is available for the function and any child functions called by it. We use it in RetroPie-Setup for the $md_ vars that are usable in modules. They are local to the parent.

@RetroPie RetroPie deleted a comment from DoomJedi Nov 22, 2018
@lazd
Copy link
Copy Markdown
Contributor Author

lazd commented Dec 1, 2018

Hey @joolswills, please let me know if there is anything else I can do to get this ready to merge. Thanks!

@joolswills
Copy link
Copy Markdown
Member

Just the variable scope stuff I mentioned above.

Comment thread scriptmodules/ports/splitwolf.sh Outdated
rp_module_desc="SplitWolf - 2-4 player split-screen Wolfenstein 3D / Spear of Destiny"
rp_module_help="Game File Extension: .wl6, .sod, .sd2, .sd3\n\nCopy your game files to $romdir/ports/wolf3d/\n\nIf you add new game files, run: sudo ~/RetroPie-Setup/retropie_packages.sh splitwolf configure"
rp_module_licence="NONCOM https://bitbucket.org/linuxwolf6/splitwolf/src/master/license-mame.txt"
rp_module_section="opt"
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please use "exp" for now.

Comment thread scriptmodules/ports/splitwolf.sh Outdated
rp_module_help="Game File Extension: .wl6, .sod, .sd2, .sd3\n\nCopy your game files to $romdir/ports/wolf3d/\n\nIf you add new game files, run: sudo ~/RetroPie-Setup/retropie_packages.sh splitwolf configure"
rp_module_licence="NONCOM https://bitbucket.org/linuxwolf6/splitwolf/src/master/license-mame.txt"
rp_module_section="opt"
rp_module_flags="dispmanx !mali !kms"
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

please remove !mali and !kms - as it's sdl2 it should be fine on those targets.

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

as it's sdl2 dispmanx should be removed also.

Comment thread scriptmodules/ports/splitwolf.sh Outdated
Comment thread scriptmodules/ports/splitwolf.sh Outdated
}

function build_splitwolf() {
mkdir "bin"
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

use mkdir -p

Comment thread scriptmodules/ports/splitwolf.sh Outdated
local defs="${opt#* }"
make clean
make $defs DATADIR="$romdir/ports/wolf3d/"
mv $bin "bin/$bin"
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

vars should be quoted.

Comment thread scriptmodules/ports/splitwolf.sh Outdated

moveConfigDir "$home/.splitwolf" "$md_conf_root/splitwolf"

setDispmanx "$md_id" 1
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

this is an sdl1 only feature.

@joolswills
Copy link
Copy Markdown
Member

Went over the code again and noticed a few things. Thanks.

@lazd
Copy link
Copy Markdown
Contributor Author

lazd commented Dec 29, 2018

@joolswills thanks for the thorough review, I have implemented all of your feedback and tested locally.

There was one issue I could not address, the issue of variable scoping for the $games variable.

Regarding a reply I saw in email but I think you removed regarding variable scope.

The reply you're referencing is here: #2532 (comment)

The issue here is that we need the associative array $games to be different between splitwolf.sh and wolf4sdl.sh, and we need to use it inside of the add_games_wolf4sdl function, which is declared in wolf4sdl.sh and also used by splitwolf.sh.

Now, from your replies, I gather that you do not want me to pass the variable around, and instead want the variable to be declared at the top of the file and accessed within a function.

So, if I declare it with a unique name, $wolf_games, at the top of wolf4sdl.sh as follows:

declare -A -g wolf_games=(
    ['vswap.wl1']="Wolfenstein 3D demo"
    ['vswap.wl6']="Wolfenstein 3D"
    ['vswap.sd1']="Wolfenstein 3D - Spear of Destiny Ep 1"
    ['vswap.sd2']="Wolfenstein 3D - Spear of Destiny Ep 2"
    ['vswap.sd3']="Wolfenstein 3D - Spear of Destiny Ep 3"
    ['vswap.sdm']="Wolfenstein 3D - Spear of Destiny Demo"
)

Then, I can use it within wolf4sdl.sh's add_games_wolf4sdl, and it works fine, as expected.

However, if I then declare $wolf_games inside of splitwolf.sh as follows:

declare -A -g wolf_games=(
    ['vswap.wl1']="Splitwolf - Wolf 3D Demo"
    ['vswap.wl6']="Splitwolf - Wolf 3D"
    ['vswap.sod']="Splitwolf - Spear of Destiny Ep 1"
    ['vswap.sd2']="Splitwolf - Spear of Destiny Ep 2"
    ['vswap.sd3']="Splitwolf - Spear of Destiny Ep 3"
    ['vswap.sdm']="Splitwolf - Spear of Destiny Demo"
)

It does not override the $wolf_games variable declared in wolf4sdl.sh, so when I run add_games_wolf4sdl from within splitwolf.sh, I incorrectly get the $wolf_games variable for wolf4sdl.

The solution to this problem is to serialize $games and pass it as an argument to add_games_wolf4sdl, which then evaluates it, declaring it within the scope of the function. That way, splitwolf.sh can define its own, unique $games associative array and pass it to wolf4sdl.sh's add_games_wolf4sdl function. This is what I have implemented, hence the eval "declare -A games="${2#*=} within add_games_wolf4sdl.

This is the only way I found to pass associative arrays between functions in Bash (source https://stackoverflow.com/a/8879444). If there is a better way to do this, I'll gladly implement it, but declaring the variable globally will not work.

@joolswills
Copy link
Copy Markdown
Member

joolswills commented Dec 31, 2018

I think you misunderstood. You declare it inside the parent function, as a local array. Then use it in the child function.

As I said above, we use this in retropie for the md_ vars. They are not globals.

@lazd
Copy link
Copy Markdown
Contributor Author

lazd commented Dec 31, 2018 via email

@joolswills
Copy link
Copy Markdown
Member

diff --git a/scriptmodules/ports/splitwolf.sh b/scriptmodules/ports/splitwolf.sh
index e3eac2d3..4b985482 100644
--- a/scriptmodules/ports/splitwolf.sh
+++ b/scriptmodules/ports/splitwolf.sh
@@ -111,7 +111,7 @@ _EOF_
         ['vswap.sdm']="Splitwolf - Spear of Destiny Demo"
     )
 
-    add_games_wolf4sdl "$md_inst/bin/splitwolf.sh %ROM%" "splitwolf" "$(declare -p games)"
+    add_games_wolf4sdl "$md_inst/bin/splitwolf.sh %ROM%" "splitwolf"
 
     moveConfigDir "$home/.splitwolf" "$md_conf_root/splitwolf"
 }
diff --git a/scriptmodules/ports/wolf4sdl.sh b/scriptmodules/ports/wolf4sdl.sh
index 58991531..49b8b122 100644
--- a/scriptmodules/ports/wolf4sdl.sh
+++ b/scriptmodules/ports/wolf4sdl.sh
@@ -32,7 +32,6 @@ function _get_opts_wolf4sdl() {
 }
 
 function add_games_wolf4sdl() {
-    eval "declare -A games="${3#*=}
     local port="$2"
     local cmd="$1"
     local game
@@ -136,7 +135,7 @@ _EOF_
         ['vswap.sdm']="Wolfenstein 3D - Spear of Destiny Demo"
     )
 
-    add_games_wolf4sdl "$md_inst/bin/wolf4sdl.sh %ROM%" "wolf3d" "$(declare -p games)"
+    add_games_wolf4sdl "$md_inst/bin/wolf4sdl.sh %ROM%" "wolf3d"
 
     moveConfigDir "$home/.wolf4sdl" "$md_conf_root/wolf3d"
 

@joolswills
Copy link
Copy Markdown
Member

In addition, the add_games functions need to be standalone, so both modules need that function that should contain the array declaration - another _add_games can be created that goes through the array.

@lazd
Copy link
Copy Markdown
Contributor Author

lazd commented Jan 4, 2019

Ok, @joolswills, I've made the change. Each script now has its own add_games_* function that declares games_wolf4sdl globally, and there is a shared add_ports_wolf4sdl that iterates over the global variable games_wolf4sdl and adds the ports.

Is there anything else here for me to correct?

Comment thread scriptmodules/ports/splitwolf.sh Outdated
# remove obsolete emulator entries
while read game; do
delEmulator "${game%% *}" "splitwolf"
done < <(_get_opts_splitwolf)
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

What's this needed for ?

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

If this code is unnecessary I can remove it from both wolf4sdl and splitwolf install scripts, just say the word.

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

You don't need it then. It was added to wolf4sdl to remove entries from older versions of the module. Since this is a new module it's not needed.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@joolswills done deal, I removed it from Splitwolf only.

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It's needed for wolf4sdl.

@joolswills
Copy link
Copy Markdown
Member

Thanks. BTW you are not defining the array globally but locally. Just that in bash local variables can be accessed from any child functions.

I made one more comment about clarification about some code - as I'm not sure it's needed.

@joolswills
Copy link
Copy Markdown
Member

Please can you squash this PR and I will merge. Thanks.

@lazd lazd force-pushed the splitwolf branch 2 times, most recently from 1d40ea7 to 81d8932 Compare January 13, 2019 18:40
@lazd
Copy link
Copy Markdown
Contributor Author

lazd commented Jan 13, 2019

@joolswills squashed and ready to merge. Thanks for your thorough reviews and help getting this into shape.

A couple of questions:

  1. How should users update RetroPie-Setup to get the new script?
  2. When will a binary install be available?

@joolswills
Copy link
Copy Markdown
Member

They can choose "update retropie-setup" to just have it appear. Binaries won't be available for exp modules, but I am happy to move it later and build binaries etc. Could open a thread on the forum for user testing and get some feedback.

@joolswills joolswills merged commit 0d712d6 into RetroPie:master Jan 20, 2019
@joolswills
Copy link
Copy Markdown
Member

Merged - thanks for your hard work on this.

@DoomJedi
Copy link
Copy Markdown

Couldn't find SplitWolf in latest retropie...did I miss it? If not, why was it removed?

@joolswills
Copy link
Copy Markdown
Member

@DoomJedi It's in the experimental section - but please use the forum for support.

@DoomJedi
Copy link
Copy Markdown

DoomJedi commented Sep 6, 2020

Thank you, glad to hear, will check there. Sorry for bumping this thread.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants