Crossfire Mailing List Archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: CF: client/server
- To: Mark Wedel <>
- Subject: Re: CF: client/server
- From:
- Date: Tue, 16 Jul 1996 08:17:39 -0400 (EDT)
- Cc: Eric Anderson <>, John W Klar <>, crossfire (at) ifi.uio.no
- In-Reply-To: <>
- Original-cc: Eric Anderson <>, John W Klar <>,
- Original-From: John W Klar <>
- Reply-To: John W Klar <>
- Sender: owner-crossfire
>
> As a quick note, there are docs in the client distribution that gives a
> reasonably detailed description of the various lower level options. Also,
> all the docs that Eric sent in his last message have been previously put
> in with the client.
>
Yes and quite helpful.
> Generally speaking, this is how it works:
>
> The client sends high level commands to the server for player actions.
> Meaning, that if the player clicks on the map, or presses a key, it
> translates that into a 'move north (or appropriate direction)', and does
> not send something
> like 'key XX was pressed or button yy pressed.'. This also means the
> keybindings are handled on the client side now.
>
> For items, the client interperts buttonpresses the same way. If you click
> on something in the inventory, it will send an examine, drop, or apply
> command with
> the item id.
>
> On the server side, line of site and animations is calculated on the
> server.
> The server than packs up the changes from the last frame, and sends them to
> the client.
Hmmm, I think the root of my confusion is the Protocol file in the client.
What's outlined there is NOT what happens today.
> In practice, animations should be handled by the client at
> some point in time.
Might want to throw in something to detect whether the client has a 'full' set
of pixmaps instead of sending them over the link (although, in practice, it
works better than I thought it would).
What I have attempted to do is to create some documentation of the conversation
between the client and server to aid the effort to create an X-less client.
eutl.gz: describes the message protocol
protocol.gz: describes the client/server conversation
maplayer.gz: describes the map layer packing format
eutl.gz
maplayer.gz
protocol.gz