Client rewrite β-testing

Announcements about major changes in Haven & Hearth.

Re: Client rewrite β-testing

Postby DPblH » Sat Jan 11, 2020 2:00 pm

Got this after trying to play one of my chars:
Code: Select all
java.lang.RuntimeException: Delayed error in resource gfx/terobjs/wardrobeclothes (v8), from forking source backed by HTTP res source (http://game.havenandhearth.com/render/res/)
   at haven.Resource$Pool$Queued.get(Resource.java:386)
   at haven.Resource$Pool$Queued.get(Resource.java:355)
   at haven.Session$CachedRes$Ref.get(Session.java:119)
   at haven.Session$CachedRes$Ref.get(Session.java:112)
   at Equed.<init>(eq.cjava:22)
   at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
   at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source)
   at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source)
   at java.lang.reflect.Constructor.newInstance(Unknown Source)
   at haven.Utils.construct(Utils.java:1332)
   at haven.Sprite$2.create(Sprite.java:99)
   at haven.Sprite.create(Sprite.java:140)
   at haven.Gob$Overlay.init(Gob.java:74)
   at haven.Gob$Overlay.access$200(Gob.java:46)
   at haven.Gob.addol(Gob.java:241)
   at haven.OCache.overlay(OCache.java:523)
   at haven.OCache.lambda$overlay$19(OCache.java:564)
   at haven.OCache$GobInfo.apply(OCache.java:709)
   at haven.Loader.lambda$defer$0(Loader.java:180)
   at haven.Loader$Future.run(Loader.java:65)
   at haven.Loader$Future.access$200(Loader.java:40)
   at haven.Loader.loop(Loader.java:142)
   at java.lang.Thread.run(Unknown Source)
