2020-08-27 15:42:24 -04:00
#!/bin/bash
2020-09-29 22:07:26 -04:00
# Dialog accessibility
export DIALOGOPTS = '--no-lines --visit-items'
2020-09-20 17:42:42 -04:00
# Automatic update function
update( ) {
local filePath = " $( command -v ${ 0 } ) "
2020-10-06 14:59:04 -04:00
if file " ${ filePath } " | grep -q 'Bourne-Again shell script, ASCII text' ; then
2020-09-20 17:42:42 -04:00
return
fi
if [ [ " $( wget --quiet -O - https://stormgames.wolfe.casa/downloads/audiogame-manager | sha256sum | cut -d ' ' -f1) " = = " $( sha256sum " ${ filePath } " | cut -d ' ' -f1) " ] ] ; then
return
fi
echo " There is a new version of ${ 0 ##*/ } available. "
echo "Do you want to update now?"
read -r continue
if [ [ " ${ continue ,, } " = ~ ^y| ye| yes$ ] ] ; then
if [ [ -w " $0 " ] ] ; then
wget --quiet -O " ${ filePath } " "https://stormgames.wolfe.casa/downloads/audiogame-manager"
else
sudo wget --quiet -O " ${ filePath } " "https://stormgames.wolfe.casa/downloads/audiogame-manager"
fi
echo " ${ 0 ##*/ } has been updated. Please launch the program again to use the latest version. "
exit 0
fi
}
2020-08-27 15:42:24 -04:00
# Wine configuration section
2020-08-27 17:35:32 -04:00
checklist( ) {
declare -a errorList
echo "Checking your system..."
echo
if command -v wine & > /dev/null ; then
echo "Wine is installed."
else
errorList += ( "Critical: Wine is not installed. You will not be able to play any games." )
fi
2020-10-07 11:14:34 -04:00
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
2020-08-27 17:35:32 -04:00
if command -v wget & > /dev/null ; then
echo "Wget is installed."
else
errorList += ( "Critical: Wget is not installed. You will not be able to install any games." )
fi
2020-10-27 10:24:52 -04:00
if command -v dialog & > /dev/null ; then
echo "Dialog is installed."
else
errorList += ( "Critical: Dialog is not installed. You will not be able to install, launch, or remove any games." )
fi
2020-10-07 11:14:34 -04:00
for i in 7z cabextract unzip xz ; do
2020-09-04 18:45:45 -04:00
if command -v $i & > /dev/null ; then
echo " ${ i ^ } is installed. "
else
2020-10-07 11:14:34 -04:00
errorList += ( " Critical: ${ i ^ } is not installed. You will not be able to install some games or their components. " )
2020-09-04 18:45:45 -04:00
fi
done
2020-09-02 22:36:48 -04:00
if command -v ocrdesktop & > /dev/null ; then
echo "Ocrdesktop is installed."
else
errorList += ( "Warning: ocrdesktop is not installed. It can help if the installer gets stuck to figure out what is happening." )
fi
if command -v unix2dos & > /dev/null ; then
echo "Dos2unix is installed."
else
errorList += ( "Warning: unix2dos is not installed. Some games need a configuration file in dos format before they will run." )
fi
2020-08-27 17:35:32 -04:00
if [ [ -d /usr/share/wine/gecko/ ] ] ; then
echo "Found wine gecko."
else
errorList += ( "Warning: Wine gecko not found, some games may not work." )
fi
if [ [ -d /usr/share/wine/mono/ ] ] ; then
echo "Found wine mono."
else
errorList += ( "Warning: Wine mono not found, some games may not work." )
fi
2020-10-08 10:42:47 -04:00
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
2020-08-27 17:35:32 -04:00
# Show the results
if [ [ ${# errorList [@] } -eq 0 ] ] ; then
echo "No problems found, you are good to go."
exit 0
fi
echo "Errors detected, here is a list along with the severity."
echo "Note that errors marked critical mean that you will not be able to install and play games until they are resolved."
for i in " ${ errorList [@] } " ; do
echo " $i "
done
exit 0
}
2020-09-06 14:38:16 -04:00
download( ) {
local source = ( $@ )
for i in " ${ source [@] } " ; do
local dest = " ${ i ##*/ } "
dest = " ${ dest //%20/ } "
2020-09-06 19:20:14 -04:00
# Return if the game is in cache.
test -e " ${ cache } / ${ dest } " && return
if ! wget -O " ${ cache } / ${ dest } " " ${ i } " ; then
2020-09-06 14:38:16 -04:00
echo "Could not download game."
exit 1
fi
done
}
2020-09-05 00:26:29 -04:00
help( ) {
echo -e "Usage:\n"
echo "With no arguments, open the game launcher."
for i in " ${ !command[@] } " ; do
echo " - ${ i } : ${ command [ ${ i } ] } "
done | sort
exit 0
}
2020-08-27 15:42:24 -04:00
install_wine_bottle( ) {
2020-09-21 06:58:47 -04:00
# 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 } "
2020-08-27 15:42:24 -04:00
local bottle = " ${ game ,, } "
bottle = " ${ bottle //[[ : space : ]]/- } "
mkdir -p " $HOME /.local/wine/ ${ bottle } "
export WINEPREFIX = " $HOME /.local/wine/ ${ bottle } "
# Arguments to the function are dependancies to be installed.
2020-11-05 11:54:34 -05:00
( DISPLAY = "" wineboot -u
wine msiexec /i z:/usr/share/wine/mono/$( ls -1 /usr/share/wine/mono/) /silent
2020-08-27 15:42:24 -04:00
wine msiexec /i z:$( ls -1 /usr/share/wine/gecko/*x86.msi) /silent
winetricks -q $@ ${ winVer :- winxp } ${ winetricksSettings } ) | dialog --progressbox "Installing wine bottle, please wait..." -1 -1
}
# Install games
game_installer( ) {
2020-09-01 14:39:39 -04:00
mapfile -t installedGames < <( sed '/^$/d' " ${ configFile } " 2> /dev/null | cut -d '|' -f3)
2020-08-27 15:42:24 -04:00
# Create the menu of installed games
declare -a menuList
for i in " ${ gameList [@] } " ; do
local menuItem = " $i "
for j in " ${ installedGames [@] } " ; do
if [ [ " $j " = = " $menuItem " ] ] ; then
unset menuItem
fi
done
if [ [ -n " $menuItem " ] ] ; then
menuList += ( " $menuItem " " $menuItem " )
fi
done
if [ [ ${# menuList [@] } -eq 0 ] ] ; then
echo "All games are already installed."
exit 0
fi
2020-09-01 14:39:39 -04:00
menuList += ( "Make a One Time Donation" "Make a One Time Donation" )
menuList += ( "Become a Patron" "Become a Patron" )
2020-08-27 15:42:24 -04:00
game = " $( dialog --backtitle "Audio Game Installer" \
--clear \
--no-tags \
--menu "Please select a game to install" 0 0 0 " ${ menuList [@] } " --stdout) "
}
2020-09-04 23:32:26 -04:00
# remove games
game_removal( ) {
mapfile -t lines < <( sed '/^$/d' " ${ configFile } " 2> /dev/null)
if [ [ ${# lines } -eq 0 ] ] ; then
echo "No games found."
exit 0
fi
# Create the menu of installed games
declare -a menuList
for i in " ${ lines [@] } " ; do
menuList += ( " ${ i %|* } " " ${ i ##*| } " )
done
menuList += ( "Make a One Time Donation" "Make a One Time Donation" )
menuList += ( "Become a Patron" "Become a Patron" )
local game = " $( dialog --backtitle "Audio Game Removal" \
--clear \
--no-tags \
--menu "Please select a game to delete" 0 0 0 " ${ menuList [@] } " --stdout) "
if [ [ ${# game } -gt 0 ] ] ; then
if [ [ " $game " = = "Make a One Time Donation" ] ] ; then
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=¤cy_code=USD&bn=PP-DonationsBF:btn_donateCC_LG.gif:NonHosted"
exit 0
fi
if [ [ " $game " = = "Become a Patron" ] ] ; then
xdg-open "https://patreon.com/stormux"
exit 0
fi
local winePath = " ${ game #*| } "
winePath = " ${ winePath % \\ *.exe } "
local wineExec = " ${ game #*| } "
wineExec = " ${ wineExec %|* } "
wineExec = " ${ wineExec ##* \\ } "
# kill any previous existing wineservers for this prefix in case they didn't shut down properly.
WINEPREFIX = " ${ HOME } /.local/wine/ ${ game %|* } " wineserver -k
# remove the game
rm -rf " ${ HOME } /.local/wine/ ${ game %|* } "
# remove the launcher
awk -i inplace -vLine= " ${ game // \\ / \\ \\ } " '!index($0,Line)' " $configFile "
2020-09-05 15:02:33 -04:00
echo "The selected game has been deleted."
2020-09-04 23:32:26 -04:00
fi
exit 0
}
2020-08-27 15:42:24 -04:00
# launch games that are installed
game_launcher( ) {
2020-09-01 14:39:39 -04:00
mapfile -t lines < <( sed '/^$/d' " ${ configFile } " 2> /dev/null)
2020-08-27 15:42:24 -04:00
if [ [ ${# lines } -eq 0 ] ] ; then
echo "Install some games first."
exit 0
fi
# Create the menu of installed games
declare -a menuList
for i in " ${ lines [@] } " ; do
menuList += ( " ${ i %|* } " " ${ i ##*| } " )
done
2020-09-01 14:39:39 -04:00
menuList += ( "Make a One Time Donation" "Make a One Time Donation" )
menuList += ( "Become a Patron" "Become a Patron" )
2020-08-27 15:42:24 -04:00
local game = " $( dialog --backtitle "Audio Game Launcher" \
--clear \
--no-tags \
--menu "Please select a game to play" 0 0 0 " ${ menuList [@] } " --stdout) "
if [ [ ${# game } -gt 0 ] ] ; then
2020-09-01 14:39:39 -04:00
if [ [ " $game " = = "Make a One Time Donation" ] ] ; then
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=¤cy_code=USD&bn=PP-DonationsBF:btn_donateCC_LG.gif:NonHosted"
exit 0
fi
if [ [ " $game " = = "Become a Patron" ] ] ; then
xdg-open "https://patreon.com/stormux"
exit 0
fi
2020-08-27 15:42:24 -04:00
local winePath = " ${ game #*| } "
winePath = " ${ winePath % \\ *.exe } "
local wineExec = " ${ game #*| } "
wineExec = " ${ wineExec %|* } "
wineExec = " ${ wineExec ##* \\ } "
2020-09-01 14:39:39 -04:00
# kill any previous existing wineservers for this prefix in case they didn't shut down properly.
WINEPREFIX = " ${ HOME } /.local/wine/ ${ game %|* } " wineserver -k
# launch the game
2020-10-07 11:14:34 -04:00
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
2020-10-18 09:20:22 -04:00
WINEPREFIX = " ${ HOME } /.local/wine/ ${ game %|* } " wine start /realtime /d " ${ winePath } " " $wineExec "
2020-08-27 15:42:24 -04:00
fi
exit 0
}
# main script
#functions
add_launcher( ) {
local launchSettings = " ${ game ,, } "
launchSettings = " ${ launchSettings //[[ : space : ]]/- } | ${ 1 } | ${ game } "
2020-09-01 14:39:39 -04:00
if ! grep -F -q -x " ${ launchSettings } " " ${ configFile } " ; then
echo " ${ launchSettings } " >> " ${ configFile } "
2020-09-03 20:21:08 -04:00
sort -o " ${ configFile } " " ${ configFile } "
2020-09-05 12:37:10 -04:00
# Remove .lnk files because they don't work.
find ~/Desktop -type f -iname '*.lnk' -exec bash -c '
for f ; do
mimeType = " $( file -b " $f " ) "
mimeType = " ${ mimeType %%,* } "
if [ [ " $mimeType " = = "MS Windows shortcut" ] ] ; then
rm -v " $f "
fi
done ' _ { } +
2020-09-06 19:20:14 -04:00
if [ [ " ${ noCache } " = = "true" ] ] ; then
rm -f " ${ cache } / ${ 1 ##* \\ } "
fi
2020-08-27 15:42:24 -04:00
fi
}
automate_installer( ) {
# Function arguments are the keys to be pressed.
2020-09-02 22:36:48 -04:00
sleep 15
declare -a keyList
2020-08-27 15:42:24 -04:00
for i in ${ @ } ; do
case " $i " in
2020-09-02 22:36:48 -04:00
"alt+f" ) keyList += ( " sleep 15 key ${ i } " ) ; ;
"space" ) keyList += ( " sleep 1 key ${ i } " ) ; ;
*"+" *) keyList += ( " sleep 1 key ${ i } " ) ; ;
*) xdotool sleep 1 type ${ i } ; ;
2020-08-27 15:42:24 -04:00
esac
done
2020-08-27 17:35:32 -04:00
xdotool ${ keyList [*] } &
2020-09-02 22:36:48 -04:00
# call wineserver -w in case something failed here, the user will have a chance to try to fix it.
wineserver -w
2020-08-27 15:42:24 -04:00
}
2020-09-20 17:42:42 -04:00
# Check for updates
update
2020-09-06 14:38:16 -04:00
# If display isn't set assume we are launching from console and an X environment is running using display :0
if [ [ -z " $DISPLAY " ] ] ; then
export DISPLAY = ":0"
fi
2020-09-01 14:39:39 -04:00
# Settings file
2020-09-06 19:20:14 -04:00
cache = " ${ XDG_CONFIG_HOME :- $HOME /.config } /storm-games/audiogame-manager/cache "
2020-09-01 14:39:39 -04:00
configFile = " ${ XDG_CONFIG_HOME :- $HOME /.config } /storm-games/audiogame-manager/games.conf "
2020-09-06 19:20:14 -04:00
mkdir -p " ${ cache } "
2020-09-01 14:39:39 -04:00
mkdir -p " ${ configFile %/* } "
2020-08-27 15:42:24 -04:00
# Turn off debug messages
export WINEDEBUG = "-all"
# During installation, you can set winVer to the versions available.
# To set winetricks arguments, such as virtual desktop, set the winetricksSettings variable.
# Example: winetricksSettings="vd=1024x768"
2020-09-06 19:20:14 -04:00
# Files are cached unless -N no cache is set.
unset noCache
2020-09-02 22:36:48 -04:00
# Manual installation is not default, make sure it's unset
unset manualInstall
2020-08-27 15:42:24 -04:00
# The list of games available for installation.
# Use menu friendly names.
gameList = (
2020-11-07 13:02:20 -05:00
"A Hero's Call"
2020-09-06 14:38:16 -04:00
"Adrian's Doom"
2020-10-07 11:14:34 -04:00
"Adventurers At C"
"AudioDisc"
2020-08-28 20:11:17 -04:00
"Battle Zone"
2020-08-27 21:27:10 -04:00
"Bloodshed"
2020-09-20 00:07:50 -04:00
"Crazy Party"
2020-09-06 14:38:16 -04:00
"Easter Quest"
2020-10-26 19:04:21 -04:00
#"Entombed"
2020-10-08 10:42:47 -04:00
"Finger Panic"
2020-10-05 03:51:17 -04:00
"Fuck That Bird"
2020-08-27 15:42:24 -04:00
"Kitchensinc Games"
2020-08-30 22:26:53 -04:00
"Light Cars"
2020-09-04 22:25:00 -04:00
"Lockpick"
2020-10-09 13:33:37 -04:00
"Manamon"
2020-10-09 20:53:45 -04:00
"Manamon 2"
2020-11-05 10:38:49 -05:00
"Oh Shit!"
2020-10-18 09:20:22 -04:00
"Paladin of the Sky"
2020-10-06 14:59:04 -04:00
"Pontes Kickups!"
2020-11-05 11:31:54 -05:00
"Q9"
2020-10-25 12:55:26 -04:00
"Revenge of the Undead"
2020-11-05 19:47:01 -05:00
"RS Games"
2020-10-06 14:59:04 -04:00
"Run For Your Life"
2020-09-01 14:39:39 -04:00
"Shades of Doom"
2020-08-27 15:42:24 -04:00
"Super Egg Hunt"
2020-08-31 15:51:29 -04:00
"Super Liam"
2020-09-05 15:02:33 -04:00
"Swamp"
2020-08-27 15:42:24 -04:00
"The Blind Swordsman"
2020-08-31 15:51:29 -04:00
"Technoshock"
2020-08-27 15:42:24 -04:00
"Top Speed 3"
2020-11-05 11:31:54 -05:00
"Undead Assault"
2020-08-27 15:42:24 -04:00
)
# With no arguments, open the game launcher.
if [ [ $# -eq 0 ] ] ; then
game_launcher
fi
# Array of command line arguments
2020-09-05 00:26:29 -04:00
declare -A command = (
[ c] = "Check your system for necessary components."
[ h] = "This help screen."
[ i] = "Install games."
[ m] = "Manually handle install screens instead of using xdotools."
2020-09-06 19:20:14 -04:00
[ N] = "No cache, delete the installer after it has been extracted."
2020-09-05 00:26:29 -04:00
[ r] = "Remove a game. This will delete all game data."
2020-08-27 15:42:24 -04:00
)
2020-09-05 00:26:29 -04:00
# Convert the keys of the associative array to a format usable by getopts
args = " ${ !command[*] } "
args = " ${ args //[[ : space : ]]/ } "
while getopts " ${ args } " i ; do
2020-08-27 15:42:24 -04:00
case " $i " in
2020-08-27 17:35:32 -04:00
c) checklist; ;
2020-09-05 00:26:29 -04:00
h) help; ;
2020-08-27 17:35:32 -04:00
i) game_installer; ;
2020-09-04 23:32:26 -04:00
m) manualInstall = "true" ; ;
2020-09-06 19:26:48 -04:00
N) noCache = "true" ; ;
2020-09-04 23:32:26 -04:00
r) game_removal; ;
2020-08-27 15:42:24 -04:00
esac
done
# Install game based on the selection above.
case " ${ game } " in
2020-11-07 13:02:20 -05:00
"A Hero's Call" )
export winVer = "win7"
2020-11-08 20:19:04 -05:00
install_wine_bottle speechsdk corefonts dotnet40 xna31
2020-11-07 13:02:20 -05:00
download "http://files.OutOfSightGames.com/files/a-heros-call.zip" "https://stormgames.wolfe.casa/downloads/nvdaControllerClient32.dll"
unzip -d " $WINEPREFIX /drive_c/Program Files " " ${ cache } /a-heros-call.zip "
find " ${ WINEPREFIX } " -type f -name 'nvdaControllerClient32.dll' -exec cp -v " ${ cache } /nvdaControllerClient32.dll " "{}" \;
add_launcher "c:\Program Files\a-heros-call\A Hero's Call.exe"
; ;
2020-09-06 14:38:16 -04:00
"Adrian's Doom" )
install_wine_bottle speechsdk
download "https://agarchive.net/games/mt/adrian's%20doom.exe"
2020-09-06 19:20:14 -04:00
wine " ${ cache } /adrian's doom.exe " /silent
2020-09-06 14:38:16 -04:00
add_launcher "c:\Program Files\Two Caring Citizens\Adrian's Doom!\adrian.exe"
; ;
2020-10-25 12:55:26 -04:00
"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"
; ;
2020-08-28 20:11:17 -04:00
"Battle Zone" )
export winVer = "win7"
install_wine_bottle speechsdk
2020-09-06 14:38:16 -04:00
download "https://www.agarchive.net/games/gameMadnessInteractive/battle%20zone%2013.5%20setup.exe"
2020-09-06 19:20:14 -04:00
wine " ${ cache } /battle zone 13.5 setup.exe " /silent
2020-08-28 20:11:17 -04:00
add_launcher "c:\Program Files\Battle Zone\ss.exe"
2020-09-20 15:23:58 -04:00
rm -fv " ${ WINEPREFIX } /drive_c/Program Files/Battle Zone/nvdaControllerClient32.dll "
2020-08-28 20:11:17 -04:00
; ;
2020-08-27 21:27:10 -04:00
"Bloodshed" )
2020-10-25 12:55:26 -04:00
export winVer = "win7"
2020-08-27 21:27:10 -04:00
install_wine_bottle speechsdk
2020-09-06 14:38:16 -04:00
download "http://www.samtupy.com/games/bloodshed.exe"
2020-09-06 19:20:14 -04:00
cp " ${ cache } /bloodshed.exe " " $WINEPREFIX /drive_c/Program Files/ "
2020-10-07 16:48:46 -04:00
add_launcher "c:\Program Files\bloodshed.exe"
2020-08-27 21:27:10 -04:00
; ;
2020-09-20 00:07:50 -04:00
"Crazy Party" )
export winVer = "win7"
install_wine_bottle speechsdk
download "http://pragmapragma.free.fr/crazy-party/Crazy-Party-beta73.zip"
unzip -d " $WINEPREFIX /drive_c/Program Files " " ${ cache } /Crazy-Party-beta73.zip "
add_launcher "c:\Program Files\Crazy-Party-beta73\Crazy Party.exe"
2020-09-20 15:23:58 -04:00
rm -f " ${ WINEPREFIX } /drive_c/Program Files/Crazy-Party-beta73/nvdaControllerClient32.dll "
2020-09-20 00:07:50 -04:00
; ;
2020-09-06 14:38:16 -04:00
"Easter Quest" )
install_wine_bottle
download "https://agarchive.net/games/mt/easter%20quest%20setup.exe"
2020-09-06 19:20:14 -04:00
wine " ${ cache } /easter quest setup.exe " /silent
2020-09-06 14:38:16 -04:00
add_launcher "c:\Program Files\MTGames\Easter Quest\easter.exe"
; ;
2020-10-06 14:59:04 -04:00
"Entombed" )
2020-10-18 20:33:10 -04:00
export winVer = "win7"
install_wine_bottle dotnet35 msvcrt40 speechsdk
2020-10-06 14:59:04 -04:00
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"
; ;
2020-10-08 10:42:47 -04:00
"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"
; ;
2020-10-05 03:51:17 -04:00
"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"
; ;
2020-08-27 15:42:24 -04:00
"Kitchensinc Games" )
2020-09-04 18:45:45 -04:00
install_wine_bottle vb6run speechsdk dx8vb
2020-09-06 14:38:16 -04:00
download "https://stormgames.wolfe.casa/downloads/kitchen.tar.xz"
2020-09-04 18:45:45 -04:00
echo "Extracting files..."
2020-09-06 19:20:14 -04:00
tar xf " ${ cache } /kitchen.tar.xz " -C " $WINEPREFIX /drive_c/Program Files/ "
2020-08-27 15:42:24 -04:00
add_launcher "c:\Program Files\Kitchen's Sink\gamemenu.exe"
; ;
2020-08-30 22:26:53 -04:00
"Light Cars" )
2020-09-02 22:36:48 -04:00
install_wine_bottle dx8vb vb6run
2020-09-06 14:38:16 -04:00
download "https://www.agarchive.net/games/lighttech/light%20cars%20setup.exe"
2020-09-02 22:36:48 -04:00
if [ [ -n " $manualInstall " ] ] ; then
2020-09-06 19:20:14 -04:00
wine " ${ cache } /light cars setup.exe "
2020-09-02 22:36:48 -04:00
else
2020-09-06 19:20:14 -04:00
wine " ${ cache } /light cars setup.exe " &
2020-09-02 22:36:48 -04:00
automate_installer alt+n alt+a space alt+n alt+n alt+i alt+f
fi
echo -e " ${ USER } ${ HOST } \nna@na.na\nUS " > ~/.local/wine/light-cars/drive_c/Program\ Files/Lighttech\ Interactive/Light\ Cars/config.dat
unix2dos ~/.local/wine/light-cars/drive_c/Program\ Files/Lighttech\ Interactive/Light\ Cars/config.dat
2020-08-30 22:26:53 -04:00
add_launcher "c:\Program Files\Lighttech Interactive\Light Cars\lightCars.exe"
; ;
2020-09-04 22:25:00 -04:00
"Lockpick" )
install_wine_bottle vb6run dx8vb
2020-09-06 19:20:14 -04:00
download "http://files.l-works.net/lockpicksetup.exe"
wine " ${ cache } /lockpicksetup.exe " /silent
2020-09-04 22:25:00 -04:00
add_launcher "c:\Program Files\lWorks\Lockpick\lockpick.exe"
; ;
2020-10-09 13:33:37 -04:00
"Manamon" )
export winVer = "win7"
install_wine_bottle speechsdk
download "https://www.vgstorm.com/manamon/manamon_installer.exe"
wine " ${ cache } /manamon_installer.exe " /silent
add_launcher "c:\Program Files\VGStorm.com\Manamon\rpg.exe"
; ;
2020-10-09 20:53:45 -04:00
"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"
; ;
2020-11-05 10:38:49 -05:00
"Oh Shit!" )
export winVer = "win7"
install_wine_bottle speechsdk
download "http://samtupy.com/stevend/oh_shit.zip" "https://stormgames.wolfe.casa/downloads/nvdaControllerClient32.dll"
unzip -d " $WINEPREFIX /drive_c/Program Files " " ${ cache } /oh_shit.zip "
2020-11-08 20:19:04 -05:00
find " ${ WINEPREFIX } " -type f -name 'nvdaControllerClient32.dll' -exec cp -v " ${ cache } /nvdaControllerClient32.dll " "{}" \;
2020-11-05 10:38:49 -05:00
add_launcher "c:\Program Files\oh_shit\OhShit.exe"
; ;
2020-10-18 09:20:22 -04:00
"Paladin of the Sky" )
export winVer = "win7"
install_wine_bottle speechsdk
download "http://www.vgstorm.com/cod/pots/paladin_installer.exe"
wine " ${ cache } /paladin_installer.exe " /silent
add_launcher "c:\Program Files\VGStorm.com\Paladin of the Sky\game.exe"
; ;
2020-10-06 14:59:04 -04:00
"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"
; ;
2020-10-26 19:04:21 -04:00
"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"
; ;
2020-10-25 12:55:26 -04:00
"Revenge of the Undead" )
export winVer = "win7"
install_wine_bottle speechsdk
download "https://tunmi13.dev/projects/rotu.zip"
unzip -d " $WINEPREFIX /drive_c/Program Files " " ${ cache } /rotu.zip "
rm -fv " ${ WINEPREFIX } /drive_c/Program Files/rotu/nvdaControllerClient32.dll "
add_launcher "c:\Program Files\rotu\rotu.exe"
; ;
2020-11-05 19:47:01 -05:00
"RS Games" )
export winVer = "win7"
install_wine_bottle speechsdk
download "http://rsgames.org/rsdownloads/rsgclient/rsgames-client-setup-2.01.exe"
wine " ${ cache } /rsgames-client-setup-2.01.exe " /silent
2020-11-08 20:19:04 -05:00
find " ${ WINEPREFIX } " -type f -name 'nvdaControllerClient32.dll' -exec cp -v " ${ cache } /nvdaControllerClient32.dll " "{}" \;
2020-11-05 19:47:01 -05:00
add_launcher "c:\Program Files\RS Games Client\rsg.exe"
; ;
2020-10-06 14:59:04 -04:00
"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 "
2020-10-25 12:55:26 -04:00
add_launcher "c:\Program Files\run for your life\game.exe"
2020-10-06 14:59:04 -04:00
; ;
2020-09-01 14:39:39 -04:00
"Shades of Doom" )
2020-11-10 18:01:51 -05:00
export winVer = "win7"
install_wine_bottle vb6run dx8vb
2020-09-06 14:38:16 -04:00
download "http://www.gmagames.com/sod20022.exe"
2020-09-06 19:20:14 -04:00
wine " ${ cache } /sod20022.exe " /silent
2020-09-01 14:39:39 -04:00
add_launcher "c:\Program Files\Shades of Doom 2.0\sod.exe"
; ;
2020-08-27 15:42:24 -04:00
"Super Egg Hunt" )
install_wine_bottle
2020-09-06 14:38:16 -04:00
download "http://files.l-works.net/superegghuntsetup.exe"
2020-09-06 19:20:14 -04:00
wine " ${ cache } /superegghuntsetup.exe " /silent
2020-08-27 15:42:24 -04:00
add_launcher "c:\Program Files\Lworks\super egg hunt\superegghunt.exe"
; ;
2020-08-31 15:51:29 -04:00
"Super Liam" )
install_wine_bottle vb6run dx8vb
2020-09-06 14:38:16 -04:00
download "http://files.l-works.net/superliamsetup.exe"
2020-09-06 19:20:14 -04:00
wine " ${ cache } /superliamsetup.exe " /silent
2020-08-31 15:51:29 -04:00
add_launcher "c:\Program Files\lWorks\Super Liam\sl.exe"
; ;
2020-09-05 15:02:33 -04:00
"Swamp" )
2020-11-05 10:38:49 -05:00
export winVer = "win7"
2020-09-05 15:02:33 -04:00
winetricksSettings = "vd=1024x768"
install_wine_bottle vb6run dx8vb quartz speechsdk corefonts
2020-09-06 14:38:16 -04:00
download "https://kaldobsky.com/audiogames/SwampPart1.zip" "https://kaldobsky.com/audiogames/SwampPart2.zip"
2020-09-06 19:20:14 -04:00
unzip -d " $WINEPREFIX /drive_c/Program Files/swamp " " ${ cache } /SwampPart1.zip "
unzip -d " $WINEPREFIX /drive_c/Program Files/swamp " " ${ cache } /SwampPart2.zip "
2020-09-05 15:02:33 -04:00
# make sure the latest version is installed.
2020-09-06 19:20:14 -04:00
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 "
fi
2020-09-05 15:02:33 -04:00
wine cmd.exe /c 'cd /d c:\Program Files\swamp && Windows32bit.bat'
add_launcher "c:\Program Files\swamp\Swamp.exe"
; ;
2020-08-27 15:42:24 -04:00
"The Blind Swordsman" )
install_wine_bottle
2020-09-06 14:38:16 -04:00
download "http://www.evildogserver.com/theblindswordsman/theblindswordsmanPC.zip"
2020-09-06 19:20:14 -04:00
unzip -d " $WINEPREFIX /drive_c/Program Files " " ${ cache } /theblindswordsmanPC.zip "
2020-08-27 15:42:24 -04:00
add_launcher "c:\Program Files\TheBlindSwordsman.exe"
; ;
2020-08-31 15:51:29 -04:00
"Technoshock" )
install_wine_bottle
2020-09-06 14:38:16 -04:00
download "http://tiflocomp.ru/download/games/technoshock_140b_en.zip" "http://tiflocomp.ru/download/games/technoshock140b_en_update.zip"
2020-09-06 19:20:14 -04:00
unzip -d " $WINEPREFIX /drive_c/Program Files " " ${ cache } /technoshock_140b_en.zip "
unzip -d " $WINEPREFIX /drive_c/Program Files " " ${ cache } /technoshock_140b_en_update.zip "
2020-08-31 15:51:29 -04:00
wine " $WINEPREFIX /drive_c/Program Files/setup_eng.exe " /silent
wineserver -w
2020-08-31 16:14:36 -04:00
wine " $WINEPREFIX /drive_c/Program Files/setup_eng_update_pack.exe " /silent
2020-08-31 16:47:38 -04:00
add_launcher "c:\Program Files\Tiflocomp Games\Technoshock\ts.exe"
2020-08-31 15:51:29 -04:00
; ;
2020-08-27 15:42:24 -04:00
"Top Speed 3" )
2020-08-28 20:11:17 -04:00
install_wine_bottle directplay
2020-09-06 14:38:16 -04:00
download "https://github.com/PlayingintheDark/TopSpeed/releases/download/h/Tspeed_3.0.3.exe"
2020-09-06 19:20:14 -04:00
wine " ${ cache } /Tspeed_3.0.3.exe " /silent
2020-08-27 15:42:24 -04:00
add_launcher "c:\Program Files\Playing in the dark\Top Speed 3\TopSpeed.exe"
; ;
2020-11-05 11:31:54 -05:00
"Undead Assault" )
export winVer = "win7"
install_wine_bottle speechsdk
download "http://undead-assault.com/static/files/public/undead_assault.zip" "https://stormgames.wolfe.casa/downloads/nvdaControllerClient32.dll"
unzip -d " $WINEPREFIX /drive_c/Program Files/undead_assault " " ${ cache } /undead_assault.zip "
2020-11-08 20:19:04 -05:00
find " ${ WINEPREFIX } " -type f -name 'nvdaControllerClient32.dll' -exec cp -v " ${ cache } /nvdaControllerClient32.dll " "{}" \;
2020-11-05 11:31:54 -05:00
add_launcher "c:\Program Files\undead_assault\Undead Assault.exe"
; ;
2020-09-01 18:29:07 -04:00
"Make a One Time Donation" )
2020-09-01 14:39:39 -04:00
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=¤cy_code=USD&bn=PP-DonationsBF:btn_donateCC_LG.gif:NonHosted"
; ;
2020-09-01 18:29:07 -04:00
"Become a Patron" )
2020-09-01 14:39:39 -04:00
xdg-open "https://patreon.com/stormux"
; ;
2020-08-27 15:42:24 -04:00
*)
exit 0
; ;
esac
exit 0