Ender Client

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

Re: Ender Client

Postby xyzzy57 » Sun Nov 28, 2021 9:25 pm

Aargh! After all my tinkering yesterday, I thought everything was OK except for the map.

Nope:

Code: Select all
haven.Defer$DeferredException: java.lang.RuntimeException: Delayed error in resource gfx/tiles/sombrebramble (v69), from forking source backed by HTTP res source (https://www.havenandhearth.com/res/)
   at haven.Defer$Future.get(Defer.java:196)
   at haven.Defer$Future.get(Defer.java:208)
   at haven.MCache$Grid.getcut(MCache.java:358)
   at haven.MCache.getcut(MCache.java:852)
   at haven.MapView$Terrain$1.getcut(MapView.java:927)
   at haven.MapView$Terrain$1.getcut(MapView.java:925)
   at haven.MapView$MapRaster$Grid.tick(MapView.java:863)
   at haven.MapView$Terrain.tick(MapView.java:942)
   at haven.MapView.tick(MapView.java:1866)
   at haven.Widget.tick(Widget.java:760)
   at haven.GameUI.tick(GameUI.java:1378)
   at haven.Widget.tick(Widget.java:760)
   at haven.UI.tick(UI.java:223)
   at haven.JOGLPanel.run(JOGLPanel.java:541)
   at java.base/java.lang.Thread.run(Thread.java:833)
Caused by: java.lang.RuntimeException: Delayed error in resource gfx/tiles/sombrebramble (v69), from forking source backed by HTTP res source (https://www.havenandhearth.com/res/)
   at haven.Resource$Pool$Queued.get(Resource.java:456)
   at haven.Resource$Pool$Queued.get(Resource.java:424)
   at haven.Resource$Spec.get(Resource.java:103)
   at haven.Resource$Spec.get(Resource.java:107)
   at haven.MCache.tilesetr(MCache.java:933)
   at haven.MCache.tileset(MCache.java:944)
   at haven.MCache.tiler(MCache.java:957)
   at haven.resutil.Ridges.breaks(Ridges.java:147)
   at haven.resutil.Ridges.<init>(Ridges.java:231)
   at jdk.internal.reflect.GeneratedConstructorAccessor44.newInstance(Unknown Source)
   at java.base/jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
   at java.base/java.lang.reflect.Constructor.newInstanceWithCaller(Constructor.java:499)
   at java.base/java.lang.reflect.Constructor.newInstance(Constructor.java:480)
   at haven.Utils.construct(Utils.java:1642)
   at haven.MapMesh$1.make(MapMesh.java:57)
   at haven.MapMesh.data(MapMesh.java:90)
   at haven.resutil.TerrainTile$RidgeTile.model(TerrainTile.java:408)
   at haven.MapMesh.build(MapMesh.java:306)
   at haven.MCache$Grid$1.call(MCache.java:407)
   at haven.MCache$Grid$1.call(MCache.java:402)
   at haven.Defer$Future$1.run(Defer.java:158)
   at java.base/java.security.AccessController.doPrivileged(AccessController.java:712)
   at haven.Defer$Future.run(Defer.java:157)
   at haven.Defer$Worker.run(Defer.java:262)
Caused by: haven.Resource$LoadException: Load error in resource gfx/tiles/sombrebramble(v69), from forking source backed by HTTP res source (https://www.havenandhearth.com/res/)
   at haven.Resource$Pool.handle(Resource.java:517)
   at haven.Resource$Pool.access$1200(Resource.java:401)
   at haven.Resource$Pool$Loader.run(Resource.java:653)
   at java.base/java.lang.Thread.run(Thread.java:833)
   Suppressed: haven.Resource$LoadException: Load error in resource gfx/tiles/sombrebramble(v69), from cache source backed by HashDirCache(http://game.havenandhearth.com/render/)
      ... 4 more
      Suppressed: haven.Resource$LoadException: Load error in resource gfx/tiles/sombrebramble(v69), from local res source (res-preload)
         ... 4 more
         Suppressed: haven.Resource$LoadException: Load error in resource gfx/tiles/sombrebramble(v69), from 'custom' jar source
            ... 4 more
            Suppressed: haven.Resource$LoadException: Load error in resource gfx/tiles/sombrebramble(v69), from local res source (res)
               ... 4 more
               Suppressed: haven.Resource$LoadException: Load error in resource gfx/tiles/sombrebramble(v69), from filesystem res source (/private/var/folders/zk/926c34c13hg6y_y5gyvp7hy40000gn/T/hsperfdata_arlie/res)
                  ... 4 more
               Caused by: java.io.FileNotFoundException: gfx/tiles/sombrebramble
                  at haven.Resource$FileSource.get(Resource.java:269)
                  at haven.Resource$Pool.handle(Resource.java:501)
                  ... 3 more
               Caused by: java.nio.file.NoSuchFileException: /private/var/folders/zk/926c34c13hg6y_y5gyvp7hy40000gn/T/hsperfdata_arlie/res/gfx/tiles/sombrebramble.res
                  at java.base/sun.nio.fs.UnixException.translateToIOException(UnixException.java:92)
                  at java.base/sun.nio.fs.UnixException.rethrowAsIOException(UnixException.java:106)
                  at java.base/sun.nio.fs.UnixException.rethrowAsIOException(UnixException.java:111)
                  at java.base/sun.nio.fs.UnixFileSystemProvider.newByteChannel(UnixFileSystemProvider.java:219)
                  at java.base/java.nio.file.Files.newByteChannel(Files.java:380)
                  at java.base/java.nio.file.Files.newByteChannel(Files.java:432)
                  at java.base/java.nio.file.spi.FileSystemProvider.newInputStream(FileSystemProvider.java:422)
                  at java.base/java.nio.file.Files.newInputStream(Files.java:160)
                  at haven.Resource$FileSource.get(Resource.java:267)
                  ... 4 more
            Caused by: java.io.FileNotFoundException: Could not find resource locally: /res/gfx/tiles/sombrebramble.res
               at haven.Resource$JarSource.get(Resource.java:289)
               at haven.Resource$Pool.handle(Resource.java:501)
               ... 3 more
         Caused by: java.io.FileNotFoundException: Could not find resource locally: /customized-remote/gfx/tiles/sombrebramble.res
            at haven.Resource$JarSource.get(Resource.java:289)
            at haven.Resource$CustomizedJarSource.get(Resource.java:307)
            at haven.Resource$Pool.handle(Resource.java:501)
            ... 3 more
      Caused by: java.io.FileNotFoundException: Could not find resource locally: /res-preload/gfx/tiles/sombrebramble.res
         at haven.Resource$JarSource.get(Resource.java:289)
         at haven.Resource$Pool.handle(Resource.java:501)
         ... 3 more
   Caused by: haven.Message$EOF: Required 16 bytes, got only 0
      at haven.Message.rensure(Message.java:99)
      at haven.Message.bytes(Message.java:171)
      at haven.Resource.load(Resource.java:1626)
      at haven.Resource.access$700(Resource.java:41)
      at haven.Resource$Pool.handle(Resource.java:505)
      ... 3 more
Caused by: haven.StreamMessage$IOError: java.io.IOException: already retried 7 times
   at haven.StreamMessage.underflow(StreamMessage.java:71)
   at haven.Message.rensure(Message.java:98)
   at haven.Message.bytes(Message.java:171)
   at haven.Resource.load(Resource.java:1626)
   at haven.Resource.access$700(Resource.java:41)
   at haven.Resource$Pool.handle(Resource.java:505)
   ... 3 more
Caused by: java.io.IOException: already retried 7 times
   at haven.RetryingInputStream.retry(RetryingInputStream.java:54)
   at haven.RetryingInputStream.get(RetryingInputStream.java:70)
   at haven.RetryingInputStream.read(RetryingInputStream.java:111)
   at haven.StreamTee.read(StreamTee.java:87)
   at haven.StreamMessage.underflow(StreamMessage.java:68)
   ... 8 more
Caused by: javax.net.ssl.SSLHandshakeException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target
   at java.base/sun.security.ssl.Alert.createSSLException(Alert.java:131)
   at java.base/sun.security.ssl.TransportContext.fatal(TransportContext.java:370)
   at java.base/sun.security.ssl.TransportContext.fatal(TransportContext.java:313)
   at java.base/sun.security.ssl.TransportContext.fatal(TransportContext.java:308)
   at java.base/sun.security.ssl.CertificateMessage$T12CertificateConsumer.checkServerCerts(CertificateMessage.java:654)
   at java.base/sun.security.ssl.CertificateMessage$T12CertificateConsumer.onCertificate(CertificateMessage.java:473)
   at java.base/sun.security.ssl.CertificateMessage$T12CertificateConsumer.consume(CertificateMessage.java:369)
   at java.base/sun.security.ssl.SSLHandshake.consume(SSLHandshake.java:396)
   at java.base/sun.security.ssl.HandshakeContext.dispatch(HandshakeContext.java:480)
   at java.base/sun.security.ssl.HandshakeContext.dispatch(HandshakeContext.java:458)
   at java.base/sun.security.ssl.TransportContext.dispatch(TransportContext.java:200)
   at java.base/sun.security.ssl.SSLTransport.decode(SSLTransport.java:172)
   at java.base/sun.security.ssl.SSLSocketImpl.decode(SSLSocketImpl.java:1500)
   at java.base/sun.security.ssl.SSLSocketImpl.readHandshakeRecord(SSLSocketImpl.java:1415)
   at java.base/sun.security.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:450)
   at java.base/sun.security.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:421)
   at java.base/sun.net.www.protocol.https.HttpsClient.afterConnect(HttpsClient.java:580)
   at java.base/sun.net.www.protocol.https.AbstractDelegateHttpsURLConnection.connect(AbstractDelegateHttpsURLConnection.java:183)
   at java.base/sun.net.www.protocol.http.HttpURLConnection.getInputStream0(HttpURLConnection.java:1665)
   at java.base/sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:1589)
   at java.base/sun.net.www.protocol.https.HttpsURLConnectionImpl.getInputStream(HttpsURLConnectionImpl.java:224)
   at haven.Resource$HttpSource$1.create(Resource.java:363)
   at haven.RetryingInputStream.create(RetryingInputStream.java:44)
   at haven.RetryingInputStream.get(RetryingInputStream.java:76)
   ... 11 more
Caused by: sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target
   at java.base/sun.security.validator.PKIXValidator.doBuild(PKIXValidator.java:439)
   at java.base/sun.security.validator.PKIXValidator.engineValidate(PKIXValidator.java:306)
   at java.base/sun.security.validator.Validator.validate(Validator.java:264)
   at java.base/sun.security.ssl.X509TrustManagerImpl.checkTrusted(X509TrustManagerImpl.java:231)
   at java.base/sun.security.ssl.X509TrustManagerImpl.checkServerTrusted(X509TrustManagerImpl.java:132)
   at java.base/sun.security.ssl.CertificateMessage$T12CertificateConsumer.checkServerCerts(CertificateMessage.java:638)
   ... 30 more
Caused by: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target
   at java.base/sun.security.provider.certpath.SunCertPathBuilder.build(SunCertPathBuilder.java:141)
   at java.base/sun.security.provider.certpath.SunCertPathBuilder.engineBuild(SunCertPathBuilder.java:126)
   at java.base/java.security.cert.CertPathBuilder.build(CertPathBuilder.java:297)
   at java.base/sun.security.validator.PKIXValidator.doBuild(PKIXValidator.java:434)
   ... 35 more


I'll try the trick of putting the updater in the directory it seems to want. (FWIW, I had been running all the updaters, installers, etc. from my Downloads directory.)
xyzzy57
 
Posts: 109
Joined: Thu Aug 19, 2021 9:41 pm

Re: Ender Client

Postby xyzzy57 » Sun Nov 28, 2021 9:47 pm

OK, here's what fixed a few more of my problems - this all being on a Mac running Monterey 12.0.1 Part of this recipe is needed to defeat OS security measures. Shell commands begin with $. Instructions for tasks performed using the GUI begin with --. Comments begin with #

Code: Select all
-- install JRE or ***intel*** JDK from Oracle ---
---download the launcher using safari---
$ mkdir haven
$ mkdir haven/ender_client
$ cd haven/ender_client
$ mv ~/Downloads/launcher-hafen.html .
# Don't try to run it from the command line; Apple "security" won't let you do this the first time you run something "from the internet"
# instead, open the directory in finder
$ open .
-- use the finder's "open" on the file launcher-hafen.html
-- tell the security pop-up that you really truly want to risk running something downloaded from the internet


This mess is partly my fault, for not thinking about the implications of the statement "it will download all necessary files to folder where it is placed and then will run client" in the first entry in this thread, once I'd had to try the default client as well as the Ender client. (In my defense, the person who introduced me to the game told me not to bother with the default client; I'd never intended to run it, and only did so because of an Ender-client bug.)

