Crossfire Archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: CF: Client and images




> I experimented with this a bit with the java server and it wasn't
> very pleasant, although java IO is pretty lame..
> It might be doable by preparsing the file and
> storing offsets for each image, that way I could
> skip right to the image I want... Anyway.

 Of course, the current server is in C, and that is really what the client is
being written for (more to work with that than other possible scenarios.)

 The server will need to have some mechanism to send images to the client on
demand - how each server decides to implement it is its own business.

 (note that using offsets might be good, but will not work if the file is
compressed).

On Feb 26, 11:28am, James Cameron wrote:
> Subject: Re: CF: Client protocol and low-bandwidth links


> Get Crossfire running as client/server on UNIX systems, separating out
> the X code into a module on it's own, and then the conversion to a
> Win-API platform should be relatively straightforward.  The graphics
> code used in Netrek would be very handy.

 Have you looked at the current client implementation?  IT is my belief that it
already meets all criteria of the above paragraph.  Someone still needs to
write a windows/mac gui handler for it, but for the most part, the graphics
code is isolated.

>
> Like Netrek, I'd expect a UDP/TCP mix for the client/server
> communications would be best.

 currently, the client is all tcp.  Probably isn't too bad, since generally the
server is will be sending big packets to the client, so the tcp overhead isn't
quite so bad relative speaking (larger portion of the amoutn of data compared
with small packets)  I think the client->server has to be tcp, as you don't
want a command like cast healing to be dropped.

 Smarter updates/data transmission for the server could probably be done -
collect all data in an internal buffer that you want to send, and then send it
in one write call.  This way, if there are several small commands, they would
all get put into one big packet.


-- 

-- Mark Wedel
mark@pyramid.com
[to unsubscribe etc., send mail to crossfire-request@ifi.uio.no]


References: