Finally, RS Games working. More fixes needed for some games.

This commit is contained in:
stormdragon2976 2023-01-30 23:56:21 -05:00
parent b434cc16db
commit e5253d7757

View File

@ -306,7 +306,7 @@ get_bottle() {
"revelation"*) ;& "revelation"*) ;&
"swamp"*) ;& "swamp"*) ;&
"triple -triad"*) "triple -triad"*)
version="7.7" install_wine "7.7" "32"
export WINEPREFIX="${HOME}/.local/wine/aprone" ;; export WINEPREFIX="${HOME}/.local/wine/aprone" ;;
"bg-"*) export WINEPREFIX="${HOME}/.local/wine/bg";; "bg-"*) export WINEPREFIX="${HOME}/.local/wine/bg";;
# ESP Pinball games # ESP Pinball games
@ -348,6 +348,10 @@ get_bottle() {
"challenge-of-the-horse"*) export WINEPREFIX="${HOME}/.local/wine/tunmi13";; "challenge-of-the-horse"*) export WINEPREFIX="${HOME}/.local/wine/tunmi13";;
*) export WINEPREFIX="${HOME}/.local/wine/${game%|*}";; *) export WINEPREFIX="${HOME}/.local/wine/${game%|*}";;
esac esac
# Wine version for bottles
if [[ "$game" =~ rs-games ]]; then
install_wine "7.0" "32"
fi
} }
get_installer() { get_installer() {
@ -531,19 +535,19 @@ install_rhvoice() {
download "${RHVoice[${voiceName}]}" download "${RHVoice[${voiceName}]}"
winetricks -q win8 winetricks -q win8
echo "Installing RHVoice ${voiceName^}..." echo "Installing RHVoice ${voiceName^}..."
wine "${cache}/${voiceFile}" & ${wine} "${cache}/${voiceFile}" &
sleep 20 sleep 20
wineserver -k ${wine}server -k
} }
install_wine_bottle() { install_wine_bottle() {
# 32 bit installations work best and are the default here, if you need to override it, do it in the game specific installation steps. # 32 bit installations work best and are the default here, if you need to override it, do it in the game specific installation steps.
export WINEARCH="${WINEARCH:-win32}" export WINEARCH="${WINEARCH:-win32}"
# Figure out if we are using a specific version of wine # Figure out if we are using a specific version of wine
wine="${wine:-$(command -v wine)}" export wine="${wine:-$(command -v wine)}"
# Set the WINE and WINESERVER environmental variables so winetricks will use the right installation. # Set the WINE and WINESERVER environmental variables so winetricks will use the right installation.
WINE="${wine}" export WINE="${wine}"
WINESERVER="${wine}server" export WINESERVER="${wine}server"
if [[ -z "$bottle" ]]; then if [[ -z "$bottle" ]]; then
local bottle="${game,,}" local bottle="${game,,}"
bottle="${bottle//[[:space:]]/-}" bottle="${bottle//[[:space:]]/-}"
@ -569,8 +573,8 @@ install_wine_bottle() {
{ echo -n "Using " { echo -n "Using "
${wine} --version ${wine} --version
DISPLAY="" ${wine}boot -u DISPLAY="" ${wine}boot -u
$wine msiexec /i z:"$monoPath" /quiet ${wine} msiexec /i z:"$monoPath" /quiet
$wine msiexec /i z:"$geckoPath" /quiet ${wine} msiexec /i z:"$geckoPath" /quiet
if [[ "${*}" =~ (speechsdk|sapi) ]]; then if [[ "${*}" =~ (speechsdk|sapi) ]]; then
install_rhvoice install_rhvoice
fi fi
@ -750,13 +754,15 @@ game_launcher() {
exit 0 exit 0
fi fi
get_bottle "$game" get_bottle "$game"
echo -n "launching "
${wine} --version
local winePath="${game#*|}" local winePath="${game#*|}"
winePath="${winePath%\\*.exe}" winePath="${winePath%\\*.exe}"
local wineExec="${game#*|}" local wineExec="${game#*|}"
wineExec="${wineExec%|*}" wineExec="${wineExec%|*}"
wineExec="${wineExec##*\\}" wineExec="${wineExec##*\\}"
# kill any previous existing wineservers for this prefix in case they didn't shut down properly. # kill any previous existing wineservers for this prefix in case they didn't shut down properly.
wineserver -k ${wine}server -k
# launch the game # launch the game
if command -v qjoypad &> /dev/null ; then if command -v qjoypad &> /dev/null ; then
mkdir -p ~/.qjoypad3 mkdir -p ~/.qjoypad3
@ -829,9 +835,6 @@ game_launcher() {
if [[ "$game" =~ sketchbook ]]; then if [[ "$game" =~ sketchbook ]]; then
find "${WINEPREFIX}" -type f -name 'nvdaControllerClient32.dll' -exec cp -v "${cache}/nvdaControllerClient32.dll" "{}" \; find "${WINEPREFIX}" -type f -name 'nvdaControllerClient32.dll' -exec cp -v "${cache}/nvdaControllerClient32.dll" "{}" \;
fi fi
if [[ "$game" =~ swamp ]]; then
export version="7.7"
fi
if [[ "$game" =~ audiodisc ]]; then if [[ "$game" =~ audiodisc ]]; then
wine "$winePath\\$wineExec" wine "$winePath\\$wineExec"
exit 0 exit 0
@ -843,10 +846,9 @@ game_launcher() {
if [[ "$game" =~ entombed ]]; then if [[ "$game" =~ entombed ]]; then
export version="7.0" export version="7.0"
fi fi
if [[ "$game" =~ rs-games ]] || [[ "$game" =~ screaming-strike-2 ]]; then if [[ "$game" =~ screaming-strike-2 ]]; then
export version="7.7"
pushd "$(winepath "$winePath")" pushd "$(winepath "$winePath")"
wine "$wineExec" ${wine} "$wineExec"
popd popd
exit 0 exit 0
fi fi
@ -871,8 +873,6 @@ game_launcher() {
else else
wine="$(command -v wine64)" wine="$(command -v wine64)"
fi fi
echo -n "launching "
${wine} --version
$wine start /realtime /d "${winePath}" "$wineExec" $wine start /realtime /d "${winePath}" "$wineExec"
else else
# Figure out which wine version to use # Figure out which wine version to use
@ -882,8 +882,6 @@ game_launcher() {
else else
wine="$(command -v wine)" wine="$(command -v wine)"
fi fi
echo -n "launching "
${wine} --version
$wine start /d "${winePath}" "$wineExec" /realtime $wine start /d "${winePath}" "$wineExec" /realtime
fi fi
fi fi
@ -2513,12 +2511,12 @@ EOF
add_launcher "c:\Program Files\RTR Offline\rtr.exe" add_launcher "c:\Program Files\RTR Offline\rtr.exe"
;; ;;
"RS Games") "RS Games")
export version="7.7" export version="7.0"
install_wine "$version" "32" install_wine "$version" "32"
export winVer="win7" export winVer="win7"
install_wine_bottle speechsdk install_wine_bottle speechsdk
download "http://rsgames.org/rsdownloads/rsgclient/rsgames-client-setup-2.01.exe" "https://stormgames.wolfe.casa/downloads/nvdaControllerClient32.dll" download "http://rsgames.org/rsdownloads/rsgclient/rsgames-client-setup-2.01.exe" "https://stormgames.wolfe.casa/downloads/nvdaControllerClient32.dll"
wine "${cache}/rsgames-client-setup-2.01.exe" /silent ${wine} "${cache}/rsgames-client-setup-2.01.exe" /silent
find "${WINEPREFIX}" -type f -name 'nvdaControllerClient32.dll' -exec cp -v "${cache}/nvdaControllerClient32.dll" "{}" \; find "${WINEPREFIX}" -type f -name 'nvdaControllerClient32.dll' -exec cp -v "${cache}/nvdaControllerClient32.dll" "{}" \;
add_launcher "c:\Program Files\RS Games Client\rsg.exe" add_launcher "c:\Program Files\RS Games Client\rsg.exe"
;; ;;