Also, for anyone wondering where the cache files are on a Mac, the above recipe puts them at haven/ender_client/cache/https Subdirectoriies are game.havenandhearth.com and enderwiggin.github.io/hafen
xyzzy57
 
Posts: 109
Joined: Thu Aug 19, 2021 9:41 pm

Re: Ender Client

Postby mvgulik » Tue Nov 30, 2021 12:10 pm

Idea: Adding character name to window title.
Something like "...) - <account> (<character>)" perhaps.
Not sure if the client could use the in-game character "Representation name" for this, which would be a bit nicer than the fixed/locked login-character name.
Image
mvgulik
 
Posts: 3742
Joined: Fri May 21, 2010 2:29 am

Re: Ender Client

Postby xyzzy57 » Thu Dec 16, 2021 2:19 am

Two observations. I won't call them bugs precisely, but I certainly didn't get the behavior I expected.

1) Warning circles around aggressive animals.

To turn this on:
options -> general -> warning settings -> highlight animals

The circles are very visible, but DO NOT show the safe distance. (I'd been told, in realm chat, that this functionality behaved the same as the old Ardennes client.

I never used the Ardennes client, but the impression I got, from someone who did use it, was that the circles it showed were accurate, like the circles you get from alt-r for e.g. beehive effective radius.)