Caused by: haven.Resource$LoadException: Could not find specified material: 8
   at haven.FastMesh$MeshRes.init(FastMesh.java:271)
   at haven.Resource.load(Resource.java:1402)
   at haven.Resource.access$600(Resource.java:40)
   at haven.Resource$Pool.handle(Resource.java:435)
   at haven.Resource$Pool.access$1100(Resource.java:332)
   at haven.Resource$Pool$Loader.run(Resource.java:583)
   ... 1 more
   Suppressed: haven.Resource$LoadException: Load error in resource gfx/terobjs/wardrobeclothes(v8), from cache source backed by FileCache(http://game.havenandhearth.com/render/)
      at haven.Resource$Pool.handle(Resource.java:447)
      ... 3 more
      Suppressed: haven.Resource$LoadException: Load error in resource gfx/terobjs/wardrobeclothes(v8), from local res source
         ... 4 more
      Caused by: java.io.FileNotFoundException: Could not find resource locally: gfx/terobjs/wardrobeclothes
         at haven.Resource$JarSource.get(Resource.java:239)
         at haven.Resource$Pool.handle(Resource.java:431)
         ... 3 more
   Caused by: java.io.FileNotFoundException: res/gfx/terobjs/wardrobeclothes
      at haven.HashDirCache.fetch(HashDirCache.java:277)
      at haven.Resource$CacheSource.get(Resource.java:206)
      at haven.Resource$Pool.handle(Resource.java:431)
      ... 3 more

Give a man a game engine and he delivers a game. Teach a man how to make a game engine and he never delivers anything.
User avatar
DPblH
 
Posts: 427
Joined: Wed Jun 09, 2010 4:57 pm

Re: Client rewrite β-testing

Postby TheUltimateC » Sat Jan 11, 2020 2:11 pm

Code: Select all
java.lang.NullPointerException
   at haven.render.Phong$CelShade.modify(Phong.java:83)
   at haven.render.gl.GLProgram.build(GLProgram.java:122)
   at haven.render.gl.GLEnvironment.getprog(GLEnvironment.java:496)
   at haven.render.gl.GLDrawList$DrawSlot.progfor(GLDrawList.java:251)
   at haven.render.gl.GLDrawList$DrawSlot.<init>(GLDrawList.java:340)
   at haven.render.gl.GLDrawList.add(GLDrawList.java:937)
   at haven.render.InstanceList.lambda$cladd$0(InstanceList.java:475)
   at java.util.ArrayList.forEach(Unknown Source)
   at haven.render.InstanceList.cladd(InstanceList.java:475)
   at haven.render.InstanceList.add(InstanceList.java:569)
   at haven.render.RenderTree$Client.added(RenderTree.java:62)
   at haven.render.RenderTree$TreeSlot.add(RenderTree.java:432)
   at haven.render.RenderTree$TreeSlot.add(RenderTree.java:356)
   at haven.render.RenderTree$Slot.add(RenderTree.java:343)
   at haven.Composited$Model$Layer.added(Composited.java:167)
   at haven.render.RenderTree$TreeSlot.add(RenderTree.java:452)
   at haven.render.RenderTree$TreeSlot.add(RenderTree.java:356)
   at haven.render.RenderTree$Slot.add(RenderTree.java:343)
   at haven.Composited$Model.added(Composited.java:183)
   at haven.render.RenderTree$TreeSlot.add(RenderTree.java:452)
   at haven.render.RenderTree$TreeSlot.add(RenderTree.java:356)
   at haven.render.RenderTree$Slot.add(RenderTree.java:343)
   at haven.Composited.parts(Composited.java:497)
   at haven.RUtils.readd(RUtils.java:68)
   at haven.Composited.chmod(Composited.java:532)
   at haven.Composite.updequ(Composite.java:85)
   at haven.Composite.ctick(Composite.java:122)
   at haven.Gob.ctick(Gob.java:208)
   at haven.OCache.lambda$ctick$0(OCache.java:115)
   at java.util.ArrayList.forEach(Unknown Source)
   at haven.OCache.ctick(OCache.java:119)
   at haven.Glob.ctick(Glob.java:134)
   at haven.JOGLPanel.run(JOGLPanel.java:358)
   at java.lang.Thread.run(Unknown Source)


I got this shortly after aggroing a denmother in a bat cave. :D
TheUltimateC
 
Posts: 50
Joined: Sat Jul 28, 2018 10:30 pm

Re: Client rewrite β-testing

Postby ctopolon4 » Sat Jan 11, 2020 3:00 pm

trying to place sand stockpile, and it dissapear from cursor. (same with any stockpiles) also building not works (not shows preplace img)
play 5min more, and crush with clouds error when gathering tree seed.
after reloging sand was on cursor :geek: and here was no that tree i was harvesting
before EXP event message - shown blank window "hey listen"
stackOverflow error: cacheMap.clear cacheMap.remove cacheMap.clear cacheMap.remove cacheMap.clear cacheMap.remove & etc
display VClaim\PClaim not works, display kingdom = very stange result Image
Last edited by ctopolon4 on Sat Jan 11, 2020 3:33 pm, edited 1 time in total.
User avatar
ctopolon4
 
Posts: 738
Joined: Sun Jun 03, 2018 2:28 pm
Location: mom's basement

Re: Client rewrite β-testing

Postby Lalaxx » Sat Jan 11, 2020 3:28 pm

loftar wrote:[*]Sometimes when walking in or out of houses, the client can get stuck on "waiting for map data". If you can find a way to reproduce this reliably, please report! (Logging out and back in should help without having to restart the client.)[/list]

well it seems to happen when you walking in or out of houses too fast when rendering of previous location is not complete. Seems to be fine to walk in or out fast when you completely rendered both locations. But there is another error that can occur when you fast walking in or out of buildings/caves
Code: Select all
haven.render.RenderTree$SlotRemoved
   at haven.render.RenderTree$TreeSlot.chstate(RenderTree.java:620)
   at haven.render.RenderTree$TreeSlot.ostate(RenderTree.java:652)
   at haven.RUtils$StateNode.update(RUtils.java:104)
   at haven.RUtils$StateTickNode.autotick(RUtils.java:140)
   at haven.render.TickList.lambda$tick$0(TickList.java:135)
   at java.util.ArrayList.forEach(Unknown Source)
   at haven.render.TickList.tick(TickList.java:140)
   at haven.PView.tick(PView.java:141)
   at haven.MapView.tick(MapView.java:1421)
   at haven.Widget.tick(Widget.java:702)
   at haven.GameUI.tick(GameUI.java:856)
   at haven.Widget.tick(Widget.java:702)
   at haven.UI.tick(UI.java:145)
   at haven.JOGLPanel.run(JOGLPanel.java:362)
   at java.lang.Thread.run(Unknown Source)
User avatar
Lalaxx
 
Posts: 424
Joined: Sun May 12, 2013 12:15 pm
Location: Norsca

Re: Client rewrite β-testing

Postby VDZ » Sat Jan 11, 2020 5:02 pm

ctopolon4 wrote:before EXP event message - shown blank window "hey listen"


This can also happen in the current client. I believe it's a result of having connection issues causing the loading of the actual event to be delayed. (I think I've encountered it multiple times while playing on a slow cell phone connection, though that was ages ago.)
User avatar
VDZ
 
