diff --git a/README.md b/README.md index a9b1c0e..f09d9cf 100644 --- a/README.md +++ b/README.md @@ -80,7 +80,7 @@ Note that currently the 64 bit wine version of SAPI does not work. Games that in add_launcher "c:\Program Files\My Awesome Game\mag.exe" ;; -In some cases, however, this will cause the game to not function at all. For these cases, we have a fake dll that can take the place of the original. You just need to make sure the fake dll is downloaded during game installation and then move it into place. For an example of how this works, please take a look at the "RS Games" entry in audiogame-manager.sh. +In some cases, however, this will cause the game to not function at all. For these cases, we have a fake dll that can take the place of the original. You just need to make sure the fake dll is downloaded during game installation and then move it into place. For an example of how this works, please take a look at the "A Hero's Call" entry in audiogame-manager.sh. ### Dealing with compressed files diff --git a/audiogame-manager.sh b/audiogame-manager.sh index 94490fb..b25b13c 100755 --- a/audiogame-manager.sh +++ b/audiogame-manager.sh @@ -381,6 +381,9 @@ get_bottle() { "run-for-your-life"*) ;& "thief"*) ;& "villains-from-beyond"*) export WINEPREFIX="${HOME}/.local/wine/oriol-gomez";; + # pbgames group + "dark-destroyer"*) ;& + "PBGames TMP") export WINEPREFIX="$HOME/.local/wine/pbgames" ;; # tunmi13 games group "battle-of-the-hunter"*) ;& "challenge-of-the-horse"*) export WINEPREFIX="${HOME}/.local/wine/tunmi13";; @@ -788,6 +791,9 @@ game_launcher() { cp "${cache}/bk3-dict.dat" "${dictPath}/dict.dat" fi if [[ -d "${dictPath}/dict" ]]; then + if [[ ! -e "${dictPath}/data/nvdaControllerClient.dll" ]]; then + cp "${cache}/nvda2speechd32.dll" "${dictPath}/data/nvdaControllerClient.dll" + fi pgrep -u "$USER" nvda2speechd &> /dev/null || ${XDG_DATA_HOME:-$HOME/.local/share}/audiogame-manager/nvda2speechd & fi if [[ ! -d "${dictPath}/dict" ]]; then @@ -985,6 +991,7 @@ gameList=( "Crazy Tennis" "Crime Hunter" "Danger on the Wheel" + #"Dark Destroyer" "Daytona and the Book of Gold" "Death on the Road" "Deathmatch" @@ -1006,7 +1013,7 @@ gameList=( "GMA Tank Commander" "Grizzly Gulch" "Hammer of Glory" - #"Hearthstone" + "Hearthstone" "Hunter" "Insect Therapy" "Interceptor" @@ -1022,6 +1029,7 @@ gameList=( "Manamon" "Manamon 2" #"Marina Break" + "Minecraft" "Monkey Business" "MudSplat French" "MudSplat English" @@ -1785,6 +1793,13 @@ case "${game}" in find "${WINEPREFIX}" -type f -name "nvdaControllerClient32.dll" -exec rm -fv "{}" \; add_launcher "c:\Program Files\danger on the wheel\game.exe" ;; + "Dark Destroyer") + export bottle=pbgames + install_wine_bottle speechsdk ie6 + download "https://www.agarchive.net/games/pb/Dark-Destroyer-Setup.exe" + wine "$cache/Dark-Destroyer-Setup.exe" /silent + add_launcher 'c:\Pbgames\Dark_destroyer\darkdestroyer.exe' + ;; "Daytona and the Book of Gold") export bottle="aprone" export winVer="win7" @@ -1927,11 +1942,12 @@ case "${game}" in "Eurofly") export winVer="win7" export winetricksSettings="vd=1024x768" - install_wine_bottle speechsdk - download "http://www.stefankiss.sk/programy/eurofly/Launcher_1.2.zip" "http://www.stefankiss.sk/programy/eurofly/Eurofly_2_ful_setup.exe" + install_wine_bottle speechsdk comctl32 + download "https://www.stefankiss.sk/files/eurofly2/Launcher_1.2.zip" "https://www.stefankiss.sk/files/eurofly2/Eurofly_2_ful_setup.exe" wine "${cache}/Eurofly_2_ful_setup.exe" /silent - unzip -d "$WINEPREFIX/drive_c/Eurofly" "${cache}/Launcher_1.2.zip" + unzip -o -d "$WINEPREFIX/drive_c/Eurofly" "${cache}/Launcher_1.2.zip" add_launcher "c:\Eurofly\launcher.exe" + echo "Note: On first and sometimes later launch, Eurofly may take a very long time to download required files, please be patient..." ;; "Extant") install_wine_bottle speechsdk @@ -2000,7 +2016,7 @@ case "${game}" in export winVer="win10" install_wine_bottle ie8 vcrun2015 speechsdk # This download url breaks the download function, so grab it manually. - wget -O "${cache}/Hearthstone.exe" "https://www.battle.net/download/getInstallerForGame?os=win&gameProgram=HEARTHSTONE&version=Live" + wget -O "${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" wine "${cache}/Hearthstone.exe" /silent unzip -o "${cache}/Hearthstone_patch.zip" -d "${WINEPREFIX}/drive_c/Program Files/Hearthstone" @@ -2179,6 +2195,26 @@ EOF find "${WINEPREFIX}" -type f -name "nvdaControllerClient.dll" -exec cp -v "$cache/nvda2speechd32.dll" "{}" \; add_launcher "c:\nyanchangame\MarinaBreak\marinabreak.exe" ;; + "Minecraft") + export WINEARCH=win64 + export winVer="win7" + install_wine_bottle + get_installer "accessibility-plus-extended-1.18-curseforge-v1.9.0.jar" "https://www.curseforge.com/minecraft/mc-mods/accessibility-plus-extended/download" + get_installer "Mambience-5.2.0+1.19.jar" "https://www.curseforge.com/minecraft/mc-mods/mambience/download" + get_installer "easy-life-1.18-v1.5.1.jar" "https://www.curseforge.com/minecraft/mc-mods/easy-life/download" + get_installer "numpad-camera-controls-1.18-v1.5.1.jar" "https://www.curseforge.com/minecraft/mc-mods/numpad-keypad-camera-controls/download" + download "https://www.python.org/ftp/python/3.7.9/python-3.7.9-amd64.exe" + wine "$cache/python-3.7.9-amd64.exe" /silent + wine 'c:\windows\py.exe' -m pip install portablemc portablemc-fabric + # Now just need to install latest fabric, portablemc start --dry fabric + wine 'c:\users\'"$USER"'\AppData\Local\Programs\Python\Python37\Scripts\portablemc.exe' start --dry fabric: + # Also need to copy all mods into right place. + mkdir "$WINEPREFIX/drive_c/users/$USER/AppData/Roaming/.minecraft/mods" + for x in "accessibility-plus-extended-1.18-curseforge-v1.9.0.jar" "Mambience-5.2.0+1.19.jar" "easy-life-1.18-v1.5.1.jar" "numpad-camera-controls-1.18-v1.5.1.jar" ; do + cp "$cache/$x" "$WINEPREFIX/drive_c/users/$USER/AppData/Roaming/.minecraft/mods" + done + # And of course, add the launcher. +;; "Monkey Business") export winVer="win7" install_wine_bottle vb6run dx8vb speechsdk quartz diff --git a/speech/clipboard_translator.sh b/speech/clipboard_translator.sh index d34a3a7..3445913 100755 --- a/speech/clipboard_translator.sh +++ b/speech/clipboard_translator.sh @@ -32,7 +32,7 @@ while pgrep -u "$USER" ^$1 &> /dev/null ; do continue fi if [[ "${newText}" =~ ^[0-9A-Za-z[:space:][:punct:]]+$ ]]; then - spd-say "$newText" + spd-say -- "$newText" echo "" | xclip -d "${DISPLAY:-:0}" -selection clipboard 2> /dev/null continue fi @@ -41,7 +41,7 @@ while pgrep -u "$USER" ^$1 &> /dev/null ; do $0~originalText { print $2; exitCode = 0; exit} END { exit exitCode }' "$dictionaryFile")" if [[ "${#translatedText}" -ge 1 ]]; then - spd-say "$translatedText" + spd-say -- "$translatedText" echo "" | xclip -d "${DISPLAY:-:0}" -selection clipboard 2> /dev/null continue fi @@ -49,6 +49,6 @@ while pgrep -u "$USER" ^$1 &> /dev/null ; do if ! [[ "${newText}" =~ ^[0-9[:punct:]]+$ ]]; then echo "${newText})==:[${translatedText}" >> "$dictionaryFile" fi - spd-say "$translatedText" + spd-say -- "$translatedText" echo "" | xclip -d "${DISPLAY:-:0}" -selection clipboard 2> /dev/null done diff --git a/speech/speak_window_title.sh b/speech/speak_window_title.sh index 4e8f9f1..c4a8c6b 100755 --- a/speech/speak_window_title.sh +++ b/speech/speak_window_title.sh @@ -16,7 +16,7 @@ while pgrep -u "$USER" ^$1 &> /dev/null ; do if [[ "$wnd_title" =~ $lookfor ]]; then wnd_title=${BASH_REMATCH[1]} if [[ "$old_title" != "$wnd_title" ]]; then - spd-say "$wnd_title" + spd-say -- "$wnd_title" old_title="$wnd_title" fi fi