Installing BYOND on Linux with Wine and PlayOnLinux

Player made guides and tutorials.
Post Reply
User avatar
Neerti
Posts: 107
Joined: Mon May 22, 2017 6:28 pm

Sun Aug 09, 2020 6:38 am

For whatever reason, Polaris seems to be the place for people who want to play SS13 without needing to suffer from Windows annoyances, since I've helped several people set up WINE to work with BYOND, and to save myself effort, it seems like writing a guide might be a good idea.

Disclaimers
My method of installing was done on Ubuntu, specifically the 18.04.4 LTS version, which is a fairly common distro, so hopefully that helps. If you're on something like Arch then you might need to make some adjustments. I'm also using the KDE Desktop Environment, which might be different from your DE, but hopefully it won't be an issue.
I'm also running an AMD GPU, which usually makes things easier on Linux compared to using an Nvidia card due to less driver headaches. I've never used a Nvidia one on linux so I can't really help you if that causes problems.
This guide also assumes you have full access to your system, I.E. you can use sudo or su or otherwise have permission to install something on the system. If you're on something really locked down like a Chromebook, then this might not work. You don't need to be root to play the game, but you will need it to install WINE and supporting programs.

What We're Gonna Use
Nowadays there's a lot of different 'front-end' programs for WINE, such as Steam's Proton, or Lutris, that can install certain programs and follow a pre-configured list of steps to get the program to run. There's even a setup for BYOND, but instead of using that, I'd rather use a different program, called PlayOnLinux, for a number of reasons.

For starters, PlayOnLinux will handle a lot of the tedious management of 'wine bottles' and what version of WINE to use, but without just trying to handle absolutely everything automatically like Lutris does. This is a pro because if something goes wrong when using Lutris, it's pretty difficult to figure out what happened, while using PlayOnLinux lets us tinker with the setup heavily, but still handles the otherwise tedious management of other things that we would need to deal with if we were to just use WINE manually.

Getting PlayOnLinux
First, we need to install PlayOnLinux. In the world of Linux, generally the preferred method of installing a program is by using your distribution's package manager, as opposed to googling for the program and downloading it. Doing it this way is easier, faster, probably safer, and also will have your programs be easy to update. For Debian-based distros like Ubuntu, apt-get is used to install/uninstall programs. Other distros will likely have a different package manager, like Arch using pacman, so go look up which one your distro uses if you don't use apt.

I'd tell you that you can probably go find a nice front-end for your distro's package manager, and if you know of one you want to use, then you can use that just fine, but if you otherwise don't, I'll just use apt, a 'commandline front-end' for apt-get, in the command line, since later on in the install we're gonna be using the command line anyways, so now's a good time to get used to using it.

Now to the actual installation instructions. First, open a terminal using whatever terminal you like, and then type in

Code: Select all

sudo apt install playonlinux
You'll probably be asked to type your password in, do so and then hit 'Y' to approve the install for that program and any other programs it depends on, and wait for it to finish.

Setting up PlayOnLinux
After that's done, you should be able to find the new program on your menu bar, or you can just type

Code: Select all

playonlinux
in the terminal to launch it that way. After it opens, you should see a window open that looks something like this.
Image
Just without anything on the bottom-right side, since that's where byond will be once we finish installing. I have a bunch of byond versions since awhile ago I decided to install byond many times with different changes to find the most stable version, for science. Yours is probably not gonna look that crazy.

Anyways, next step is to click the Configure button, which will open a window like this.
Image

First, let's get a version of WINE that I know works with BYOND really well, which as of this writing is 5.2. You can easily change what version you use with a few clicks, which is a big part of why we're using PlayOnLinux as opposed to doing it manually.
Near the middle of the window, look for Wine version, and click the little plus button on the right end. This will open a new window.
Image

At the writing of this guide, the PlayOnLinux servers seem to be having some trouble, so I can't actually see the giant list of wine versions on the left. Hopefully that doesn't happen to you or you might need to figure out how to manually install 5.2 to PlayOnLinux.
The tab that we start on is Wine versions (x86), which basically means 32 bit, which is where we want to be. Look for 5.2 on the list on the left that is hopefully there, click on it, then click the > arrow to install it, then close the window.

Making your Wine Bottle
Click the New button on the bottom-left of the window. Another window will pop up.

Image
Click Next.

Image
It will ask if you want a 32 bit or 64 bit "Virtual Drive", which is just what PlayOnLinux calls wine bottles. BYOND is 32 bit, so click 32 bit.

A note on wine bottles: They're essentially directories that contain everything WINE will use to make the program think it's running in windows, but are isolated from other wine bottles, so installing stuff to get one game to work inside its wine bottle won't break a different game inside a seperate wine bottle. It should be noted this isolation isn't really isolation in the security sense, since stuff running inside the wine bottle still can see the root directory.

After hitting Next again, you'll be asked for which version of WINE to use for the wine bottle you're making.
Image
You can change this later at any time, which is very helpful when wanting to see if a specific version works or doesn't work. I personally use 5.2. If you don't see that available, you need to install 5.2 through the wine manager first, or switch to it later.

Once again, hit Next, and you're asked to choose a name for your wine bottle.

Image
It doesn't really matter what you name it but I suggest making it obvious that it holds byond inside, so naming it byond, ss13, etc is recommended. In the picture I'm naming it ss13, since I already have (many) byond bottles already, so I don't get confused.
Hit Next, and wait for the program to set up your bottle. It should take only a minute or so.

When that's all done, you should see something like this, but only having 'default' and whatever you named your new wine bottle. Make sure your new one says it's wine version is 5.2.
Image

Now we have a wine bottle ready, but WINE needs more software to run BYOND, so we're gonna be installing some extra stuff inside the bottle. Click the Miscellaneous tab, then click Open a shell.
Image

