Ruffle is an Adobe Flash Player emulator written in the Rust programming language. The Linux version can be used in conjunction with libTAS to make tool-assisted speedruns of Flash games.

What you'll need

Test your game natively in Ruffle before you try TASing it! Ruffle is a work in progress and some games are incompatible. If you get a popup message about unsupported features, the game won't work yet and you'll have to try Ruffle again later. If your game runs but has some glitches that don't occur in the regular Adobe Flash Player, post a well-written, detailed issue on how to reproduce it and hope for the best.

Using with libTAS

Thankfully, setting it up with libTAS is not very complicated.

Framerate

Set the frames per second to the proper frame rate for your Flash game.
Setting it too low will incorrectly speed up the game, squander viable input frames, and reduce the encode quality. And setting it too high will cause Ruffle to freeze - although if for some reason you need the higher framerate, Ruffle may still work with Runtime -> Time tracking -> clock_gettime() checked.
Since Nightly 2023-02-25, Ruffle can print SWF info to the terminal if you launch libTAS with the following command:
RUST_LOG=ruffle_core=info libTAS | grep "Loaded SWF version"
For ealier Ruffle releases (though the new releases are mostly sync compatible with the old ones), you can open up a terminal and install exiftool first with this command:
sudo apt install libimage-exiftool-perl
And then use this command:
exiftool /path/to/yourgame.swf
This will list information about the .swf, including the frame rate.

Domain locking

Some Flash games are domain locked, meaning that you can only run them on specific websites. To get these games to work on the desktop version of Ruffle, you can trick the game into thinking it's on the correct website. As of nightly-2022-10-23, you can use the command-line parameter --spoof-url http://example.yoururlhere to feed the game any URL you want.

Nvidia drivers

If Ruffle is not working with Nvidia drivers, run the following commands and reboot your PC:
sudo apt install ubuntu-drivers-common
sudo apt install nvidia-driver-535 && nvidia-cuda-toolkit
sudo apt install ubuntu-restricted-extras && sudo apt install ubuntu-restricted-addons
Now Ruffle should run under libTAS, just make sure to have the Force software rendering option checked. If Ruffle fails to launch natively when using OpenGL, run export LIBGL_ALWAYS_SOFTWARE=1 and then run it in the same terminal window.

OpenGL

If Ruffle does not work with -g gl you can try the following command in the terminal:
 sudo apt install libx11-dev

Movie submissions

We allow submissions using Ruffle with libTAS. Please follow these guidelines to ensure your movie is acceptable and can be synced:

Tools


EmulatorResources/Ruffle last edited by Samsara on 10/7/2023 10:59 PM
Page History Latest diff List referrers View Source