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

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

Moderator: Phades

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

Postby themendios » Sat Feb 19, 2011 9:07 pm

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 :(
themendios
 
Posts: 49
Joined: Mon Feb 07, 2011 6:32 pm

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

Postby loftar » Sun Feb 20, 2011 4:23 am

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
User avatar
loftar
 
Posts: 9045
Joined: Fri Apr 03, 2009 7:05 am

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

Postby themendios » Sun Feb 20, 2011 5:24 pm

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?
themendios
 
Posts: 49
Joined: Mon Feb 07, 2011 6:32 pm

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

Postby loftar » Sun Feb 20, 2011 7:20 pm

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
User avatar
loftar
 
Posts: 9045
Joined: Fri Apr 03, 2009 7:05 am

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

Postby themendios » Sun Feb 20, 2011 8:35 pm

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?

Postby themendios » Sun Feb 20, 2011 9:23 pm

Never mind, figured it out. I don't know why I assumed a .res was a proprietary java file. Welp learning is fun!
themendios
 
Posts: 49
Joined: Mon Feb 07, 2011 6:32 pm

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

Postby DeadlyPencil » Sun Feb 20, 2011 11:58 pm

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.
DeadlyPencil
 
Posts: 920
Joined: Sat Nov 21, 2009 12:17 am

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

Postby dra6o0n » Mon Feb 21, 2011 6:46 pm

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.
dra6o0n
 
Posts: 481
Joined: Tue Aug 24, 2010 3:11 am

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

Postby agent_orange » Mon Feb 21, 2011 7:32 pm

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)
agent_orange
 
Posts: 32
Joined: Sun Feb 14, 2010 5:47 pm

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

Postby sabinati » Mon Feb 21, 2011 7:34 pm

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?
User avatar
sabinati
 
Posts: 15513
Joined: Mon Jul 13, 2009 4:25 am
Location: View active topics

PreviousNext

Return to The Wizards' Tower

Who is online

Users browsing this forum: Claude [Bot], PetalBot [Bot] and 1 guest