[Edit: nope, per my village mate who used to use the Ardennes client, it never showed an accurate range. It was just a big highly noticeable warning.]

2) I asked in that same realm chat, for a workaround for the potentially unfortunate situation where you type some text *thinking* you are in a chat channel, and a bunch of random keyboard commands are executed, one of which turns swimming on. You don't notice this, while dealing with a crafting pop-up, an unintended hearthing etc. Days later, you unexpectedly find your hearthling swimming.

I was told that options -> general ->toggle at login + select swimming would do what I wanted.

Well, what it *probably* does is turn swimming on at login if you had it off, and turn it off if you had it on. You then get to fix it via adventure-toggles-swimming.

That's not what I wanted, but not a bug.

But the real problem is that having done this, I turned off (unselected) toggle at login for swimming, ***but it's still getting toggled *** every time I switch characters.


FWIW, I'd appreciate it if you felt like adding the functionality I actually want, but I'd especially appreciate it if you could tell me how to get the client to stop messing with my swimming toggle on every character switch.
Last edited by xyzzy57 on Thu Dec 16, 2021 6:35 am, edited 2 times in total.
xyzzy57
 
Posts: 109
Joined: Thu Aug 19, 2021 9:41 pm

Re: Ender Client

Postby xyzzy57 » Thu Dec 16, 2021 2:23 am

