How to play Requiem on Linux (natively)

General discussions concerning the world of Requiem and the community.
Post Reply
User avatar
Phalkon
Posts: 5
Character: Francesca Blackberry

How to play Requiem on Linux (natively)

Post by Phalkon » February 23rd, 2023, 10:54 am

How to play Requiem on Linux

This guide will help you get Requiem client working on Linux natively.
It was specifically tested on Fedora Linux 37, but should work on other distributions with minor tweaks.

This guide will require the use of the terminal (konsole) but all the commands are copy&paste, no need to worry.

1. Install dependencies

Note: You might not strictly need all the packages, but they are listed as necessary in the official documentation. To be safe we will follow the documentation.

Before installing anything, it's a good idea to ensure our packages are up to date too.

Code: Select all

sudo dnf update

sudo dnf install zlib-devel libgdiplus mono-complete
I haven't tested this guide on Ubuntu or other Debian derivatives but if you are on Ubuntu/Mint (or other Ubuntu/Debian based distro) you should use these commands instead:

Code: Select all

sudo apt update
sudo apt updgrade
sudo apt install libz-dev libgdiplus mono-complete
2. Get the archives

Now let's download everything needed.
We will need
the full Requiem archive: http://www.13thrones.com:2595/Requiem.zip
ClassicUO Launcher: https://www.classicuo.eu/launcher/linux ... elease.zip
and Razor: https://github.com/markdwags/Razor/rele ... 7.0.12.zip

Notice we are getting slightly older version of Razor. That is due to issues with freezing on logout with the current version. Feel free to experiment with more recent versions. If you use this older version, Requiem will show you notices about using an older version of Razor, but everything will still work, you can just ignore them.

3 .Change the working directory

Now we need to change the directory to the one with those downloaded archives. Assuming it's all in /home/user/Downloads this should be enough

Code: Select all

cd Downloads
4. Get official ClassicUO client

The mono wrapper from the official ClassicUO client is quite good and there's no need to reinvent the wheel so we will simply borrow it from there. Let's unzip and start the ClassicUO Launcher and it will download everything needed.

Code: Select all

mkdir Launcher
unzip ClassicUOLauncher-linux-x64-release.zip -d Launcher/
Launcher/ClassicUOLauncher
Wait until the launcher shows you the option to create a new profile and then close it.

5. Copy necessary ClassicUO files into Requiem client

Now, we'll unzip the Requiem client and copy some files from ClassicUO client to Requiem client.

Code: Select all

mkdir Requiem
unzip Requiem.zip -d Requiem/
rsync -av --ignore-existing Launcher/ClassicUO/ Requiem/ClassicUO/
6. Replace Razor

And of course we'll need to replace the Razor provided by Requiem with the older version downloaded previously.

Code: Select all

rm -r Requiem/ClassicUO/Data/Plugins/Razor/*
unzip Razor-v1.7.0.12.zip -d Requiem/ClassicUO/Data/Plugins/Razor/
6. Remove no longer needed files

Let's clean up and remove everything we won't need anymore. You may wish to skip this in case something doesn't work to prevent having to download everything again.

Code: Select all

rm -r ClassicUOLauncher-linux-x64-release.zip Razor-v1.7.0.12.zip Requiem.zip Launcher
7. Fix the relative path issue

There's an issue with using relative path in ClassicUO under Linux. Even when you replace the backward slashes with forward ones in settings.json, the game will likely crash right after loading most of the mul files. Using absolute path will fix it but then the game will fail to load mul files if you ever moved the folder, so I made this easy script to make sure the absolute path is always updated.

Let's open a text editor.

Code: Select all

nano Requiem/requiem.sh
This will open nano text editor in the terminal. You'll need to copy the script bellow into it.
#!/bin/bash
CURRENT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
cd "${CURRENT_DIR}"
chmod +x ClassicUO/ClassicUO.bin.x86_64
ClassicUO/ClassicUO.bin.x86_64 -uopath "${CURRENT_DIR}" -plugin Razor/Razor.exe
Use ctrl+shift+v for paste in the terminal.
And then ctrl+O to save it.
Ctrl+X will close the editor.

If you saved it correctly this command will show the script.

Code: Select all

cat Requiem/requiem.sh
Note: You can use other text editors, including graphical ones, just make sure you save the requiem.sh in the Requiem folder next to all the mul files, not inside the ClassicUO folder.

8. Let's run it

All that's left is to make the script executable

Code: Select all

chmod +x Requiem/requiem.sh
And now we can just run it. If all went well, it should launch the Requiem client with Razor.

Code: Select all

Requiem/requiem.sh
9. Known Issues

You can now move the Requiem folder wherever you want. Running the client with requiem.sh will always update the absolute path. However avoid using spaces in your path. ClassicUO likes to crash when you have folders like "Ultima Online" in the path. You could use "Ultima" or Ultima_Online" or "UltimaOnline" just avoid spaces and special characters.

This will work fine

Code: Select all

/home/user/Software/Games/Ultima/Requiem
This, not so much

Code: Select all

/home/user/Software and stuff/Games mostly/Ultima Online/Requiem
It's not an issue with the script but rather the client itself. It seems to be similar to the issue with relative path.

10. Optional stuff - Desktop file

If you wish, you could also make a desktop file for Requiem so that you would have Requiem icon that you can just click on among your other applications instead of using terminal to launch it.
To do so, place requiem.desktop file inside /home/user/.local/share/applications

Code: Select all

cd
nano .local/share/applications/requiem.desktop
With this content:

Code: Select all

Name=Requiem
GenericName=Ultima Online - ClassicUO - UO
Exec=/home/user/Software/Games/Requiem/requiem.sh
Type=Application
StartupNotify=true
Terminal=false
Icon=requiem
Categories=Game;
Of course you should change the "Exec=" path according to where you placed your Requiem folder.
If you wish that this launcher would also have an icon, you should place a picture (png, jpg, etc) in /home/user/.local/icons with the name requiem.png (or requiem.jpg, etc.). You could use different name if you wish, just make sure it matches the "Icon=" line in the desktop file.
I won't however help you with getting the picture for the icon. You can download something, screenshot something, or make it yourself. :)

You might need to log out and log back in for the launcher to appear or the icon to update.

And that's it

That's everything. I should probably also mention that since we are not using the official Requiem Launcher (that's a Windows application) you will need to make sure to keep your mul files updated.
You can follow this thread to get notified of updates to download: viewtopic.php?f=2&t=1564&start=70

Let me know if you have any issues with running Requiem under Linux. And have fun! ;)

Post Reply