Compare commits

..

8 Commits

View File

@ -152,12 +152,6 @@ checklist() {
errorList+=("Critical: Curl is not installed. Critical functionality will not work.") errorList+=("Critical: Curl is not installed. Critical functionality will not work.")
fi fi
packageList+=("curl") packageList+=("curl")
if command -v wget &> /dev/null ; then
[[ $# -eq 0 ]] && echo "Wget is installed."
else
errorList+=("Critical: Wget is not installed. You will not be able to install any games.")
fi
packageList+=("wget")
if command -v dialog &> /dev/null ; then if command -v dialog &> /dev/null ; then
[[ $# -eq 0 ]] && echo "Dialog is installed." [[ $# -eq 0 ]] && echo "Dialog is installed."
else else
@ -290,7 +284,7 @@ download() {
fi fi
# Skip if the item is in cache. # Skip if the item is in cache.
test -e "${cache}/${dest}" && continue test -e "${cache}/${dest}" && continue
if ! wget -4 -O "${cache}/${dest}" "${i}" ; then if ! curl -L4 --output "${cache}/${dest}" "${i}" ; then
echo "Could not download \"$i\"..." echo "Could not download \"$i\"..."
exit 1 exit 1
fi fi
@ -753,6 +747,10 @@ game_launcher() {
fi fi
if [[ "$game" =~ laser-breakout ]]; then if [[ "$game" =~ laser-breakout ]]; then
pgrep -u "$USER" nvda2speechd &> /dev/null || ${XDG_DATA_HOME:-$HOME/.local/share}/audiogame-manager/nvda2speechd & pgrep -u "$USER" nvda2speechd &> /dev/null || ${XDG_DATA_HOME:-$HOME/.local/share}/audiogame-manager/nvda2speechd &
"${0%/*}/speech/speak_window_title.sh" play.exe &
fi
if [[ "$game" =~ light-battles ]]; then
pgrep -u "$USER" nvda2speechd &> /dev/null || ${XDG_DATA_HOME:-$HOME/.local/share}/audiogame-manager/nvda2speechd &
fi fi
if [[ "$game" =~ ^bokurano-daibouken-2\| ]]; then if [[ "$game" =~ ^bokurano-daibouken-2\| ]]; then
"${0%/*}/speech/clipboard_translator.sh" play.exe bokurano-daibouken2 & "${0%/*}/speech/clipboard_translator.sh" play.exe bokurano-daibouken2 &
@ -984,7 +982,7 @@ gameList=(
"Duck Hunt" "Duck Hunt"
"DynaMan" "DynaMan"
"Easter Quest" "Easter Quest"
#"Endless Runner" "Endless Runner"
"Entombed" "Entombed"
"ESP Pinball Classic" "ESP Pinball Classic"
"ESP Pinball Extreme" "ESP Pinball Extreme"
@ -1005,8 +1003,8 @@ gameList=(
"Judgement Day" "Judgement Day"
"Kitchensinc Games" "Kitchensinc Games"
"Kringle Crash" "Kringle Crash"
#"Laser Breakout" "Laser Breakout"
#"Light Battles" "Light Battles"
"Light Cars" "Light Cars"
"Lockpick" "Lockpick"
"Lone Wolf" "Lone Wolf"
@ -1047,7 +1045,7 @@ gameList=(
"Sequence Storm" "Sequence Storm"
#"Shades of Doom 1.2" #"Shades of Doom 1.2"
"Shades of Doom" "Shades of Doom"
"Shadow Line" #"Shadow Line"
"Shooter" "Shooter"
"Silver Dollar" "Silver Dollar"
"Slender Lost Vision" "Slender Lost Vision"
@ -1083,8 +1081,8 @@ gameList=(
"World of War" "World of War"
) )
# Make sure the minimum of curl, sox, wget, wine, and winetricks are installed # Make sure the minimum of curl, sox, wine, and winetricks are installed
for i in curl sox wget wine winetricks ; do for i in curl sox wine winetricks ; do
if ! command -v $i &> /dev/null ; then if ! command -v $i &> /dev/null ; then
echo "Please install $i before continuing." echo "Please install $i before continuing."
exit 1 exit 1
@ -1180,7 +1178,7 @@ case "${game}" in
install_wine_bottle speechsdk install_wine_bottle speechsdk
download "http://www.vgstorm.com/aac/aac.zip" "https://www.agarchive.net/games/vg/adventure%20at%20c%20stages.7z" 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" 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" 7z x -o"$WINEPREFIX/drive_c/Program Files/aac/stages" "${cache}/adventure at c stages.7z"
add_launcher "c:\Program Files\aac\aac.exe" add_launcher "c:\Program Files\aac\aac.exe"
;; ;;
"Alien Outback") "Alien Outback")
@ -1908,7 +1906,7 @@ case "${game}" in
"Endless Runner") "Endless Runner")
install_wine_bottle speechsdk install_wine_bottle speechsdk
download "http://www.masonasons.me/softs/EndlessRunner.7z" download "http://www.masonasons.me/softs/EndlessRunner.7z"
7z e -y -o"$WINEPREFIX/drive_c/Program Files/Endless Runner" "${cache}/EndlessRunner.7z" -prunner 7z x -y -o"$WINEPREFIX/drive_c/Program Files/Endless Runner" "${cache}/EndlessRunner.7z" -prunner
find "${WINEPREFIX}" -type f -name "nvdaControllerClient32.dll" -exec rm -fv "{}" \; find "${WINEPREFIX}" -type f -name "nvdaControllerClient32.dll" -exec rm -fv "{}" \;
add_launcher "c:\Program Files\Endless Runner\runner.exe" add_launcher "c:\Program Files\Endless Runner\runner.exe"
;; ;;
@ -1921,7 +1919,7 @@ case "${game}" in
download "http://blind-games.com/newentombed/EntombedSetup.exe" "https://download.microsoft.com/download/E/C/1/EC1B2340-67A0-4B87-85F0-74D987A27160/SSCERuntime-ENU.exe" "https://stormgames.wolfe.casa/downloads/Entombed.exe.config" "https://stormgames.wolfe.casa/downloads/mfplat.dll" download "http://blind-games.com/newentombed/EntombedSetup.exe" "https://download.microsoft.com/download/E/C/1/EC1B2340-67A0-4B87-85F0-74D987A27160/SSCERuntime-ENU.exe" "https://stormgames.wolfe.casa/downloads/Entombed.exe.config" "https://stormgames.wolfe.casa/downloads/mfplat.dll"
mkdir -p "${WINEPREFIX}/drive_c/temp" mkdir -p "${WINEPREFIX}/drive_c/temp"
pushd "${WINEPREFIX}/drive_c/temp" pushd "${WINEPREFIX}/drive_c/temp"
7z e "${cache}/SSCERuntime-ENU.exe" 7z x "${cache}/SSCERuntime-ENU.exe"
wine msiexec /i "${WINEPREFIX}/drive_c/temp/SSCERuntime_x86-ENU.msi" /q wine msiexec /i "${WINEPREFIX}/drive_c/temp/SSCERuntime_x86-ENU.msi" /q
rm * rm *
popd popd
@ -2064,8 +2062,8 @@ case "${game}" in
export winVer="win10" export winVer="win10"
install_wine_bottle ie8 vcrun2015 speechsdk install_wine_bottle ie8 vcrun2015 speechsdk
# This download url breaks the download function, so grab it manually. # This download url breaks the download function, so grab it manually.
wget -O "${cache}/Hearthstone.exe" "https://us.battle.net/download/getInstaller?os=win&installer=Hearthstone-Setup.exe" curl -L --output "${cache}/Hearthstone.exe" "https://us.battle.net/download/getInstaller?os=win&installer=Hearthstone-Setup.exe"
wget -O "${cache}/Hearthstone_patch.zip" "https://github.com/HearthstoneAccess/HearthstoneAccess/releases/latest/download/patch.zip" curl -L --output "${cache}/Hearthstone_patch.zip" "https://github.com/HearthstoneAccess/HearthstoneAccess/releases/latest/download/patch.zip"
wine "${cache}/Hearthstone.exe" /silent wine "${cache}/Hearthstone.exe" /silent
unzip -o "${cache}/Hearthstone_patch.zip" -d "${WINEPREFIX}/drive_c/Program Files/Hearthstone" unzip -o "${cache}/Hearthstone_patch.zip" -d "${WINEPREFIX}/drive_c/Program Files/Hearthstone"
find "${WINEPREFIX}" -type f -name "nvdaControllerClient32.dll" -exec rm -fv "{}" \; find "${WINEPREFIX}" -type f -name "nvdaControllerClient32.dll" -exec rm -fv "{}" \;
@ -2081,7 +2079,7 @@ case "${game}" in
xdotool sleep 10 key --clearmodifiers alt+y 2> /dev/null xdotool sleep 10 key --clearmodifiers alt+y 2> /dev/null
sleep 30 && wineserver -k # Sometimes the installer finishes but the wineserver has more processes that don't exit, so we can't depend on wineserver -w. sleep 30 && wineserver -k # Sometimes the installer finishes but the wineserver has more processes that don't exit, so we can't depend on wineserver -w.
mkdir -p "$WINEPREFIX/drive_c/Program Files/bsc-key-generator" mkdir -p "$WINEPREFIX/drive_c/Program Files/bsc-key-generator"
7z e -o"$WINEPREFIX/drive_c/Program Files/bsc-key-generator" "${cache}/BSC unlock code generator.7z" 7z x -o"$WINEPREFIX/drive_c/Program Files/bsc-key-generator" "${cache}/BSC unlock code generator.7z"
echo "$USER"$'\n'"$(hostname)"$'\n'"none"$'\n'"US" > "$WINEPREFIX/drive_c/Program Files/Hunter/config.dat" echo "$USER"$'\n'"$(hostname)"$'\n'"none"$'\n'"US" > "$WINEPREFIX/drive_c/Program Files/Hunter/config.dat"
command -v unix2dos &> /dev/null && unix2dos "$WINEPREFIX/drive_c/Program Files/Hunter/config.dat" || echo "Warning! You do not have unix2dos or dos2unix installed, Hunter may not work!" command -v unix2dos &> /dev/null && unix2dos "$WINEPREFIX/drive_c/Program Files/Hunter/config.dat" || echo "Warning! You do not have unix2dos or dos2unix installed, Hunter may not work!"
if command -v xclip &> /dev/null && command -v xdotool &> /dev/null ; then if command -v xclip &> /dev/null && command -v xdotool &> /dev/null ; then
@ -2160,17 +2158,18 @@ EOF
export bottle="nyanchan" export bottle="nyanchan"
export winVer="win7" export winVer="win7"
install_wine_bottle install_wine_bottle
download "https://www.agarchive.net/games/nyanchan/laser%20breakout.7z" "https://github.com/RastislavKish/nvda2speechd/releases/download/v0.1/nvda2speechd32.dll" download "https://www.agarchive.net/games/nyanchan/laser%20breakout.7z" "https://github.com/RastislavKish/nvda2speechd/releases/download/v0.1/nvda2speechd32.dll" "https://stormgames.wolfe.casa/downloads/laser-breakout-options.dat"
7z e -o"$WINEPREFIX/drive_c/nyanchangame/laser breakout" "$cache/laser breakout.7z" 7z x -o"$WINEPREFIX/drive_c/nyanchangame/" "$cache/laser breakout.7z"
find "${WINEPREFIX}" -type f -name 'nvdaControllerClient.dll' -exec cp -v "${cache}/nvda2speechd32.dll" "{}" \; find "${WINEPREFIX}" -type f -name 'nvdaControllerClient.dll' -exec cp -v "${cache}/nvda2speechd32.dll" "{}" \;
cp -v "$cache/laser-breakout-options.dat" "$WINEPREFIX/drive_c/nyanchangame/laser breakout/options.dat"
add_launcher "c:\nyanchangame\laser breakout\play.exe" add_launcher "c:\nyanchangame\laser breakout\play.exe"
;; ;;
"Light Battles") "Light Battles")
export winVer="win7" export winVer="win7"
install_wine_bottle speechsdk install_wine_bottle
download "https://prometheus-enterprises.com/games/CoL.exe" download "https://prometheus-enterprises.com/games/CoL.exe" "https://github.com/RastislavKish/nvda2speechd/releases/download/v0.1/nvda2speechd32.dll"
7z e -o"$WINEPREFIX/drive_c/Program Files/Light Battles" "${cache}/CoL.exe" 7z x -o"$WINEPREFIX/drive_c/Program Files/Light Battles" "${cache}/CoL.exe"
rm -fv "${WINEPREFIX}/drive_c/Program Files/Light Battles/nvdaControllerClient.dll" find "${WINEPREFIX}" -type f -name "nvdaControllerClient.dll" -exec cp -v "$cache/nvda2speechd32.dll" "{}" \;
add_launcher "c:\Program Files\Light Battles\battles.exe" add_launcher "c:\Program Files\Light Battles\battles.exe"
;; ;;
"Light Cars") "Light Cars")
@ -2236,7 +2235,7 @@ EOF
export bottle="nyanchan" export bottle="nyanchan"
export winVer="win7" export winVer="win7"
install_wine_bottle speechsdk install_wine_bottle speechsdk
download "https://www.nyanchangames.com/softs/MbSetupE.exe" "https://github.com/RastislavKish/nvda2speechd/releases/download/v0.1/nvda2speechd64.dll" download "https://www.nyanchangames.com/softs/MbSetupE.exe" "https://github.com/RastislavKish/nvda2speechd/releases/download/v0.1/nvda2speechd32.dll"
wine "${cache}/MbSetupE.exe" & wine "${cache}/MbSetupE.exe" &
xdotool sleep 10 key Return xdotool sleep 10 key Return
wineserver -w wineserver -w
@ -2505,7 +2504,7 @@ EOF
install_wine_bottle install_wine_bottle
unzip -d "$WINEPREFIX/drive_c/Program Files/sequence-storm" "${cache}/sequence-storm-win64.zip" unzip -d "$WINEPREFIX/drive_c/Program Files/sequence-storm" "${cache}/sequence-storm-win64.zip"
write_sequence_storm_reader write_sequence_storm_reader
wget -O "$WINEPREFIX/drive_c/Program Files/sequence-storm/settings.json" "https://stormgames.wolfe.casa/downloads/sequencestorm-settings.json" curl -L --output "$WINEPREFIX/drive_c/Program Files/sequence-storm/settings.json" "https://stormgames.wolfe.casa/downloads/sequencestorm-settings.json"
add_launcher "c:\Program Files\sequence-storm\SequenceStorm.exe" add_launcher "c:\Program Files\sequence-storm\SequenceStorm.exe"
;; ;;
"Shades of Doom 1.2") "Shades of Doom 1.2")
@ -2522,17 +2521,17 @@ EOF
add_launcher "c:\Program Files\Shades of Doom 2.0\sod.exe" add_launcher "c:\Program Files\Shades of Doom 2.0\sod.exe"
;; ;;
"Shadow Line") "Shadow Line")
export winVer="win7" export winVer="win8" speechsdk
install_wine_bottle install_wine_bottle
download "https://www.mm-galabo.com/sr/Download_files_srfv/shadowrine_fullvoice3.171.exe" download "https://www.mm-galabo.com/sr/Download_files_srfv/shadowrine_fullvoice3.171.exe"
wine "${cache}/shadowrine_fullvoice3.171.exe" /sp- & wine "${cache}/shadowrine_fullvoice3.171.exe" /sp-
xdotool sleep 30 key --clearmodifiers --delay=75 Return xdotool sleep 30 key --clearmodifiers --delay=500 Return
xdotool key --clearmodifiers --delay=500 Return xdotool key --clearmodifiers --delay=500 Return
xdotool key --clearmodifiers --delay=500 Return xdotool key --clearmodifiers --delay=500 Return
xdotool key --clearmodifiers --delay=500 Return xdotool key --clearmodifiers --delay=500 Return
xdotool sleep 300 key --clearmodifiers --delay=500 Down xdotool sleep 300 key --clearmodifiers --delay=500 Down
xdotool key --clearmodifiers --delay=500 space xdotool key --clearmodifiers --delay=500 space
xdotool key --clearmodifiers --delay=500 alt+f xdotool key --clearmodifiers --delay=500 alt+i
wineserver -w wineserver -w
add_launcher "c:\Program Files\GalaxyLaboratory\ShadowRine_FullVoice\play_sr.exe" add_launcher "c:\Program Files\GalaxyLaboratory\ShadowRine_FullVoice\play_sr.exe"
;; ;;
@ -2567,10 +2566,7 @@ EOF
export winVer="win7" export winVer="win7"
install_wine_bottle speechsdk install_wine_bottle speechsdk
download "https://www.agarchive.net/games/jeqoconGames/sonic%20the%20hedgehog.7z" download "https://www.agarchive.net/games/jeqoconGames/sonic%20the%20hedgehog.7z"
7z e -o"$WINEPREFIX/drive_c/Program Files/Sonic the Hedgehog" "${cache}/sonic the hedgehog.7z" 7z x -o"$WINEPREFIX/drive_c/Program Files/Sonic the Hedgehog" "${cache}/sonic the hedgehog.7z"
cp -v "$WINEPREFIX/drive_c/Program Files/Sonic the Hedgehog"/*.wav "$WINEPREFIX/drive_c/Program Files/Sonic the Hedgehog"/*.ogg "$WINEPREFIX/drive_c/Program Files/Sonic the Hedgehog"/*.mp3 "$WINEPREFIX/drive_c/Program Files/Sonic the Hedgehog"/sfx/
cp -v "$WINEPREFIX/drive_c/Program Files/Sonic the Hedgehog"/*.wav "$WINEPREFIX/drive_c/Program Files/Sonic the Hedgehog"/*.ogg "$WINEPREFIX/drive_c/Program Files/Sonic the Hedgehog"/*.mp3 "$WINEPREFIX/drive_c/Program Files/Sonic the Hedgehog"/music/
cp -v "$WINEPREFIX/drive_c/Program Files/Sonic the Hedgehog"/*.wav "$WINEPREFIX/drive_c/Program Files/Sonic the Hedgehog"/*.ogg "$WINEPREFIX/drive_c/Program Files/Sonic the Hedgehog"/*.mp3 "$WINEPREFIX/drive_c/Program Files/Sonic the Hedgehog"/angles/
add_launcher "c:\Program Files\Sonic the Hedgehog\sth.exe" add_launcher "c:\Program Files\Sonic the Hedgehog\sth.exe"
;; ;;
"Sonic Zoom") "Sonic Zoom")
@ -2613,8 +2609,7 @@ EOF
export winVer="win7" export winVer="win7"
install_wine_bottle speechsdk install_wine_bottle speechsdk
download "https://www.agarchive.net/games/jeqoconGames/super%20mario%20bros.7z" download "https://www.agarchive.net/games/jeqoconGames/super%20mario%20bros.7z"
7z e -o"$WINEPREFIX/drive_c/Program Files/Super Mario Bros" "${cache}/super mario bros.7z" 7z x -o"$WINEPREFIX/drive_c/Program Files/Super Mario Bros" "${cache}/super mario bros.7z"
cp -v "$WINEPREFIX/drive_c/Program Files/Super Mario Bros"/*.wav "$WINEPREFIX/drive_c/Program Files/Super Mario Bros"/*.ogg "$WINEPREFIX/drive_c/Program Files/Super Mario Bros"/mario/
add_launcher "c:\Program Files\Super Mario Bros\Mario.exe" add_launcher "c:\Program Files\Super Mario Bros\Mario.exe"
;; ;;
"Survive the Wild") "Survive the Wild")
@ -2635,7 +2630,7 @@ EOF
download "https://www.kaldobsky.com/audiogames/Swamp.zip" download "https://www.kaldobsky.com/audiogames/Swamp.zip"
unzip -d "$WINEPREFIX/drive_c/Program Files/swamp" "${cache}/Swamp.zip" unzip -d "$WINEPREFIX/drive_c/Program Files/swamp" "${cache}/Swamp.zip"
# make sure the latest version is installed. # make sure the latest version is installed.
if wget -O "${cache}/SwampPatch.zip" "https://www.kaldobsky.com/audiogames/SwampPatch.zip" ; then if curl -L --output "${cache}/SwampPatch.zip" "https://www.kaldobsky.com/audiogames/SwampPatch.zip" ; then
unzip -o -d "$WINEPREFIX/drive_c/Program Files/swamp" "${cache}/SwampPatch.zip" unzip -o -d "$WINEPREFIX/drive_c/Program Files/swamp" "${cache}/SwampPatch.zip"
fi fi
wine 'c:\Program Files\swamp\checkup.exe' /verysilent wine 'c:\Program Files\swamp\checkup.exe' /verysilent
@ -2718,7 +2713,7 @@ EOF
"Tomb Hunter") "Tomb Hunter")
install_wine_bottle speechsdk install_wine_bottle speechsdk
download "http://masonasons.me/softs/th_freeware_password_is_tombhunter.7z" download "http://masonasons.me/softs/th_freeware_password_is_tombhunter.7z"
7z e -o"$WINEPREFIX/drive_c/Program Files/Tomb Hunter" "${cache}/th_freeware_password_is_tombhunter.7z" -ptombhunter 7z x -o"$WINEPREFIX/drive_c/Program Files/Tomb Hunter" "${cache}/th_freeware_password_is_tombhunter.7z" -ptombhunter
find "${WINEPREFIX}" -type f -name "nvdaControllerClient32.dll" -exec rm -fv "{}" \; find "${WINEPREFIX}" -type f -name "nvdaControllerClient32.dll" -exec rm -fv "{}" \;
add_launcher "c:\Program Files\Tomb Hunter\th.exe" add_launcher "c:\Program Files\Tomb Hunter\th.exe"
;; ;;
@ -2767,7 +2762,7 @@ export norh=false # Must install a voice, and rhvoice works easily with 64 bit.
xdotool sleep 10 key --clearmodifiers alt+y 2> /dev/null xdotool sleep 10 key --clearmodifiers alt+y 2> /dev/null
sleep 30 && wineserver -k # Sometimes the installer finishes but the wineserver has more processes that don't exit, so we can't depend on wineserver -w. sleep 30 && wineserver -k # Sometimes the installer finishes but the wineserver has more processes that don't exit, so we can't depend on wineserver -w.
mkdir -p "$WINEPREFIX/drive_c/Program Files/bsc-key-generator" mkdir -p "$WINEPREFIX/drive_c/Program Files/bsc-key-generator"
7z e -o"$WINEPREFIX/drive_c/Program Files/bsc-key-generator" "${cache}/BSC unlock code generator.7z" 7z x -o"$WINEPREFIX/drive_c/Program Files/bsc-key-generator" "${cache}/BSC unlock code generator.7z"
echo "$USER"$'\n'"$(hostname)"$'\n'"none"$'\n'"US" > "$WINEPREFIX/drive_c/Program Files/Troopanum 2.0/config.dat" echo "$USER"$'\n'"$(hostname)"$'\n'"none"$'\n'"US" > "$WINEPREFIX/drive_c/Program Files/Troopanum 2.0/config.dat"
command -v unix2dos &> /dev/null && unix2dos "$WINEPREFIX/drive_c/Program Files/Troopanum 2.0/config.dat" || echo "Warning! You do not have unix2dos or dos2unix installed, Troopanum 2.0 may not work!" command -v unix2dos &> /dev/null && unix2dos "$WINEPREFIX/drive_c/Program Files/Troopanum 2.0/config.dat" || echo "Warning! You do not have unix2dos or dos2unix installed, Troopanum 2.0 may not work!"
if command -v xclip &> /dev/null && command -v xdotool &> /dev/null ; then if command -v xclip &> /dev/null && command -v xdotool &> /dev/null ; then