After writing the above, I decided to try killing and restarting the client, with all the toggle settings turned off, according to the client UI.

That fixed my problem with the stale setting. It's no longer toggling swimming on login.

So that bug does have a workaround.
xyzzy57
 
Posts: 109
Joined: Thu Aug 19, 2021 9:41 pm

Re: Ender Client

Postby mvgulik » Thu Dec 16, 2021 10:34 am

1) That data is only known to the server (and is not exposed in any resource files), and is probably tainted with some rnd variation. Ergo: Its a general dangerous animal warning/highlight circle with a general radius.

2) See viewtopic.php?p=890867#p890867 post.
mvgulik
 
Posts: 3742
Joined: Fri May 21, 2010 2:29 am

Re: Ender Client

Postby Agrik » Fri Dec 17, 2021 12:52 am

xyzzy57 wrote:The circles are very visible, but DO NOT show the safe distance. (I'd been told, in realm chat, that this functionality behaved the same as the old Ardennes client.

I never used the Ardennes client, but the impression I got, from someone who did use it, was that the circles it showed were accurate, like the circles you get from alt-r for e.g. beehive effective radius.)
Agree. The border may be better being flat and wide and fading with distance from the center, or zigzagged in a way, to show that it's not exact. Or being not a border at all, but something like radial spikes of different length (again, not to create impression that it marks a particular radius).

