tux

One-Step Automated Install

Those who want to get started quickly and conveniently may install the prerequisites using the following command:

curl -fsSL https://arks-layer.com/linux/configure.sh | bash

From there, you can skip directly to the Downloading wine-ge-proton section of our guide.

We understand that piping into bash is controversial. That's why for those who wish to do everything manually, you can follow these alternative instructions below.

Prerequisites & Setup

Flatpak Installation

Ensure that you have Flatpak installed on your distro. We will be using the app "Bottles", which is only found on the Flathub App Store.
You can install Flatpak by using the instructions for your distro by following this link: https://flatpak.org/setup/.

Setup Heroic Games Launcher

With Flatpak installed, we will now install Heroic Games Launcher in Terminal with this command.

flatpak install com.heroicgameslauncher.hgl

Configure Python

Now for the next few steps, we'll be needing to setup a Python virtual environment. Make a new folder, change directories inside of it, then install the virtualenv python package via pip. You can do this by doing:

mkdir "$HOME/pso2_files" && cd "$HOME/pso2_files"
python3 -m pip install --user virtualenv

If you're on a Steam Deck, or you do not have pip, you can download the virtualenv zipapp. This will require you to have it downloaded in the same folder you plan on running the command.

We will now need to create the virtual environment. Run this command:

If you've used pip to install virtualenv:

python3 -m virtualenv myenv

If you've downloaded the zipapp:

python3 virtualenv.pyz myenv

Now activate the virtual environment & install the requests python package.

source myenv/bin/activate
pip install requests

Downloading pso2tricks.py

If you just ran the the One-Step configuration script, change directory using the command:
cd "$HOME/pso2_files"
Now, activate the virtual environment with: source myenv/bin/activate.

Download pso2tricks.py from here.

pso2tricks is a new python script developed by Arks-Layer that aids linux users in getting the PSO2 Tweaker and patching the game.
You can view the source here: https://github.com/SynthSy/pso2tricks.py.

Place both pso2tricks.py in the same folder where you setup the virtual environment.

Using the virtual environment we set up earlier, activate it if you haven't already and run the following command:

python pso2tricks.py --tweaker

This will download the PSO2 Tweaker inside the pso2_files folder.

Configuring Heroic

Launch Heroic, if it's your first time opening it, you'll receive a changelog and a tracking consent pop-up. On the left, click on Wine Manager, then from the top, click on WINE-GE and download WINE-GE-LATEST.

Heroic Games Launcher
Wine manager menu

From the left, click on Library, then click on the button labelled "ADD GAME". You'll receive a new window asking for the title, app image, platform, etc.

Where it says "Title", replace it with Phantasy Star Online 2 New Genesis, ensure the platform is on "Windows". Heroic should then generate box art and a banner, then scroll down to "Select Executable" and click on the folder icon next to it. Search for the PSO2 Tweaker inside of the pso2_files folder inside of your home folder, select it and press the choose button.

Expand the option Show Wine Settings, Where it says Wine Version, in the dropdown select Wine - Wine-GE-Latest.

Now click on the green Finish button.

Adding a game with Heroic

Click on the settings icon settings-icon. Scroll down to the bottom and click on the button labelled WINECFG. On the bottom, where it says Windows version, select Windows 10, then click OK.

Now click on the button that says WINETRICKS. In the search bar, type in dotnet48 and click on the install button next to it. Depending on your cpu and internet speed, it will take some time to complete.

Installing .NET 4.8

Once this is finished, close the window and then scroll back to the top and click on the menu option called OTHER. Uncheck BattlEye AntiCheat Runtime and EasyAntiCheat Runtime.

Click on ADVANCED, then scroll down to the section labelled Environmental Variables. On the box where it says NAME, enter WINEDLLOVERRIDES, and in Value, enter d3d11.dll=n,b, then press the green + button.

Now, we'll be adding in another variable. This time, for NAME, enter WINE_NO_OPEN_FILE_SEARCH. Then for Value, enter "pso2_bin/data", then press the green + button. You may now close this window.

Environmental variables

PSO2 Tweaker

With Heroic fully setup & installed, we can move on to downloading PSO2/NGS JP.

You may proceed to follow the Tweaker Installation guide until after PSO2:NGS is installed, then check back on this page. If the text in the log window is unreadable, replace the Tweaker's theme.json file located in $HOME/Games/Heroic/Prefixes/default/Phantasy Star Online 2 New Geneis/drive_c/users/username/AppData/Roaming/PSO2 Tweaker/Theme
with this file, then relaunch the Tweaker.

The default path (assuming you changed nothing) to drive_c is located in $HOME/Games//Heroic/Prefixes/default/Phantasy Star Online 2 New Geneis.

Installing the English Fan Patch

If for whatever reason the English fan patch does not install, you may try installing them via pso2tricks.py.


Activate the virtual environment from earlier in this guide, and enter the following command:

python pso2tricks.py --patcher ngs|both pso2_bin_path

You must specify whether you want the NGS only patch or if you have both NGS and PSO2 installed, and you must specify the folder where the pso2_bin folder is located at.

Example: python pso2tricks.py --patcher ngs Z:/phantasystaronline2_jp/pso2_bin

This will download a pre-compiled patcher from https://github.com/HybridEidolon/pso2-modpatcher as well as the latest English fan patches into ~/pso2_files. Then proceeds to patch your installation.

If you wish to compile your own patcher, get rust from this page, visit the above GitHub page and follow the cargo-install page on compiling from git.

As of this time, we do not support installing other language patches or externally compiled patches using pso2tricks.py.


If you have any issues, message us on Discord.