Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
55 changes: 26 additions & 29 deletions ports/roguelight/Roguelight.sh
Original file line number Diff line number Diff line change
Expand Up @@ -11,36 +11,39 @@ elif [ -d "$XDG_DATA_HOME/PortMaster/" ]; then
else
controlfolder="/roms/ports/PortMaster"
fi
source $controlfolder/control.txt
export PORT_32BIT="Y"
export controlfolder

get_controls
source $controlfolder/control.txt
[ -f "${controlfolder}/mod_${CFW_NAME}.txt" ] && source "${controlfolder}/mod_${CFW_NAME}.txt"
get_controls

# Variables
GAMEDIR="/$directory/ports/roguelight"
GMLOADER_JSON="$GAMEDIR/gmloader.json"
TOOLDIR="$GAMEDIR/tools"

# CD and set permissions
cd $GAMEDIR
> "$GAMEDIR/log.txt" && exec > >(tee "$GAMEDIR/log.txt") 2>&1
$ESUDO chmod +x $GAMEDIR/tools/patchscript
$ESUDO chmod +x $GAMEDIR/tools/SDL_swap_gpbuttons.py
$ESUDO chmod +x $GAMEDIR/tools/xdelta3
$ESUDO chmod +x $GAMEDIR/tools/splash
$ESUDO chmod +x "$GAMEDIR/gmloadernext.armhf"

export LD_LIBRARY_PATH="/usr/lib32:$GAMEDIR/lib:$LD_LIBRARY_PATH"
# Exports
export LD_LIBRARY_PATH="/usr/lib:$GAMEDIR/lib:$LD_LIBRARY_PATH"
export SDL_GAMECONTROLLERCONFIG="$sdl_controllerconfig"
export PATCHER_FILE="$GAMEDIR/tools/patchscript"
export PATCHER_GAME="Roguelight"
export PATCHER_TIME="1 minute"
export controlfolder
export DEVICE_ARCH

# Ensure executable permissions
$ESUDO chmod +x "$GAMEDIR/gmloadernext.aarch64"
$ESUDO chmod +x "$GAMEDIR/tools/patchscript"
$ESUDO chmod +x "$GAMEDIR/tools/splash"

# dos2unix in case we need it
dos2unix "$GAMEDIR/tools/patchscript"
dos2unix "$GAMEDIR/tools/SDL_swap_gpbuttons.py"
# Create saves directory
mkdir -p "$GAMEDIR/saves"

# Check if patchlog.txt to skip patching
if [ ! -f patchlog.txt ]; then
export PATCHER_FILE="$GAMEDIR/tools/patchscript"
export PATCHER_GAME="Roguelight"
export PATCHER_TIME="1 minute"
if [ -f "$controlfolder/utils/patcher.txt" ]; then
source "$controlfolder/utils/patcher.txt"
$ESUDO kill -9 $(pidof gptokeyb)
Expand All @@ -51,21 +54,15 @@ else
pm_message "Patching process already completed. Skipping."
fi

# Swap buttons
"$GAMEDIR/tools/SDL_swap_gpbuttons.py" -i "$SDL_GAMECONTROLLERCONFIG_FILE" -o "$GAMEDIR/gamecontrollerdb_swapped.txt" -l "$GAMEDIR/SDL_swap_gpbuttons.txt"
export SDL_GAMECONTROLLERCONFIG_FILE="$GAMEDIR/gamecontrollerdb_swapped.txt"
export SDL_GAMECONTROLLERCONFIG="`echo "$SDL_GAMECONTROLLERCONFIG" | "$GAMEDIR/tools/SDL_swap_gpbuttons.py" -l "$GAMEDIR/SDL_swap_gpbuttons.txt"`"

# Display loading splash
if [ -f "$GAMEDIR/patchlog.txt" ]; then
[ "$CFW_NAME" == "muOS" ] && $ESUDO ./tools/splash "splash.png" 1
$ESUDO ./tools/splash "splash.png" 2000 &
$ESUDO ./tools/splash "splash.png" 4000 &
fi

$GPTOKEYB "gmloadernext.armhf" -c ./roguelight.gptk &
pm_platform_helper "$GAMEDIR/gmloadernext.armhf"

#gmloadernext will use config.json
./gmloadernext.armhf -c "$GAMEDIR/gmloader.json"
# Assign configs and load the game
$GPTOKEYB "gmloadernext.aarch64" -c ./roguelight.gptk &
pm_platform_helper "$GAMEDIR/gmloadernext.aarch64"
./gmloadernext.aarch64 -c "$GMLOADER_JSON"

