Overgrowth Linux

From Wolfire Games Wiki
Revision as of 13:10, 31 December 2014 by Tetamusha (talk | contribs) (Addead a few extra steps for the 64-bit Ubuntu OS as well as some additional fixes)
Jump to: navigation, search

The Linux version of Overgrowth has different dependencies which need to be fulfilled, otherwise the game won't run. Those dependencies can vary from distribution to distribution.

Installer

The Linux installer is a Bash script which loads a graphical installer. The shebang points to /bin/sh, but it will not work with every shell.

# readlink -f /bin/sh
/bin/bash

If the installer won't load and /bin/sh doesn't point to bash try to force using bash.

# bash overgrowth-xxx-linux.sh

root rights are not necessarily required to install Overgrowth. If you only have a single user on your system (that wants to play Overgrowth) it is not a bad idea to install it to your home directory, because then you do not have to start SUMLauncher as root user.

Distributions

Debian

This also includes Ubuntu, Mint etc.

Libraries

# apt-get install libfreeimage3
# apt-get install libalut0

64-bit systems

Overgrowth tries to access the 32-bit (i386) version of many libraries whose 64-bit version (amd64) might already be installed in your system. In order to install the 32-bit version of these libraries, append :i386 at the end of the package name when using apt-get. For example, when running Overgrowth Alpha 208 on a 64-bit Ubuntu 14.04, the following 32-bit libraries must be installed, despite its 64-bit versions already being installed:

sudo apt-get install libgconf2-4:i386 libnss3:i386 libgtk2.0-0:i386 libglu1-mesa:i386 libxft2:i386

Gentoo

Libraries

Overgrowth needs different libraries in order to work. This list might not be complete.

# emerge -av gnome-base/gconf
# emerge -av media-libs/freeimage
# emerge -av media-libs/freealut
# emerge -av media-libs/libpng:1.2

Groups

If your user is not already in this groups you have to add him. Otherwise the game may not start and it is even possible that X will completely crash.

# gpasswd -a your_user audio
# gpasswd -a your_user video

SUMLauncher

SUMLauncher does not work with dev-java/sun-jdk, you will need dev-java/icedtea-bin to use it.

# emerge -av dev-java/icedtea-bin
# eselect java-vm list
Available Java Virtual Machines:
  [1]   icedtea-bin-6 
  [2]   sun-jre-bin-1.6  system-vm
# eselect java-vm user set 1

Arch

You can install the package overgrowth from the AUR.

Libraries

If you install the AUR package all required libraries should be pulled in automatically. If you install Overgrowth manually or using SUMLauncher you will need to acquire the dependencies manually. The following should provide a good starting point:

# pacman -S --needed freeimage freealut sdl

SUMLauncher

You can install the package sumlauncher from the AUR.

Problems and solutions

Overgrowth currently has many severe bugs and issues on Linux. Luckily, there are fixes or workarounds for most of them. The below specifically assumes a199, so please upgrade before trying the suggestions here.

Errors about GLSL appear, mentioning GLSL versions.

This is another one that happens with Intel graphics on Linux. Add #version 130 to the tops of all files that end with .vert or .frag, but not any of the files that end with .glsl, in the Overgrowth/Data/GLSL directory. If you install mods that provide new shaders you may need to fix them as well.

You can use BASH code:

# cd to your Overgrowth/Data/GLSL
cd /usr/local/games/Overgrowth/Data/GLSL
# adds #version 130 to files
for f in $(ls *.vert *.frag); do echo -e "#version 130\n$(cat $f)" > $f; done

Textures are missing. Loading screen shows a white box and the game appears in black and white

Overgrowth requires S3TC texture support, which is not enabled by default in open source graphics drivers. If you have this issue, you need to set up S3TC texture support. You can probably find out how by googling

S3TC <your distro here>

Also, you may need to start with "LC_ALL=en_US" parameter e.g.:

LC_ALL=en_US ./Overgrowth.bin.x86_64 

Could not find "Data" folder

Unlike Windows systems, Unix-based systems are mostly case-sensitive in its directory paths. This reflects when, after starting Overgrowth, the system tries to find a "Data" folder, when the folder that is provided is actually called "data", without the capital D. Changing the lowercase D to uppercase should fix this issue.

LaunchApp: failed to execvp: [...]/AwesomiumProcess

In case the game simply freezes after being started, it might be a good idea to start it through the terminal in order to read its output log:

./Overgrowth.bin.x86

You might be able to see an error message similar to this:

LaunchApp: failed to execvp:

[path to Overgrowth]/lib/AwesomiumProcess

This means that the system has no permission to run the file called AwesomiumProcess inside the lib directory. In order to grant the necessary permissions for the file, open a terminal, go to the lib folder where AwesomiumProcess is and run the following command:

chmod +x AwesomiumProcess