Merged changes to master pending updated release.

This commit is contained in:
Storm Dragon 2020-10-09 20:58:40 -04:00
parent e0b86e0e3c
commit fd33349864

View File

@ -6,7 +6,7 @@ export DIALOGOPTS='--no-lines --visit-items'
# Automatic update function # Automatic update function
update() { update() {
local filePath="$(command -v ${0})" local filePath="$(command -v ${0})"
if file "${filePath}" | grep 'Bourne-Again shell script, ASCII text' ; then if file "${filePath}" | grep -q 'Bourne-Again shell script, ASCII text' ; then
return return
fi fi
if [[ "$(wget --quiet -O - https://stormgames.wolfe.casa/downloads/audiogame-manager | sha256sum | cut -d ' ' -f1)" == "$(sha256sum "${filePath}" | cut -d ' ' -f1)" ]]; then if [[ "$(wget --quiet -O - https://stormgames.wolfe.casa/downloads/audiogame-manager | sha256sum | cut -d ' ' -f1)" == "$(sha256sum "${filePath}" | cut -d ' ' -f1)" ]]; then
@ -37,16 +37,21 @@ checklist() {
else else
errorList+=("Critical: Wine is not installed. You will not be able to play any games.") errorList+=("Critical: Wine is not installed. You will not be able to play any games.")
fi fi
if command -v winetricks &> /dev/null ; then
echo "Winetricks is installed."
else
errorList+=("Critical: Winetricks is not installed. This means wine cannot be configured, dependancies cannot be installed, and only self-voicing games have any chance of working.")
fi
if command -v wget &> /dev/null ; then if command -v wget &> /dev/null ; then
echo "Wget is installed." echo "Wget is installed."
else else
errorList+=("Critical: Wget is not installed. You will not be able to install any games.") errorList+=("Critical: Wget is not installed. You will not be able to install any games.")
fi fi
for i in cabextract unzip xz ; do for i in 7z cabextract unzip xz ; do
if command -v $i &> /dev/null ; then if command -v $i &> /dev/null ; then
echo "${i^} is installed." echo "${i^} is installed."
else else
errorList+=("Critical: ${i^} is not installed. You will not be able to install most games.") errorList+=("Critical: ${i^} is not installed. You will not be able to install some games or their components.")
fi fi
done done
if command -v ocrdesktop &> /dev/null ; then if command -v ocrdesktop &> /dev/null ; then
@ -69,6 +74,11 @@ checklist() {
else else
errorList+=("Warning: Wine mono not found, some games may not work.") errorList+=("Warning: Wine mono not found, some games may not work.")
fi fi
if command -v xdotool &> /dev/null ; then
echo "Xdotool is installed."
else
errorList+=("Warning: Xdotool is not installed. Some installlers may not work or may need manual intervention.")
fi
# Show the results # Show the results
if [[ ${#errorList[@]} -eq 0 ]]; then if [[ ${#errorList[@]} -eq 0 ]]; then
echo "No problems found, you are good to go." echo "No problems found, you are good to go."
@ -115,6 +125,11 @@ install_wine_bottle() {
# Arguments to the function are dependancies to be installed. # Arguments to the function are dependancies to be installed.
(wine msiexec /i z:/usr/share/wine/mono/$(ls -1 /usr/share/wine/mono/) /silent (wine msiexec /i z:/usr/share/wine/mono/$(ls -1 /usr/share/wine/mono/) /silent
wine msiexec /i z:$(ls -1 /usr/share/wine/gecko/*x86.msi) /silent wine msiexec /i z:$(ls -1 /usr/share/wine/gecko/*x86.msi) /silent
# If the game requires speechsdk, get the espeak voices.
if [[ "$*" =~ speechsdk ]]; then
download "http://sourceforge.net/projects/espeak/files/espeak/espeak-1.48/setup_espeak-1.48.04.exe"
wine "${cache}/setup_espeak-1.48.04.exe" /silent
fi
winetricks -q $@ ${winVer:-winxp} ${winetricksSettings}) | dialog --progressbox "Installing wine bottle, please wait..." -1 -1 winetricks -q $@ ${winVer:-winxp} ${winetricksSettings}) | dialog --progressbox "Installing wine bottle, please wait..." -1 -1
} }
@ -225,6 +240,15 @@ game_launcher() {
# 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.
WINEPREFIX="${HOME}/.local/wine/${game%|*}" wineserver -k WINEPREFIX="${HOME}/.local/wine/${game%|*}" wineserver -k
# launch the game # launch the game
if command -v qjoypad &> /dev/null ; then
mkdir -p ~/.qjoypad3
touch "${HOME}/.qjoypad3/${game%|*}.lyt"
if pgrep qjoypad &> /dev/null ; then
qjoypad -T "${game%|*}" 2> /dev/null
else
qjoypad -T "${game%|*}" 2> /dev/null &
fi
fi
WINEPREFIX="${HOME}/.local/wine/${game%|*}" wine start /d "${winePath}" "$wineExec" WINEPREFIX="${HOME}/.local/wine/${game%|*}" wine start /d "${winePath}" "$wineExec"
fi fi
exit 0 exit 0
@ -298,14 +322,22 @@ unset manualInstall
# Use menu friendly names. # Use menu friendly names.
gameList=( gameList=(
"Adrian's Doom" "Adrian's Doom"
"Adventurers At C"
"AudioDisc"
"Battle Zone" "Battle Zone"
"Bloodshed" "Bloodshed"
"Crazy Party" "Crazy Party"
"Easter Quest" "Easter Quest"
#"Entombed"
"Finger Panic"
"Fuck That Bird"
"Kitchensinc Games" "Kitchensinc Games"
"Light Cars" "Light Cars"
"Lockpick" "Lockpick"
"Oh Shit!" "Manamon"
"Manamon 2"
"Pontes Kickups!"
"Run For Your Life"
"Shades of Doom" "Shades of Doom"
"Super Egg Hunt" "Super Egg Hunt"
"Super Liam" "Super Liam"
@ -314,8 +346,6 @@ gameList=(
"Technoshock" "Technoshock"
"Top Speed 3" "Top Speed 3"
"Q9" "Q9"
"RS Games"
"Undead Assault"
) )
# With no arguments, open the game launcher. # With no arguments, open the game launcher.
@ -367,6 +397,20 @@ case "${game}" in
install_wine_bottle speechsdk install_wine_bottle speechsdk
download "http://www.samtupy.com/games/bloodshed.exe" download "http://www.samtupy.com/games/bloodshed.exe"
cp "${cache}/bloodshed.exe" "$WINEPREFIX/drive_c/Program Files/" cp "${cache}/bloodshed.exe" "$WINEPREFIX/drive_c/Program Files/"
add_launcher "c:\Program Files\bloodshed.exe"
;;
"Adventurers At C")
install_wine_bottle speechsdk
download "http://www.vgstorm.com/aac/aac.zip" "https://www.agarchive.net/games/vg/adventure%20at%20c%20stages.7z"
unzip -d "$WINEPREFIX/drive_c/Program Files/aac" "${cache}/aac.zip"
7z e -o"$WINEPREFIX/drive_c/Program Files/aac/stages" "${cache}/adventure at c stages.7z"
add_launcher "c:\Program Files\aac\aac.exe"
;;
"AudioDisc")
install_wine_bottle
download "https://agarchive.net/games/other/audiodisc.zip"
unzip -d "$WINEPREFIX/drive_c/Program Files" "${cache}/audiodisc.zip"
add_launcher "c:\Program Files\audiodisc\disco.exe"
;; ;;
"Crazy Party") "Crazy Party")
export winVer="win7" export winVer="win7"
@ -382,6 +426,30 @@ case "${game}" in
wine "${cache}/easter quest setup.exe" /silent wine "${cache}/easter quest setup.exe" /silent
add_launcher "c:\Program Files\MTGames\Easter Quest\easter.exe" add_launcher "c:\Program Files\MTGames\Easter Quest\easter.exe"
;; ;;
"Entombed")
install_wine_bottle msvcrt40 speechsdk xna31
download "http://www.blind-games.com/EntombedSetup.exe" "http://www.blind-games.com/EntombedUpdate.exe"
wine "${cache}/EntombedSetup.exe" /silent
wine "${cache}/EntombedUpdate.exe" /silent
#add_launcher "c:\Program Files\MTGames\Easter Quest\easter.exe"
;;
"Finger Panic")
install_wine_bottle dx8vb vb6run
download "http://www.agarchive.net/games/bsc/FingerPanicSetup.exe"
if command -v xdotool &> /dev/null ; then
wine "${cache}/FingerPanicSetup.exe" /silent | xdotool sleep 10 key alt+y --clearmodifiers
else
wine "${cache}/FingerPanicSetup.exe" /silent
fi
add_launcher "c:\Program Files\Finger Panic 1.0\FingerPanic.exe"
;;
"Fuck That Bird")
export winVer="win7"
install_wine_bottle
download "http://oriolgomez.com/games/bird_en.zip"
unzip -d "$WINEPREFIX/drive_c/Program Files/fuck that bird" "${cache}/bird_en.zip"
add_launcher "c:\Program Files\fuck that bird/game.exe"
;;
"Kitchensinc Games") "Kitchensinc Games")
install_wine_bottle vb6run speechsdk dx8vb install_wine_bottle vb6run speechsdk dx8vb
download "https://stormgames.wolfe.casa/downloads/kitchen.tar.xz" download "https://stormgames.wolfe.casa/downloads/kitchen.tar.xz"
@ -408,12 +476,34 @@ case "${game}" in
wine "${cache}/lockpicksetup.exe" /silent wine "${cache}/lockpicksetup.exe" /silent
add_launcher "c:\Program Files\lWorks\Lockpick\lockpick.exe" add_launcher "c:\Program Files\lWorks\Lockpick\lockpick.exe"
;; ;;
"Oh Shit!") "Manamon")
export winVer="win7" export winVer="win7"
install_wine_bottle msvcrt40 speechsdk install_wine_bottle speechsdk
download "http://samtupy.com/stevend/oh_shit.zip" download "https://www.vgstorm.com/manamon/manamon_installer.exe"
unzip -d "$WINEPREFIX/drive_c/Program Files" "${cache}/oh_shit.zip" wine "${cache}/manamon_installer.exe" /silent
add_launcher "c:\Program Files\oh_shit\OhShit.exe" add_launcher "c:\Program Files\VGStorm.com\Manamon\rpg.exe"
;;
"Manamon 2")
export winVer="win7"
install_wine_bottle speechsdk
download "http://www.vgstorm.com/manamon2/manamon2_installer.exe"
wine "${cache}/manamon2_installer.exe" /silent
add_launcher "c:\Program Files\VGStorm.com\Manamon 2\rpg.exe"
;;
"Pontes Kickups!")
export winVer="win7"
install_wine_bottle speechsdk
download "http://www.pontes.ro/ro/divertisment/games/PontesKickUpsInstaller.exe"
wine "${cache}/PontesKickUpsInstaller.exe" /silent /q
rm -fv "${WINEPREFIX}/drive_c/Program Files/Pontes Games/Pontes Kick-ups/nvdaControllerClient32.dll"
add_launcher "c:\Program Files\Pontes Games\Pontes Kick-ups\PontesKickUps.exe"
;;
"Run For Your Life")
export winVer="win7"
install_wine_bottle
download "http://oriolgomez.com/games/rfyl_en.zip"
unzip -d "$WINEPREFIX/drive_c/Program Files/run for your life" "${cache}/rfyl_en.zip"
add_launcher "c:\Program Files\run for your life/game.exe"
;; ;;
"Shades of Doom") "Shades of Doom")
install_wine_bottle vcrun6 install_wine_bottle vcrun6
@ -474,14 +564,6 @@ case "${game}" in
wine "${cache}/q9_english_installer.exe" /silent wine "${cache}/q9_english_installer.exe" /silent
add_launcher "c:\Program Files\Q9 Action Game\q9.exe" add_launcher "c:\Program Files\Q9 Action Game\q9.exe"
;; ;;
"RS Games")
# Does not speak with sapi.
export winetricksSettings="vd=1024x768"
install_wine_bottle speechsdk vcrun6
download "http://rsgames.org/rsdownloads/rsgclient/rsgames-client-setup-2.01.exe"
wine "${cache}/rsgames-client-setup-2.01.exe" /silent
add_launcher "c:\Program Files\RS Games Client\rsg.exe"
;;
"Make a One Time Donation") "Make a One Time Donation")
xdg-open "https://www.paypal.com/cgi-bin/webscr?cmd=_donations&business=stormdragon2976@gmail.com&lc=US&item_name=Donation+to+Storm+Games&no_note=0&cn=&currency_code=USD&bn=PP-DonationsBF:btn_donateCC_LG.gif:NonHosted" xdg-open "https://www.paypal.com/cgi-bin/webscr?cmd=_donations&business=stormdragon2976@gmail.com&lc=US&item_name=Donation+to+Storm+Games&no_note=0&cn=&currency_code=USD&bn=PP-DonationsBF:btn_donateCC_LG.gif:NonHosted"
;; ;;