- Manifest multiarch i386 (Compat.i386 + GL32 + gamescope) - Wrapper launcher con EULA dialog GTK3 (persistente), audio PipeWire, saves - sdl12-compat build i386, risoluzione 1024x768@16, 60fps - Icona composita (mech + kanji + banner SHOGO, trasparente) 512/256 - icon-build.py (post-processing rembg) - Cartella flathub-submission pronta per la PR - install-shogo-demo.sh per PC nuovi
56 lines
2.0 KiB
Bash
Executable File
56 lines
2.0 KiB
Bash
Executable File
#!/bin/sh
|
|
# Shogo: Mobile Armor Division (Linux Demo) - launcher wrapper Flatpak
|
|
# Avvia il client i386 in gamescope fullscreen con sdl12-compat (audio PipeWire)
|
|
set -eu
|
|
|
|
export LD_LIBRARY_PATH="/app/lib32:/app/lib/i386-linux-gnu${LD_LIBRARY_PATH:+:$LD_LIBRARY_PATH}"
|
|
export SDL_VIDEODRIVER=x11
|
|
export SDL_AUDIODRIVER=pulseaudio
|
|
export SDL_AUDIO_DEVICE_SAMPLE_FRAMES=2048
|
|
export MESA_EXTENSION_MAX_YEAR=2002
|
|
export SHOGODIR=/app/game
|
|
export SHOGO_CDROM=/app/game
|
|
export SHOGO_MOVIEPATH=/app/game/Movies
|
|
|
|
# EULA: prima accettazione richiesta, poi persistente
|
|
EULA_FILE="${XDG_CONFIG_HOME:-$HOME/.config}/shogo-demo/eula-accepted"
|
|
if [ ! -f "$EULA_FILE" ]; then
|
|
mkdir -p "$(dirname "$EULA_FILE")"
|
|
if /app/bin/eula-dialog; then
|
|
touch "$EULA_FILE"
|
|
else
|
|
echo "License not accepted: Shogo will not start."
|
|
exit 1
|
|
fi
|
|
fi
|
|
|
|
# User config (as in the historical port launcher script)
|
|
mkdir -p "$HOME/.hyperion/Shogo/Save"
|
|
[ -f "$HOME/.hyperion/Shogo/ShogoLauncher.ini" ] || cp /app/game/ShogoLauncher.ini "$HOME/.hyperion/Shogo/" 2>/dev/null || true
|
|
# User autoexec.cfg with forced resolution/color (the menu lists up to 1024x768 only,
|
|
# but the engine accepts higher values via autoexec.cfg / command line)
|
|
if [ ! -f "$HOME/.hyperion/Shogo/autoexec.cfg" ]; then
|
|
{
|
|
echo '"ScreenWidth" "1024"'
|
|
echo '"ScreenHeight" "768"'
|
|
echo '"MaxFPS" "30"'
|
|
echo '"MouseSensitivity" "3.000000"'
|
|
} > "$HOME/.hyperion/Shogo/autoexec.cfg"
|
|
fi
|
|
|
|
# Save games in XDG data (writable in the sandbox)
|
|
SAVEDIR="${XDG_DATA_HOME:-$HOME/.local/share}/shogo-demo"
|
|
mkdir -p "$SAVEDIR/Save"
|
|
|
|
cd /app/game
|
|
RUN="./client +savedirectory \"$SAVEDIR\" -rez shogodem.rez +renderdll glx.ren \
|
|
+screenwidth 1024 +screenheight 768 +bpp 16 +Sound16Bit 1 +NumSWVoices 16 \
|
|
+DisableSound 0 +DisableMusic 0 +DisableMovies 1 +DisableLightmap 1 \
|
|
+EnableTjuncs 1 +EnableMultiTex 1 -conskey 291 +MaxFPS 30"
|
|
|
|
if command -v gamescope >/dev/null 2>&1; then
|
|
exec gamescope -f -w 1024 -h 768 -S fit --force-grab-cursor -r 60 -- /bin/sh -c "$RUN"
|
|
else
|
|
exec /bin/sh -c "$RUN"
|
|
fi
|