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

Re: CF: Client and images



On Feb 25,  8:42pm, Scott MacFiggen wrote:

> Well here is my take on things. Server admins may add
> custom images and such but most will still use
> the base images that have already been created
> thus it makes sense to me that the client should have
> these local from the start, with static faceid<->image
> mappings of course.

 static faceid->image ids is an unlikely scenario.  The current way the
client/server gets aroudn that is that the server sends both the face name and
its numeric id if the client is caching.  Thus, the client can determine see if
it has that image (name), and load that into the appropriate number - if not,
it requeusts a copy of it.

> It may add a lot to the client
> download but I'd rather download the images once then
> everytime I want to play.


 Have you looked at the latest client?  There is a -cache command line option
which will do just that - the client will cache the images locally and use them
run to run, so the images are only downloaded once (albeit, this happens when
you are playing, and not beforehand.)

> Plus the image files can be
> compressed if included with the client distribution.
> The xpm image file (esrv_xpm.eric) compresses down to
> 500K from 3meg.. Anyway, for this to be possible there
> needs to be a static mapping of faceid to image which I
> think should happen so client authors at least have the
> option of including images with the client distribution...

 Look at the latest definition of hte protocol.  it doesn't have static
mappings, but does have a mechanism for the client to store images locally.

 static face mappings would be much more difficult to do from a server
perspective (ie, when the collect.pl script runs, it then needs to keep track
of what images correspond to what, append only beyond the used point.  This
will create holes as images are removed, and slowly increase the top image
count, which will cause other problems.)  Various sections of the client/server
protocol have a certain high limit for the maximum face number that can be sent
- it is unlikely it will ever be reached in the current method, as that number
of images would actually need to be active in the game.  With a dynamic scheme,
it would eventually be reached.




-- 

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


Follow-Ups: References: