Merge branch 'testing' in preparation for binary release.

This commit is contained in:
Storm Dragon 2022-02-06 14:36:21 -05:00
commit ace9f56ae9
2 changed files with 170 additions and 70 deletions

View File

@ -354,7 +354,23 @@ download() {
get_bottle() {
# Handles games that use the same wine bottle
case "${game}" in
# Aprone (Jeremy Kaldobsky) games.
"castaways"*) ;&
"castaways-2"*) ;&
"daytona-and-the-book-of-gold"*) ;&
"dog-who-hates-toast"*) ;&
"lunimals"*) ;&
"paw-prints"*) ;&
"preludeamals"*) ;&
"puzzle-divided"*) ;&
"revelation"*) ;&
"swamp"*) ;&
"triple -triad"*) export WINEPREFIX="${HOME}/.local/wine/aprone" ;;
"bg-"*) export WINEPREFIX="${HOME}/.local/wine/bg";;
# ESP Pinball games
"esp-pinball-classic"*) export WINEPREFIX="${HOME}/.local/wine/esp-pinball";;
"esp-pinball-extreme"*) export WINEPREFIX="${HOME}/.local/wine/esp-pinball";;
"esp-pinball-party-pack"*) export WINEPREFIX="${HOME}/.local/wine/esp-pinball";;
# l-works games group
"duck-hunt"*) ;&
"judgement-day"*) ;&
@ -376,10 +392,9 @@ get_bottle() {
"run-for-your-life"*) ;&
"thief"*) ;&
"villains-from-beyond"*) export WINEPREFIX="${HOME}/.local/wine/oriol-gomez";;
# ESP Pinball games
"esp-pinball-classic"*) export WINEPREFIX="${HOME}/.local/wine/esp-pinball";;
"esp-pinball-extreme"*) export WINEPREFIX="${HOME}/.local/wine/esp-pinball";;
"esp-pinball-party-pack"*) export WINEPREFIX="${HOME}/.local/wine/esp-pinball";;
# tunmi13 games group
"battle-of-the-hunter"*) ;&
"challenge-of-the-horse"*) export WINEPREFIX="${HOME}/.local/wine/tunmi13";;
*) export WINEPREFIX="${HOME}/.local/wine/${game%|*}";;
esac
}
@ -498,6 +513,21 @@ winetricks() {
${cache}/winetricks "$@"
}
install_rhvoice() {
if [[ -d "$HOME/.local/wine/${bottle}/drive_c/Program Files/Olga Yakovleva/" ]]; then
return
fi
if [[ "$norh" == "true" ]]; then
return
fi
download "https://rhvoice.eu-central-1.linodeobjects.com/RHVoice-voice-English-Bdl-v4.1.9-setup.exe"
winetricks -q win8
echo "Installing RHVoice..."
wine "${cache}/RHVoice-voice-English-Bdl-v4.1.9-setup.exe" &
sleep 20
wineserver -k
}
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.
export WINEARCH="${WINEARCH:-win32}"
@ -522,41 +552,14 @@ install_wine_bottle() {
download 'http://dl.winehq.org/wine/wine-gecko/2.40/wine_gecko-2.40-x86.msi'
geckoPath="${cache}/wine_gecko-2.40-x86.msi"
fi
if [[ "${WINEARCH}" == "win32" ]]; then
# This is in a brace list to pipe through dialog.
{ DISPLAY="" wineboot -u
wine msiexec /i z:"$monoPath" /quiet
wine msiexec /i z:"$geckoPath" /quiet
if [[ "${*}" =~ speechsdk ]]; then
download "https://rhvoice.eu-central-1.linodeobjects.com/RHVoice-voice-English-Bdl-v4.1.9-setup.exe"
winetricks -q win8
echo "Installing RHVoice..."
wine "${cache}/RHVoice-voice-English-Bdl-v4.1.9-setup.exe" &
sleep 20
wineserver -k
if [[ "${*}" =~ speechsdk ]] || [[ "${WINEARCH}" == "win64" ]]; then
install_rhvoice
fi
winetricks -q $@ ${winVer:-winxp} ${winetricksSettings}; } | dialog --progressbox "Installing wine bottle, please wait..." -1 -1
else
# This is in a brace list to pipe through dialog.
download "https://nashcentral.duckdns.org/projects/wine.tar.gz"
{ tar xf "${cache}/wine.tar.gz" -C "${HOME}/.local/wine/"
mv "${HOME}/.local/wine/.wine/drive_c/users/user" "${HOME}/.local/wine/.wine/drive_c/users/${USER}"
if [[ "$(uname)" == "Darwin" ]]; then
gsed -i 's/"DefaultTTSRate"=dword:00000000/"DefaultTTSRate"=dword:00000005/' "${HOME}/.local/wine/.wine/user.reg"
else
sed -i 's/"DefaultTTSRate"=dword:00000000/"DefaultTTSRate"=dword:00000005/' "${HOME}/.local/wine/.wine/user.reg"
fi
mv "${HOME}/.local/wine/.wine/" "${WINEPREFIX}/"
wine64 cmd /c exit
wine msiexec /i z:"$monoPath" /quiet
wine msiexec /i z:"$geckoPath" /quiet
if [[ -z "$winVer" ]]; then
download "http://kitchen.kaldobsky.com/ttsgames/SpeechXP.exe"
winetricks -q winxp
wine "${cache}/SpeechXP.exe" /silent
fi
winetricks -q $@ ${winVer:-winxp} ${winetricksSettings}; } | dialog --progressbox "Installing wine bottle, please wait..." -1 -1
fi
}
@ -888,6 +891,7 @@ gameList=(
#"Breed Memorial"
"Castaways"
"Castaways 2"
"Challenge of the Horse"
#"Chopper Challenge"
"Christmas WhoopAss"
#"Constant Battle"
@ -896,8 +900,10 @@ gameList=(
"Crazy Tennis"
"Crime Hunter"
"Danger on the Wheel"
"Daytona and the Book of Gold"
"Death on the Road"
"Deathmatch"
"Dog Who Hates Toast"
"Duck Hunt"
"DynaMan"
"Easter Quest"
@ -937,11 +943,15 @@ gameList=(
"Palace Punch Up"
"Paladin of the Sky"
"Park Boss"
"Paw Prints"
"Perilous Hearts"
"Pontes Kickups!"
"Pigeon Panic"
"Preludeamals"
#"Psycho Strike"
"Puzzle Divided"
"Q9"
"Revelation"
"Rhythm Rage"
#"River raiders"
"RS Games"
@ -968,6 +978,7 @@ gameList=(
"The Blind Swordsman"
#"The Gate"
"The Great Toy Robbery"
"The Vale"
"Thief"
"Traders of Known Space"
#"Three D velocity"
@ -1011,6 +1022,7 @@ declare -A command=(
[L]="Display license information."
[l:]="Launch given game without interactive audiogame-manager menu specified by its wine bottle."
[N]="No cache, delete the installer after it has been extracted."
[n]="No RHVoice, do not install RHVoice when the game is installed."
[P]="Print a list of packages required by audiogame-manager."
[R]="Redownload. Removes old versions of packages from cache before installing."
[r]="Remove a game. This will delete all game data."
@ -1037,6 +1049,7 @@ while getopts "${args}" i ; do
L) license;;
l) game_launcher "${OPTARG}";;
N) noCache="true";;
n) norh="true";;
P) checklist quiet;;
R) redownload="true";;
r) game_removal;;
@ -1097,9 +1110,10 @@ case "${game}" in
echo "After you launch the game, press tab then enter and it should begin speaking."
;;
"Battle of the Hunter")
export bottle="tunmi13"
export winVer="win7"
install_wine_bottle speechsdk
download "https://stormgames.wolfe.casa/downloads/bth.zip"
download "http://tunmi13.ddns.net/projects/bth.zip"
unzip -d "$WINEPREFIX/drive_c/Program Files/$game" "${cache}/bth.zip"
find "${WINEPREFIX}" -type f -name "nvdaControllerClient32.dll" -exec rm -fv "{}" \;
add_launcher "c:\Program Files\\${game}\bth.exe"
@ -1505,6 +1519,7 @@ case "${game}" in
add_launcher "c:\Program Files\Breed memorial\Breed memorial\breed memorial.exe"
;;
"Castaways")
export bottle="aprone"
export winVer="win7"
install_wine_bottle vb6run dx8vb speechsdk
download "https://www.kaldobsky.com/audiogames/castaways.zip"
@ -1513,12 +1528,22 @@ case "${game}" in
add_launcher "c:\Program Files\castaways\Castaways.exe"
;;
"Castaways 2")
export bottle="aprone"
export winVer="win7"
install_wine_bottle vb6run dx8vb speechsdk
download "http://www.kaldobsky.com/audiogames/castaways2beta.zip"
unzip -d "$WINEPREFIX/drive_c/Program Files/castaways" "${cache}/castaways2beta.zip"
wine "c:\Program Files\castaways\Checkup.exe" /verysilent
add_launcher "c:\Program Files\castaways\Castaways2.exe"
unzip -d "$WINEPREFIX/drive_c/Program Files/castaways2" "${cache}/castaways2beta.zip"
wine "c:\Program Files\castaways2\Checkup.exe" /verysilent
add_launcher "c:\Program Files\castaways2\Castaways2.exe"
;;
"Challenge of the Horse")
export bottle="tunmi13"
export winVer="win7"
install_wine_bottle speechsdk
download "http://tunmi13.ddns.net/projects/coth.zip"
unzip -d "$WINEPREFIX/drive_c/Program Files/$game" "${cache}/coth.zip"
find "${WINEPREFIX}" -type f -name "nvdaControllerClient32.dll" -exec rm -fv "{}" \;
add_launcher "c:\Program Files\\${game}\game.exe"
;;
"Chopper Challenge")
# Freezes at menu
@ -1583,7 +1608,17 @@ case "${game}" in
find "${WINEPREFIX}" -type f -name "nvdaControllerClient32.dll" -exec rm -fv "{}" \;
add_launcher "c:\Program Files\danger on the wheel\game.exe"
;;
"Death on the Road")
"Daytona and the Book of Gold")
export bottle="aprone"
export winVer="win7"
export winetricksSettings="vd=1024x768"
install_wine_bottle vb6run dx8vb quartz corefonts
download "https://kaldobsky.com/audiogames/Daytona.zip"
unzip -d "$WINEPREFIX/drive_c/Program Files/daytona" "${cache}/Daytona.zip"
wine 'c:\Program Files\daytona\checkup.exe' /verysilent
add_launcher "c:\Program Files\daytona\Daytona.exe"
;;
"Death on the Road")
export bottle="oriol-gomez"
export winVer="win7"
install_wine_bottle
@ -1599,6 +1634,17 @@ case "${game}" in
wine "${cache}/death match project alpha setup.exe" /silent
add_launcher "c:\Program Files\reality software\death match project alpha\dm1.exe"
;;
"Dog Who Hates Toast")
export bottle="aprone"
export winVer="win7"
export winetricksSettings="vd=1024x768"
install_wine_bottle vb6run dx8vb quartz speechsdk corefonts
download "https://www.kaldobsky.com/audiogames/dogwhohatestoast.zip"
unzip -d "$WINEPREFIX/drive_c/Program Files/dogwhohatestoast" "${cache}/dogwhohatestoast.zip"
wine 'c:\Program Files\dogwhohatestoast\checkup.exe' /verysilent
add_launcher "c:\Program Files\dogwhohatestoast\DogwhoHatesToast.exe"
echo "Note: Dog who Hates Toast installed. Once you start the game, you must press tab until you hear sapi on to get speech." >&2
;;
"Duck Hunt")
export bottle="l-works"
install_wine_bottle vb6run dx8vb speechsdk
@ -1884,13 +1930,13 @@ EOF
add_launcher "c:\Program Files\Lone Wolf\lw.exe"
;;
"Lunimals")
export bottle="aprone"
export winVer="win7"
export winetricksSettings="vd=1024x768"
install_wine_bottle vb6run dx8vb quartz speechsdk corefonts
download "https://kaldobsky.com/audiogames/lunimals.zip"
unzip -d "$WINEPREFIX/drive_c/Program Files/lunimals" "${cache}/lunimals.zip"
cp "$WINEPREFIX/drive_c/Program Files/lunimals/dx7vb.dll" "$WINEPREFIX/drive_c/windows/system32"
wine cmd.exe /c 'cd /d c:\windows\system32 && regsvr32 dx7vb.dll'
wine 'c:\Program Files\lunimals\checkup.exe' /verysilent
add_launcher "c:\Program Files\lunimals\Lunimals.exe"
echo "Note: Lunimals installed. Once you start the game, you must press tab until you hear sapi on to get speech." >&2
;;
@ -1992,6 +2038,16 @@ EOF
wineserver -w
add_launcher "c:\Program Files\NASoft\ParkBoss\pbMain.exe"
;;
"Paw Prints")
export bottle="aprone"
export winVer="win7"
export winetricksSettings="vd=1024x768"
install_wine_bottle vb6run dx8vb quartz speechsdk corefonts
download "https://www.kaldobsky.com/audiogames/pawprints.zip"
unzip -d "$WINEPREFIX/drive_c/Program Files/pawprints" "${cache}/pawprints.zip"
wine 'c:\Program Files\pawprints\checkup.exe' /verysilent
add_launcher "c:\Program Files\pawprints\PawPrints.exe"
;;
"Perilous Hearts")
install_wine_bottle speechsdk
download "https://www.agarchive.net/games/blastbay/perilous%20hearts%20concept%20demo.exe"
@ -2005,18 +2061,46 @@ EOF
wine "${cache}/pigeon panic setup.exe" /silent
add_launcher "c:\Program Files\Lworks\Pigeon Panic\pigeonPanic.exe"
;;
"Preludeamals")
export bottle="aprone"
export winVer="win7"
export winetricksSettings="vd=1024x768"
install_wine_bottle vb6run dx8vb quartz speechsdk corefonts
download "https://www.kaldobsky.com/audiogames/Preludeamals.zip"
unzip -d "$WINEPREFIX/drive_c/Program Files/preludeamals" "${cache}/Preludeamals.zip"
wine 'c:\Program Files\preludeamals\checkup.exe' /verysilent
add_launcher "c:\Program Files\preludeamals\Preludeamals.exe"
;;
"Psycho Strike")
install_wine_bottle speechsdk
download "http://www.vgstorm.com/psycho_strike_installer.exe"
wine "${cache}/psycho_strike_installer.exe" /silent
add_launcher "c:\Program Files\VGStorm.com\Psycho Strike\strike.exe"
;;
"Puzzle Divided")
export bottle="aprone"
export winVer="win7"
export winetricksSettings="vd=1024x768"
install_wine_bottle vb6run dx8vb quartz corefonts
download "https://www.kaldobsky.com/audiogames/puzzledivided.zip"
unzip -d "$WINEPREFIX/drive_c/Program Files/puzzledivided" "${cache}/puzzledivided.zip"
add_launcher "c:\Program Files\puzzledivided\PuzzleDivided.exe"
;;
"Q9")
install_wine_bottle
download "http://www.blastbay.com/q9_english_installer.exe"
wine "${cache}/q9_english_installer.exe" /silent
add_launcher "c:\Program Files\Q9 Action Game\q9.exe"
;;
"Revelation")
export bottle="aprone"
export winVer="win7"
export winetricksSettings="vd=1024x768"
install_wine_bottle vb6run dx8vb quartz speechsdk corefonts
download "https://www.kaldobsky.com/audiogames/revelation.zip"
unzip -d "$WINEPREFIX/drive_c/Program Files/revelation" "${cache}/revelation.zip"
add_launcher "c:\Program Files\revelation\Revelation.exe"
;;
"Rhythm Rage")
export bottle="oriol-gomez"
export winVer="win7"
@ -2180,17 +2264,24 @@ EOF
add_launcher "c:\Program Files\Survive the Wild\stw.exe"
;;
"Swamp")
export bottle="aprone"
export winVer="win7"
export winetricksSettings="vd=1024x768"
dialog --backtitle "Audiogame manager" --yesno "If you do not have a full 32 bit gstreamer installation, the Swamp music can cause stuttering and crashes. Would you like to remove the music directory after installation?" -1 -1 --stdout
deleteMusic=$?
install_wine_bottle dx8vb quartz corefonts vb6run speechsdk
download "https://kaldobsky.com/audiogames/SwampPart1.zip" "https://kaldobsky.com/audiogames/SwampPart2.zip"
unzip -d "$WINEPREFIX/drive_c/Program Files/swamp" "${cache}/SwampPart1.zip"
unzip -d "$WINEPREFIX/drive_c/Program Files/swamp" "${cache}/SwampPart2.zip"
download "https://www.kaldobsky.com/audiogames/Swamp.zip"
unzip -d "$WINEPREFIX/drive_c/Program Files/swamp" "${cache}/Swamp.zip"
# make sure the latest version is installed.
if wget -O "${cache}/SwampPatch.zip" "https://www.kaldobsky.com/audiogames/SwampPatch.zip" ; then
unzip -o -d "$WINEPREFIX/drive_c/Program Files/swamp" "${cache}/SwampPatch.zip"
#if wget -O "${cache}/SwampPatch.zip" "https://www.kaldobsky.com/audiogames/SwampPatch.zip" ; then
#nzip -o -d "$WINEPREFIX/drive_c/Program Files/swamp" "${cache}/SwampPatch.zip"
#fi
wine 'c:\Program Files\swamp\checkup.exe' /verysilent
#wine cmd.exe /c 'cd /d c:\Program Files\swamp && Windows32bit.bat'
# Delete music if requested.
if [[ $deleteMusic -eq 0 ]]; then
rm -frv "$WINEPREFIX/drive_c/Program Files/swamp/sounds/Music/"
fi
wine cmd.exe /c 'cd /d c:\Program Files\swamp && Windows32bit.bat'
add_launcher "c:\Program Files\swamp\Swamp.exe"
;;
"Technoshock")
@ -2237,6 +2328,17 @@ EOF
find "${WINEPREFIX}" -type f -name 'nvdaControllerClient32.dll' -exec cp -v "${cache}/nvdaControllerClient32.dll" "{}" \;
add_launcher "c:\Program Files\Lworks\The Great Toy Robbery\tgtr.exe"
;;
"The Vale")
get_installer "the-vale-win.zip" "https://falling-squirrel.itch.io/the-vale"
export WINEARCH=win64
export winVer="win8"
install_wine_bottle
unzip -d "$WINEPREFIX/drive_c/Program Files/the-vale" "${cache}/the-vale-win.zip"
# Weird work around to get keyboard working.
winetricks -q usetakefocus=y
winetricks -q usetakefocus=n
add_launcher "c:\Program Files\the-vale\TheVale.exe"
;;
"Thief")
export bottle="oriol-gomez"
export winVer="win7"
@ -2272,6 +2374,7 @@ EOF
add_launcher "c:\Program Files\Three-D-Velocity-Binaries-master\tdv.exe"
;;
"Triple Triad")
export bottle="aprone"
export winVer="win7"
install_wine_bottle vb6run dx8vb speechsdk
download "https://www.kaldobsky.com/audiogames/tripletriad.zip"

