Difference between revisions of "Overgrowth Linux"
(→Errors about GLSL appear, mentioning GLSL versions.) |
|||
(12 intermediate revisions by 3 users not shown) | |||
Line 2: | Line 2: | ||
=Installer= | =Installer= | ||
+ | |||
+ | ''We currently don't ship an installer anymore, but we intend to do this in the future.'' | ||
+ | |||
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. | 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. | ||
Line 19: | Line 22: | ||
===Libraries=== | ===Libraries=== | ||
<pre># apt-get install libfreeimage3 | <pre># apt-get install libfreeimage3 | ||
− | # apt-get install libalut0</pre> | + | # apt-get install libalut0 |
+ | # apt-get install libsdl-net1.2 | ||
+ | </pre> | ||
+ | |||
+ | ===64-bit systems=== | ||
+ | ''The following is no longer necessary as we build and deliver a 64 bit binary package, but is still necessary if you wish to run the 32 bit version.'' | ||
+ | |||
+ | 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: | ||
+ | <pre>sudo apt-get install libgconf2-4:i386 libnss3:i386 libgtk2.0-0:i386 libglu1-mesa:i386 libxft2:i386</pre> | ||
==Gentoo== | ==Gentoo== | ||
Line 28: | Line 39: | ||
# emerge -av media-libs/freeimage | # emerge -av media-libs/freeimage | ||
# emerge -av media-libs/freealut | # emerge -av media-libs/freealut | ||
− | # emerge -av media-libs/libpng:1.2</pre> | + | # emerge -av media-libs/libpng:1.2 |
+ | # emerge -av media-libs/libsdl-net:1.2 | ||
+ | </pre> | ||
===Groups=== | ===Groups=== | ||
Line 50: | Line 63: | ||
You can install the package [https://aur.archlinux.org/packages/overgrowth/ overgrowth] from the AUR. | You can install the package [https://aur.archlinux.org/packages/overgrowth/ overgrowth] from the AUR. | ||
===Libraries=== | ===Libraries=== | ||
− | If you install the AUR package all required libraries should be pulled in automatically. If you install Overgrowth manually or using | + | If you install the AUR package all required libraries should be pulled in automatically. If you install Overgrowth manually, using SUMLauncher or using Steam you will need to acquire the dependencies manually. The following should provide a good starting point: |
− | <pre># pacman -S --needed freeimage freealut sdl</pre> | + | <pre># pacman -S --needed freeimage freealut sdl sdl2_net</pre> |
===SUMLauncher=== | ===SUMLauncher=== | ||
Line 58: | Line 71: | ||
=Problems and solutions= | =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. | 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.== | ==Errors about GLSL appear, mentioning GLSL versions.== | ||
Line 66: | Line 78: | ||
You can use BASH code: | You can use BASH code: | ||
− | cd to your Overgrowth/Data/GLSL | + | <pre> |
− | + | # cd to your Overgrowth/Data/GLSL | |
− | + | cd /usr/local/games/Overgrowth/Data/GLSL | |
− | + | # adds #version 130 to files | |
− | adds #version 130 to files | + | for f in $(ls *.vert *.frag); do echo -e "#version 130\n$(cat $f)" > $f; done |
− | + | </pre> | |
− | |||
==Textures are missing. Loading screen shows a white box and the game appears in black and white== | ==Textures are missing. Loading screen shows a white box and the game appears in black and white== | ||
Line 80: | Line 91: | ||
S3TC <your distro here> | S3TC <your distro here> | ||
− | Also, you | + | Also, you may need to start with "LC_ALL=en_US" parameter e.g.: |
+ | <pre>LC_ALL=en_US ./Overgrowth.bin.x86_64 </pre> | ||
+ | ==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. |
Latest revision as of 05:21, 28 October 2017
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
We currently don't ship an installer anymore, but we intend to do this in the future.
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 # apt-get install libsdl-net1.2
64-bit systems
The following is no longer necessary as we build and deliver a 64 bit binary package, but is still necessary if you wish to run the 32 bit version.
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 # emerge -av media-libs/libsdl-net: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, using SUMLauncher or using Steam you will need to acquire the dependencies manually. The following should provide a good starting point:
# pacman -S --needed freeimage freealut sdl sdl2_net
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.