Running Custom Client on Linux

Forum for alternative clients, mods & discussions on the same.

Moderator: Phades

kamirov
Posts: 14
Joined: Sun Jun 13, 2010 8:39 am

Running Custom Client on Linux

Post by kamirov »

Hello all.

I really enjoy this game however, having recently completely switching to Linux I'm having difficulties playing on a custom client, in fact I can't play on a custom client at all.... I am aware of programs such as Virtual Box - I could use to emulate Windows and play haven with however I would prefer to run the a custom client without the use of virtualization or Wine.

Could anybody help me out, I'm a complete Linux nub but any help is much appreciated. I have heard mention of a "Linux client" but I'm unable to get any search results back.

FYI:
I am Running Ubuntu 11.04 - after removing unity. Please let me know if any other information is required.

Thank you for reading :P
User avatar
Mashadar
Posts: 379
Joined: Thu Jan 20, 2011 9:34 am

Re: Running Custom Client on Linux

Post by Mashadar »

Download a client such as Ender's, then create a file called run.sh or whatever containing the line

Code: Select all

java -jar haven.jar moltke.seatribe.se -r ./res

in the bin subdirectory, give it +x and run it.
You need the Java runtime (package: default-jre) and the package libjogl-java, so make sure both are installed.
MamaMantis
Posts: 18
Joined: Wed Oct 19, 2011 9:59 am

Re: Running Custom Client on Linux

Post by MamaMantis »

Thanks a lot.
User avatar
Chakravanti
Posts: 3345
Joined: Sat Aug 29, 2009 3:38 am

Re: Running Custom Client on Linux

Post by Chakravanti »

You can also just put the 4 .so libraries in the folder and make the runbat like this (edit for your client location). It's the same if you have problems with getting libjogl to work. (you can pull the .so files from older clients for linux with the appropriate architecture)

Code: Select all

java -Djava.library.path=/home/user/HnH_Ender_x64/ -Xms256m -Xmx512m -jar /home/user/HnH_Ender_x64/haven.jar -d moltke.seatribe.se -r ./res


Also, use IcedTea not Sun Java.

Because it is Java there are no 'linux clients' only a few things you have to do to make sure your Java/IcedTea works with H&H regardless of what operating system you are on.

Mashadar wrote:in the bin subdirectory, give it +x and run it.

In a terminal that is roughly:

Code: Select all

chmod +x /home/user/client/haven.jar
/home/user/client/./run.bat


Modifying directories appropriate to yours.
Well what is this that I can't see
With ice cold hands takin' hold of me
Well I am death, none can excel
-Ralph Stanley, O Death!
MamaMantis
Posts: 18
Joined: Wed Oct 19, 2011 9:59 am

Re: Running Custom Client on Linux

Post by MamaMantis »

(Just adding some more info.)

i updated from 11.4 to 11.10 and it stopped working. The reason was that it changed the video card proprietary drivers with open source ones. I solved reinstalling the right ones with the "additional drivers" program from the menu.
User avatar
borka
Posts: 9965
Joined: Thu Feb 03, 2011 7:47 pm
Location: World of Sprucecap

Re: Running Custom Client on Linux

Post by borka »

*bump
Avatar by SacreDoom
Java 8 - manually downloads - good to check for actual versions url here:
viewtopic.php?f=42&t=40331
Remember what the dormouse said: Feed your head Feed your head
Selenion
Posts: 6
Joined: Wed Jun 06, 2012 2:48 pm

Re: Running Custom Client on Linux

Post by Selenion »

Finally i launched Ender's client under my Ubuntu 12.04 x64.

The Fastest way for me was:

1. Install IcedTea Java

Code: Select all

sudo apt-get install icedtea-7-jre-cacao


2. Download client. (I use x64 version. Make right choise ;) )
All you need you can get here ---> http://www.mediafire.com/hnh_ender

3. Unpack client anywhere, then replace old files with files from HnH_Ender_upd_06.04.12.zip.

4. Make a file run.sh. Then put some code there:

Code: Select all

java -jar haven.jar moltke.seatribe.se ./res 

