Custom client by Latikai, building on Ender's client

Forum for game modifications and custom clients.

Re: Custom client by Latikai, building on Ender's client

Postby Chiprel » Wed Nov 05, 2014 8:01 am

Go to C:\Users\yourUSER\salem\bin\ and delete:
client-res.jar and client-res.jar.etag
Run updater again and it should redownload the file correctly.
dem M_O_V_E_M_E_N_T_O_A_T_M_E_A_L_C_R_A_C_K_E_R_S
Winner of bracket ( award.
<@TotalyMoo> Mushi, will you be my new lover? :<
User avatar
Chiprel
 
Posts: 778
Joined: Wed Aug 01, 2012 1:25 am

Re: Custom client by Latikai, building on Ender's client

Postby Kandarim » Wed Nov 05, 2014 9:34 am

*.etag's shouldn't be there anymore anyway (they don't do anything anymore). They are a relic from when the files were still hosted on dropbox, which did not support modified-since HTTP queries.
I have neither the crayons nor the time to explain it to you.
JC wrote:I'm not fully committed to being wrong on that yet.
User avatar
Kandarim
Customer
 
Posts: 5321
Joined: Mon Jan 21, 2013 4:18 pm

Re: Custom client by Latikai, building on Ender's client

Postby Incendier » Thu Nov 06, 2014 5:53 pm

Im getting this error too am i doing something wrong? could you tell me what to do to fix this? is english pls not good with all the tech words :P

java.lang.RuntimeException: Delayed error in resource gfx/hud/hwaup (v-1), from forking source backed by HTTP res source (http://game.salemthegame.com/res/)
at haven.Resource.checkerr(Resource.java:1512)
at haven.Resource.layer(Resource.java:1396)
at haven.Resource.layer(Resource.java:1405)
at haven.Resource.loadimg(Resource.java:1522)
at haven.GameUI$MenuButton.<init>(GameUI.java:169)
at haven.GameUI$MainMenu$11.<init>(GameUI.java:995)
at haven.GameUI$MainMenu.<init>(GameUI.java:995)
at haven.GameUI.makemenu(GameUI.java:1072)
at haven.GameUI.<init>(GameUI.java:158)
at haven.GameUI$$_.create(GameUI.java:117)
at haven.Widget.makechild(Widget.java:246)
at haven.UI.newwidget(UI.java:175)
at haven.RemoteUI.run(RemoteUI.java:71)
at haven.MainFrame.run(MainFrame.java:291)
at java.lang.Thread.run(Unknown Source)
Caused by: haven.Resource$LoadException: Load error in resource gfx/hud/hwaup(v-1), from forking source backed by HTTP res source (http://game.salemthegame.com/res/)
at haven.Resource$Loader.handle(Resource.java:446)
at haven.Resource$Loader.run(Resource.java:420)
... 1 more
Caused by: java.io.FileNotFoundException: http://game.salemthegame.com/res/gfx/hud/hwaup.res
at sun.net.www.protocol.http.HttpURLConnection.getInputStream0(Unknown Source)
at sun.net.www.protocol.http.HttpURLConnection.getInputStream(Unknown Source)
at haven.Resource$HttpSource.get(Resource.java:370)
at haven.Resource$TeeSource.get(Resource.java:266)
at haven.Resource$Loader.handle(Resource.java:439)
... 2 more
Incendier
 
Posts: 62
Joined: Tue May 06, 2014 4:26 pm

Re: Custom client by Latikai, building on Ender's client

Postby Kandarim » Fri Nov 07, 2014 9:44 am

delete client-res.jar and try again
I have neither the crayons nor the time to explain it to you.
JC wrote:I'm not fully committed to being wrong on that yet.
User avatar
Kandarim
Customer
 
Posts: 5321
Joined: Mon Jan 21, 2013 4:18 pm

Re: Custom client by Latikai, building on Ender's client

Postby Cheena » Fri Nov 07, 2014 10:08 am

Kandarim wrote:delete client-res.jar and try again


You should add those fixes to your signature or something. Really. xd
Trust your enemies more than your friends. Your enemies will never betray you.
loftar wrote:***** the treaty.

(Note: Citation is severely out of context.)
User avatar
Cheena
 
Posts: 1264
Joined: Sat Mar 09, 2013 11:46 am
Location: Providence

Re: Custom client by Latikai, building on Ender's client

Postby Kandarim » Fri Nov 07, 2014 2:14 pm

Ideally, I should fix them :)
I don't really know what is causing them though. For some reason people have the updated client but not the updated client-res.jar

But yes, it's become sort of a default reply of mine on this thread.
I have neither the crayons nor the time to explain it to you.
JC wrote:I'm not fully committed to being wrong on that yet.
User avatar
Kandarim
Customer
 
Posts: 5321
Joined: Mon Jan 21, 2013 4:18 pm

Re: Custom client by Latikai, building on Ender's client

Postby Chiprel » Sun Nov 09, 2014 3:07 pm

So I was tinkering with the source a bit and I found what is causing the shed/inventory problem. Dunno why but the problem is certainly about RemoteUI.java.

Compiling newest ver of your client with a bit outdated RemoteUI.java solves the problem.


Working one comes from here:
Image

Code: Select all
/*
 *  This file is part of the Haven & Hearth game client.
 *  Copyright (C) 2009 Fredrik Tolf <fredrik@dolda2000.com>, and
 *                     Björn Johannessen <johannessen.bjorn@gmail.com>
 *
 *  Redistribution and/or modification of this file is subject to the
 *  terms of the GNU Lesser General Public License, version 3, as
 *  published by the Free Software Foundation.
 *
 *  This program is distributed in the hope that it will be useful,
 *  but WITHOUT ANY WARRANTY; without even the implied warranty of
 *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 *  GNU General Public License for more details.
 *
 *  Other parts of this source tree adhere to other copying
 *  rights. Please see the file `COPYING' in the root directory of the
 *  source tree for details.
 *
 *  A copy the GNU Lesser General Public License is distributed along
 *  with the source tree of which this file is a part in the file
 *  `doc/LPGL-3'. If it is missing for any reason, please see the Free
 *  Software Foundation's website at <http://www.fsf.org/>, or write
 *  to the Free Software Foundation, Inc., 59 Temple Place, Suite 330,
 *  Boston, MA 02111-1307 USA
 */

package haven;

public class RemoteUI implements UI.Receiver, UI.Runner {
    Session sess, ret;
    UI ui;
   
    public RemoteUI(Session sess) {
   this.sess = sess;
   Widget.initnames();
    }
   
    public void rcvmsg(int id, String name, Object... args) {
//        System.out.println("Sending a message: ");
//            System.out.println("id: "+id);
//            System.out.println("\t"+name);
//            for(Object o : args)
//                System.out.println("\t"+o.toString());
       
   Message msg = new Message(Message.RMSG_WDGMSG);
   msg.adduint16(id);
   msg.addstring(name);
   msg.addlist(args);
   sess.queuemsg(msg);
    }
   
    public void ret(Session sess) {
   synchronized(this.sess) {
       this.ret = sess;
       this.sess.notifyAll();
   }
    }

    public Session run(UI ui) throws InterruptedException {
   this.ui = ui;
   ui.setreceiver(this);
   while(true) {
       Message msg;
       while((msg = sess.getuimsg()) != null) {
      if(msg.type == Message.RMSG_NEWWDG) {
          int id = msg.uint16();
          String type = msg.string();
          int parent = msg.uint16();
          Object[] pargs = msg.list();
          Object[] cargs = msg.list();
          ui.newwidget(id, type, parent, pargs, cargs);
                   
//                    System.out.println("Receiving RMSG_NEWWDG: ");
//                        System.out.println("id: "+id);
//                        System.out.println("\t"+type);
//                        for(Object o : pargs)
//                            System.out.println("\t"+o.toString());
//                        for(Object o : cargs)
//                            System.out.println("\t"+o.toString());

      } else if(msg.type == Message.RMSG_WDGMSG) {
          int id = msg.uint16();
          String name = msg.string();
          ui.uimsg(id, name, msg.list());
                   
//                    System.out.println("Receiving RMSG_WDGMSG: ");
//                        System.out.println("id: "+id);
//                        System.out.println("\t"+name);
                       
      } else if(msg.type == Message.RMSG_DSTWDG) {
          int id = msg.uint16();
          ui.destroy(id);
                   
//                    System.out.println("Receiving RMSG_DSTWDG: ");
//                        System.out.println("id: "+id);
      }
       }
       synchronized(sess) {
      if(ret != null) {
          sess.close();
          return(ret);
      }
      if(!sess.alive())
          return(null);
      sess.wait(50);
       }
   }
    }
}


After changes made in here the shed loading times became a problem again:
Image

Code: Select all
/*
 *  This file is part of the Haven & Hearth game client.
 *  Copyright (C) 2009 Fredrik Tolf <fredrik@dolda2000.com>, and
 *                     Björn Johannessen <johannessen.bjorn@gmail.com>
 *
 *  Redistribution and/or modification of this file is subject to the
 *  terms of the GNU Lesser General Public License, version 3, as
 *  published by the Free Software Foundation.
 *
 *  This program is distributed in the hope that it will be useful,
 *  but WITHOUT ANY WARRANTY; without even the implied warranty of
 *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 *  GNU General Public License for more details.
 *
 *  Other parts of this source tree adhere to other copying
 *  rights. Please see the file `COPYING' in the root directory of the
 *  source tree for details.
 *
 *  A copy the GNU Lesser General Public License is distributed along
 *  with the source tree of which this file is a part in the file
 *  `doc/LPGL-3'. If it is missing for any reason, please see the Free
 *  Software Foundation's website at <http://www.fsf.org/>, or write
 *  to the Free Software Foundation, Inc., 59 Temple Place, Suite 330,
 *  Boston, MA 02111-1307 USA
 */

package haven;

public class RemoteUI implements UI.Receiver, UI.Runner {
    Session sess, ret;
    UI ui;
   
    public RemoteUI(Session sess) {
   this.sess = sess;
   Widget.initnames();
    }
   
    public void rcvmsg(int id, String name, Object... args) {
        System.out.println("Sending a message: ");
            System.out.println("id: "+id);
            System.out.println("\t"+name);
            for(Object o : args)
                System.out.println("\t"+o.toString());
       
   Message msg = new Message(Message.RMSG_WDGMSG);
   msg.adduint16(id);
   msg.addstring(name);
   msg.addlist(args);
   sess.queuemsg(msg);
    }
   
    public void ret(Session sess) {
   synchronized(this.sess) {
       this.ret = sess;
       this.sess.notifyAll();
   }
    }

    public Session run(UI ui) throws InterruptedException {
   this.ui = ui;
   ui.setreceiver(this);
   while(true) {
       Message msg;
       while((msg = sess.getuimsg()) != null) {
      if(msg.type == Message.RMSG_NEWWDG) {
          int id = msg.uint16();
          String type = msg.string();
          int parent = msg.uint16();
          Object[] pargs = msg.list();
          Object[] cargs = msg.list();
          ui.newwidget(id, type, parent, pargs, cargs);
                   
                    System.out.println("Receiving RMSG_NEWWDG: ");
                        System.out.println("id: "+id);
                        System.out.println("\t"+type);
                        for(Object o : pargs)
                            System.out.println("\t"+o.toString());
                        for(Object o : cargs)
                            System.out.println("\t"+o.toString());

      } else if(msg.type == Message.RMSG_WDGMSG) {
          int id = msg.uint16();
          String name = msg.string();
          ui.uimsg(id, name, msg.list());
                   
                    System.out.println("Receiving RMSG_WDGMSG: ");
                        System.out.println("id: "+id);
                        System.out.println("\t"+name);
                       
      } else if(msg.type == Message.RMSG_DSTWDG) {
          int id = msg.uint16();
          ui.destroy(id);
                   
                    System.out.println("Receiving RMSG_DSTWDG: ");
                        System.out.println("id: "+id);
      }
       }
       synchronized(sess) {
      if(ret != null) {
          sess.close();
          return(ret);
      }
      if(!sess.alive())
          return(null);
      sess.wait(50);
       }
   }
    }
}
dem M_O_V_E_M_E_N_T_O_A_T_M_E_A_L_C_R_A_C_K_E_R_S
Winner of bracket ( award.
<@TotalyMoo> Mushi, will you be my new lover? :<
User avatar
Chiprel
 
Posts: 778
Joined: Wed Aug 01, 2012 1:25 am

Re: Custom client by Latikai, building on Ender's client

Postby Kandarim » Sun Nov 09, 2014 4:12 pm

thanks :) i need to be more careful with those logging things. I don't see why that would slow you down so much though Oo
I have neither the crayons nor the time to explain it to you.
JC wrote:I'm not fully committed to being wrong on that yet.
User avatar
Kandarim
Customer
 
Posts: 5321
Joined: Mon Jan 21, 2013 4:18 pm

Re: Custom client by Latikai, building on Ender's client

Postby Pildream » Sun Nov 09, 2014 6:28 pm

Kand, what is ctrl-Q ? I pressd it accidentally but could not understand
User avatar
Pildream
 
Posts: 321
Joined: Wed Jul 02, 2014 2:38 pm

Re: Custom client by Latikai, building on Ender's client

Postby Kandarim » Sun Nov 09, 2014 7:54 pm

it shows the length of your currnet walk vector. Specifically, if you party someone and click their portrait, that tool will allow you to see exactly how far away they are.
I have neither the crayons nor the time to explain it to you.
JC wrote:I'm not fully committed to being wrong on that yet.
User avatar
Kandarim
Customer
 
Posts: 5321
Joined: Mon Jan 21, 2013 4:18 pm

PreviousNext

Return to Artifice & Arcana

Who is online

Users browsing this forum: No registered users and 3 guests