[MUD-Dev] TECH: Trusting Network Clients

Christophe Badoit mailinglist1 at free.fr
Wed Aug 28 20:05:24 CEST 2002


On Wed, 2002-08-28 at 08:14, Bruce Mitchener wrote:
> Christohe Badoit wrote:
 
>> My advice is to trust *no* client. No client should be able to
>> tell the server it's player position or other
>> characteristic. Else there will surely be cheating...
  
>> IMO the client should only tell the server what it wants to do,
>> and receive the info of it's new properties (position & co). Of
>> course, it can predict the answer to avoid lag, but this is
>> another problem.
 
> Well, to be fully accurate, that should be "no client in the hands
> of the user" ... since it is usual for a server cluster to have
> compute clients and so on that aren't in the hands of the user and
> exist as part of the server-side infrastructure. (Like clients
> that manipulate weather patterns, or AI clients, or clients that
> do other tasks not central to the main parts of the simulation
> itself.)

Indeed :)

But how can you be sure that this client is an AI client ?

Well maybe it can be done by rsa sign, or IP validating (I suppose
that most of the time AI clients are parts of the cluster).

>> You should take a look to the client-server structure of Arianne,
>> an open-source mmorpg project (www.arianne.cx).

> I don't see any online documentation or things like that on their
> site ... would you mind posting some sort of summarization?

Most of their documentation is on their wiki pages:

  http://www.arianne.cx/wiki/

Quickly:

  All dialogs between client and server is done via actions and
  perceptions. The client sends action of what it wants to do, the
  server answers by an action if it's ok.

  Updates of the world is done by the server sending "perceptions"
  to the client. Actually it sends only changes, comparing clients'
  view before and after each turn; they call it "delta-perception".

  At no time, the client sends "the player is now at position 5,5".
  Instead it sends "the player is wanting to go to position
  5,5". And the server sends new perception to say "player is now at
  5,5", and any perception needed to update the view.

Sorry I'm not skilled to explain, furthermore in english... but I
think that Arianne's docs are quite good.


   Tof




_______________________________________________
MUD-Dev mailing list
MUD-Dev at kanga.nu
https://www.kanga.nu/lists/listinfo/mud-dev



More information about the mud-dev-archive mailing list