DEVS: Are you interested in a brand-new client?

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

Moderator: Phades

themendios
Posts: 49
Joined: Mon Feb 07, 2011 6:32 pm

Re: DEVS: Are you interested in a brand-new client?

Post by themendios »

UPDATE: can't believe it but finally have working netcode, now I gotta build a control wrapper since I didn't realize that the server messages were specific enough to request coordinate placement etc when I built my control library :(
User avatar
loftar
Posts: 9096
Joined: Fri Apr 03, 2009 7:05 am
Location: Your character database

Re: DEVS: Are you interested in a brand-new client?

Post by loftar »

themendios wrote:Just trying to decipher your number structures. Changing endianness is pretty normal for network traffic but adding 100mil to negative numbers and then changing endianness manually and then changing each resulting byte to signed is just bizarrely complex to me.
Um. I'm not changing endianness at all. All I'm doing is decoding/encoding two-complement signs. All the numbers in the game protocol are little-endian.
"Object-oriented design is the roman numerals of computing." -- Rob Pike
themendios
Posts: 49
Joined: Mon Feb 07, 2011 6:32 pm

Re: DEVS: Are you interested in a brand-new client?

Post by themendios »

are all the bricks downloaded from the server? i can't find them in haven-res.

when it sends the 'load tileset' like half the files aren't there

well shit yep. umm hmm so basically anything other than java has to implement a java deserializer on the fly?
User avatar
loftar
Posts: 9096
Joined: Fri Apr 03, 2009 7:05 am
Location: Your character database

Re: DEVS: Are you interested in a brand-new client?

Post by loftar »

themendios wrote:are all the bricks downloaded from the server? i can't find them in haven-res.

when it sends the 'load tileset' like half the files aren't there
That's pretty much correct. I haven't remade the resource jar in over a year. :)
themendios wrote:well shit yep. umm hmm so basically anything other than java has to implement a java deserializer on the fly?
But what does that have with Java deserialization to do? The resources don't use Java serialization, in case anything made you think that.
"Object-oriented design is the roman numerals of computing." -- Rob Pike
themendios
Posts: 49
Joined: Mon Feb 07, 2011 6:32 pm

Re: DEVS: Are you interested in a brand-new client?

Post by themendios »

loftar wrote:
themendios wrote:well shit yep. umm hmm so basically anything other than java has to implement a java deserializer on the fly?
But what does that have with Java deserialization to do? The resources don't use Java serialization, in case anything made you think that.
Yea I've just been reading up on java .res files (or trying to) and realized these aren't serialized objects, they're something else. Are they just byte arrays that are fully processed per file?

There's a ton of back and forth for resources, having trouble following all the threading/inheritance/queues/handed-off loads/gets/casts and I'm not too familiar with Java's Resources since I've never used it, is there any proprietary Java header(as in separation/delimiting of resources/resource count/versioninfo), or can I literally just grab the file as a byte[] and process it (presuming I duplicate the implementation)?

I am probably still gonna have to do something about ImageIO/BufferedImage (unless it's literally the bytes of a png), but I am having a hard time deciphering the .res file structures. It doesn't help I have no idea what I'm looking for since these aren't serialized objects.
themendios
Posts: 49
Joined: Mon Feb 07, 2011 6:32 pm

Re: DEVS: Are you interested in a brand-new client?

Post by themendios »

Never mind, figured it out. I don't know why I assumed a .res was a proprietary java file. Welp learning is fun!
DeadlyPencil
Posts: 924
Joined: Sat Nov 21, 2009 12:17 am

Re: DEVS: Are you interested in a brand-new client?

Post by DeadlyPencil »

I hope you do succeed with your client. i also hope it runs faster than the current one. its annoying when my computer starts lagging with tons of scents on the screen or lots of crops.
dra6o0n
Posts: 481
Joined: Tue Aug 24, 2010 3:11 am

Re: DEVS: Are you interested in a brand-new client?

Post by dra6o0n »

DeadlyPencil wrote:I hope you do succeed with your client. i also hope it runs faster than the current one. its annoying when my computer starts lagging with tons of scents on the screen or lots of crops.
The perp is the mapper functionality in the Ender and Gilbertus clients.
Downloading map images uses bandwidth and apparently lags you.

A friend took the client and edited out the unnecessary stuff and improved the hiding feature to include more detailed stuff and he says the client is smooth enough to have grid in it and not lag you.
agent_orange
Posts: 32
Joined: Sun Feb 14, 2010 5:47 pm

Re: DEVS: Are you interested in a brand-new client?

Post by agent_orange »

Yesterday I've spent some time in profiler. The result:
My bet, that most of CPU consumption is happening because of intensive GC operations.
Main object of garbage collection is haven.Coord class.
Main spawner of Coord instances is an add() method in same class.
Image
As you can see there are 14k live objects and 253k totally was allocated (in 30 seconds).
Bad news: it's VERY difficult to fix that, because Coord class is mutable.

P. S. Arksu client functionality (like debug info and grid functionality) is causing performance drop due to massive spawn of int arrays, so turn off debug info if you don't need it (Ctrl+D)
User avatar
sabinati
Posts: 15527
Joined: Mon Jul 13, 2009 4:25 am
Location: View active topics

Re: DEVS: Are you interested in a brand-new client?

Post by sabinati »

dra6o0n wrote:
DeadlyPencil wrote:I hope you do succeed with your client. i also hope it runs faster than the current one. its annoying when my computer starts lagging with tons of scents on the screen or lots of crops.
The perp is the mapper functionality in the Ender and Gilbertus clients.
Downloading map images uses bandwidth and apparently lags you.

A friend took the client and edited out the unnecessary stuff and improved the hiding feature to include more detailed stuff and he says the client is smooth enough to have grid in it and not lag you.
you're already downloading the images for your minimap, though... did your friend disable the minimap altogether?

Return to “The Wizards' Tower”