Save it and mark as "executable" in properities.

5. Run script as

Code: Select all

./run.sh


6. It works!


PS Do not try another versions of Java. I killed about 5 hours for this.
User avatar
borka
Posts: 9965
Joined: Thu Feb 03, 2011 7:47 pm
Location: World of Sprucecap

Re: Running Custom Client on Linux

Post by borka »

HowTo and lots of hints for Linux + Oracle Java:

Oracle (Sun) Java JRE for Ubuntu, Linux Mint and Debian:
https://sites.google.com/site/easylinuxtipsproject/java

For Java there's a good open source application available: OpenJDK and the IcedTea plug-in. They are available in the regular Ubuntu repositories and receive regular security updates. For many people this Java is adequate.
That's why the closed source Oracle (Sun) Java Runtime Environment (JRE) has been removed from the official software repositories of Ubuntu. It has even disappeared from the Partners repository.


Oracle (Sun) Java for openSUSE and Fedora
https://sites.google.com/site/easylinux ... r-opensuse
Avatar by SacreDoom
Java 8 - manually downloads - good to check for actual versions url here:
viewtopic.php?f=42&t=40331
Remember what the dormouse said: Feed your head Feed your head
DonLoco
Posts: 7
Joined: Thu May 06, 2010 11:10 pm

Re: Running Custom Client on Linux

Post by DonLoco »

Hoi guys, Linux-noob here :D
I switched from Ubuntu to Mint a few days ago and want to run the ender-client on my new setup.
Though i am able to run the standard HnH client (dl-ed when clicking play up there) something seem to be wrong in my setup.
I made a .sh file as described, but when i try to launch it i get this:

Code: Select all

ladmin@Locogamer ~/Arbeitsfläche/HnH $ ./run.sh
Exception in thread "Haven main thread" java.lang.UnsatisfiedLinkError: no gluegen-rt in java.library.path
   at java.lang.ClassLoader.loadLibrary(Unknown Source)
   at java.lang.Runtime.loadLibrary0(Unknown Source)
   at java.lang.System.loadLibrary(Unknown Source)
   at com.sun.gluegen.runtime.NativeLibLoader.loadLibraryInternal(NativeLibLoader.java:91)
   at com.sun.gluegen.runtime.NativeLibLoader.access$000(NativeLibLoader.java:50)
   at com.sun.gluegen.runtime.NativeLibLoader$1.run(NativeLibLoader.java:69)
   at java.security.AccessController.doPrivileged(Native Method)
   at com.sun.gluegen.runtime.NativeLibLoader.loadGlueGenRT(NativeLibLoader.java:67)
   at com.sun.gluegen.runtime.NativeLibrary.ensureNativeLibLoaded(NativeLibrary.java:399)
   at com.sun.gluegen.runtime.NativeLibrary.open(NativeLibrary.java:163)
   at com.sun.gluegen.runtime.NativeLibrary.open(NativeLibrary.java:129)
   at com.sun.opengl.impl.x11.DRIHack.begin(DRIHack.java:109)
   at com.sun.opengl.impl.x11.X11GLDrawableFactory.<clinit>(X11GLDrawableFactory.java:99)
   at java.lang.Class.forName0(Native Method)
   at java.lang.Class.forName(Unknown Source)
   at javax.media.opengl.GLDrawableFactory.getFactory(GLDrawableFactory.java:111)
   at javax.media.opengl.GLCanvas.chooseGraphicsConfiguration(GLCanvas.java:520)
   at javax.media.opengl.GLCanvas.<init>(GLCanvas.java:131)
   at javax.media.opengl.GLCanvas.<init>(GLCanvas.java:90)
   at haven.HavenPanel.<init>(HavenPanel.java:77)
   at haven.MainFrame.<init>(MainFrame.java:159)
   at haven.MainFrame.main2(MainFrame.java:272)
   at haven.MainFrame.access$100(MainFrame.java:52)
   at haven.MainFrame$6.run(MainFrame.java:327)
   at java.lang.Thread.run(Unknown Source)