This will open a terminal and automatically set some environmental variables so that what we're gonna install goes to the right place. If we were doing this manually than you'd have to do that yourself, another reason we're using PlayOnLinux. Note that your terminal program might look different, but it should look somewhat similar.
Image

We're gonna use a terminal program called winetricks, which installs things for wine to use. It's kind of like a package manager for WINE. You might need to install it, if it didn't get installed alongside PlayOnLinux. If that's the case, just do what you did to install PlayOnLinux but instead type in winetricks. Various SS13 linux guides recommend a different number of things to install, however I've found that 'less is more' when it comes to this, as installing a bunch of stuff had actually made it worse. Thus this list is rather small and contains the essentials, but it's everything you need to play on Polaris. I've also played on TG without issue.

The things we're gonna be installing is allfonts, wsh57, mfc42, vcrun6, and finally ie8. With allfonts being the exception, the others are required for BYOND to run. Allfonts just makes the fonts not look awful.

Winetricks lets you chain install programs one after the other if you type the name of each one on the same line. You can also install them one at a time if you want.
Image

Hit enter, and you have some time on your hands, since it takes me about 15 minutes to install everything. It might take you more or less time depending on how good your CPU is. You'll see a massive amount of text go by but you don't need to read any of it. Go get a tasty sandwich and wait. Just note that when winetricks gets to the vcrun6 and ie8 parts, a popup box from the program being installed will come up and you'll need to handle it, EULAs, etc.

IE will probably ask if you want to "improve" it, presumably with telemetry (remember when they used to ask you for that?). Just decline that and keep going. Accept the EULA. It'll ask if you want updates for windows/IE and a virus scan, just say no and keep installing.

When it's done, the IE prompt will probably suggest restarting your computer, but you don't need to do that, since it thinks it's on Windows and Windows usually needs to restart when updating system-related stuff. If you really want, you can click the 'Windows reboot' button in the Wine tab.

Close that special PlayOnLinux commandline, since we're done with it now.

Now we're all set to run BYOND, but first, we need to actually get BYOND and install it.

Installing BYOND
Go to BYOND's website, and download BYOND. Which version is the best one tends to change over time so I'm not gonna give any specific recommendations, but if for some reason you don't want the latest version, you can go to http://www.byond.com/download/build/513/ to find all the versions for 513. If 514 or later is out by the time you're reading this, just change the link to point there.

Download the installer .exe somewhere easy to reach, like your downloads folder. It doesn't need to be inside your wine bottle.

After you downloaded the exe, go back to PlayOnLinux, and go to where you went to open the shell, in the Miscellaneous tab, but this time click Run a .exe file in this virtual drive. This does something similar to the shell button, setting environmental variables to point to your wine bottle instead of your system in general. A file dialog box will pop up. Go find the byond .exe you downloaded, highlight it, and click open.
Image

If all went well, you'll see the BYOND install show up, starting with the EULA. You know what to do.
Image

Next it'll ask where you want BYOND. I'd leave it at the default. Note that this is relative to your wine bottle, I.E. the "C Drive" that BYOND is gonna install into is inside your wine bottle.
Image

It'll ask if you want start menu entries and a desktop shortcut. I don't remember if this actually makes it through WINE or not but you can set those up later if you want. I opted to not add those things. Click the install button.
Image

Watch the progress bar. When it's done it'll ask if you want to launch BYOND. Might as well.
Image

Running BYOND
BYOND should be open now, and you'll need to log into it with your BYOND account.

After that, you should be good to go, for playing SS13. Connect to the server of your choice to see if everything's working.
Image

There's still a few more things to do that will make launching BYOND less of a pain. Go back to PlayOnLinux's Configure window, on the General tab, and click Make a new shortcut from this virtual drive. You'll get a list of programs inside your wine bottle.

Image
Click byond.exe, and click Next.

Give it a name. If you're like me and want to install different versions at the same time, you can name them differently to distinguish them. Click Next.
Image

It'll ask if you want to add more shortcuts. Hit Cancel. You can close the Configure window now.

On the main PlayOnLinux window, you should see your new shortcut there. In the future, you can highlight that shortcut, and click the Run button to run BYOND from the wine bottle. At this point, you should be all set to play SS13 on Linux.

Known Limitations
Certain features unfortunately do not work, or work at a reduced capacity when playing with this setup, however the overall game itself remains perfectly playable.
Notes;
  • Tooltips should work without incident.
  • Examine tab's title will have weird spacing but it should still be readable.
  • VChat will not work at all. I recommend turning it off in preferences so you don't need to wait for oldchat to come back.
  • Icons in the chat bar are missing, e.g. the radio icons, but nothing vital depends on those.
  • If planning to play on TG or TG-derived servers, you should enable 'no frills' setting in preferences for their TGUI.
  • Polaris TGUI that use advanced features like the suit sensor map will probably not work, but the basics still work.
  • Most NanoUI windows work without any issues beyond refreshing faster than they're supposed to (E.g. every second vs every two seconds).
  • Certain NanoUI windows which load a lot of information at once, like powergrid monitor, might choke the client and cause your game to freeze. This sometimes happens for people on Windows as well.
  • The client might slow down over time if it runs for many hours. Closing and rejoining the game fixes this. This may or may not actually also affect Windows and be BYOND's fault.

ProXmus
Posts: 1
Joined: Tue Aug 18, 2020 12:37 pm

Tue Aug 25, 2020 12:50 pm

Hey, I just wanted to say Thank You very much for this!
It is working like a charm and now I can play on my Linux machine, thanks to you.

Also I don't have any major problems running BYOND or SS13. Haven't tried all the different servers but I might as well.
Props for describing it to work!

Post Reply
  • Information
  • Who is online

    Users browsing this forum: No registered users and 1 guest