Posts: 2660
Joined: Sun Jul 17, 2011 2:27 am

Re: Client rewrite β-testing

Postby VDZ » Sat Jan 11, 2020 5:39 pm

TheUltimateC wrote:The first time, the portrait frames on login where actually black.


I get the same:
Image

I believe this may be a caching issue; I also noticed that in a session where I started without the kitsune had equipped, after I equipped the kitsune hat and used :q to quit, then restarted the game and logged back in, my portrait was shown without the kitsune hat (but on logging in I did have the kitsune hat equipped). I think the portrait just lags behind? When I :q-ed again and restarted and logged back in, the portrait did show the kitsune hat.

stya wrote:and also this:

Image


I also got some wonkiness in the interface:

Image

The interface looks fine in the normal client.

stya wrote:Receiving items from hearthfire (always reproducible for me):
Code: Select all
java.lang.RuntimeException: java.lang.InterruptedException
   at haven.render.gl.GLDrawList.draw(GLDrawList.java:919)
   at haven.ShadowMap$ShadowList.draw(ShadowMap.java:199)
   at haven.ShadowMap.update(ShadowMap.java:231)
   at haven.MapView.drawsmap(MapView.java:833)
   at haven.MapView.draw(MapView.java:1398)
   at haven.Widget.draw(Widget.java:728)
   at haven.Widget.draw(Widget.java:733)
   at haven.GameUI.draw(GameUI.java:829)
   at haven.Widget.draw(Widget.java:728)
   at haven.Widget.draw(Widget.java:733)
   at haven.RootWidget.draw(RootWidget.java:68)
   at haven.UI.draw(UI.java:150)
   at haven.JOGLPanel.display(JOGLPanel.java:319)
   at haven.JOGLPanel.run(JOGLPanel.java:378)
   at java.lang.Thread.run(Unknown Source)
Caused by: java.lang.InterruptedException
   at java.lang.Object.wait(Native Method)
   at java.lang.Object.wait(Unknown Source)
   at haven.render.gl.GLDoubleBuffer.get(GLDoubleBuffer.java:70)
   at haven.render.gl.GLDrawList.draw(GLDrawList.java:915)
   ... 14 more



I also get an issue when trying to retrieve items from my hearthfire (specifically, on clicking the 'Receive items' after right-clicking the HF, after my character finishes walking to the HF), but I get a different callstack:
Code: Select all
java.lang.IncompatibleClassChangeError: Found interface haven.Tex, but class was expected
   at Mailbox.<clinit>(mailbox.cjava:11)
   at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
   at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
   at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
   at java.lang.reflect.Method.invoke(Unknown Source)
   at haven.Widget$FactMaker$1.create(Widget.java:155)
   at haven.UI.newwidget(UI.java:161)
   at haven.RemoteUI.run(RemoteUI.java:66)
   at haven.MainFrame.run(MainFrame.java:257)
   at java.lang.Thread.run(Unknown Source)


I also tried using :fs 1 to toggle fullscreen. Fullscreen hasn't worked correctly for me in years, but the symptoms changed between the normal client and the render test client:
  • In the normal client, I just get a black screen with only the custom cursor visible. I can move the cursor normally. The audio continues to play, and I can give input (and the game responds as evidenced by the audio). I can :fs 0 to get back to windowed, but the game still does not render.
  • In the render test client, I instead get a black screen with the default Windows cursor (movable) and an exception window in the top left. I cannot click anything, but the window responds to keyboard input. It contains the following callstack:
    Code: Select all
    java.lang.AssertionError
       at haven.render.gl.GLDrawList.draw(GLDrawList.java:924)
       at haven.PView.draw(PView.java:208)
       at haven.MapView.draw(MapView.java:1399)
       at haven.Widget.draw(Widget.java:728)
       at haven.Widget.draw(Widget.java:733)
       at haven.GameUI.draw(GameUI.java:829)
       at haven.Widget.draw(Widget.java:728)
       at haven.Widget.draw(Widget.java:733)
       at haven.RootWidget.draw(RootWidget.java:68)
       at haven.UI.draw(UI.java:150)
       at haven.JOGLPanel.display(JOGLPanel.java:319)
       at haven.JOGLPanel.run(JOGLPanel.java:378)
       at java.lang.Thread.run(Unknown Source)
User avatar
VDZ
 
Posts: 2660
Joined: Sun Jul 17, 2011 2:27 am