Atm i have Oracle(sun)-Java installed, but i got the exactly same output when i tried openJDK.
Any ideas, what might be wrong?
Pls help me troubleshooting ;)
edit:
same errors launching with this :

Code: Select all

java -Djava.library.path=/home/ladmin/Arbeitsfläche/HnH/ -Xms256m -Xmx512m -jar /home/ladmin/Arbeitsfläche/HnH/haven.jar -d moltke.seatribe.se -r ./res

and this:

Code: Select all

java -jar haven.jar moltke.seatribe.se -r ./res
Last edited by DonLoco on Sun Jun 17, 2012 8:34 am, edited 2 times in total.
Noom
Posts: 4
Joined: Tue Jul 26, 2011 10:55 am

Re: Running Custom Client on Linux

Post by Noom »

I am getting the exact same error as the guy above. Seems the issue is enders client cant see my glueten-rt libs. I don't know whether this is because all libs are called lib(name).so in linux or they arent installed yet or something (i've searched package manager but nothing in there)... But i've tried every suggestion inside and out these forums to no avail.

FYI : I run openSUSE

I did some research on the java.library.path and modified my launcher to define it with
-Djava.library.path=/path/to/client
I also tried defining that as my /usr/jvm/libs path but neither work.

I tried renaming the libs to something similar to whats already in the /usr/libs folder but that just threw different 'file not found' errors.

Any one have any ideas at all ?

BTW This is my launcher..

Code: Select all

java -Djava.library.path=/home/USER/games/hnh/ -Xms256m -Xmx512m -jar /home/USER/games/hnh/haven.jar -d moltke.seatribe.se -r ./res


Code: Select all

ladmin@Locogamer ~/Arbeitsfläche/HnH $ ./run.sh
Exception in thread "Haven main thread" java.lang.UnsatisfiedLinkError: no gluegen-rt in java.library.path
   at java.lang.ClassLoader.loadLibrary(Unknown Source)
   at java.lang.Runtime.loadLibrary0(Unknown Source)
   at java.lang.System.loadLibrary(Unknown Source)
   at com.sun.gluegen.runtime.NativeLibLoader.loadLibraryInternal(NativeLibLoader.java:91)
   at com.sun.gluegen.runtime.NativeLibLoader.access$000(NativeLibLoader.java:50)
   at com.sun.gluegen.runtime.NativeLibLoader$1.run(NativeLibLoader.java:69)
   at java.security.AccessController.doPrivileged(Native Method)
   at com.sun.gluegen.runtime.NativeLibLoader.loadGlueGenRT(NativeLibLoader.java:67)
   at com.sun.gluegen.runtime.NativeLibrary.ensureNativeLibLoaded(NativeLibrary.java:399)
   at com.sun.gluegen.runtime.NativeLibrary.open(NativeLibrary.java:163)
   at com.sun.gluegen.runtime.NativeLibrary.open(NativeLibrary.java:129)
   at com.sun.opengl.impl.x11.DRIHack.begin(DRIHack.java:109)
   at com.sun.opengl.impl.x11.X11GLDrawableFactory.<clinit>(X11GLDrawableFactory.java:99)
   at java.lang.Class.forName0(Native Method)
   at java.lang.Class.forName(Unknown Source)
   at javax.media.opengl.GLDrawableFactory.getFactory(GLDrawableFactory.java:111)
   at javax.media.opengl.GLCanvas.chooseGraphicsConfiguration(GLCanvas.java:520)
   at javax.media.opengl.GLCanvas.<init>(GLCanvas.java:131)
   at javax.media.opengl.GLCanvas.<init>(GLCanvas.java:90)
   at haven.HavenPanel.<init>(HavenPanel.java:77)
   at haven.MainFrame.<init>(MainFrame.java:159)
   at haven.MainFrame.main2(MainFrame.java:272)
   at haven.MainFrame.access$100(MainFrame.java:52)
   at haven.MainFrame$6.run(MainFrame.java:327)
   at java.lang.Thread.run(Unknown Source)

Return to “The Wizards' Tower”