OTOH, I feel that the need to look around in the wild greatly contribute to immersion, while such visual markers work against it. I'm not sure H&H is a right game for those who want to have such playing aids.
Agrik
 
Posts: 268
Joined: Wed Jan 27, 2016 4:41 pm

Re: Ender Client

Postby mvgulik » Fri Dec 17, 2021 1:14 pm

Agrik wrote:OTOH, I feel that the need to look around in the wild greatly contribute to immersion, while such visual markers work against it. I'm not sure H&H is a right game for those who want to have such playing aids.

The warning message and warning highlight are both optional in the Ender client. And if need be there is also the option to use the Vanilla client.
Ergo: There is a high degree of freedom to choose ones desired immersion level (the latter has a tendency to changes over time).
mvgulik
 
Posts: 3742
Joined: Fri May 21, 2010 2:29 am

Re: Ender Client

Postby pawnchito » Fri Dec 17, 2021 5:09 pm

*snip*
User avatar
pawnchito
 
Posts: 1086
Joined: Sat Apr 07, 2018 11:52 pm

Re: Ender Client

Postby SunsetShimmer » Mon Dec 20, 2021 6:36 pm

SunsetShimmer wrote:
vatas wrote:Should work anywhere, but it will download files in said folder so I recommend making "Ender" -folder somewhere and putting the launcher/updater there. Running it will download all the other stuff in that folder. Having multiple clients in same folder sounds like surefire recipe for a disaster.

You could try disabling the CPU's built-in Graphics, there's common problem where Java tries to use it instead of the proper GPU. Click "Show hidden" for the guide image I made. Find the equivalent menu and select "Disable Device."

Warning! If you don't have dedicated GPU installed, this could softlock your entire PC!

Image


Well, that's a problem. I don't have built-in graphics from my CPU, or there is no option for it. The only display adapter that shows up is the correct GPU and I'm not going to risk disabling it. I'll try updating it and respond once I have.



Okay, so I updated my Nvidia driver to the newest version, and I still get the same error. There is no dedicated motherboard graphics to disable, so the only solution I can think of is editing the values listed. The only problem then is that I don't know where the values are located or how to edit them.
SunsetShimmer
 
Posts: 3
Joined: Thu Jun 29, 2017 2:53 pm

PreviousNext

Return to The Wizards' Tower

Who is online

Users browsing this forum: No registered users and 2 guests