pm_finish
# Cleanup
pm_finish
5 changes: 3 additions & 2 deletions ports/roguelight/port.json
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,8 @@
"attr": {
"title": "Roguelight",
"porter": [
"mattyj513"
"mattyj513",
"Fraxinus88"
],
"desc": "The deeper you travel the darker it gets, and you only have your arrows to light the way.",
"inst": "Download Roguelight (windows) from https://managore.itch.io/roguelight. Place Roguelight.exe into ports/roguelight.",
Expand All @@ -21,7 +22,7 @@
"runtime": null,
"reqs": [],
"arch": [
"armhf"
"aarch64"
]
}
}
Empty file.
Binary file modified ports/roguelight/roguelight/game.port
Binary file not shown.
8 changes: 6 additions & 2 deletions ports/roguelight/roguelight/gmloader.json
Original file line number Diff line number Diff line change
@@ -1,8 +1,12 @@
{
"save_dir" : "saves",
"apk_path" : "game.port",
"disable_depth" : true,
"show_cursor" : false,
"disable_controller" : false,
"disable_depth" : false,
"disable_extensions" : false,
"disable_rumble" : false,
"disable_texhack" : false,
"rumble_scale" : 4.0,
"force_platform" : "os_windows"
}
}
Binary file not shown.
Binary file removed ports/roguelight/roguelight/gmloadernext.armhf
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file removed ports/roguelight/roguelight/lib/libcrypto.so.1.1
Binary file not shown.
Binary file removed ports/roguelight/roguelight/lib/libssl.so.1.1
Binary file not shown.
Binary file removed ports/roguelight/roguelight/lib/libzip.so.4
Binary file not shown.
Binary file removed ports/roguelight/roguelight/tools/7zzs
Binary file not shown.
100 changes: 0 additions & 100 deletions ports/roguelight/roguelight/tools/SDL_swap_gpbuttons.py

This file was deleted.

14 changes: 8 additions & 6 deletions ports/roguelight/roguelight/tools/patchscript
Original file line number Diff line number Diff line change
Expand Up @@ -12,25 +12,27 @@ export DATADIR="$GAMEDIR/assets"
export DATAFILE="game.port"
export LD_LIBRARY_PATH="/usr/lib:$GAMEDIR/lib:$GAMEDIR/tools/libs:$LD_LIBRARY_PATH"
export SDL_GAMECONTROLLERCONFIG="$sdl_controllerconfig"
export TOOLDIR="$GAMEDIR/tools"
export TMPDIR="$GAMEDIR/tmp"
export PATH="$GAMEDIR/tools:$PATH"
export PATH="$controlfolder:$DOTNETDIR:$TOOLKIT/gmtools:$PATH"

# Permissions
chmod 666 /dev/uinput
chmod 777 "$TOOLDIR/7zzs"

cd "$GAMEDIR"

unzip_exe() {
if [ -f "$GAMEDIR/assets/Roguelight.exe" ]; then
mv "$GAMEDIR/assets/Roguelight.exe" "$GAMEDIR/Roguelight.exe"
fi

if [ -f "$GAMEDIR/Roguelight.exe" ]; then
# Calculate the MD5 checksum of Mezzer.exe
actual_checksum=$(md5sum "$GAMEDIR/Roguelight.exe" | awk '{print $1}')

# Check if the file exists and the checksum matches
if [ "$actual_checksum" = "63f6f3acb59133fb95e2ec88520289c4" ]; then
# Use 7zip to extract the .exe file to the destination directory
"$TOOLDIR/7zzs" x "$GAMEDIR/Roguelight.exe" -o"$DATADIR" & pid=$!
"$controlfolder/7zzs.${DEVICE_ARCH}" x "$GAMEDIR/Roguelight.exe" -o"$DATADIR" & pid=$!

# Wait for the extraction process to complete
wait $pid
Expand All @@ -52,7 +54,7 @@ fi
apply_xdelta() {
# Check if the data.win file exists and apply xdelta
if [ -f "$DATADIR/data.win" ]; then
output=$($controlfolder/xdelta3 -d -s "$DATADIR/data.win" -f "./tools/patch/roguelight.xdelta" "$DATADIR/game.droid" 2>&1)
output=$(xdelta3 -d -s "$DATADIR/data.win" -f "./tools/patch/roguelight.xdelta" "$DATADIR/game.droid" 2>&1)
if [ $? -eq 0 ]; then
echo "Patch applied successfully"
echo "$output"
Expand All @@ -76,7 +78,7 @@ zip_archive() {
process_game() {
unzip_exe
echo "Removed unnecessary files"
sleep1
sleep 1
echo "Applying xdelta patch"
apply_xdelta
sleep 1
Expand Down