[Guide] How to make standalone client

Forum for alternative clients, mods & discussions on the same.
User avatar
APXEOLOG
Posts: 1300
Joined: Fri Apr 23, 2010 7:58 am
Location: Somewhere on Earth

[Guide] How to make standalone client

Post by APXEOLOG »

Generally it is simple: all you need is to open autohaven.jnlp with your text editor and download all related jars into single folder. But since loftar use jogl-all.jar as "jogl" alias you will need to edit hafen.jar manually.
What should you do:
1. Open hafen.jar with any archive program (i use 7z)
2. Extract META-INF/MANIFEST.MF into temp directory
3. Modify MANIFEST.MF, Make Class-Path line looks like Class-Path: jogl-all.jar gluegen-rt.jar builtin-res.jar hafen-res.jar
4. Replace MANIFEST.MF from jar with new file
5. Remove HAVEN.SF, HAVEN.RSA from META-INF folder (we've modified jar content so hashsum check will not pass)
6. Profit
Now you can launch client as standalone application with command:

Code: Select all

java -jar hafen.jar -U http://game.havenandhearth.com/hres/ game.havenandhearth.com


What should it looks like (for win):
Image

I've also made pack for those who doesn't want to do anything manually (Win only): http://puu.sh/jStcq/0a702d3ad9.zip (no keylogger included ¦] )
Last edited by APXEOLOG on Sat Aug 29, 2015 8:39 am, edited 1 time in total.
W10 Meme Plot | W9 Mantis Garden | W8 Core | W7 Ofir | W6 the City of Dis | W5 Vitterstad | W4 A.D. | W3 Mirniy
jorb wrote:All your characters will be deleted, and I will level every village any one of them were ever members of.
User avatar
Paradoxs
Posts: 294
Joined: Tue Aug 25, 2015 7:16 am

Re: [Guide] How to make standalone client

Post by Paradoxs »

Thanks for that
Chiprel
Posts: 59
Joined: Wed Mar 02, 2011 8:14 pm

Re: [Guide] How to make standalone client

Post by Chiprel »

If you are on different system you'll need to download:

http://game.havenandhearth.com/java/jogl2/
+

Code: Select all

<resources os="Windows" arch="x86">
      <nativelib href = "jar/jogl-all-natives-windows-i586.jar" />
    </resources>
    <resources os="Windows" arch="amd64">
      <nativelib href = "jar/jogl-all-natives-windows-amd64.jar" />
    </resources>
    <resources os="Windows" arch="x86_64">
      <nativelib href = "jar/jogl-all-natives-windows-amd64.jar" />
    </resources>
    <resources os="SunOS" arch="sparc">
      <nativelib href = "jar/jogl-all-natives-solaris-sparc.jar" />
    </resources>
    <resources os="SunOS" arch="sparcv9">
      <nativelib href = "jar/jogl-all-natives-solaris-sparcv9.jar" />
    </resources>

    <resources os="SunOS" arch="x86">
      <nativelib href = "jar/jogl-all-natives-solaris-i586.jar" />
    </resources>
    <resources os="SunOS" arch="amd64">
      <nativelib href = "jar/jogl-all-natives-solaris-amd64.jar" />
    </resources>
    <resources os="SunOS" arch="x86_64">
      <nativelib href = "jar/jogl-all-natives-solaris-amd64.jar" />
    </resources>
    <resources os="Linux" arch="i386">
      <nativelib href = "jar/jogl-all-natives-linux-i586.jar" />
    </resources>
    <resources os="Linux" arch="x86">
      <nativelib href = "jar/jogl-all-natives-linux-i586.jar" />
    </resources>
    <resources os="Linux" arch="amd64">
      <nativelib href = "jar/jogl-all-natives-linux-amd64.jar" />
    </resources>
    <resources os="Linux" arch="x86_64">
      <nativelib href = "jar/jogl-all-natives-linux-amd64.jar" />
    </resources>
    <resources os="Linux" arch="arm">
      <nativelib href = "jar/jogl-all-natives-linux-armv6.jar" />
      <nativelib href = "jar/jogl-all-natives-linux-armv6hf.jar" />
    </resources>
    <resources os="Linux" arch="armv7">
      <nativelib href = "jar/jogl-all-natives-linux-armv6.jar" />
      <nativelib href = "jar/jogl-all-natives-linux-armv6hf.jar" />
    </resources>
    <resources os="Mac OS X" arch="i386">
      <nativelib href = "jar/jogl-all-natives-macosx-universal.jar" />
    </resources>
    <resources os="Mac OS X" arch="x86_64">
      <nativelib href = "jar/jogl-all-natives-macosx-universal.jar" />
    </resources>

for example(32bit mac):

Code: Select all

http://game.havenandhearth.com/java/jogl2/jar/jogl-all-natives-macosx-universal.jar


and

http://game.havenandhearth.com/java/jogl2/
+

Code: Select all

<resources os="Windows" arch="x86">
      <nativelib href = "jar/gluegen-rt-natives-windows-i586.jar" />
    </resources>
    <resources os="Windows" arch="amd64">
      <nativelib href = "jar/gluegen-rt-natives-windows-amd64.jar" />
    </resources>
    <resources os="Windows" arch="x86_64">
      <nativelib href = "jar/gluegen-rt-natives-windows-amd64.jar" />
    </resources>
    <resources os="SunOS" arch="sparc">
      <nativelib href = "jar/gluegen-rt-natives-solaris-sparc.jar" />
    </resources>
    <resources os="SunOS" arch="sparcv9">
      <nativelib href = "jar/gluegen-rt-natives-solaris-sparcv9.jar" />
    </resources>
    <resources os="SunOS" arch="x86">
      <nativelib href = "jar/gluegen-rt-natives-solaris-i586.jar" />
    </resources>
    <resources os="SunOS" arch="amd64">
      <nativelib href = "jar/gluegen-rt-natives-solaris-amd64.jar" />
    </resources>
    <resources os="SunOS" arch="x86_64">
      <nativelib href = "jar/gluegen-rt-natives-solaris-amd64.jar" />
    </resources>
    <resources os="Linux" arch="i386">
      <nativelib href = "jar/gluegen-rt-natives-linux-i586.jar" />
    </resources>
    <resources os="Linux" arch="x86">
      <nativelib href = "jar/gluegen-rt-natives-linux-i586.jar" />
    </resources>
    <resources os="Linux" arch="amd64">
      <nativelib href = "jar/gluegen-rt-natives-linux-amd64.jar" />
    </resources>
    <resources os="Linux" arch="x86_64">
      <nativelib href = "jar/gluegen-rt-natives-linux-amd64.jar" />
    </resources>
    <resources os="Linux" arch="arm">
      <nativelib href = "jar/gluegen-rt-natives-linux-armv6.jar" />
      <nativelib href = "jar/gluegen-rt-natives-linux-armv6hf.jar" />
    </resources>
    <resources os="Linux" arch="armv7">
      <nativelib href = "jar/gluegen-rt-natives-linux-armv6.jar" />
      <nativelib href = "jar/gluegen-rt-natives-linux-armv6hf.jar" />
    </resources>
    <resources os="Mac OS X" arch="i386">
      <nativelib href = "jar/gluegen-rt-natives-macosx-universal.jar" />
    </resources>
    <resources os="Mac OS X" arch="x86_64">
      <nativelib href = "jar/gluegen-rt-natives-macosx-universal.jar" />
    </resources>

for example(32bit mac):

Code: Select all

http://game.havenandhearth.com/java/jogl2/jar/gluegen-rt-natives-macosx-universal.jar
Chiprel
Posts: 59
Joined: Wed Mar 02, 2011 8:14 pm

Re: [Guide] How to make standalone client

Post by Chiprel »

Seems that there is even easier way of making standalone client to work(no game files editing needed).

Just remove the "-all" from "jogl-all.jar" and "jogl-all-natives-blahblah.jar" so it looks like "jogl.jar" and "jogl-natives-blahblah.jar".
User avatar
czaper2
Posts: 389
Joined: Mon Aug 26, 2013 12:48 pm

Re: [Guide] How to make standalone client

Post by czaper2 »

Keep getting this:

Code: Select all

Error: A JNI error has occurred, please check your installation and try again
Exception in thread "main" java.lang.NoClassDefFoundError: javax/media/opengl/awt/GLCanvas


Not sure what I did wrong.
User avatar
APXEOLOG
Posts: 1300
Joined: Fri Apr 23, 2010 7:58 am
Location: Somewhere on Earth

Re: [Guide] How to make standalone client

Post by APXEOLOG »

czaper2 wrote:Not sure what I did wrong.

It looks like your Class-Path is still invalid
W10 Meme Plot | W9 Mantis Garden | W8 Core | W7 Ofir | W6 the City of Dis | W5 Vitterstad | W4 A.D. | W3 Mirniy
jorb wrote:All your characters will be deleted, and I will level every village any one of them were ever members of.
mrfrump
Posts: 12
Joined: Mon Aug 17, 2015 1:57 pm

Re: [Guide] How to make standalone client

Post by mrfrump »

an easy way to download all the files painlessly from the jnlp is to use:
https://code.google.com/p/jnlpdownloade ... .jar&can=2

and just execute this command.
java -jar jnlpdownloader.jar OUTPUT_DIR haven.jnlp
User avatar
kitsune121x
Posts: 262
Joined: Thu Jul 18, 2013 8:49 am
Location: in the bloody ass crack of nowhere

Re: [Guide] How to make standalone client

Post by kitsune121x »

what file do you modify to make it so we'll show rocks on the map if it's possible
User avatar
APXEOLOG
Posts: 1300
Joined: Fri Apr 23, 2010 7:58 am
Location: Somewhere on Earth

Re: [Guide] How to make standalone client

Post by APXEOLOG »

kitsune121x wrote:what file do you modify to make it so we'll show rocks on the map if it's possible

you should modify client code
W10 Meme Plot | W9 Mantis Garden | W8 Core | W7 Ofir | W6 the City of Dis | W5 Vitterstad | W4 A.D. | W3 Mirniy
jorb wrote:All your characters will be deleted, and I will level every village any one of them were ever members of.
Aluron
Posts: 1
Joined: Sat Jul 25, 2015 4:17 pm

Re: [Guide] How to make standalone client

Post by Aluron »

Почему то ваш клиент не работает. А самому редактировать скилл не позволяет. W7x64

Return to “The Wizards' Tower”