Skip to content

Instantly share code, notes, and snippets.

@parkerlreed
Last active July 24, 2023 16:34
Show Gist options
  • Save parkerlreed/4bd1f5fa38f7ffa72f9ceacb7d7f636d to your computer and use it in GitHub Desktop.
Save parkerlreed/4bd1f5fa38f7ffa72f9ceacb7d7f636d to your computer and use it in GitHub Desktop.
Flashpoint Infinity for Steam Deck

Flashpoint Infinity instructions for Steam Deck

Intro

BlueMaxima's Flashpoint is a webgame preservation project with the likes of Flash, Shockwave, HTML5, and many more technologies under its belt.

https://bluemaxima.org/flashpoint/

Steam Deck ships with an immutable rootfs and we like to keep it that way. Following is a guide on getting Flashpoint up and running on your Deck!

Install Distrobox

This will require your sudo password for the setup

curl -s https://raw.githubusercontent.com/89luca89/distrobox/main/install | sh -s -- --prefix ~/.local
curl -s https://raw.githubusercontent.com/89luca89/distrobox/main/extras/install-podman | sh -s -- --prefix ~/.local

Add these two lines to ~/.bashrc and reload your terminal

export PATH=$HOME/.local/bin:$PATH
export PATH=$HOME/.local/podman/bin:$PATH

Setup Distrobox container

distrobox create -i docker.io/library/archlinux -n fp-arch
distrobox enter fp-arch
sudo pacman -Syu qemu-full php
distrobox-export --bin /usr/bin/qemu-system-i386 --export-path ~/.local/bin
distrobox-export --bin /usr/bin/php --export-path ~/.local/bin
exit

Setup Flashpoint directory and files

Choose where you want to put Flashpoint and change to directory. I will use ~/Games in my example.

mkdir ~/Games
cd ~/Games
wget https://bluemaxima.org/flashpoint/Flashpoint%2011.1%20Infinity.exe
7z x Flashpoint\ 11.1\ Infinity.exe
cd Flashpoint\ 11.1\ Infinity
rm -rf Launcher/

Download this file and place in that Flashpoint 11.1 Infinity folder

https://bluepload.unstable.life/flashpoint.tar.gz

tar xvf flashpoint.tar.gz
rm flashpoint.tar.gz

And because I forgot to include the launcher script in the download...

Save these contents to start-flashpoint.sh

#!/bin/bash
SCRIPT_DIR=$( cd -- "$( dirname -- "${BASH_SOURCE[0]}" )" &> /dev/null && pwd )
export PATH+=":$SCRIPT_DIR/FPSoftware/FPWine-8.0/bin"
cd $SCRIPT_DIR/Launcher
./flashpoint-launcher
killall php
killall qemu-system-i386

Now run start-flashpoint.sh and you should be good to go!

chmod +x start-flashpoint.sh
./start-flashpoint.sh

EDIT: Addendum for Shockwave 3D

Some Shockwave titles fail to render 3D because lib32-libxcomposite is not installed on Valve's read only root fs.

Here are the steps to include this locally

Edit start-flashpoint.sh and change the PATH line to match the follwing

export PATH="$SCRIPT_DIR/FPSoftware/FPWine-8.0:$PATH"

Go to FPSoftware/FPWine-8.0

cd FPSoftware/FPWine-8.0

And create a file named wine with the follwing contents

#!/bin/bash
SCRIPT_DIR=$( cd -- "$( dirname -- "${BASH_SOURCE[0]}" )" &> /dev/null && pwd )
LD_PRELOAD=$SCRIPT_DIR/libXcomposite.so.1.0.0 $SCRIPT_DIR/bin/wine "$@"

Then make it executable

chmod +x wine

Download this file and place next to the wine file you just created

https://anonfiles.com/Tbf9g7V0ye/libXcomposite.so.1.0_0

Now you should have 3D in Shockwave games if it was missing (Supersonic RC is a good test. Get in game and see if it renders past the menu)

@parkerlreed
Copy link
Author

Game mode is currently broken anyways for anything Flash. Just get a black window in the WINE FlashPlayer.

It should be loading the launcher though so I'm not sure.

I need to do an updated guide for 12 as that's working pretty much the same (at least in desktop)

@rredford
Copy link

so it's basically still same as guide for 11.1 for steamdeck?

@parkerlreed
Copy link
Author

There's a bit different because of the new downloader and Launcher has a fix that's in a 12.1.0 hotfix branch but not on releases yet.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment