diff --git a/ports/botvice/Bot Vice.sh b/ports/botvice/Bot Vice.sh new file mode 100644 index 0000000000..97569279ab --- /dev/null +++ b/ports/botvice/Bot Vice.sh @@ -0,0 +1,71 @@ +#!/bin/bash +# PORTMASTER: botvice.zip, Bot Vice.sh + +if [ -d "/opt/system/Tools/PortMaster/" ]; then + controlfolder="/opt/system/Tools/PortMaster" +elif [ -d "/opt/tools/PortMaster/" ]; then + controlfolder="/opt/tools/PortMaster" +else + controlfolder="/roms/ports/PortMaster" +fi + +source $controlfolder/control.txt +source $controlfolder/device_info.txt +get_controls +[ -f "${controlfolder}/mod_${CFW_NAME}.txt" ] && source "${controlfolder}/mod_${CFW_NAME}.txt" + +$ESUDO chmod 666 /dev/tty0 + +GAMEDIR="/$directory/ports/botvice" + +export LD_LIBRARY_PATH="/usr/lib32:$GAMEDIR/libs:$GAMEDIR/utils/libs" +export GMLOADER_DEPTH_DISABLE=1 +export GMLOADER_SAVEDIR="$GAMEDIR/gamedata/" + +# We log the execution of the script into log.txt +exec > >(tee "$GAMEDIR/log.txt") 2>&1 + +# Patch game +cd "$GAMEDIR" +# If "gamedata/game.unx" exists and its size is 4,660,180 bytes, apply the xdelta3 patch +if [ -f "./gamedata/game.unx" ]; then + file_size=$(ls -l "./gamedata/game.unx" | awk '{print $5}') + if [ "$file_size" -eq 4660180 ]; then + $ESUDO ./patch/xdelta3 -d -s gamedata/game.unx -f ./patch/botvice.xdelta gamedata/game.unx + fi +fi + +# If "gamedata/audiogroup1.dat" exists and its size is 12,241,788 bytes, apply the xdelta3 patch +if [ -f "./gamedata/audiogroup1.dat" ]; then + file_size=$(ls -l "./gamedata/audiogroup1.dat" | awk '{print $5}') + if [ "$file_size" -eq 12241788 ]; then + $ESUDO ./patch/xdelta3 -d -s gamedata/audiogroup1.dat -f ./patch/audio1.xdelta gamedata/audiogroup1.dat + fi +fi + +# If "gamedata/audiogroup2.dat" exists and its size is 27,416,556 bytes, apply the xdelta3 patch +if [ -f "./gamedata/audiogroup2.dat" ]; then + file_size=$(ls -l "./gamedata/audiogroup2.dat" | awk '{print $5}') + if [ "$file_size" -eq 27416556 ]; then + $ESUDO ./patch/xdelta3 -d -s gamedata/audiogroup2.dat -f ./patch/audio2.xdelta gamedata/audiogroup2.dat + fi +fi + +cd $GAMEDIR + +# Check for file existence before trying to manipulate them: +[ -f "./gamedata/game.win" ] && mv gamedata/data.win gamedata/game.droid +[ -f "./gamedata/game.unx" ] && mv gamedata/game.unx gamedata/game.droid + +# Make sure uinput is accessible so we can make use of the gptokeyb controls +$ESUDO chmod 666 /dev/uinput + +$GPTOKEYB "gmloader" -c ./botvice.gptk & + +$ESUDO chmod +x "$GAMEDIR/gmloader" + +./gmloader botvice.apk + +$ESUDO kill -9 $(pidof gptokeyb) +$ESUDO systemctl restart oga_events & +printf "\033c" > /dev/tty0 \ No newline at end of file diff --git a/ports/botvice/README.md b/ports/botvice/README.md new file mode 100644 index 0000000000..de4a5a7c61 --- /dev/null +++ b/ports/botvice/README.md @@ -0,0 +1,21 @@ +## Notes + +Special thanks to [DYA Games](https://dyagames.com/) for making this wonderful game + +Source: https://dyagames.itch.io/bot-vice + +## Controls + +| Button | Action | +|--|--| +|D-pad/L-stick|Movement | +|A|Shoot| +|B|Roll| +|X|Saber| +|R1|Aim| +|L1|Next Gun| +|L2|Previous Gun| +|Select |Space (to reconfigure controls)| +|Select |Pause/Menu| + + diff --git a/ports/botvice/botvice/botvice.apk b/ports/botvice/botvice/botvice.apk new file mode 100644 index 0000000000..86d6b7fcee Binary files /dev/null and b/ports/botvice/botvice/botvice.apk differ diff --git a/ports/botvice/botvice/botvice.gptk b/ports/botvice/botvice/botvice.gptk new file mode 100644 index 0000000000..c3e9e51462 --- /dev/null +++ b/ports/botvice/botvice/botvice.gptk @@ -0,0 +1,17 @@ +back = space +start = \" + +up = up +down = down +left = left +right = right + +left_analog_up = \" +left_analog_down = \" +left_analog_left = \" +left_analog_right = \" + +a = \" +b = \" +x = \" +y = \" diff --git a/ports/botvice/botvice/gamedata/splash.png b/ports/botvice/botvice/gamedata/splash.png new file mode 100644 index 0000000000..355e62c240 Binary files /dev/null and b/ports/botvice/botvice/gamedata/splash.png differ diff --git a/ports/botvice/botvice/gmloader b/ports/botvice/botvice/gmloader new file mode 100644 index 0000000000..f953f12dd3 Binary files /dev/null and b/ports/botvice/botvice/gmloader differ diff --git a/ports/botvice/botvice/libc++_shared.so b/ports/botvice/botvice/libc++_shared.so new file mode 100644 index 0000000000..fb45ef9052 Binary files /dev/null and b/ports/botvice/botvice/libc++_shared.so differ diff --git a/ports/botvice/botvice/libs/libcrypto.so.1.1 b/ports/botvice/botvice/libs/libcrypto.so.1.1 new file mode 100644 index 0000000000..12578440aa Binary files /dev/null and b/ports/botvice/botvice/libs/libcrypto.so.1.1 differ diff --git a/ports/botvice/botvice/libs/liblzma.so.5 b/ports/botvice/botvice/libs/liblzma.so.5 new file mode 100644 index 0000000000..f87132219a Binary files /dev/null and b/ports/botvice/botvice/libs/liblzma.so.5 differ diff --git a/ports/botvice/botvice/libs/libzip.so.5 b/ports/botvice/botvice/libs/libzip.so.5 new file mode 100644 index 0000000000..0908c68657 Binary files /dev/null and b/ports/botvice/botvice/libs/libzip.so.5 differ diff --git a/ports/botvice/botvice/patch/audio1.xdelta b/ports/botvice/botvice/patch/audio1.xdelta new file mode 100644 index 0000000000..0586edf2f7 Binary files /dev/null and b/ports/botvice/botvice/patch/audio1.xdelta differ diff --git a/ports/botvice/botvice/patch/audio2.xdelta b/ports/botvice/botvice/patch/audio2.xdelta new file mode 100644 index 0000000000..30a3cea4f1 Binary files /dev/null and b/ports/botvice/botvice/patch/audio2.xdelta differ diff --git a/ports/botvice/botvice/patch/botvice.xdelta b/ports/botvice/botvice/patch/botvice.xdelta new file mode 100644 index 0000000000..743df89741 Binary files /dev/null and b/ports/botvice/botvice/patch/botvice.xdelta differ diff --git a/ports/botvice/botvice/patch/xdelta3 b/ports/botvice/botvice/patch/xdelta3 new file mode 100644 index 0000000000..813f90458b Binary files /dev/null and b/ports/botvice/botvice/patch/xdelta3 differ diff --git a/ports/botvice/port.json b/ports/botvice/port.json new file mode 100644 index 0000000000..056651c927 --- /dev/null +++ b/ports/botvice/port.json @@ -0,0 +1,25 @@ +{ + "version": 2, + "name": "botvice.zip", + "items": [ + "Bot Vice", + "botvice" + ], + "items_opt": [], + "attr": { + "title": "Bot Vice", + "porter": [ + "Fraxinus88" + ], + "desc": "Show off your skills and reflexes in this frantic gallery shooter arcade action title - Filled with bullets, bots, and explosions! You play as Erin Saver, who carries out a personal vendetta against the criminal gang the Wildbots while bringing them to justice", + "inst": "Purchase the game either from https://dyagames.itch.io/bot-vice OR https://store.steampowered.com/app/491040/Bot_Vice/\n\nFor itch: Download Bot Vice (Linux Ubuntu 14.04 LTS) version, copy all files from /assets to /ports/botvice/gamedata\n\nFor steam: Run steam console via Windows+R: Type: steam://open/console, download the linux version by typing: download_depot 491040 491042 in the console, when the download is complete, it will tell you the location of the folder, copy all files from /assets to /ports/botvice/gamedata", + "genres": [ + "action" + ], + "image": null, + "rtr": false, + "exp": false, + "runtime": null, + "reqs": [] + } +} \ No newline at end of file diff --git a/ports/botvice/screenshot.png b/ports/botvice/screenshot.png new file mode 100644 index 0000000000..5d0827ef60 Binary files /dev/null and b/ports/botvice/screenshot.png differ