View File

@ -11,7 +11,7 @@
#
# Software distributed under the License is distributed on an â ISâasis,
# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
# for the specific language governing rights and limitations under the
# for THE SPecific language governing rights and limitations under the
# License.
#
# The Original Code is audiogame manager.
@ -37,35 +37,32 @@
# Works which are defined in the CPAL as a work which combines Covered Code
# or portions thereof with code not governed by the terms of the CPAL.
updateURL="https://www.kaldobsky.com/audiogames/SwampPatch.zip"
extract_error() {
echo "There was an error extracting the patch."
exit 1
}
cache="${XDG_CONFIG_HOME:-$HOME/.config}/storm-games/audiogame-manager/cache"
updateURL="https://www.kaldobsky.com/audiogames"
updateFiles=("Swamp.zip")
# Set the swamp directory
pushd ~/.local/wine/swamp/drive_c/Program\ Files/swamp
dialog --backtitle "Audiogame manager" --yesno "If you do not have a full 32 bit gstreamer installation, the Swamp music can cause stuttering and crashes. Would you like to remove the music directory after installation?" -1 -1 --stdout
deleteMusic=$?
# Restore the directory stack on exit.
trap popd EXIT
# Back up configuration files.
for i in losers.txt muted.txt scriptkeys.txt keyconfig.ini ; do
cp -v ~/".local/wine/aprone/drive_c/Program Files/swamp/${i}" ~/".local/wine/aprone/drive_c/Program Files/swamp/${i}.agm"
echo "${i} backed up as ${i}.agm"
done | dialog --progressbox "Backing up configuration files. They can be found in your swamp directory." -1 -1
echo "Checking for Swamp updates..."
sleep 3
# Check for and download new patches.
update="$(wget -N "${updateURL}" 2>&1 | grep "not modified on server")"
# Download and extract updates
for i in "${updateFiles[@]}" ; do
wget -O "${cache}/$i" "${updateURL}/$i"
unzip -o -d ~/".local/wine/aprone/drive_c/Program Files/swamp" "${cache}/${i}"
done | dialog --progressbox "Updating Swamp, please wait..." -1 -1
if [ -n "${update}" ]; then
echo "Swamp is up to date."
exit 0
fi
# Delete music if requested.
if [[ $deleteMusic -eq 0 ]]; then
rm -frv ~/".local/wine/aprone/drive_c/Program Files/swamp/sounds/Music/"
fi
echo "Updating Swamp..."
# Unzip the new patch
unzip -o SwampPatch.zip || extract_error
echo "Swamp has been updated."
exit 0