Re: Client rewrite β-testing

Postby algeralith » Sat Jan 11, 2020 5:57 pm

Code: Select all
java.lang.RuntimeException: Delayed error in resource gfx/terobjs/wardrobeclothes (v8), from forking source backed by HTTP res source (http://game.havenandhearth.com/render/res/)
   at haven.Resource$Pool$Queued.get(Resource.java:386)
   at haven.Resource$Pool$Queued.get(Resource.java:355)
   at haven.Session$CachedRes$Ref.get(Session.java:119)
   at haven.Session$CachedRes$Ref.get(Session.java:112)
   at Equed.<init>(eq.cjava:22)
   at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
   at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
   at java.base/jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
   at java.base/java.lang.reflect.Constructor.newInstanceWithCaller(Constructor.java:500)
   at java.base/java.lang.reflect.Constructor.newInstance(Constructor.java:481)
   at haven.Utils.construct(Utils.java:1332)
   at haven.Sprite$2.create(Sprite.java:99)
   at haven.Sprite.create(Sprite.java:140)
   at haven.Gob$Overlay.init(Gob.java:74)
   at haven.Gob$Overlay.access$200(Gob.java:46)
   at haven.Gob.addol(Gob.java:241)
   at haven.OCache.overlay(OCache.java:523)
   at haven.OCache.lambda$overlay$19(OCache.java:564)
   at haven.OCache$GobInfo.apply(OCache.java:709)
   at haven.Loader.lambda$defer$0(Loader.java:180)
   at haven.Loader$Future.run(Loader.java:65)
   at haven.Loader$Future.access$200(Loader.java:40)
   at haven.Loader.loop(Loader.java:142)
   at java.base/java.lang.Thread.run(Thread.java:835)
Caused by: haven.Resource$LoadException: Could not find specified material: 8
   at haven.FastMesh$MeshRes.init(FastMesh.java:271)
   at haven.Resource.load(Resource.java:1402)
   at haven.Resource.access$600(Resource.java:40)
   at haven.Resource$Pool.handle(Resource.java:435)
   at haven.Resource$Pool.access$1100(Resource.java:332)
   at haven.Resource$Pool$Loader.run(Resource.java:583)
   ... 1 more
   Suppressed: haven.Resource$LoadException: Load error in resource gfx/terobjs/wardrobeclothes(v8), from cache source backed by FileCache(http://game.havenandhearth.com/render/)
      at haven.Resource$Pool.handle(Resource.java:447)
      ... 3 more
      Suppressed: haven.Resource$LoadException: Load error in resource gfx/terobjs/wardrobeclothes(v8), from local res source
         ... 4 more
      Caused by: java.io.FileNotFoundException: Could not find resource locally: gfx/terobjs/wardrobeclothes
         at haven.Resource$JarSource.get(Resource.java:239)
         at haven.Resource$Pool.handle(Resource.java:431)
         ... 3 more
   Caused by: java.io.FileNotFoundException: res/gfx/terobjs/wardrobeclothes
      at haven.HashDirCache.fetch(HashDirCache.java:277)
      at haven.Resource$CacheSource.get(Resource.java:206)
      at haven.Resource$Pool.handle(Resource.java:431)
      ... 3 more
algeralith
 
Posts: 335
Joined: Tue Mar 16, 2010 2:26 am

Re: Client rewrite β-testing

Postby wonder-ass » Sat Jan 11, 2020 6:31 pm

exciting times

shame it doesnt really help when you have extreme amount of animals on screen.
i did notice a slight fps boost in like a decent amount of animals so hoping the game can stay stable with like 40 ish players on screen.
Last edited by wonder-ass on Sat Jan 11, 2020 6:36 pm, edited 1 time in total.
see homo sexuality trending,. do not do that.
User avatar
wonder-ass
 
Posts: 2325
Joined: Thu Aug 01, 2013 7:02 am

Re: Client rewrite β-testing

Postby VDZ » Sat Jan 11, 2020 6:34 pm

I got a sudden exception but have no clue why it occurred:
Code: Select all
java.lang.RuntimeException: java.lang.AssertionError
   at com.jogamp.common.util.awt.AWTEDTExecutor.invoke(AWTEDTExecutor.java:58)
   at jogamp.opengl.awt.AWTThreadingPlugin.invokeOnOpenGLThread(AWTThreadingPlugin.java:103)
   at jogamp.opengl.ThreadingImpl.invokeOnOpenGLThread(ThreadingImpl.java:206)
   at javax.media.opengl.Threading.invokeOnOpenGLThread(Threading.java:172)
   at javax.media.opengl.Threading.invoke(Threading.java:191)
   at javax.media.opengl.awt.GLCanvas.display(GLCanvas.java:528)
   at haven.JOGLPanel.uglyjoglhack(JOGLPanel.java:188)
   at haven.JOGLPanel.renderloop(JOGLPanel.java:209)
   at java.lang.Thread.run(Unknown Source)
Caused by: java.lang.AssertionError
   at haven.render.gl.GLEnvironment.disposeall(GLEnvironment.java:172)
   at haven.render.gl.GLEnvironment.process(GLEnvironment.java:128)
   at haven.JOGLPanel.redraw(JOGLPanel.java:139)
   at haven.JOGLPanel.access$000(JOGLPanel.java:39)
   at haven.JOGLPanel$1.display(JOGLPanel.java:76)
   at jogamp.opengl.GLDrawableHelper.displayImpl(GLDrawableHelper.java:649)
   at jogamp.opengl.GLDrawableHelper.display(GLDrawableHelper.java:633)
   at javax.media.opengl.awt.GLCanvas$9.run(GLCanvas.java:1271)
   at jogamp.opengl.GLDrawableHelper.invokeGLImpl(GLDrawableHelper.java:1103)
   at jogamp.opengl.GLDrawableHelper.invokeGL(GLDrawableHelper.java:978)
   at javax.media.opengl.awt.GLCanvas$10.run(GLCanvas.java:1282)
   at java.awt.event.InvocationEvent.dispatch(Unknown Source)
   at java.awt.EventQueue.dispatchEventImpl(Unknown Source)
   at java.awt.EventQueue.access$500(Unknown Source)
   at java.awt.EventQueue$3.run(Unknown Source)
   at java.awt.EventQueue$3.run(Unknown Source)
   at java.security.AccessController.doPrivileged(Native Method)
   at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown Source)
   at java.awt.EventQueue.dispatchEvent(Unknown Source)
   at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
   at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
   at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
   at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
   at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
   at java.awt.EventDispatchThread.run(Unknown Source)


The screen seemed frozen, but looking closely there were still some rendering updates, but extremely slowly. This is what my screen looked like at the time of the exception:
Image

Also noticed a minor glitch on the equip screen when removing the kitsune hat (forgot to report in previous post):
Image

ctopolon4 wrote:display VClaim\PClaim not works, display kingdom = very stange result
<snip>


Display PClaim works for me, not sure if it looks how it's supposed to look:
Image

I get the same weirdness on realm claims.

I also noticed an unusual issue with quests; if a quest requires you to perform an action on another questgiver (e.g. Greet X) then report back to Y, in the normal client it shows location indicators at the sides of the screen for both questgivers, but in the render test version it shows only the location indicator for the questgiver you need to report back to. I imagine this makes 'greet X' quests impossible if you don't already know where X is.

I also encountered an issue that made me unable to build constructions; going into the build menu and choosing to build e.g. a Barrel did nothing; the menu did not return to the starting state and I did not get a Barrel to place under my cursor. None of the build actions I tried did anything (unfortunately I forgot to check the non-placement build options like the Dugout) but the item crafting options still seemed to work. (I tried the build options again after it but they still didn't work.) This was right after I made a Dugout (I wanted to check the cost of the Snekkja which was added while I wasn't playing but the button didn't do anything), but after restarting the game I could not reproduce it by making another dugout, so I'm not sure what caused it.
User avatar
VDZ
 
Posts: 2660
Joined: Sun Jul 17, 2011 2:27 am

Re: Client rewrite β-testing

Postby loftar » Sat Jan 11, 2020 7:41 pm

Thanks for all the reports! I'll be going through them.

wonder-ass wrote:shame it doesnt really help when you have extreme amount of animals on screen.
i did notice a slight fps boost in like a decent amount of animals so hoping the game can stay stable with like 40 ish players on screen.

Did you try :par on, as indicated in the OP? I've found that it gives a rather tremendous boost to performance in those particular circumstances, at least on my system.

That being said, animals and players should also be given GPU-side skinning. That'll be one of the first projects as soon as the new client is in use.
"Object-oriented design is the roman numerals of computing." -- Rob Pike
User avatar
loftar
 
Posts: 8926
Joined: Fri Apr 03, 2009 7:05 am

PreviousNext

Return to Announcements

Who is online

Users browsing this forum: Python-Requests [Bot] and 22 guests